@openc3/vue-common 7.0.0-rc3 → 7.0.1

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 (434) hide show
  1. package/dist/{ArrayWidget-B2-n1K3r.cjs → ArrayWidget-BHjh3qLF.cjs} +2 -2
  2. package/dist/{ArrayWidget-B2-n1K3r.cjs.map → ArrayWidget-BHjh3qLF.cjs.map} +1 -1
  3. package/dist/{ArrayWidget-dQWDMMrn.js → ArrayWidget-Dh6zDiC7.js} +6 -6
  4. package/dist/{ArrayWidget-dQWDMMrn.js.map → ArrayWidget-Dh6zDiC7.js.map} +1 -1
  5. package/dist/{ArrayplotWidget-BmBcPGUR.cjs → ArrayplotWidget-BHD-TGQO.cjs} +2 -2
  6. package/dist/{ArrayplotWidget-BmBcPGUR.cjs.map → ArrayplotWidget-BHD-TGQO.cjs.map} +1 -1
  7. package/dist/{ArrayplotWidget-DCnbK37q.js → ArrayplotWidget-CSc_TqNm.js} +6 -6
  8. package/dist/{ArrayplotWidget-DCnbK37q.js.map → ArrayplotWidget-CSc_TqNm.js.map} +1 -1
  9. package/dist/{BarColumn-DmOxuCa9.js → BarColumn-DmjMnw5l.js} +3 -3
  10. package/dist/{BarColumn-DmOxuCa9.js.map → BarColumn-DmjMnw5l.js.map} +1 -1
  11. package/dist/{BarColumn-CkecDAzn.cjs → BarColumn-Ym4P8YHC.cjs} +2 -2
  12. package/dist/{BarColumn-CkecDAzn.cjs.map → BarColumn-Ym4P8YHC.cjs.map} +1 -1
  13. package/dist/{BlockWidget-UejKxAxY.js → BlockWidget-BdR_HCVc.js} +6 -6
  14. package/dist/{BlockWidget-UejKxAxY.js.map → BlockWidget-BdR_HCVc.js.map} +1 -1
  15. package/dist/{BlockWidget-BZXHLTJt.cjs → BlockWidget-Bi1PfS1k.cjs} +2 -2
  16. package/dist/{BlockWidget-BZXHLTJt.cjs.map → BlockWidget-Bi1PfS1k.cjs.map} +1 -1
  17. package/dist/{ButtonWidget-CzRyY1N5.cjs → ButtonWidget-70hNWuEy.cjs} +2 -2
  18. package/dist/{ButtonWidget-CzRyY1N5.cjs.map → ButtonWidget-70hNWuEy.cjs.map} +1 -1
  19. package/dist/{ButtonWidget-DtAkhzCN.js → ButtonWidget-DZ4VCNWU.js} +6 -6
  20. package/dist/{ButtonWidget-DtAkhzCN.js.map → ButtonWidget-DZ4VCNWU.js.map} +1 -1
  21. package/dist/{CanvasWidget-cQqNxspP.cjs → CanvasWidget-DTEx-DpZ.cjs} +2 -2
  22. package/dist/{CanvasWidget-cQqNxspP.cjs.map → CanvasWidget-DTEx-DpZ.cjs.map} +1 -1
  23. package/dist/{CanvasWidget-YXQ8TLqA.js → CanvasWidget-DuXOo3jG.js} +4 -4
  24. package/dist/{CanvasWidget-YXQ8TLqA.js.map → CanvasWidget-DuXOo3jG.js.map} +1 -1
  25. package/dist/{CanvasdotWidget-BbmhHQV_.js → CanvasdotWidget-WoLpxI1u.js} +5 -5
  26. package/dist/{CanvasdotWidget-BbmhHQV_.js.map → CanvasdotWidget-WoLpxI1u.js.map} +1 -1
  27. package/dist/{CanvasdotWidget-CMIw-ga4.cjs → CanvasdotWidget-bbOquK8B.cjs} +2 -2
  28. package/dist/{CanvasdotWidget-CMIw-ga4.cjs.map → CanvasdotWidget-bbOquK8B.cjs.map} +1 -1
  29. package/dist/{CanvasimageWidget-DXxtYjGG.cjs → CanvasimageWidget-D2EqsK7w.cjs} +2 -2
  30. package/dist/{CanvasimageWidget-DXxtYjGG.cjs.map → CanvasimageWidget-D2EqsK7w.cjs.map} +1 -1
  31. package/dist/{CanvasimageWidget-CJf5NYEj.js → CanvasimageWidget-tWpK5rsv.js} +8 -8
  32. package/dist/{CanvasimageWidget-CJf5NYEj.js.map → CanvasimageWidget-tWpK5rsv.js.map} +1 -1
  33. package/dist/{CanvasimagevalueWidget-D86eJXbs.js → CanvasimagevalueWidget-BVzJYz3l.js} +9 -9
  34. package/dist/{CanvasimagevalueWidget-D86eJXbs.js.map → CanvasimagevalueWidget-BVzJYz3l.js.map} +1 -1
  35. package/dist/{CanvasimagevalueWidget-VPKlJrxM.cjs → CanvasimagevalueWidget-By_DiQ75.cjs} +2 -2
  36. package/dist/{CanvasimagevalueWidget-VPKlJrxM.cjs.map → CanvasimagevalueWidget-By_DiQ75.cjs.map} +1 -1
  37. package/dist/{CanvaslabelWidget-TkrVd-Dg.js → CanvaslabelWidget-CDFf8Vll.js} +5 -5
  38. package/dist/{CanvaslabelWidget-TkrVd-Dg.js.map → CanvaslabelWidget-CDFf8Vll.js.map} +1 -1
  39. package/dist/{CanvaslabelWidget-BgGRS0NS.cjs → CanvaslabelWidget-DiPxyXoX.cjs} +2 -2
  40. package/dist/{CanvaslabelWidget-BgGRS0NS.cjs.map → CanvaslabelWidget-DiPxyXoX.cjs.map} +1 -1
  41. package/dist/{CanvaslabelvalueWidget-W2QzOkQw.cjs → CanvaslabelvalueWidget-Cw5CCQTi.cjs} +2 -2
  42. package/dist/{CanvaslabelvalueWidget-W2QzOkQw.cjs.map → CanvaslabelvalueWidget-Cw5CCQTi.cjs.map} +1 -1
  43. package/dist/{CanvaslabelvalueWidget-BwsIN_MT.js → CanvaslabelvalueWidget-DzJKD6qs.js} +5 -5
  44. package/dist/{CanvaslabelvalueWidget-BwsIN_MT.js.map → CanvaslabelvalueWidget-DzJKD6qs.js.map} +1 -1
  45. package/dist/{CanvaslineWidget-yT7FUWs8.cjs → CanvaslineWidget-BECtKTPL.cjs} +2 -2
  46. package/dist/{CanvaslineWidget-yT7FUWs8.cjs.map → CanvaslineWidget-BECtKTPL.cjs.map} +1 -1
  47. package/dist/{CanvaslineWidget-BjBvF-vY.js → CanvaslineWidget-BttTXCZq.js} +5 -5
  48. package/dist/{CanvaslineWidget-BjBvF-vY.js.map → CanvaslineWidget-BttTXCZq.js.map} +1 -1
  49. package/dist/{CanvaslinevalueWidget-Dj4tsTBp.cjs → CanvaslinevalueWidget-5duJ98qu.cjs} +2 -2
  50. package/dist/{CanvaslinevalueWidget-Dj4tsTBp.cjs.map → CanvaslinevalueWidget-5duJ98qu.cjs.map} +1 -1
  51. package/dist/{CanvaslinevalueWidget-krBLp9yB.js → CanvaslinevalueWidget-i6G0JfnZ.js} +5 -5
  52. package/dist/{CanvaslinevalueWidget-krBLp9yB.js.map → CanvaslinevalueWidget-i6G0JfnZ.js.map} +1 -1
  53. package/dist/{CheckbuttonWidget-IMrIK9q4.js → CheckbuttonWidget-18jtf7sh.js} +5 -5
  54. package/dist/{CheckbuttonWidget-IMrIK9q4.js.map → CheckbuttonWidget-18jtf7sh.js.map} +1 -1
  55. package/dist/{CheckbuttonWidget-CT28NPNo.cjs → CheckbuttonWidget-CTMObPhX.cjs} +2 -2
  56. package/dist/{CheckbuttonWidget-CT28NPNo.cjs.map → CheckbuttonWidget-CTMObPhX.cjs.map} +1 -1
  57. package/dist/{ClassificationBanners-DiIkXqna.js → ClassificationBanners-BmnQODLn.js} +2 -2
  58. package/dist/{ClassificationBanners-DiIkXqna.js.map → ClassificationBanners-BmnQODLn.js.map} +1 -1
  59. package/dist/{ClassificationBanners-DC__VXBX.cjs → ClassificationBanners-DjGCuH-4.cjs} +2 -2
  60. package/dist/{ClassificationBanners-DC__VXBX.cjs.map → ClassificationBanners-DjGCuH-4.cjs.map} +1 -1
  61. package/dist/{ComboboxWidget-C9Zlc2Hy.js → ComboboxWidget-BjaVFbD4.js} +5 -5
  62. package/dist/{ComboboxWidget-C9Zlc2Hy.js.map → ComboboxWidget-BjaVFbD4.js.map} +1 -1
  63. package/dist/{ComboboxWidget-hFBSBFwy.cjs → ComboboxWidget-Cc0Acq9q.cjs} +2 -2
  64. package/dist/{ComboboxWidget-hFBSBFwy.cjs.map → ComboboxWidget-Cc0Acq9q.cjs.map} +1 -1
  65. package/dist/{CriticalCmdDialog-Cp-ykpQb.js → CriticalCmdDialog-CO-nvphS.js} +8 -8
  66. package/dist/{CriticalCmdDialog-Cp-ykpQb.js.map → CriticalCmdDialog-CO-nvphS.js.map} +1 -1
  67. package/dist/{CriticalCmdDialog-CCaStsM-.cjs → CriticalCmdDialog-eytxCQto.cjs} +2 -2
  68. package/dist/{CriticalCmdDialog-CCaStsM-.cjs.map → CriticalCmdDialog-eytxCQto.cjs.map} +1 -1
  69. package/dist/{CustomIcon-Cg3jCA_l.js → CustomIcon-DTR361si.js} +4 -4
  70. package/dist/{CustomIcon-Cg3jCA_l.js.map → CustomIcon-DTR361si.js.map} +1 -1
  71. package/dist/{DateWidget-C_QpCTxN.cjs → DateWidget-Cle8FY8Q.cjs} +2 -2
  72. package/dist/{DateWidget-C_QpCTxN.cjs.map → DateWidget-Cle8FY8Q.cjs.map} +1 -1
  73. package/dist/{DateWidget-Y6WAFGGt.js → DateWidget-DkFAFlc8.js} +5 -5
  74. package/dist/{DateWidget-Y6WAFGGt.js.map → DateWidget-DkFAFlc8.js.map} +1 -1
  75. package/dist/{DetailsDialog-Bq9BPuoe.cjs → DetailsDialog-BcMaTfuQ.cjs} +2 -2
  76. package/dist/{DetailsDialog-Bq9BPuoe.cjs.map → DetailsDialog-BcMaTfuQ.cjs.map} +1 -1
  77. package/dist/{DetailsDialog-DznGAE6i.js → DetailsDialog-sqja4Lzq.js} +5 -5
  78. package/dist/{DetailsDialog-DznGAE6i.js.map → DetailsDialog-sqja4Lzq.js.map} +1 -1
  79. package/dist/{DynamicWidget-Bym87woV.js → DynamicWidget-BuSbQVhf.js} +4 -4
  80. package/dist/{DynamicWidget-Bym87woV.js.map → DynamicWidget-BuSbQVhf.js.map} +1 -1
  81. package/dist/{EventListDialog-CktWO2jn.js → EventListDialog-DjCQAwGl.js} +17 -14
  82. package/dist/EventListDialog-DjCQAwGl.js.map +1 -0
  83. package/dist/EventListDialog-EmC7YW60.cjs +2 -0
  84. package/dist/EventListDialog-EmC7YW60.cjs.map +1 -0
  85. package/dist/{FilechecksumWidget-BZdmiTbb.cjs → FilechecksumWidget-2ta-UvLp.cjs} +2 -2
  86. package/dist/{FilechecksumWidget-BZdmiTbb.cjs.map → FilechecksumWidget-2ta-UvLp.cjs.map} +1 -1
  87. package/dist/{FilechecksumWidget-VbLODmHh.js → FilechecksumWidget-DqJ_hvN4.js} +8 -8
  88. package/dist/{FilechecksumWidget-VbLODmHh.js.map → FilechecksumWidget-DqJ_hvN4.js.map} +1 -1
  89. package/dist/{FiledisplayWidget-BI7GAQ4d.cjs → FiledisplayWidget-BUKXIQir.cjs} +2 -2
  90. package/dist/{FiledisplayWidget-BI7GAQ4d.cjs.map → FiledisplayWidget-BUKXIQir.cjs.map} +1 -1
  91. package/dist/{FiledisplayWidget-kixqcLtx.js → FiledisplayWidget-CYznG_tf.js} +6 -6
  92. package/dist/{FiledisplayWidget-kixqcLtx.js.map → FiledisplayWidget-CYznG_tf.js.map} +1 -1
  93. package/dist/{FormatvalueWidget--djAS0BE.js → FormatvalueWidget-BnVu4YGx.js} +6 -6
  94. package/dist/{FormatvalueWidget--djAS0BE.js.map → FormatvalueWidget-BnVu4YGx.js.map} +1 -1
  95. package/dist/{FormatvalueWidget-I1y_kf9t.cjs → FormatvalueWidget-BpFXnA_U.cjs} +2 -2
  96. package/dist/{FormatvalueWidget-I1y_kf9t.cjs.map → FormatvalueWidget-BpFXnA_U.cjs.map} +1 -1
  97. package/dist/{Graph-GhpiUBKI.js → Graph-CUFzx8Ti.js} +289 -281
  98. package/dist/Graph-CUFzx8Ti.js.map +1 -0
  99. package/dist/Graph-qxF4224c.cjs +2 -0
  100. package/dist/Graph-qxF4224c.cjs.map +1 -0
  101. package/dist/{GraphWidget-Bzo-klWV.cjs → GraphWidget-BvCQHVxQ.cjs} +2 -2
  102. package/dist/{GraphWidget-Bzo-klWV.cjs.map → GraphWidget-BvCQHVxQ.cjs.map} +1 -1
  103. package/dist/{GraphWidget-8T08osON.js → GraphWidget-DO5XbOGy.js} +2 -2
  104. package/dist/{GraphWidget-8T08osON.js.map → GraphWidget-DO5XbOGy.js.map} +1 -1
  105. package/dist/{HorizontalWidget-CusI1RiA.js → HorizontalWidget-BA9PiP3d.js} +4 -4
  106. package/dist/{HorizontalWidget-CusI1RiA.js.map → HorizontalWidget-BA9PiP3d.js.map} +1 -1
  107. package/dist/{HorizontalWidget-CAf9I0CU.cjs → HorizontalWidget-BBQE-dP-.cjs} +2 -2
  108. package/dist/{HorizontalWidget-CAf9I0CU.cjs.map → HorizontalWidget-BBQE-dP-.cjs.map} +1 -1
  109. package/dist/{HorizontalboxWidget-D5fIhINf.js → HorizontalboxWidget-B-7HOqgl.js} +7 -7
  110. package/dist/{HorizontalboxWidget-D5fIhINf.js.map → HorizontalboxWidget-B-7HOqgl.js.map} +1 -1
  111. package/dist/{HorizontalboxWidget-B7E5GEPu.cjs → HorizontalboxWidget-CX7J8RdA.cjs} +2 -2
  112. package/dist/{HorizontalboxWidget-B7E5GEPu.cjs.map → HorizontalboxWidget-CX7J8RdA.cjs.map} +1 -1
  113. package/dist/HorizontallineWidget-D-o9MGo0.js +16 -0
  114. package/dist/{HorizontallineWidget-CnRlq7hi.js.map → HorizontallineWidget-D-o9MGo0.js.map} +1 -1
  115. package/dist/{HorizontallineWidget-DqLKGhdz.cjs → HorizontallineWidget-odTFoB8u.cjs} +2 -2
  116. package/dist/{HorizontallineWidget-DqLKGhdz.cjs.map → HorizontallineWidget-odTFoB8u.cjs.map} +1 -1
  117. package/dist/{IframeWidget-DtF44NYM.js → IframeWidget-BzOka-fX.js} +5 -5
  118. package/dist/{IframeWidget-DtF44NYM.js.map → IframeWidget-BzOka-fX.js.map} +1 -1
  119. package/dist/{IframeWidget-BMtv8io0.cjs → IframeWidget-cTHu_Rmp.cjs} +2 -2
  120. package/dist/{IframeWidget-BMtv8io0.cjs.map → IframeWidget-cTHu_Rmp.cjs.map} +1 -1
  121. package/dist/{ImageLoader-jcIDHdUq.cjs → ImageLoader-BTEOukIw.cjs} +2 -2
  122. package/dist/{ImageLoader-jcIDHdUq.cjs.map → ImageLoader-BTEOukIw.cjs.map} +1 -1
  123. package/dist/{ImageLoader-B5rGuJ_H.js → ImageLoader-CstmWFM4.js} +2 -2
  124. package/dist/{ImageLoader-B5rGuJ_H.js.map → ImageLoader-CstmWFM4.js.map} +1 -1
  125. package/dist/{ImageviewerWidget-Ciu80vaC.js → ImageviewerWidget-BA9uOM1q.js} +5 -5
  126. package/dist/{ImageviewerWidget-Ciu80vaC.js.map → ImageviewerWidget-BA9uOM1q.js.map} +1 -1
  127. package/dist/{ImageviewerWidget-ox5FNYVP.cjs → ImageviewerWidget-CLAFwmaB.cjs} +2 -2
  128. package/dist/{ImageviewerWidget-ox5FNYVP.cjs.map → ImageviewerWidget-CLAFwmaB.cjs.map} +1 -1
  129. package/dist/{InterfacesTab-C14LErLZ.js → InterfacesTab-C3mDLkGC.js} +9 -9
  130. package/dist/{InterfacesTab-C14LErLZ.js.map → InterfacesTab-C3mDLkGC.js.map} +1 -1
  131. package/dist/{InterfacesTab-CUM5GGWs.cjs → InterfacesTab-CM0CGFVS.cjs} +2 -2
  132. package/dist/{InterfacesTab-CUM5GGWs.cjs.map → InterfacesTab-CM0CGFVS.cjs.map} +1 -1
  133. package/dist/{LabelWidget-B9J1Whh0.cjs → LabelWidget-CMmVq1mx.cjs} +2 -2
  134. package/dist/{LabelWidget-B9J1Whh0.cjs.map → LabelWidget-CMmVq1mx.cjs.map} +1 -1
  135. package/dist/{LabelWidget-78VnL1xc.js → LabelWidget-Da2howZF.js} +5 -5
  136. package/dist/{LabelWidget-78VnL1xc.js.map → LabelWidget-Da2howZF.js.map} +1 -1
  137. package/dist/{LabelledWidget-Cx2PI85E.js → LabelledWidget-BH8y3OXT.js} +7 -7
  138. package/dist/{LabelledWidget-Cx2PI85E.js.map → LabelledWidget-BH8y3OXT.js.map} +1 -1
  139. package/dist/{LabelledWidget-BMtqUP-E.cjs → LabelledWidget-CAqH0oWs.cjs} +2 -2
  140. package/dist/{LabelledWidget-BMtqUP-E.cjs.map → LabelledWidget-CAqH0oWs.cjs.map} +1 -1
  141. package/dist/{LabelprogressbarWidget-eC7VC7lY.js → LabelprogressbarWidget-Brl24F4c.js} +7 -7
  142. package/dist/{LabelprogressbarWidget-eC7VC7lY.js.map → LabelprogressbarWidget-Brl24F4c.js.map} +1 -1
  143. package/dist/{LabelprogressbarWidget-Ce3PRzaA.cjs → LabelprogressbarWidget-BxLGmW9T.cjs} +2 -2
  144. package/dist/{LabelprogressbarWidget-Ce3PRzaA.cjs.map → LabelprogressbarWidget-BxLGmW9T.cjs.map} +1 -1
  145. package/dist/{LabelsparklineWidget-DuCA67yl.cjs → LabelsparklineWidget-BUXOpBeB.cjs} +2 -2
  146. package/dist/{LabelsparklineWidget-DuCA67yl.cjs.map → LabelsparklineWidget-BUXOpBeB.cjs.map} +1 -1
  147. package/dist/{LabelsparklineWidget-CP5rD4ob.js → LabelsparklineWidget-D22MB7-4.js} +7 -7
  148. package/dist/{LabelsparklineWidget-CP5rD4ob.js.map → LabelsparklineWidget-D22MB7-4.js.map} +1 -1
  149. package/dist/{LabelvalueWidget-PM8DFnDm.js → LabelvalueWidget-_1JPbK-K.js} +7 -7
  150. package/dist/{LabelvalueWidget-PM8DFnDm.js.map → LabelvalueWidget-_1JPbK-K.js.map} +1 -1
  151. package/dist/{LabelvalueWidget-DxEvAoHT.cjs → LabelvalueWidget-bYqqgIGE.cjs} +2 -2
  152. package/dist/{LabelvalueWidget-DxEvAoHT.cjs.map → LabelvalueWidget-bYqqgIGE.cjs.map} +1 -1
  153. package/dist/{LabelvaluedescWidget-Dy3_fdkx.cjs → LabelvaluedescWidget-B2dFZoDE.cjs} +2 -2
  154. package/dist/{LabelvaluedescWidget-Dy3_fdkx.cjs.map → LabelvaluedescWidget-B2dFZoDE.cjs.map} +1 -1
  155. package/dist/{LabelvaluedescWidget-C8OmKnu-.js → LabelvaluedescWidget-BgduSJJb.js} +8 -8
  156. package/dist/{LabelvaluedescWidget-C8OmKnu-.js.map → LabelvaluedescWidget-BgduSJJb.js.map} +1 -1
  157. package/dist/{LabelvaluelimitsbarWidget-DWvSVvXl.cjs → LabelvaluelimitsbarWidget-BGag8V6k.cjs} +2 -2
  158. package/dist/{LabelvaluelimitsbarWidget-DWvSVvXl.cjs.map → LabelvaluelimitsbarWidget-BGag8V6k.cjs.map} +1 -1
  159. package/dist/{LabelvaluelimitsbarWidget-DIsTQqkO.js → LabelvaluelimitsbarWidget-C9PlEhWo.js} +7 -7
  160. package/dist/{LabelvaluelimitsbarWidget-DIsTQqkO.js.map → LabelvaluelimitsbarWidget-C9PlEhWo.js.map} +1 -1
  161. package/dist/{LabelvaluelimitscolumnWidget-ld556rRi.js → LabelvaluelimitscolumnWidget-Cay6AhoZ.js} +8 -8
  162. package/dist/{LabelvaluelimitscolumnWidget-ld556rRi.js.map → LabelvaluelimitscolumnWidget-Cay6AhoZ.js.map} +1 -1
  163. package/dist/{LabelvaluelimitscolumnWidget-CyPuEz7E.cjs → LabelvaluelimitscolumnWidget-SHVJIgGJ.cjs} +2 -2
  164. package/dist/{LabelvaluelimitscolumnWidget-CyPuEz7E.cjs.map → LabelvaluelimitscolumnWidget-SHVJIgGJ.cjs.map} +1 -1
  165. package/dist/{LabelvaluerangebarWidget-DdqgjjUc.cjs → LabelvaluerangebarWidget-Dbibpimv.cjs} +2 -2
  166. package/dist/{LabelvaluerangebarWidget-DdqgjjUc.cjs.map → LabelvaluerangebarWidget-Dbibpimv.cjs.map} +1 -1
  167. package/dist/{LabelvaluerangebarWidget-nCeoujui.js → LabelvaluerangebarWidget-s_8IgY-C.js} +7 -7
  168. package/dist/{LabelvaluerangebarWidget-nCeoujui.js.map → LabelvaluerangebarWidget-s_8IgY-C.js.map} +1 -1
  169. package/dist/{Layout-BcytiBn4.js → Layout-D7RGn0Fe.js} +2 -2
  170. package/dist/{Layout-BcytiBn4.js.map → Layout-D7RGn0Fe.js.map} +1 -1
  171. package/dist/{Layout-JCk8r88e.cjs → Layout-DwWEea79.cjs} +2 -2
  172. package/dist/{Layout-JCk8r88e.cjs.map → Layout-DwWEea79.cjs.map} +1 -1
  173. package/dist/{LedWidget-BEP-sFTh.cjs → LedWidget-BaiKDozd.cjs} +2 -2
  174. package/dist/{LedWidget-BEP-sFTh.cjs.map → LedWidget-BaiKDozd.cjs.map} +1 -1
  175. package/dist/{LedWidget-3pWKnZsD.js → LedWidget-DgMtvsiv.js} +6 -6
  176. package/dist/{LedWidget-3pWKnZsD.js.map → LedWidget-DgMtvsiv.js.map} +1 -1
  177. package/dist/{LimitsBar-BJ_cERjE.cjs → LimitsBar-BFM38vQL.cjs} +2 -2
  178. package/dist/{LimitsBar-BJ_cERjE.cjs.map → LimitsBar-BFM38vQL.cjs.map} +1 -1
  179. package/dist/{LimitsBar-DCco6Rwp.js → LimitsBar-CcOaAw0C.js} +7 -7
  180. package/dist/{LimitsBar-DCco6Rwp.js.map → LimitsBar-CcOaAw0C.js.map} +1 -1
  181. package/dist/{LimitsbarWidget-DiAnkXID.cjs → LimitsbarWidget-ConP3qI5.cjs} +2 -2
  182. package/dist/{LimitsbarWidget-DiAnkXID.cjs.map → LimitsbarWidget-ConP3qI5.cjs.map} +1 -1
  183. package/dist/{LimitsbarWidget-_BMzxWBm.js → LimitsbarWidget-DpmJn1Lo.js} +7 -7
  184. package/dist/{LimitsbarWidget-_BMzxWBm.js.map → LimitsbarWidget-DpmJn1Lo.js.map} +1 -1
  185. package/dist/{LimitscolorWidget-C2gZyqtI.js → LimitscolorWidget-BMXiEaDm.js} +20 -20
  186. package/dist/{LimitscolorWidget-C2gZyqtI.js.map → LimitscolorWidget-BMXiEaDm.js.map} +1 -1
  187. package/dist/{LimitscolorWidget-ByfzIE_O.cjs → LimitscolorWidget-veWQ4NXl.cjs} +2 -2
  188. package/dist/{LimitscolorWidget-ByfzIE_O.cjs.map → LimitscolorWidget-veWQ4NXl.cjs.map} +1 -1
  189. package/dist/{LimitscolumnWidget-CZwcXbLS.cjs → LimitscolumnWidget-CJABAor8.cjs} +2 -2
  190. package/dist/{LimitscolumnWidget-CZwcXbLS.cjs.map → LimitscolumnWidget-CJABAor8.cjs.map} +1 -1
  191. package/dist/{LimitscolumnWidget-Cv-6FXU3.js → LimitscolumnWidget-ufFMz6R-.js} +5 -5
  192. package/dist/{LimitscolumnWidget-Cv-6FXU3.js.map → LimitscolumnWidget-ufFMz6R-.js.map} +1 -1
  193. package/dist/{LinegraphWidget-so5ohfWF.cjs → LinegraphWidget-3E8L5CvM.cjs} +2 -2
  194. package/dist/{LinegraphWidget-so5ohfWF.cjs.map → LinegraphWidget-3E8L5CvM.cjs.map} +1 -1
  195. package/dist/{LinegraphWidget-BahyhwSt.js → LinegraphWidget-BC2wVOny.js} +7 -7
  196. package/dist/{LinegraphWidget-BahyhwSt.js.map → LinegraphWidget-BC2wVOny.js.map} +1 -1
  197. package/dist/{MatrixbycolumnsWidget-Dma8IsO-.cjs → MatrixbycolumnsWidget-DICgiNQo.cjs} +2 -2
  198. package/dist/{MatrixbycolumnsWidget-Dma8IsO-.cjs.map → MatrixbycolumnsWidget-DICgiNQo.cjs.map} +1 -1
  199. package/dist/{MatrixbycolumnsWidget-B1Hy9but.js → MatrixbycolumnsWidget-DfUAeBnO.js} +5 -5
  200. package/dist/{MatrixbycolumnsWidget-B1Hy9but.js.map → MatrixbycolumnsWidget-DfUAeBnO.js.map} +1 -1
  201. package/dist/{MicroservicesTab-BSXNA_Si.js → MicroservicesTab-B0SZVty3.js} +67 -62
  202. package/dist/MicroservicesTab-B0SZVty3.js.map +1 -0
  203. package/dist/MicroservicesTab-snXJDoYq.cjs +4 -0
  204. package/dist/MicroservicesTab-snXJDoYq.cjs.map +1 -0
  205. package/dist/{OpenC3TimePicker-LN9R7V31.js → OpenC3TimePicker-DpkbfbgC.js} +5 -5
  206. package/dist/{OpenC3TimePicker-LN9R7V31.js.map → OpenC3TimePicker-DpkbfbgC.js.map} +1 -1
  207. package/dist/{OpenC3TimePicker-BHX9fnlR.cjs → OpenC3TimePicker-Yl1jVi7p.cjs} +2 -2
  208. package/dist/{OpenC3TimePicker-BHX9fnlR.cjs.map → OpenC3TimePicker-Yl1jVi7p.cjs.map} +1 -1
  209. package/dist/{Openc3Screen-CJOTF-lu.cjs → Openc3Screen-D1RLlBgQ.cjs} +5 -5
  210. package/dist/Openc3Screen-D1RLlBgQ.cjs.map +1 -0
  211. package/dist/{Openc3Screen-BP7Ho9XC.js → Openc3Screen-DbUvz-3B.js} +254 -254
  212. package/dist/Openc3Screen-DbUvz-3B.js.map +1 -0
  213. package/dist/{OutputDialog-Dx5mkq19.cjs → OutputDialog-ChPCaQAE.cjs} +2 -2
  214. package/dist/{OutputDialog-Dx5mkq19.cjs.map → OutputDialog-ChPCaQAE.cjs.map} +1 -1
  215. package/dist/{OutputDialog-JdAxzpPD.js → OutputDialog-Ds-GdGyI.js} +5 -5
  216. package/dist/{OutputDialog-JdAxzpPD.js.map → OutputDialog-Ds-GdGyI.js.map} +1 -1
  217. package/dist/PackagesTab-BgQsbXRo.cjs +2 -0
  218. package/dist/PackagesTab-BgQsbXRo.cjs.map +1 -0
  219. package/dist/{PackagesTab-ByfVH001.js → PackagesTab-CWplBp_I.js} +70 -66
  220. package/dist/PackagesTab-CWplBp_I.js.map +1 -0
  221. package/dist/{PluginsTab-D7zpmf8s.js → PluginsTab-BiiL622n.js} +486 -448
  222. package/dist/PluginsTab-BiiL622n.js.map +1 -0
  223. package/dist/PluginsTab-RgIMk-F7.cjs +6 -0
  224. package/dist/PluginsTab-RgIMk-F7.cjs.map +1 -0
  225. package/dist/{ProgressbarWidget-mAVHKeok.js → ProgressbarWidget-D3ndYnq_.js} +5 -5
  226. package/dist/{ProgressbarWidget-mAVHKeok.js.map → ProgressbarWidget-D3ndYnq_.js.map} +1 -1
  227. package/dist/{ProgressbarWidget-BINuoD9p.cjs → ProgressbarWidget-DludJVUf.cjs} +2 -2
  228. package/dist/{ProgressbarWidget-BINuoD9p.cjs.map → ProgressbarWidget-DludJVUf.cjs.map} +1 -1
  229. package/dist/{RadiobuttonWidget-CL3QjTnZ.js → RadiobuttonWidget-CP0S9nWW.js} +5 -5
  230. package/dist/{RadiobuttonWidget-CL3QjTnZ.js.map → RadiobuttonWidget-CP0S9nWW.js.map} +1 -1
  231. package/dist/{RadiobuttonWidget-DDmgt0su.cjs → RadiobuttonWidget-DX4h94p1.cjs} +2 -2
  232. package/dist/{RadiobuttonWidget-DDmgt0su.cjs.map → RadiobuttonWidget-DX4h94p1.cjs.map} +1 -1
  233. package/dist/{RadiogroupWidget-RUwgtUTC.js → RadiogroupWidget-BXHfA21T.js} +4 -4
  234. package/dist/{RadiogroupWidget-RUwgtUTC.js.map → RadiogroupWidget-BXHfA21T.js.map} +1 -1
  235. package/dist/{RadiogroupWidget-q7h1v-ko.cjs → RadiogroupWidget-NqjBNUH6.cjs} +2 -2
  236. package/dist/{RadiogroupWidget-q7h1v-ko.cjs.map → RadiogroupWidget-NqjBNUH6.cjs.map} +1 -1
  237. package/dist/{RangebarWidget-CfDsKLZc.js → RangebarWidget-Bv2DqkPo.js} +5 -5
  238. package/dist/{RangebarWidget-CfDsKLZc.js.map → RangebarWidget-Bv2DqkPo.js.map} +1 -1
  239. package/dist/{RangebarWidget-BbPMpwMs.cjs → RangebarWidget-CRq2zpvw.cjs} +2 -2
  240. package/dist/{RangebarWidget-BbPMpwMs.cjs.map → RangebarWidget-CRq2zpvw.cjs.map} +1 -1
  241. package/dist/{RedisTab-YrX-5A3T.js → RedisTab-7TbOXFA_.js} +9 -9
  242. package/dist/{RedisTab-YrX-5A3T.js.map → RedisTab-7TbOXFA_.js.map} +1 -1
  243. package/dist/{RedisTab-dZE6KvLS.cjs → RedisTab-DpWPY1P0.cjs} +2 -2
  244. package/dist/{RedisTab-dZE6KvLS.cjs.map → RedisTab-DpWPY1P0.cjs.map} +1 -1
  245. package/dist/{RollupWidget-BmgRFIOo.cjs → RollupWidget-B7_Q_boi.cjs} +2 -2
  246. package/dist/{RollupWidget-BmgRFIOo.cjs.map → RollupWidget-B7_Q_boi.cjs.map} +1 -1
  247. package/dist/{RollupWidget-DCMoQUeJ.js → RollupWidget-o_huYU0x.js} +5 -5
  248. package/dist/{RollupWidget-DCMoQUeJ.js.map → RollupWidget-o_huYU0x.js.map} +1 -1
  249. package/dist/{RoutersTab-C6vejQrw.cjs → RoutersTab-CAbnSGHy.cjs} +2 -2
  250. package/dist/{RoutersTab-C6vejQrw.cjs.map → RoutersTab-CAbnSGHy.cjs.map} +1 -1
  251. package/dist/{RoutersTab-MA9KW_gu.js → RoutersTab-DN17iBBi.js} +9 -9
  252. package/dist/{RoutersTab-MA9KW_gu.js.map → RoutersTab-DN17iBBi.js.map} +1 -1
  253. package/dist/{ScriptChooser-Cm_HEyBf.cjs → ScriptChooser-CggwstfT.cjs} +2 -2
  254. package/dist/{ScriptChooser-Cm_HEyBf.cjs.map → ScriptChooser-CggwstfT.cjs.map} +1 -1
  255. package/dist/{ScriptChooser-DGbs03IW.js → ScriptChooser-CzzUJ1Zj.js} +6 -6
  256. package/dist/{ScriptChooser-DGbs03IW.js.map → ScriptChooser-CzzUJ1Zj.js.map} +1 -1
  257. package/dist/{ScrollwindowWidget-DarXe7-1.js → ScrollwindowWidget-DdjaML6D.js} +4 -4
  258. package/dist/{ScrollwindowWidget-DarXe7-1.js.map → ScrollwindowWidget-DdjaML6D.js.map} +1 -1
  259. package/dist/{ScrollwindowWidget-BbASNNcM.cjs → ScrollwindowWidget-kS5QjP-v.cjs} +2 -2
  260. package/dist/{ScrollwindowWidget-BbASNNcM.cjs.map → ScrollwindowWidget-kS5QjP-v.cjs.map} +1 -1
  261. package/dist/{SecretsTab-DwE3KJNI.cjs → SecretsTab-Cn6-o85L.cjs} +2 -2
  262. package/dist/{SecretsTab-DwE3KJNI.cjs.map → SecretsTab-Cn6-o85L.cjs.map} +1 -1
  263. package/dist/{SecretsTab-DTaPAHv3.js → SecretsTab-Cu3sx2OA.js} +4 -4
  264. package/dist/{SecretsTab-DTaPAHv3.js.map → SecretsTab-Cu3sx2OA.js.map} +1 -1
  265. package/dist/{SettingsTab-BhT5sui9.js → SettingsTab-B_vvSLvt.js} +6 -6
  266. package/dist/{SettingsTab-BhT5sui9.js.map → SettingsTab-B_vvSLvt.js.map} +1 -1
  267. package/dist/{SettingsTab-o9tfAuE4.cjs → SettingsTab-C6zIL2D6.cjs} +2 -2
  268. package/dist/{SettingsTab-o9tfAuE4.cjs.map → SettingsTab-C6zIL2D6.cjs.map} +1 -1
  269. package/dist/{SignalWidget-CO3UaFok.cjs → SignalWidget-BagcB92r.cjs} +2 -2
  270. package/dist/{SignalWidget-CO3UaFok.cjs.map → SignalWidget-BagcB92r.cjs.map} +1 -1
  271. package/dist/{SignalWidget-C-iEC5KL.js → SignalWidget-Dd54y28I.js} +5 -5
  272. package/dist/{SignalWidget-C-iEC5KL.js.map → SignalWidget-Dd54y28I.js.map} +1 -1
  273. package/dist/{SimpleTextDialog-B9ZurpdS.cjs → SimpleTextDialog-BJ50TbWh.cjs} +2 -2
  274. package/dist/{SimpleTextDialog-B9ZurpdS.cjs.map → SimpleTextDialog-BJ50TbWh.cjs.map} +1 -1
  275. package/dist/{SimpleTextDialog-Bqh3eT2B.js → SimpleTextDialog-DZv9n_kJ.js} +5 -5
  276. package/dist/{SimpleTextDialog-Bqh3eT2B.js.map → SimpleTextDialog-DZv9n_kJ.js.map} +1 -1
  277. package/dist/{SpacerWidget-CQh-LB4u.cjs → SpacerWidget-DWjBns9r.cjs} +2 -2
  278. package/dist/{SpacerWidget-CQh-LB4u.cjs.map → SpacerWidget-DWjBns9r.cjs.map} +1 -1
  279. package/dist/{SpacerWidget-FHxUhs1G.js → SpacerWidget-GPFYtIG1.js} +5 -5
  280. package/dist/{SpacerWidget-FHxUhs1G.js.map → SpacerWidget-GPFYtIG1.js.map} +1 -1
  281. package/dist/{SparklineWidget-ClT5Umm2.js → SparklineWidget-f11nrlLS.js} +7 -7
  282. package/dist/{SparklineWidget-ClT5Umm2.js.map → SparklineWidget-f11nrlLS.js.map} +1 -1
  283. package/dist/{SparklineWidget-BsMIozYC.cjs → SparklineWidget-xdPgolp3.cjs} +2 -2
  284. package/dist/{SparklineWidget-BsMIozYC.cjs.map → SparklineWidget-xdPgolp3.cjs.map} +1 -1
  285. package/dist/{TabbookWidget-So-oaWd4.cjs → TabbookWidget-CUIYWHRH.cjs} +2 -2
  286. package/dist/{TabbookWidget-So-oaWd4.cjs.map → TabbookWidget-CUIYWHRH.cjs.map} +1 -1
  287. package/dist/{TabbookWidget-D-b0v0oo.js → TabbookWidget-DeaC27yC.js} +4 -4
  288. package/dist/{TabbookWidget-D-b0v0oo.js.map → TabbookWidget-DeaC27yC.js.map} +1 -1
  289. package/dist/{TargetPacketItemChooser-DD7JgCD9.js → TargetPacketItemChooser-BoBqvs3T.js} +23 -23
  290. package/dist/TargetPacketItemChooser-BoBqvs3T.js.map +1 -0
  291. package/dist/TargetPacketItemChooser-C0Z90rss.cjs +2 -0
  292. package/dist/TargetPacketItemChooser-C0Z90rss.cjs.map +1 -0
  293. package/dist/{TargetsTab-BD0JGvAl.cjs → TargetsTab-BMcWjrZ_.cjs} +2 -2
  294. package/dist/{TargetsTab-BD0JGvAl.cjs.map → TargetsTab-BMcWjrZ_.cjs.map} +1 -1
  295. package/dist/{TargetsTab-hTLe_rba.js → TargetsTab-CjVaBN9O.js} +11 -11
  296. package/dist/{TargetsTab-hTLe_rba.js.map → TargetsTab-CjVaBN9O.js.map} +1 -1
  297. package/dist/{TextBoxDialog-BRwZOtzT.js → TextBoxDialog-R6GC8pMa.js} +4 -4
  298. package/dist/{TextBoxDialog-BRwZOtzT.js.map → TextBoxDialog-R6GC8pMa.js.map} +1 -1
  299. package/dist/{TextboxWidget-CF4iq315.cjs → TextboxWidget-CXA9rR02.cjs} +2 -2
  300. package/dist/{TextboxWidget-CF4iq315.cjs.map → TextboxWidget-CXA9rR02.cjs.map} +1 -1
  301. package/dist/{TextboxWidget-WM3eFUR_.js → TextboxWidget-tL41zWUX.js} +6 -6
  302. package/dist/{TextboxWidget-WM3eFUR_.js.map → TextboxWidget-tL41zWUX.js.map} +1 -1
  303. package/dist/{TextfieldWidget-D9BINKRU.cjs → TextfieldWidget-D-H2fOZG.cjs} +2 -2
  304. package/dist/{TextfieldWidget-D9BINKRU.cjs.map → TextfieldWidget-D-H2fOZG.cjs.map} +1 -1
  305. package/dist/{TextfieldWidget-lfc1Vg51.js → TextfieldWidget-D1qj14Qi.js} +5 -5
  306. package/dist/{TextfieldWidget-lfc1Vg51.js.map → TextfieldWidget-D1qj14Qi.js.map} +1 -1
  307. package/dist/{TimeWidget-CgtJbnnC.cjs → TimeWidget-CGk8Ze_I.cjs} +2 -2
  308. package/dist/{TimeWidget-CgtJbnnC.cjs.map → TimeWidget-CGk8Ze_I.cjs.map} +1 -1
  309. package/dist/{TimeWidget-B13aIVqG.js → TimeWidget-CSVGNong.js} +6 -6
  310. package/dist/{TimeWidget-B13aIVqG.js.map → TimeWidget-CSVGNong.js.map} +1 -1
  311. package/dist/{TitleWidget-CTAMgzU4.js → TitleWidget-CLx-tuYT.js} +5 -5
  312. package/dist/{TitleWidget-CTAMgzU4.js.map → TitleWidget-CLx-tuYT.js.map} +1 -1
  313. package/dist/{TitleWidget-BV2sDP_-.cjs → TitleWidget-ClhWhUf3.cjs} +2 -2
  314. package/dist/{TitleWidget-BV2sDP_-.cjs.map → TitleWidget-ClhWhUf3.cjs.map} +1 -1
  315. package/dist/{ToolsTab-DXK-L-kx.cjs → ToolsTab-DTHap-Nq.cjs} +2 -2
  316. package/dist/{ToolsTab-DXK-L-kx.cjs.map → ToolsTab-DTHap-Nq.cjs.map} +1 -1
  317. package/dist/{ToolsTab-CmhRtClS.js → ToolsTab-lBB_KhmA.js} +10 -10
  318. package/dist/{ToolsTab-CmhRtClS.js.map → ToolsTab-lBB_KhmA.js.map} +1 -1
  319. package/dist/{TopBar-D-lJHb6d.js → TopBar-C810rP_B.js} +4 -4
  320. package/dist/{TopBar-D-lJHb6d.js.map → TopBar-C810rP_B.js.map} +1 -1
  321. package/dist/{TopBar-BiE7GgIN.cjs → TopBar-Ctzx7o2k.cjs} +2 -2
  322. package/dist/{TopBar-BiE7GgIN.cjs.map → TopBar-Ctzx7o2k.cjs.map} +1 -1
  323. package/dist/TsdbTab-7F4mRKDo.js +125 -0
  324. package/dist/TsdbTab-7F4mRKDo.js.map +1 -0
  325. package/dist/TsdbTab-DVF6n9mq.cjs +2 -0
  326. package/dist/TsdbTab-DVF6n9mq.cjs.map +1 -0
  327. package/dist/{UpgradeToEnterpriseDialog-et3RrozN.js → UpgradeToEnterpriseDialog-D_S574Zb.js} +6 -6
  328. package/dist/{UpgradeToEnterpriseDialog-et3RrozN.js.map → UpgradeToEnterpriseDialog-D_S574Zb.js.map} +1 -1
  329. package/dist/{UpgradeToEnterpriseDialog-D1_viCAx.cjs → UpgradeToEnterpriseDialog-XJb6gVCY.cjs} +2 -2
  330. package/dist/{UpgradeToEnterpriseDialog-D1_viCAx.cjs.map → UpgradeToEnterpriseDialog-XJb6gVCY.cjs.map} +1 -1
  331. package/dist/{UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-D0cYHPwr.js → UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-BJxLUZhh.js} +11973 -11975
  332. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-BJxLUZhh.js.map +1 -0
  333. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-eKtA_EtD.cjs +1485 -0
  334. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-eKtA_EtD.cjs.map +1 -0
  335. package/dist/{VWidget-0kkhOxhV.js → VWidget-CxnaMF0w.js} +3 -3
  336. package/dist/{VWidget-0kkhOxhV.js.map → VWidget-CxnaMF0w.js.map} +1 -1
  337. package/dist/{VWidget-Dkji3VZ0.cjs → VWidget-dEHSEvZx.cjs} +2 -2
  338. package/dist/{VWidget-Dkji3VZ0.cjs.map → VWidget-dEHSEvZx.cjs.map} +1 -1
  339. package/dist/{ValueWidget-BoQfnx8U.js → ValueWidget-BYgpXfDo.js} +6 -6
  340. package/dist/{ValueWidget-BoQfnx8U.js.map → ValueWidget-BYgpXfDo.js.map} +1 -1
  341. package/dist/{ValueWidget-mkXMZvdK.cjs → ValueWidget-Bws1qOEI.cjs} +2 -2
  342. package/dist/{ValueWidget-mkXMZvdK.cjs.map → ValueWidget-Bws1qOEI.cjs.map} +1 -1
  343. package/dist/{ValuelimitsbarWidget-B8IUYgYx.cjs → ValuelimitsbarWidget-BoZSJvuq.cjs} +2 -2
  344. package/dist/{ValuelimitsbarWidget-B8IUYgYx.cjs.map → ValuelimitsbarWidget-BoZSJvuq.cjs.map} +1 -1
  345. package/dist/{ValuelimitsbarWidget-ZfgwDNqX.js → ValuelimitsbarWidget-Dc9-VNZ3.js} +7 -7
  346. package/dist/{ValuelimitsbarWidget-ZfgwDNqX.js.map → ValuelimitsbarWidget-Dc9-VNZ3.js.map} +1 -1
  347. package/dist/{ValuelimitscolumnWidget-B3x9DknL.js → ValuelimitscolumnWidget-b7W8K3mR.js} +7 -7
  348. package/dist/{ValuelimitscolumnWidget-B3x9DknL.js.map → ValuelimitscolumnWidget-b7W8K3mR.js.map} +1 -1
  349. package/dist/{ValuelimitscolumnWidget-B7DigaiC.cjs → ValuelimitscolumnWidget-ta9i_tiy.cjs} +2 -2
  350. package/dist/{ValuelimitscolumnWidget-B7DigaiC.cjs.map → ValuelimitscolumnWidget-ta9i_tiy.cjs.map} +1 -1
  351. package/dist/{ValuerangebarWidget-40InNHft.js → ValuerangebarWidget-DmhczZQb.js} +7 -7
  352. package/dist/{ValuerangebarWidget-40InNHft.js.map → ValuerangebarWidget-DmhczZQb.js.map} +1 -1
  353. package/dist/{ValuerangebarWidget-DA4X0MuO.cjs → ValuerangebarWidget-Ips-beG6.cjs} +2 -2
  354. package/dist/{ValuerangebarWidget-DA4X0MuO.cjs.map → ValuerangebarWidget-Ips-beG6.cjs.map} +1 -1
  355. package/dist/{VerticalWidget-BiFa3xbs.cjs → VerticalWidget-BVt7QPjO.cjs} +2 -2
  356. package/dist/{VerticalWidget-BiFa3xbs.cjs.map → VerticalWidget-BVt7QPjO.cjs.map} +1 -1
  357. package/dist/{VerticalWidget-abr1X6L7.js → VerticalWidget-BvsVh0Ob.js} +4 -4
  358. package/dist/{VerticalWidget-abr1X6L7.js.map → VerticalWidget-BvsVh0Ob.js.map} +1 -1
  359. package/dist/{VerticalboxWidget-Cx30rcqe.cjs → VerticalboxWidget-CNoXT3YW.cjs} +2 -2
  360. package/dist/{VerticalboxWidget-Cx30rcqe.cjs.map → VerticalboxWidget-CNoXT3YW.cjs.map} +1 -1
  361. package/dist/{VerticalboxWidget-DsbB17o-.js → VerticalboxWidget-ClTCDCQN.js} +7 -7
  362. package/dist/{VerticalboxWidget-DsbB17o-.js.map → VerticalboxWidget-ClTCDCQN.js.map} +1 -1
  363. package/dist/{Widget-VL9FlMQp.cjs → Widget-CB_BtOFw.cjs} +2 -2
  364. package/dist/{Widget-VL9FlMQp.cjs.map → Widget-CB_BtOFw.cjs.map} +1 -1
  365. package/dist/{Widget-DksaxMdD.js → Widget-DRhVdCLP.js} +2 -2
  366. package/dist/{Widget-DksaxMdD.js.map → Widget-DRhVdCLP.js.map} +1 -1
  367. package/dist/components.cjs +1 -1
  368. package/dist/components.js +19 -19
  369. package/dist/icons.js +2 -2
  370. package/dist/{index-Qy49-kGB.cjs → index-3sXOEKCU.cjs} +4 -4
  371. package/dist/index-3sXOEKCU.cjs.map +1 -0
  372. package/dist/{index-DqKiZufS.cjs → index-B34azWgs.cjs} +4 -4
  373. package/dist/index-B34azWgs.cjs.map +1 -0
  374. package/dist/{index-C7Uj4U87.js → index-CJcL4_a4.js} +6 -6
  375. package/dist/index-CJcL4_a4.js.map +1 -0
  376. package/dist/{index-BRc4sKEF.js → index-GYAZJDxn.js} +75 -69
  377. package/dist/index-GYAZJDxn.js.map +1 -0
  378. package/dist/plugins.cjs +1 -1
  379. package/dist/plugins.cjs.map +1 -1
  380. package/dist/plugins.js +3 -3
  381. package/dist/plugins.js.map +1 -1
  382. package/dist/purify.es-4pyphLiB.cjs +3 -0
  383. package/dist/purify.es-4pyphLiB.cjs.map +1 -0
  384. package/dist/{purify.es-DcWaZU6I.js → purify.es-BPDBzHtc.js} +115 -115
  385. package/dist/purify.es-BPDBzHtc.js.map +1 -0
  386. package/dist/{settings-D3MxiRHY.cjs → settings-B0AhztTk.cjs} +2 -2
  387. package/dist/{settings-D3MxiRHY.cjs.map → settings-B0AhztTk.cjs.map} +1 -1
  388. package/dist/{settings-BDlsBCNk.js → settings-C2auUQwX.js} +2 -2
  389. package/dist/{settings-BDlsBCNk.js.map → settings-C2auUQwX.js.map} +1 -1
  390. package/dist/tools/admin.cjs +1 -1
  391. package/dist/tools/admin.js +1 -1
  392. package/dist/tools/base.cjs +1 -1
  393. package/dist/tools/base.js +9 -9
  394. package/dist/tools/calendar.cjs +1 -1
  395. package/dist/tools/calendar.js +1 -1
  396. package/dist/tools/scriptrunner.cjs +8 -8
  397. package/dist/tools/scriptrunner.cjs.map +1 -1
  398. package/dist/tools/scriptrunner.js +3185 -2986
  399. package/dist/tools/scriptrunner.js.map +1 -1
  400. package/dist/vue-common.css +1 -1
  401. package/dist/widgets.cjs +1 -1
  402. package/dist/widgets.js +65 -65
  403. package/package.json +10 -10
  404. package/dist/EventListDialog-CktWO2jn.js.map +0 -1
  405. package/dist/EventListDialog-EAGLDaHc.cjs +0 -2
  406. package/dist/EventListDialog-EAGLDaHc.cjs.map +0 -1
  407. package/dist/Graph-9_EZ9aQx.cjs +0 -2
  408. package/dist/Graph-9_EZ9aQx.cjs.map +0 -1
  409. package/dist/Graph-GhpiUBKI.js.map +0 -1
  410. package/dist/HorizontallineWidget-CnRlq7hi.js +0 -16
  411. package/dist/MicroservicesTab-ARGtrfOb.cjs +0 -4
  412. package/dist/MicroservicesTab-ARGtrfOb.cjs.map +0 -1
  413. package/dist/MicroservicesTab-BSXNA_Si.js.map +0 -1
  414. package/dist/Openc3Screen-BP7Ho9XC.js.map +0 -1
  415. package/dist/Openc3Screen-CJOTF-lu.cjs.map +0 -1
  416. package/dist/PackagesTab-ByfVH001.js.map +0 -1
  417. package/dist/PackagesTab-HPNAXhzf.cjs +0 -2
  418. package/dist/PackagesTab-HPNAXhzf.cjs.map +0 -1
  419. package/dist/PluginsTab-D7zpmf8s.js.map +0 -1
  420. package/dist/PluginsTab-DfmpvAYa.cjs +0 -6
  421. package/dist/PluginsTab-DfmpvAYa.cjs.map +0 -1
  422. package/dist/TargetPacketItemChooser-DD7JgCD9.js.map +0 -1
  423. package/dist/TargetPacketItemChooser-PqyXKRlT.cjs +0 -2
  424. package/dist/TargetPacketItemChooser-PqyXKRlT.cjs.map +0 -1
  425. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-D0cYHPwr.js.map +0 -1
  426. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-DtL207xP.cjs +0 -1485
  427. package/dist/UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-DtL207xP.cjs.map +0 -1
  428. package/dist/index-BRc4sKEF.js.map +0 -1
  429. package/dist/index-C7Uj4U87.js.map +0 -1
  430. package/dist/index-DqKiZufS.cjs.map +0 -1
  431. package/dist/index-Qy49-kGB.cjs.map +0 -1
  432. package/dist/purify.es-B336bjAn.cjs +0 -3
  433. package/dist/purify.es-B336bjAn.cjs.map +0 -1
  434. package/dist/purify.es-DcWaZU6I.js.map +0 -1
@@ -0,0 +1,1485 @@
1
+ "use strict";const Ge=require("vue"),Cx=require("./CustomIcon-8F08upeg.cjs"),kx=require("./format-DOZQNf-X.cjs");var uo=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function el(l){return l&&l.__esModule&&Object.prototype.hasOwnProperty.call(l,"default")?l.default:l}var hc={exports:{}},Vd;function _x(){return Vd||(Vd=1,(function(l,c){(function(){var e="ace",u=(function(){return this})();!u&&typeof window<"u"&&(u=window);var M=function(a,s,o){if(typeof a!="string"){M.original?M.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(o=s),M.modules[a]||(M.payloads[a]=o,M.modules[a]=null)};M.modules={},M.payloads={};var b=function(a,s,o){if(typeof s=="string"){var r=p(a,s);if(r!=null)return o&&o(),r}else if(Object.prototype.toString.call(s)==="[object Array]"){for(var n=[],i=0,h=s.length;i<h;++i){var m=p(a,s[i]);if(m==null&&v.original)return;n.push(m)}return o&&o.apply(null,n)||!0}},v=function(a,s){var o=b("",a,s);return o==null&&v.original?v.original.apply(this,arguments):o},x=function(a,s){if(s.indexOf("!")!==-1){var o=s.split("!");return x(a,o[0])+"!"+x(a,o[1])}if(s.charAt(0)=="."){var r=a.split("/").slice(0,-1).join("/");for(s=r+"/"+s;s.indexOf(".")!==-1&&n!=s;){var n=s;s=s.replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return s},p=function(a,s){s=x(a,s);var o=M.modules[s];if(!o){if(o=M.payloads[s],typeof o=="function"){var r={},n={id:s,uri:"",exports:r,packaged:!0},i=function(m,y){return b(s,m,y)},h=o(i,r,n);r=h||n.exports,M.modules[s]=r,delete M.payloads[s]}o=M.modules[s]=r||o}return o};function f(a){var s=u;u[a]||(u[a]={}),s=u[a],(!s.define||!s.define.packaged)&&(M.original=s.define,s.define=M,s.define.packaged=!0),(!s.require||!s.require.packaged)&&(v.original=s.require,s.require=v,s.require.packaged=!0)}f(e)})(),ace.define("ace/lib/es6-shim",["require","exports","module"],function(e,u,M){function b(v,x,p){Object.defineProperty(v,x,{value:p,enumerable:!1,writable:!0,configurable:!0})}String.prototype.startsWith||b(String.prototype,"startsWith",function(v,x){return x=x||0,this.lastIndexOf(v,x)===x}),String.prototype.endsWith||b(String.prototype,"endsWith",function(v,x){var p=this;(x===void 0||x>p.length)&&(x=p.length),x-=v.length;var f=p.indexOf(v,x);return f!==-1&&f===x}),String.prototype.repeat||b(String.prototype,"repeat",function(v){for(var x="",p=this;v>0;)v&1&&(x+=p),(v>>=1)&&(p+=p);return x}),String.prototype.includes||b(String.prototype,"includes",function(v,x){return this.indexOf(v,x)!=-1}),Object.assign||(Object.assign=function(v){if(v==null)throw new TypeError("Cannot convert undefined or null to object");for(var x=Object(v),p=1;p<arguments.length;p++){var f=arguments[p];f!=null&&Object.keys(f).forEach(function(a){x[a]=f[a]})}return x}),Object.values||(Object.values=function(v){return Object.keys(v).map(function(x){return v[x]})}),Array.prototype.find||b(Array.prototype,"find",function(v){for(var x=this.length,p=arguments[1],f=0;f<x;f++){var a=this[f];if(v.call(p,a,f,this))return a}}),Array.prototype.findIndex||b(Array.prototype,"findIndex",function(v){for(var x=this.length,p=arguments[1],f=0;f<x;f++){var a=this[f];if(v.call(p,a,f,this))return f}}),Array.prototype.includes||b(Array.prototype,"includes",function(v,x){return this.indexOf(v,x)!=-1}),Array.prototype.fill||b(Array.prototype,"fill",function(v){for(var x=this,p=x.length>>>0,f=arguments[1],a=f>>0,s=a<0?Math.max(p+a,0):Math.min(a,p),o=arguments[2],r=o===void 0?p:o>>0,n=r<0?Math.max(p+r,0):Math.min(r,p);s<n;)x[s]=v,s++;return x}),Array.of||b(Array,"of",function(){return Array.prototype.slice.call(arguments)})}),ace.define("ace/lib/fixoldbrowsers",["require","exports","module","ace/lib/es6-shim"],function(e,u,M){e("./es6-shim")}),ace.define("ace/lib/deep_copy",["require","exports","module"],function(e,u,M){u.deepCopy=function b(v){if(typeof v!="object"||!v)return v;var x;if(Array.isArray(v)){x=[];for(var p=0;p<v.length;p++)x[p]=b(v[p]);return x}if(Object.prototype.toString.call(v)!=="[object Object]")return v;x={};for(var p in v)x[p]=b(v[p]);return x}}),ace.define("ace/lib/lang",["require","exports","module","ace/lib/deep_copy"],function(e,u,M){u.last=function(x){return x[x.length-1]},u.stringReverse=function(x){return x.split("").reverse().join("")},u.stringRepeat=function(x,p){for(var f="";p>0;)p&1&&(f+=x),(p>>=1)&&(x+=x);return f};var b=/^\s\s*/,v=/\s\s*$/;u.stringTrimLeft=function(x){return x.replace(b,"")},u.stringTrimRight=function(x){return x.replace(v,"")},u.copyObject=function(x){var p={};for(var f in x)p[f]=x[f];return p},u.copyArray=function(x){for(var p=[],f=0,a=x.length;f<a;f++)x[f]&&typeof x[f]=="object"?p[f]=this.copyObject(x[f]):p[f]=x[f];return p},u.deepCopy=e("./deep_copy").deepCopy,u.arrayToMap=function(x){for(var p={},f=0;f<x.length;f++)p[x[f]]=1;return p},u.createMap=function(x){var p=Object.create(null);for(var f in x)p[f]=x[f];return p},u.arrayRemove=function(x,p){for(var f=0;f<=x.length;f++)p===x[f]&&x.splice(f,1)},u.escapeRegExp=function(x){return x.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},u.escapeHTML=function(x){return(""+x).replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},u.getMatchOffsets=function(x,p){var f=[];return x.replace(p,function(a){f.push({offset:arguments[arguments.length-2],length:a.length})}),f},u.deferredCall=function(x){var p=null,f=function(){p=null,x()},a=function(s){return a.cancel(),p=setTimeout(f,s||0),a};return a.schedule=a,a.call=function(){return this.cancel(),x(),a},a.cancel=function(){return clearTimeout(p),p=null,a},a.isPending=function(){return p},a},u.delayedCall=function(x,p){var f=null,a=function(){f=null,x()},s=function(o){f==null&&(f=setTimeout(a,o||p))};return s.delay=function(o){f&&clearTimeout(f),f=setTimeout(a,o||p)},s.schedule=s,s.call=function(){this.cancel(),x()},s.cancel=function(){f&&clearTimeout(f),f=null},s.isPending=function(){return f},s},u.supportsLookbehind=function(){try{new RegExp("(?<=.)")}catch{return!1}return!0},u.skipEmptyMatch=function(x,p,f){return f&&x.codePointAt(p)>65535?2:1}}),ace.define("ace/lib/useragent",["require","exports","module"],function(e,u,M){u.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},u.getOS=function(){return u.isMac?u.OS.MAC:u.isLinux?u.OS.LINUX:u.OS.WINDOWS};var b=typeof navigator=="object"?navigator:{},v=(/mac|win|linux/i.exec(b.platform)||["other"])[0].toLowerCase(),x=b.userAgent||"",p=b.appName||"";u.isWin=v=="win",u.isMac=v=="mac",u.isLinux=v=="linux",u.isIE=p=="Microsoft Internet Explorer"||p.indexOf("MSAppHost")>=0?parseFloat((x.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((x.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),u.isOldIE=u.isIE&&u.isIE<9,u.isGecko=u.isMozilla=x.match(/ Gecko\/\d+/),u.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window.opera)=="[object Opera]",u.isWebKit=parseFloat(x.split("WebKit/")[1])||void 0,u.isChrome=parseFloat(x.split(" Chrome/")[1])||void 0,u.isSafari=parseFloat(x.split(" Safari/")[1])&&!u.isChrome||void 0,u.isEdge=parseFloat(x.split(" Edge/")[1])||void 0,u.isAIR=x.indexOf("AdobeAIR")>=0,u.isAndroid=x.indexOf("Android")>=0,u.isChromeOS=x.indexOf(" CrOS ")>=0,u.isIOS=/iPad|iPhone|iPod/.test(x)&&!window.MSStream,u.isIOS&&(u.isMac=!0),u.isMobile=u.isIOS||u.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(e,u,M){var b=e("./useragent"),v="http://www.w3.org/1999/xhtml";u.buildDom=function o(r,n,i){if(typeof r=="string"&&r){var h=document.createTextNode(r);return n&&n.appendChild(h),h}if(!Array.isArray(r))return r&&r.appendChild&&n&&n.appendChild(r),r;if(typeof r[0]!="string"||!r[0]){for(var m=[],y=0;y<r.length;y++){var R=o(r[y],n,i);R&&m.push(R)}return m}var T=document.createElement(r[0]),k=r[1],w=1;k&&typeof k=="object"&&!Array.isArray(k)&&(w=2);for(var y=w;y<r.length;y++)o(r[y],T,i);return w==2&&Object.keys(k).forEach(function(I){var D=k[I];I==="class"?T.className=Array.isArray(D)?D.join(" "):D:typeof D=="function"||I=="value"||I[0]=="$"?T[I]=D:I==="ref"?i&&(i[D]=T):I==="style"?typeof D=="string"&&(T.style.cssText=D):D!=null&&T.setAttribute(I,D)}),n&&n.appendChild(T),T},u.getDocumentHead=function(o){return o||(o=document),o.head||o.getElementsByTagName("head")[0]||o.documentElement},u.createElement=function(o,r){return document.createElementNS?document.createElementNS(r||v,o):document.createElement(o)},u.removeChildren=function(o){o.innerHTML=""},u.createTextNode=function(o,r){var n=r?r.ownerDocument:document;return n.createTextNode(o)},u.createFragment=function(o){var r=o?o.ownerDocument:document;return r.createDocumentFragment()},u.hasCssClass=function(o,r){var n=(o.className+"").split(/\s+/g);return n.indexOf(r)!==-1},u.addCssClass=function(o,r){u.hasCssClass(o,r)||(o.className+=" "+r)},u.removeCssClass=function(o,r){for(var n=o.className.split(/\s+/g);;){var i=n.indexOf(r);if(i==-1)break;n.splice(i,1)}o.className=n.join(" ")},u.toggleCssClass=function(o,r){for(var n=o.className.split(/\s+/g),i=!0;;){var h=n.indexOf(r);if(h==-1)break;i=!1,n.splice(h,1)}return i&&n.push(r),o.className=n.join(" "),i},u.setCssClass=function(o,r,n){n?u.addCssClass(o,r):u.removeCssClass(o,r)},u.hasCssString=function(o,r){var n=0,i;if(r=r||document,i=r.querySelectorAll("style")){for(;n<i.length;)if(i[n++].id===o)return!0}},u.removeElementById=function(o,r){r=r||document,r.getElementById(o)&&r.getElementById(o).remove()};var x,p=[];u.useStrictCSP=function(o){x=o,o==!1?f():p||(p=[])};function f(){var o=p;p=null,o&&o.forEach(function(r){a(r[0],r[1])})}function a(o,r,n){if(!(typeof document>"u")){if(p){if(n)f();else if(n===!1)return p.push([o,r])}if(!x){var i=n;!n||!n.getRootNode?i=document:(i=n.getRootNode(),(!i||i==n)&&(i=document));var h=i.ownerDocument||i;if(r&&u.hasCssString(r,i))return null;r&&(o+=`
2
+ /*# sourceURL=ace/css/`+r+" */");var m=u.createElement("style");m.appendChild(h.createTextNode(o)),r&&(m.id=r),i==h&&(i=u.getDocumentHead(h)),i.insertBefore(m,i.firstChild)}}}if(u.importCssString=a,u.importCssStylsheet=function(o,r){u.buildDom(["link",{rel:"stylesheet",href:o}],u.getDocumentHead(r))},u.$fixPositionBug=function(o){var r=o.getBoundingClientRect();if(o.style.left){var n=parseFloat(o.style.left),i=+r.left;Math.abs(n-i)>1&&(o.style.left=2*n-i+"px")}if(o.style.right){var n=parseFloat(o.style.right),i=window.innerWidth-r.right;Math.abs(n-i)>1&&(o.style.right=2*n-i+"px")}if(o.style.top){var n=parseFloat(o.style.top),i=+r.top;Math.abs(n-i)>1&&(o.style.top=2*n-i+"px")}if(o.style.bottom){var n=parseFloat(o.style.bottom),i=window.innerHeight-r.bottom;Math.abs(n-i)>1&&(o.style.bottom=2*n-i+"px")}},u.scrollbarWidth=function(o){var r=u.createElement("ace_inner");r.style.width="100%",r.style.minWidth="0px",r.style.height="200px",r.style.display="block";var n=u.createElement("ace_outer"),i=n.style;i.position="absolute",i.left="-10000px",i.overflow="hidden",i.width="200px",i.minWidth="0px",i.height="150px",i.display="block",n.appendChild(r);var h=o&&o.documentElement||document&&document.documentElement;if(!h)return 0;h.appendChild(n);var m=r.offsetWidth;i.overflow="scroll";var y=r.offsetWidth;return m===y&&(y=n.clientWidth),h.removeChild(n),m-y},u.computedStyle=function(o,r){return window.getComputedStyle(o,"")||{}},u.setStyle=function(o,r,n){o[r]!==n&&(o[r]=n)},u.HAS_CSS_ANIMATION=!1,u.HAS_CSS_TRANSFORMS=!1,u.HI_DPI=b.isWin?typeof window<"u"&&window.devicePixelRatio>=1.5:!0,b.isChromeOS&&(u.HI_DPI=!1),typeof document<"u"){var s=document.createElement("div");u.HI_DPI&&s.style.transform!==void 0&&(u.HAS_CSS_TRANSFORMS=!0),!b.isEdge&&typeof s.style.animationName<"u"&&(u.HAS_CSS_ANIMATION=!0),s=null}u.HAS_CSS_TRANSFORMS?u.translate=function(o,r,n){o.style.transform="translate("+Math.round(r)+"px, "+Math.round(n)+"px)"}:u.translate=function(o,r,n){o.style.top=Math.round(n)+"px",o.style.left=Math.round(r)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(e,u,M){var b=e("./dom");u.get=function(v,x){var p=new XMLHttpRequest;p.open("GET",v,!0),p.onreadystatechange=function(){p.readyState===4&&x(p.responseText)},p.send(null)},u.loadScript=function(v,x){var p=b.getDocumentHead(),f=document.createElement("script");f.src=v,p.appendChild(f),f.onload=f.onreadystatechange=function(a,s){(s||!f.readyState||f.readyState=="loaded"||f.readyState=="complete")&&(f=f.onload=f.onreadystatechange=null,s||x())}},u.qualifyURL=function(v){var x=document.createElement("a");return x.href=v,x.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(e,u,M){u.inherits=function(b,v){b.super_=v,b.prototype=Object.create(v.prototype,{constructor:{value:b,enumerable:!1,writable:!0,configurable:!0}})},u.mixin=function(b,v){for(var x in v)b[x]=v[x];return b},u.implement=function(b,v){u.mixin(b,v)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(e,u,M){var b={},v=function(){this.propagationStopped=!0},x=function(){this.defaultPrevented=!0};b._emit=b._dispatchEvent=function(p,f){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var a=this._eventRegistry[p]||[],s=this._defaultHandlers[p];if(!(!a.length&&!s)){(typeof f!="object"||!f)&&(f={}),f.type||(f.type=p),f.stopPropagation||(f.stopPropagation=v),f.preventDefault||(f.preventDefault=x),a=a.slice();for(var o=0;o<a.length&&(a[o](f,this),!f.propagationStopped);o++);if(s&&!f.defaultPrevented)return s(f,this)}},b._signal=function(p,f){var a=(this._eventRegistry||{})[p];if(a){a=a.slice();for(var s=0;s<a.length;s++)a[s](f,this)}},b.once=function(p,f){var a=this;if(this.on(p,function s(){a.off(p,s),f.apply(null,arguments)}),!f)return new Promise(function(s){f=s})},b.setDefaultHandler=function(p,f){var a=this._defaultHandlers;if(a||(a=this._defaultHandlers={_disabled_:{}}),a[p]){var s=a[p],o=a._disabled_[p];o||(a._disabled_[p]=o=[]),o.push(s);var r=o.indexOf(f);r!=-1&&o.splice(r,1)}a[p]=f},b.removeDefaultHandler=function(p,f){var a=this._defaultHandlers;if(a){var s=a._disabled_[p];if(a[p]==f)s&&this.setDefaultHandler(p,s.pop());else if(s){var o=s.indexOf(f);o!=-1&&s.splice(o,1)}}},b.on=b.addEventListener=function(p,f,a){this._eventRegistry=this._eventRegistry||{};var s=this._eventRegistry[p];return s||(s=this._eventRegistry[p]=[]),s.indexOf(f)==-1&&s[a?"unshift":"push"](f),f},b.off=b.removeListener=b.removeEventListener=function(p,f){this._eventRegistry=this._eventRegistry||{};var a=this._eventRegistry[p];if(a){var s=a.indexOf(f);s!==-1&&a.splice(s,1)}},b.removeAllListeners=function(p){p||(this._eventRegistry=this._defaultHandlers=void 0),this._eventRegistry&&(this._eventRegistry[p]=void 0),this._defaultHandlers&&(this._defaultHandlers[p]=void 0)},u.EventEmitter=b}),ace.define("ace/lib/report_error",["require","exports","module"],function(e,u,M){u.reportError=function(v,x){var p=new Error(v);p.data=x,typeof console=="object"&&console.error&&console.error(p),setTimeout(function(){throw p})}}),ace.define("ace/lib/default_english_messages",["require","exports","module"],function(e,u,M){var b={"autocomplete.popup.aria-roledescription":"Autocomplete suggestions","autocomplete.popup.aria-label":"Autocomplete suggestions","autocomplete.popup.item.aria-roledescription":"item","autocomplete.loading":"Loading...","editor.scroller.aria-roledescription":"editor","editor.scroller.aria-label":"Editor content, press Enter to start editing, press Escape to exit","editor.gutter.aria-roledescription":"editor gutter","editor.gutter.aria-label":"Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit","error-marker.good-state":"Looks good!","prompt.recently-used":"Recently used","prompt.other-commands":"Other commands","prompt.no-matching-commands":"No matching commands","search-box.find.placeholder":"Search for","search-box.find-all.text":"All","search-box.replace.placeholder":"Replace with","search-box.replace-next.text":"Replace","search-box.replace-all.text":"All","search-box.toggle-replace.title":"Toggle Replace mode","search-box.toggle-regexp.title":"RegExp Search","search-box.toggle-case.title":"CaseSensitive Search","search-box.toggle-whole-word.title":"Whole Word Search","search-box.toggle-in-selection.title":"Search In Selection","search-box.search-counter":"$0 of $1","text-input.aria-roledescription":"editor","text-input.aria-label":"Cursor at row $0","gutter.code-folding.range.aria-label":"Toggle code folding, rows $0 through $1","gutter.code-folding.closed.aria-label":"Toggle code folding, rows $0 through $1","gutter.code-folding.open.aria-label":"Toggle code folding, row $0","gutter.code-folding.closed.title":"Unfold code","gutter.code-folding.open.title":"Fold code","gutter.annotation.aria-label.error":"Error, read annotations row $0","gutter.annotation.aria-label.warning":"Warning, read annotations row $0","gutter.annotation.aria-label.info":"Info, read annotations row $0","inline-fold.closed.title":"Unfold code","gutter-tooltip.aria-label.error.singular":"error","gutter-tooltip.aria-label.error.plural":"errors","gutter-tooltip.aria-label.warning.singular":"warning","gutter-tooltip.aria-label.warning.plural":"warnings","gutter-tooltip.aria-label.info.singular":"information message","gutter-tooltip.aria-label.info.plural":"information messages","gutter.annotation.aria-label.security":"Security finding, read annotations row $0","gutter.annotation.aria-label.hint":"Suggestion, read annotations row $0","gutter-tooltip.aria-label.security.singular":"security finding","gutter-tooltip.aria-label.security.plural":"security findings","gutter-tooltip.aria-label.hint.singular":"suggestion","gutter-tooltip.aria-label.hint.plural":"suggestions","editor.tooltip.disable-editing":"Editing is disabled"};u.defaultEnglishMessages=b}),ace.define("ace/lib/app_config",["require","exports","module","ace/lib/oop","ace/lib/event_emitter","ace/lib/report_error","ace/lib/default_english_messages"],function(e,u,M){"no use strict";var b=e("./oop"),v=e("./event_emitter").EventEmitter,x=e("./report_error").reportError,p=e("./default_english_messages").defaultEnglishMessages,f={setOptions:function(n){Object.keys(n).forEach(function(i){this.setOption(i,n[i])},this)},getOptions:function(n){var i={};if(n)Array.isArray(n)||(n=Object.keys(n));else{var h=this.$options;n=Object.keys(h).filter(function(m){return!h[m].hidden})}return n.forEach(function(m){i[m]=this.getOption(m)},this),i},setOption:function(n,i){if(this["$"+n]!==i){var h=this.$options[n];if(!h)return a('misspelled option "'+n+'"');if(h.forwardTo)return this[h.forwardTo]&&this[h.forwardTo].setOption(n,i);h.handlesSet||(this["$"+n]=i),h&&h.set&&h.set.call(this,i)}},getOption:function(n){var i=this.$options[n];return i?i.forwardTo?this[i.forwardTo]&&this[i.forwardTo].getOption(n):i&&i.get?i.get.call(this):this["$"+n]:a('misspelled option "'+n+'"')}};function a(n){typeof console<"u"&&console.warn&&console.warn.apply(console,arguments)}var s,o,r=(function(){function n(){this.$defaultOptions={},s=p,o="dollarSigns"}return n.prototype.defineOptions=function(i,h,m){return i.$options||(this.$defaultOptions[h]=i.$options={}),Object.keys(m).forEach(function(y){var R=m[y];typeof R=="string"&&(R={forwardTo:R}),R.name||(R.name=y),i.$options[R.name]=R,"initialValue"in R&&(i["$"+R.name]=R.initialValue)}),b.implement(i,f),this},n.prototype.resetOptions=function(i){Object.keys(i.$options).forEach(function(h){var m=i.$options[h];"value"in m&&i.setOption(h,m.value)})},n.prototype.setDefaultValue=function(i,h,m){if(!i){for(i in this.$defaultOptions)if(this.$defaultOptions[i][h])break;if(!this.$defaultOptions[i][h])return!1}var y=this.$defaultOptions[i]||(this.$defaultOptions[i]={});y[h]&&(y.forwardTo?this.setDefaultValue(y.forwardTo,h,m):y[h].value=m)},n.prototype.setDefaultValues=function(i,h){Object.keys(h).forEach(function(m){this.setDefaultValue(i,m,h[m])},this)},n.prototype.setMessages=function(i,h){s=i,h&&h.placeholders&&(o=h.placeholders)},n.prototype.nls=function(i,h,m){s[i]||(a("No message found for the key '"+i+"' in messages with id "+s.$id+", trying to find a translation for the default string '"+h+"'."),s[h]||a("No message found for the default string '"+h+"' in the provided messages. Falling back to the default English message."));var y=s[i]||s[h]||h;return m&&(o==="dollarSigns"&&(y=y.replace(/\$(\$|[\d]+)/g,function(R,T){return T=="$"?"$":m[T]})),o==="curlyBrackets"&&(y=y.replace(/\{([^\}]+)\}/g,function(R,T){return m[T]}))),y},n})();r.prototype.warn=a,r.prototype.reportError=x,b.implement(r.prototype,v),u.AppConfig=r}),ace.define("ace/theme/textmate-css",["require","exports","module"],function(e,u,M){M.exports=`.ace-tm .ace_gutter {
3
+ background: #f0f0f0;
4
+ color: #333;
5
+ }
6
+
7
+ .ace-tm .ace_print-margin {
8
+ width: 1px;
9
+ background: #e8e8e8;
10
+ }
11
+
12
+ .ace-tm .ace_fold {
13
+ background-color: #6B72E6;
14
+ }
15
+
16
+ .ace-tm {
17
+ background-color: #FFFFFF;
18
+ color: black;
19
+ }
20
+
21
+ .ace-tm .ace_cursor {
22
+ color: black;
23
+ }
24
+
25
+ .ace-tm .ace_invisible {
26
+ color: rgb(191, 191, 191);
27
+ }
28
+
29
+ .ace-tm .ace_storage,
30
+ .ace-tm .ace_keyword {
31
+ color: blue;
32
+ }
33
+
34
+ .ace-tm .ace_constant {
35
+ color: rgb(197, 6, 11);
36
+ }
37
+
38
+ .ace-tm .ace_constant.ace_buildin {
39
+ color: rgb(88, 72, 246);
40
+ }
41
+
42
+ .ace-tm .ace_constant.ace_language {
43
+ color: rgb(88, 92, 246);
44
+ }
45
+
46
+ .ace-tm .ace_constant.ace_library {
47
+ color: rgb(6, 150, 14);
48
+ }
49
+
50
+ .ace-tm .ace_invalid {
51
+ background-color: rgba(255, 0, 0, 0.1);
52
+ color: red;
53
+ }
54
+
55
+ .ace-tm .ace_support.ace_function {
56
+ color: rgb(60, 76, 114);
57
+ }
58
+
59
+ .ace-tm .ace_support.ace_constant {
60
+ color: rgb(6, 150, 14);
61
+ }
62
+
63
+ .ace-tm .ace_support.ace_type,
64
+ .ace-tm .ace_support.ace_class {
65
+ color: rgb(109, 121, 222);
66
+ }
67
+
68
+ .ace-tm .ace_keyword.ace_operator {
69
+ color: rgb(104, 118, 135);
70
+ }
71
+
72
+ .ace-tm .ace_string {
73
+ color: rgb(3, 106, 7);
74
+ }
75
+
76
+ .ace-tm .ace_comment {
77
+ color: rgb(76, 136, 107);
78
+ }
79
+
80
+ .ace-tm .ace_comment.ace_doc {
81
+ color: rgb(0, 102, 255);
82
+ }
83
+
84
+ .ace-tm .ace_comment.ace_doc.ace_tag {
85
+ color: rgb(128, 159, 191);
86
+ }
87
+
88
+ .ace-tm .ace_constant.ace_numeric {
89
+ color: rgb(0, 0, 205);
90
+ }
91
+
92
+ .ace-tm .ace_variable {
93
+ color: rgb(49, 132, 149);
94
+ }
95
+
96
+ .ace-tm .ace_xml-pe {
97
+ color: rgb(104, 104, 91);
98
+ }
99
+
100
+ .ace-tm .ace_entity.ace_name.ace_function {
101
+ color: #0000A2;
102
+ }
103
+
104
+
105
+ .ace-tm .ace_heading {
106
+ color: rgb(12, 7, 255);
107
+ }
108
+
109
+ .ace-tm .ace_list {
110
+ color:rgb(185, 6, 144);
111
+ }
112
+
113
+ .ace-tm .ace_meta.ace_tag {
114
+ color:rgb(0, 22, 142);
115
+ }
116
+
117
+ .ace-tm .ace_string.ace_regex {
118
+ color: rgb(255, 0, 0)
119
+ }
120
+
121
+ .ace-tm .ace_marker-layer .ace_selection {
122
+ background: rgb(181, 213, 255);
123
+ }
124
+ .ace-tm.ace_multiselect .ace_selection.ace_start {
125
+ box-shadow: 0 0 3px 0px white;
126
+ }
127
+ .ace-tm .ace_marker-layer .ace_step {
128
+ background: rgb(252, 255, 0);
129
+ }
130
+
131
+ .ace-tm .ace_marker-layer .ace_stack {
132
+ background: rgb(164, 229, 101);
133
+ }
134
+
135
+ .ace-tm .ace_marker-layer .ace_bracket {
136
+ margin: -1px 0 0 -1px;
137
+ border: 1px solid rgb(192, 192, 192);
138
+ }
139
+
140
+ .ace-tm .ace_marker-layer .ace_active-line {
141
+ background: rgba(0, 0, 0, 0.07);
142
+ }
143
+
144
+ .ace-tm .ace_gutter-active-line {
145
+ background-color : #dcdcdc;
146
+ }
147
+
148
+ .ace-tm .ace_marker-layer .ace_selected-word {
149
+ background: rgb(250, 250, 255);
150
+ border: 1px solid rgb(200, 200, 250);
151
+ }
152
+
153
+ .ace-tm .ace_indent-guide {
154
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;
155
+ }
156
+
157
+ .ace-tm .ace_indent-guide-active {
158
+ background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC") right repeat-y;
159
+ }
160
+ `}),ace.define("ace/theme/textmate",["require","exports","module","ace/theme/textmate-css","ace/lib/dom"],function(e,u,M){u.isDark=!1,u.cssClass="ace-tm",u.cssText=e("./textmate-css"),u.$id="ace/theme/textmate";var b=e("../lib/dom");b.importCssString(u.cssText,u.cssClass,!1)}),ace.define("ace/config",["require","exports","module","ace/lib/lang","ace/lib/net","ace/lib/dom","ace/lib/app_config","ace/theme/textmate"],function(e,u,M){"no use strict";var b=e("./lib/lang"),v=e("./lib/net"),x=e("./lib/dom"),p=e("./lib/app_config").AppConfig;M.exports=u=new p;var f={packaged:!1,workerPath:null,modePath:null,themePath:null,basePath:"",suffix:".js",$moduleUrls:{},loadWorkerFromBlob:!0,sharedPopups:!1,useStrictCSP:null};u.get=function(r){if(!f.hasOwnProperty(r))throw new Error("Unknown config key: "+r);return f[r]},u.set=function(r,n){if(f.hasOwnProperty(r))f[r]=n;else if(this.setDefaultValue("",r,n)==!1)throw new Error("Unknown config key: "+r);r=="useStrictCSP"&&x.useStrictCSP(n)},u.all=function(){return b.copyObject(f)},u.$modes={},u.moduleUrl=function(r,n){if(f.$moduleUrls[r])return f.$moduleUrls[r];var i=r.split("/");n=n||i[i.length-2]||"";var h=n=="snippets"?"/":"-",m=i[i.length-1];if(n=="worker"&&h=="-"){var y=new RegExp("^"+n+"[\\-_]|[\\-_]"+n+"$","g");m=m.replace(y,"")}(!m||m==n)&&i.length>1&&(m=i[i.length-2]);var R=f[n+"Path"];return R==null?R=f.basePath:h=="/"&&(n=h=""),R&&R.slice(-1)!="/"&&(R+="/"),R+n+h+m+this.get("suffix")},u.setModuleUrl=function(r,n){return f.$moduleUrls[r]=n};var a=function(r,n){if(r==="ace/theme/textmate"||r==="./theme/textmate")return n(null,e("./theme/textmate"));if(s)return s(r,n);console.error("loader is not configured")},s;u.setLoader=function(r){s=r},u.dynamicModules=Object.create(null),u.$loading={},u.$loaded={},u.loadModule=function(r,n){var i;if(Array.isArray(r))var h=r[0],m=r[1];else if(typeof r=="string")var m=r;var y=function(R){if(R&&!u.$loading[m])return n&&n(R);if(u.$loading[m]||(u.$loading[m]=[]),u.$loading[m].push(n),!(u.$loading[m].length>1)){var T=function(){a(m,function(k,w){w&&(u.$loaded[m]=w),u._emit("load.module",{name:m,module:w});var I=u.$loading[m];u.$loading[m]=null,I.forEach(function(D){D&&D(w)})})};if(!u.get("packaged"))return T();v.loadScript(u.moduleUrl(m,h),T),o()}};if(u.dynamicModules[m])u.dynamicModules[m]().then(function(R){R.default?y(R.default):y(R)});else{try{i=this.$require(m)}catch{}y(i||u.$loaded[m])}},u.$require=function(r){if(typeof M.require=="function"){var n="require";return M[n](r)}},u.setModuleLoader=function(r,n){u.dynamicModules[r]=n};var o=function(){!f.basePath&&!f.workerPath&&!f.modePath&&!f.themePath&&!Object.keys(f.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),o=function(){})};u.version="1.43.6"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(e,u,M){e("./lib/fixoldbrowsers");var b=e("./config");b.setLoader(function(f,a){e([f],function(s){a(null,s)})});var v=(function(){return this||typeof window<"u"&&window})();M.exports=function(f){b.init=x,b.$require=e,f.require=e},x(!0);function x(f){if(!(!v||!v.document)){b.set("packaged",f||e.packaged||M.packaged||v.define&&(void 0).packaged);var a={},s="",o=document.currentScript||document._currentScript,r=o&&o.ownerDocument||document;o&&o.src&&(s=o.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var n=r.getElementsByTagName("script"),i=0;i<n.length;i++){var h=n[i],m=h.src||h.getAttribute("src");if(m){for(var y=h.attributes,R=0,T=y.length;R<T;R++){var k=y[R];k.name.indexOf("data-ace-")===0&&(a[p(k.name.replace(/^data-ace-/,""))]=k.value)}var w=m.match(/^(.*)\/ace([\-.]\w+)?\.js(\?|$)/);w&&(s=w[1])}}s&&(a.base=a.base||s,a.packaged=!0),a.basePath=a.base,a.workerPath=a.workerPath||a.base,a.modePath=a.modePath||a.base,a.themePath=a.themePath||a.base,delete a.base;for(var I in a)typeof a[I]<"u"&&b.set(I,a[I])}}function p(f){return f.replace(/-(.)/g,function(a,s){return s.toUpperCase()})}}),ace.define("ace/range",["require","exports","module"],function(e,u,M){var b=(function(){function v(x,p,f,a){this.start={row:x,column:p},this.end={row:f,column:a}}return v.prototype.isEqual=function(x){return this.start.row===x.start.row&&this.end.row===x.end.row&&this.start.column===x.start.column&&this.end.column===x.end.column},v.prototype.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},v.prototype.contains=function(x,p){return this.compare(x,p)==0},v.prototype.compareRange=function(x){var p,f=x.end,a=x.start;return p=this.compare(f.row,f.column),p==1?(p=this.compare(a.row,a.column),p==1?2:p==0?1:0):p==-1?-2:(p=this.compare(a.row,a.column),p==-1?-1:p==1?42:0)},v.prototype.comparePoint=function(x){return this.compare(x.row,x.column)},v.prototype.containsRange=function(x){return this.comparePoint(x.start)==0&&this.comparePoint(x.end)==0},v.prototype.intersects=function(x){var p=this.compareRange(x);return p==-1||p==0||p==1},v.prototype.isEnd=function(x,p){return this.end.row==x&&this.end.column==p},v.prototype.isStart=function(x,p){return this.start.row==x&&this.start.column==p},v.prototype.setStart=function(x,p){typeof x=="object"?(this.start.column=x.column,this.start.row=x.row):(this.start.row=x,this.start.column=p)},v.prototype.setEnd=function(x,p){typeof x=="object"?(this.end.column=x.column,this.end.row=x.row):(this.end.row=x,this.end.column=p)},v.prototype.inside=function(x,p){return this.compare(x,p)==0?!(this.isEnd(x,p)||this.isStart(x,p)):!1},v.prototype.insideStart=function(x,p){return this.compare(x,p)==0?!this.isEnd(x,p):!1},v.prototype.insideEnd=function(x,p){return this.compare(x,p)==0?!this.isStart(x,p):!1},v.prototype.compare=function(x,p){return!this.isMultiLine()&&x===this.start.row?p<this.start.column?-1:p>this.end.column?1:0:x<this.start.row?-1:x>this.end.row?1:this.start.row===x?p>=this.start.column?0:-1:this.end.row===x?p<=this.end.column?0:1:0},v.prototype.compareStart=function(x,p){return this.start.row==x&&this.start.column==p?-1:this.compare(x,p)},v.prototype.compareEnd=function(x,p){return this.end.row==x&&this.end.column==p?1:this.compare(x,p)},v.prototype.compareInside=function(x,p){return this.end.row==x&&this.end.column==p?1:this.start.row==x&&this.start.column==p?-1:this.compare(x,p)},v.prototype.clipRows=function(x,p){if(this.end.row>p)var f={row:p+1,column:0};else if(this.end.row<x)var f={row:x,column:0};if(this.start.row>p)var a={row:p+1,column:0};else if(this.start.row<x)var a={row:x,column:0};return v.fromPoints(a||this.start,f||this.end)},v.prototype.extend=function(x,p){var f=this.compare(x,p);if(f==0)return this;if(f==-1)var a={row:x,column:p};else var s={row:x,column:p};return v.fromPoints(a||this.start,s||this.end)},v.prototype.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},v.prototype.isMultiLine=function(){return this.start.row!==this.end.row},v.prototype.clone=function(){return v.fromPoints(this.start,this.end)},v.prototype.collapseRows=function(){return this.end.column==0?new v(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new v(this.start.row,0,this.end.row,0)},v.prototype.toScreenRange=function(x){var p=x.documentToScreenPosition(this.start),f=x.documentToScreenPosition(this.end);return new v(p.row,p.column,f.row,f.column)},v.prototype.moveBy=function(x,p){this.start.row+=x,this.start.column+=p,this.end.row+=x,this.end.column+=p},v})();b.fromPoints=function(v,x){return new b(v.row,v.column,x.row,x.column)},b.comparePoints=function(v,x){return v.row-x.row||v.column-x.column},u.Range=b}),ace.define("ace/lib/keys",["require","exports","module","ace/lib/oop"],function(e,u,M){for(var b=e("./oop"),v={MODIFIER_KEYS:{16:"Shift",17:"Ctrl",18:"Alt",224:"Meta",91:"MetaLeft",92:"MetaRight",93:"ContextMenu"},KEY_MODS:{ctrl:1,alt:2,option:2,shift:4,super:8,meta:8,command:8,cmd:8,control:1},FUNCTION_KEYS:{8:"Backspace",9:"Tab",13:"Return",19:"Pause",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"Print",45:"Insert",46:"Delete","-13":"NumpadEnter",144:"Numlock",145:"Scrolllock"},PRINTABLE_KEYS:{32:" ",59:";",61:"=",107:"+",109:"-",110:".",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",111:"/",106:"*"}},x={Command:224,Backspace:8,Tab:9,Return:13,Enter:13,Pause:19,Escape:27,PageUp:33,PageDown:34,End:35,Home:36,Insert:45,Delete:46,ArrowLeft:37,ArrowUp:38,ArrowRight:39,ArrowDown:40,Backquote:192,Minus:189,Equal:187,BracketLeft:219,Backslash:220,BracketRight:221,Semicolon:186,Quote:222,Comma:188,Period:190,Slash:191,Space:32,NumpadAdd:107,NumpadDecimal:110,NumpadSubtract:109,NumpadDivide:111,NumpadMultiply:106},p=0;p<10;p++)x["Digit"+p]=48+p,x["Numpad"+p]=96+p,v.PRINTABLE_KEYS[48+p]=""+p,v.FUNCTION_KEYS[96+p]="Numpad"+p;for(var p=65;p<91;p++){var f=String.fromCharCode(p+32);x["Key"+f.toUpperCase()]=p,v.PRINTABLE_KEYS[p]=f}for(var p=1;p<13;p++)x["F"+p]=111+p,v.FUNCTION_KEYS[111+p]="F"+p;var a={Shift:16,Control:17,Alt:18,Meta:224};for(var s in a)x[s]=x[s+"Left"]=x[s+"Right"]=a[s];u.$codeToKeyCode=x,v.PRINTABLE_KEYS[173]="-";for(var o in v.FUNCTION_KEYS){var r=v.FUNCTION_KEYS[o].toLowerCase();v[r]=parseInt(o,10)}for(var o in v.PRINTABLE_KEYS){var r=v.PRINTABLE_KEYS[o].toLowerCase();v[r]=parseInt(o,10)}b.mixin(v,v.MODIFIER_KEYS),b.mixin(v,v.PRINTABLE_KEYS),b.mixin(v,v.FUNCTION_KEYS),v.enter=v.return,v.escape=v.esc,v.del=v.delete,(function(){for(var n=["cmd","ctrl","alt","shift"],i=Math.pow(2,n.length);i--;)v.KEY_MODS[i]=n.filter(function(h){return i&v.KEY_MODS[h]}).join("-")+"-"})(),v.KEY_MODS[0]="",v.KEY_MODS[-1]="input-",b.mixin(u,v),u.default=u,u.keyCodeToString=function(n){var i=v[n];return typeof i!="string"&&(i=String.fromCharCode(n)),i.toLowerCase()}}),ace.define("ace/lib/event",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,u,M){var b=e("./keys"),v=e("./useragent"),x=null,p=0,f;function a(){f=!1;try{document.createComment("").addEventListener("test",function(){},{get passive(){return f={passive:!1},!0}})}catch{}}function s(){return f==null&&a(),f}function o(R,T,k){this.elem=R,this.type=T,this.callback=k}o.prototype.destroy=function(){n(this.elem,this.type,this.callback),this.elem=this.type=this.callback=void 0};var r=u.addListener=function(R,T,k,w){R.addEventListener(T,k,s()),w&&w.$toDestroy.push(new o(R,T,k))},n=u.removeListener=function(R,T,k){R.removeEventListener(T,k,s())};u.stopEvent=function(R){return u.stopPropagation(R),u.preventDefault(R),!1},u.stopPropagation=function(R){R.stopPropagation&&R.stopPropagation()},u.preventDefault=function(R){R.preventDefault&&R.preventDefault()},u.getButton=function(R){return R.type=="dblclick"?0:R.type=="contextmenu"||v.isMac&&R.ctrlKey&&!R.altKey&&!R.shiftKey?2:R.button},u.capture=function(R,T,k){var w=R&&R.ownerDocument||document;function I(D){T&&T(D),k&&k(D),n(w,"mousemove",T),n(w,"mouseup",I),n(w,"dragstart",I)}return r(w,"mousemove",T),r(w,"mouseup",I),r(w,"dragstart",I),I},u.addMouseWheelListener=function(R,T,k){r(R,"wheel",function(w){var I=.15,D=w.deltaX||0,E=w.deltaY||0;switch(w.deltaMode){case w.DOM_DELTA_PIXEL:w.wheelX=D*I,w.wheelY=E*I;break;case w.DOM_DELTA_LINE:var L=15;w.wheelX=D*L,w.wheelY=E*L;break;case w.DOM_DELTA_PAGE:var z=150;w.wheelX=D*z,w.wheelY=E*z;break}T(w)},k)},u.addMultiMouseDownListener=function(R,T,k,w,I){var D=0,E,L,z,F={2:"dblclick",3:"tripleclick",4:"quadclick"};function O(A){if(u.getButton(A)!==0?D=0:A.detail>1?(D++,D>4&&(D=1)):D=1,v.isIE){var S=Math.abs(A.clientX-E)>5||Math.abs(A.clientY-L)>5;(!z||S)&&(D=1),z&&clearTimeout(z),z=setTimeout(function(){z=null},T[D-1]||600),D==1&&(E=A.clientX,L=A.clientY)}if(A._clicks=D,k[w]("mousedown",A),D>4)D=0;else if(D>1)return k[w](F[D],A)}Array.isArray(R)||(R=[R]),R.forEach(function(A){r(A,"mousedown",O,I)})};function i(R){return 0|(R.ctrlKey?1:0)|(R.altKey?2:0)|(R.shiftKey?4:0)|(R.metaKey?8:0)}u.getModifierString=function(R){return b.KEY_MODS[i(R)]};function h(R,T,k){var w=i(T);if(!k&&T.code&&(k=b.$codeToKeyCode[T.code]||k),!v.isMac&&x){if(T.getModifierState&&(T.getModifierState("OS")||T.getModifierState("Win"))&&(w|=8),x.altGr)if((3&w)!=3)x.altGr=0;else return;if(k===18||k===17){var I=T.location;if(k===17&&I===1)x[k]==1&&(p=T.timeStamp);else if(k===18&&w===3&&I===2){var D=T.timeStamp-p;D<50&&(x.altGr=!0)}}}if(k in b.MODIFIER_KEYS&&(k=-1),!(!w&&k===13&&T.location===3&&(R(T,w,-k),T.defaultPrevented))){if(v.isChromeOS&&w&8){if(R(T,w,k),T.defaultPrevented)return;w&=-9}return!w&&!(k in b.FUNCTION_KEYS)&&!(k in b.PRINTABLE_KEYS)?!1:R(T,w,k)}}u.addCommandKeyListener=function(R,T,k){var w=null;r(R,"keydown",function(I){x[I.keyCode]=(x[I.keyCode]||0)+1;var D=h(T,I,I.keyCode);return w=I.defaultPrevented,D},k),r(R,"keypress",function(I){w&&(I.ctrlKey||I.altKey||I.shiftKey||I.metaKey)&&(u.stopEvent(I),w=null)},k),r(R,"keyup",function(I){x[I.keyCode]=null},k),x||(m(),r(window,"focus",m))};function m(){x=Object.create(null)}if(typeof window=="object"&&window.postMessage&&!v.isOldIE){var y=1;u.nextTick=function(R,T){T=T||window;var k="zero-timeout-message-"+y++,w=function(I){I.data==k&&(u.stopPropagation(I),n(T,"message",w),R())};r(T,"message",w),T.postMessage(k,"*")}}u.$idleBlocked=!1,u.onIdle=function(R,T){return setTimeout(function k(){u.$idleBlocked?setTimeout(k,100):R()},T)},u.$idleBlockId=null,u.blockIdle=function(R){u.$idleBlockId&&clearTimeout(u.$idleBlockId),u.$idleBlocked=!0,u.$idleBlockId=setTimeout(function(){u.$idleBlocked=!1},R||100)},u.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),u.nextFrame?u.nextFrame=u.nextFrame.bind(window):u.nextFrame=function(R){setTimeout(R,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(e,u,M){var b;M.exports={lineMode:!1,pasteCancelled:function(){return b&&b>Date.now()-50?!0:b=!1},cancel:function(){b=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(e,u,M){var b=e("../lib/event"),v=e("../config").nls,x=e("../lib/useragent"),p=e("../lib/dom"),f=e("../lib/lang"),a=e("../clipboard"),s=x.isChrome<18,o=x.isIE,r=x.isChrome>63,n=400,i=e("../lib/keys"),h=i.KEY_MODS,m=x.isIOS,y=m?/\s/:/\n/,R=x.isMobile,T=(function(){function k(w,I){var D=this;this.host=I,this.text=p.createElement("textarea"),this.text.className="ace_text-input",this.text.setAttribute("wrap","off"),this.text.setAttribute("autocomplete","off"),this.text.setAttribute("autocorrect","off"),this.text.setAttribute("autocapitalize","off"),this.text.setAttribute("spellcheck","false"),this.text.style.opacity="0",w.insertBefore(this.text,w.firstChild),this.copied=!1,this.pasted=!1,this.inComposition=!1,this.sendingText=!1,this.tempStyle="",R||(this.text.style.fontSize="1px"),this.commandMode=!1,this.ignoreFocusEvents=!1,this.lastValue="",this.lastSelectionStart=0,this.lastSelectionEnd=0,this.lastRestoreEnd=0,this.rowStart=Number.MAX_SAFE_INTEGER,this.rowEnd=Number.MIN_SAFE_INTEGER,this.numberOfExtraLines=0;try{this.$isFocused=document.activeElement===this.text}catch{}this.cancelComposition=this.cancelComposition.bind(this),this.setAriaOptions({role:"textbox"}),b.addListener(this.text,"blur",function(E){D.ignoreFocusEvents||(I.onBlur(E),D.$isFocused=!1)},I),b.addListener(this.text,"focus",function(E){if(!D.ignoreFocusEvents){if(D.$isFocused=!0,x.isEdge)try{if(!document.hasFocus())return}catch{}I.onFocus(E),x.isEdge?setTimeout(D.resetSelection.bind(D)):D.resetSelection()}},I),this.$focusScroll=!1,I.on("beforeEndOperation",function(){var E=I.curOp,L=E&&E.command&&E.command.name;if(L!="insertstring"){var z=L&&(E.docChanged||E.selectionChanged);D.inComposition&&z&&(D.lastValue=D.text.value="",D.onCompositionEnd()),D.resetSelection()}}),I.on("changeSelection",this.setAriaLabel.bind(this)),this.resetSelection=m?this.$resetSelectionIOS:this.$resetSelection,this.$isFocused&&I.onFocus(),this.inputHandler=null,this.afterContextMenu=!1,b.addCommandKeyListener(this.text,function(E,L,z){if(!D.inComposition)return I.onCommandKey(E,L,z)},I),b.addListener(this.text,"select",this.onSelect.bind(this),I),b.addListener(this.text,"input",this.onInput.bind(this),I),b.addListener(this.text,"cut",this.onCut.bind(this),I),b.addListener(this.text,"copy",this.onCopy.bind(this),I),b.addListener(this.text,"paste",this.onPaste.bind(this),I),(!("oncut"in this.text)||!("oncopy"in this.text)||!("onpaste"in this.text))&&b.addListener(w,"keydown",function(E){if(!(x.isMac&&!E.metaKey||!E.ctrlKey))switch(E.keyCode){case 67:D.onCopy(E);break;case 86:D.onPaste(E);break;case 88:D.onCut(E);break}},I),this.syncComposition=f.delayedCall(this.onCompositionUpdate.bind(this),50).schedule.bind(null,null),b.addListener(this.text,"compositionstart",this.onCompositionStart.bind(this),I),b.addListener(this.text,"compositionupdate",this.onCompositionUpdate.bind(this),I),b.addListener(this.text,"keyup",this.onKeyup.bind(this),I),b.addListener(this.text,"keydown",this.syncComposition.bind(this),I),b.addListener(this.text,"compositionend",this.onCompositionEnd.bind(this),I),this.closeTimeout,b.addListener(this.text,"mouseup",this.$onContextMenu.bind(this),I),b.addListener(this.text,"mousedown",function(E){E.preventDefault(),D.onContextMenuClose()},I),b.addListener(I.renderer.scroller,"contextmenu",this.$onContextMenu.bind(this),I),b.addListener(this.text,"contextmenu",this.$onContextMenu.bind(this),I),m&&this.addIosSelectionHandler(w,I,this.text)}return k.prototype.addIosSelectionHandler=function(w,I,D){var E=this,L=null,z=!1;D.addEventListener("keydown",function(O){L&&clearTimeout(L),z=!0},!0),D.addEventListener("keyup",function(O){L=setTimeout(function(){z=!1},100)},!0);var F=function(O){if(document.activeElement===D&&!(z||E.inComposition||I.$mouseHandler.isMousePressed)&&!E.copied){var A=D.selectionStart,S=D.selectionEnd,N=null,W=0;if(A==0?N=i.up:A==1?N=i.home:S>E.lastSelectionEnd&&E.lastValue[S]==`
161
+ `?N=i.end:A<E.lastSelectionStart&&E.lastValue[A-1]==" "?(N=i.left,W=h.option):A<E.lastSelectionStart||A==E.lastSelectionStart&&E.lastSelectionEnd!=E.lastSelectionStart&&A==S?N=i.left:S>E.lastSelectionEnd&&E.lastValue.slice(0,S).split(`
162
+ `).length>2?N=i.down:S>E.lastSelectionEnd&&E.lastValue[S-1]==" "?(N=i.right,W=h.option):(S>E.lastSelectionEnd||S==E.lastSelectionEnd&&E.lastSelectionEnd!=E.lastSelectionStart&&A==S)&&(N=i.right),A!==S&&(W|=h.shift),N){var V=I.onCommandKey({},W,N);if(!V&&I.commands){N=i.keyCodeToString(N);var G=I.commands.findKeyCommand(W,N);G&&I.execCommand(G)}E.lastSelectionStart=A,E.lastSelectionEnd=S,E.resetSelection("")}}};document.addEventListener("selectionchange",F),I.on("destroy",function(){document.removeEventListener("selectionchange",F)})},k.prototype.onContextMenuClose=function(){var w=this;clearTimeout(this.closeTimeout),this.closeTimeout=setTimeout(function(){w.tempStyle&&(w.text.style.cssText=w.tempStyle,w.tempStyle=""),w.host.renderer.$isMousePressed=!1,w.host.renderer.$keepTextAreaAtCursor&&w.host.renderer.$moveTextAreaToCursor()},0)},k.prototype.$onContextMenu=function(w){this.host.textInput.onContextMenu(w),this.onContextMenuClose()},k.prototype.onKeyup=function(w){w.keyCode==27&&this.text.value.length<this.text.selectionStart&&(this.inComposition||(this.lastValue=this.text.value),this.lastSelectionStart=this.lastSelectionEnd=-1,this.resetSelection()),this.syncComposition()},k.prototype.cancelComposition=function(){this.ignoreFocusEvents=!0,this.text.blur(),this.text.focus(),this.ignoreFocusEvents=!1},k.prototype.onCompositionStart=function(w){if(!(this.inComposition||!this.host.onCompositionStart||this.host.$readOnly)&&(this.inComposition={},!this.commandMode)){w.data&&(this.inComposition.useTextareaForIME=!1),setTimeout(this.onCompositionUpdate.bind(this),0),this.host._signal("compositionStart"),this.host.on("mousedown",this.cancelComposition);var I=this.host.getSelectionRange();I.end.row=I.start.row,I.end.column=I.start.column,this.inComposition.markerRange=I,this.inComposition.selectionStart=this.lastSelectionStart,this.host.onCompositionStart(this.inComposition),this.inComposition.useTextareaForIME?(this.lastValue=this.text.value="",this.lastSelectionStart=0,this.lastSelectionEnd=0):(this.text.msGetInputContext&&(this.inComposition.context=this.text.msGetInputContext()),this.text.getInputContext&&(this.inComposition.context=this.text.getInputContext()))}},k.prototype.onCompositionUpdate=function(){if(!(!this.inComposition||!this.host.onCompositionUpdate||this.host.$readOnly)){if(this.commandMode)return this.cancelComposition();if(this.inComposition.useTextareaForIME)this.host.onCompositionUpdate(this.text.value);else{var w=this.text.value;this.sendText(w),this.inComposition.markerRange&&(this.inComposition.context&&(this.inComposition.markerRange.start.column=this.inComposition.selectionStart=this.inComposition.context.compositionStartOffset),this.inComposition.markerRange.end.column=this.inComposition.markerRange.start.column+this.lastSelectionEnd-this.inComposition.selectionStart+this.lastRestoreEnd)}}},k.prototype.onCompositionEnd=function(w){!this.host.onCompositionEnd||this.host.$readOnly||(this.inComposition=!1,this.host.onCompositionEnd(),this.host.off("mousedown",this.cancelComposition),w&&this.onInput())},k.prototype.onCut=function(w){this.doCopy(w,!0)},k.prototype.onCopy=function(w){this.doCopy(w,!1)},k.prototype.onPaste=function(w){var I=this.handleClipboardData(w);a.pasteCancelled()||(typeof I=="string"?(I&&this.host.onPaste(I,w),x.isIE&&setTimeout(this.resetSelection),b.preventDefault(w)):(this.text.value="",this.pasted=!0))},k.prototype.doCopy=function(w,I){var D=this,E=this.host.getCopyText();if(!E)return b.preventDefault(w);this.handleClipboardData(w,E)?(m&&(this.resetSelection(E),this.copied=E,setTimeout(function(){D.copied=!1},10)),I?this.host.onCut():this.host.onCopy(),b.preventDefault(w)):(this.copied=!0,this.text.value=E,this.text.select(),setTimeout(function(){D.copied=!1,D.resetSelection(),I?D.host.onCut():D.host.onCopy()}))},k.prototype.handleClipboardData=function(w,I,D){var E=w.clipboardData||window.clipboardData;if(!(!E||s)){var L=o||D?"Text":"text/plain";try{return I?E.setData(L,I)!==!1:E.getData(L)}catch(z){if(!D)return this.handleClipboardData(z,I,!0)}}},k.prototype.onInput=function(w){if(this.inComposition)return this.onCompositionUpdate();if(w&&w.inputType){if(w.inputType=="historyUndo")return this.host.execCommand("undo");if(w.inputType=="historyRedo")return this.host.execCommand("redo")}var I=this.text.value,D=this.sendText(I,!0);(I.length>n+100||y.test(D)||R&&this.lastSelectionStart<1&&this.lastSelectionStart==this.lastSelectionEnd)&&this.resetSelection()},k.prototype.sendText=function(w,I){if(this.afterContextMenu&&(this.afterContextMenu=!1),this.pasted)return this.resetSelection(),w&&this.host.onPaste(w),this.pasted=!1,"";for(var D=this.text.selectionStart,E=this.text.selectionEnd,L=this.lastSelectionStart,z=this.lastValue.length-this.lastSelectionEnd,F=w,O=w.length-D,A=w.length-E,S=0;L>0&&this.lastValue[S]==w[S];)S++,L--;for(F=F.slice(S),S=1;z>0&&this.lastValue.length-S>this.lastSelectionStart-1&&this.lastValue[this.lastValue.length-S]==w[w.length-S];)S++,z--;O-=S-1,A-=S-1;var N=F.length-S+1;if(N<0&&(L=-N,N=0),F=F.slice(0,N),!I&&!F&&!O&&!L&&!z&&!A)return"";this.sendingText=!0;var W=!1;return x.isAndroid&&F==". "&&(F=" ",W=!0),F&&!L&&!z&&!O&&!A||this.commandMode?this.host.onTextInput(F):this.host.onTextInput(F,{extendLeft:L,extendRight:z,restoreStart:O,restoreEnd:A}),this.sendingText=!1,this.lastValue=w,this.lastSelectionStart=D,this.lastSelectionEnd=E,this.lastRestoreEnd=A,W?`
163
+ `:F},k.prototype.onSelect=function(w){var I=this;if(!this.inComposition){var D=function(E){return E.selectionStart===0&&E.selectionEnd>=I.lastValue.length&&E.value===I.lastValue&&I.lastValue&&E.selectionEnd!==I.lastSelectionEnd};this.copied?this.copied=!1:D(this.text)?(this.host.selectAll(),this.resetSelection()):R&&this.text.selectionStart!=this.lastSelectionStart&&this.resetSelection()}},k.prototype.$resetSelectionIOS=function(w){if(!(!this.$isFocused||this.copied&&!w||this.sendingText)){w||(w="");var I=`
164
+ ab`+w+`cde fg
165
+ `;I!=this.text.value&&(this.text.value=this.lastValue=I);var D=4,E=4+(w.length||(this.host.selection.isEmpty()?0:1));(this.lastSelectionStart!=D||this.lastSelectionEnd!=E)&&this.text.setSelectionRange(D,E),this.lastSelectionStart=D,this.lastSelectionEnd=E}},k.prototype.$resetSelection=function(){var w=this;if(!(this.inComposition||this.sendingText)&&!(!this.$isFocused&&!this.afterContextMenu)){this.inComposition=!0;var I=0,D=0,E="",L=function(G,Q){for(var te=Q,le=1;le<=G-w.rowStart&&le<2*w.numberOfExtraLines+1;le++)te+=w.host.session.getLine(G-le).length+1;return te};if(this.host.session){var z=this.host.selection,F=z.getRange(),O=z.cursor.row;O===this.rowEnd+1?(this.rowStart=this.rowEnd+1,this.rowEnd=this.rowStart+2*this.numberOfExtraLines):O===this.rowStart-1?(this.rowEnd=this.rowStart-1,this.rowStart=this.rowEnd-2*this.numberOfExtraLines):(O<this.rowStart-1||O>this.rowEnd+1)&&(this.rowStart=O>this.numberOfExtraLines?O-this.numberOfExtraLines:0,this.rowEnd=O>this.numberOfExtraLines?O+this.numberOfExtraLines:2*this.numberOfExtraLines);for(var A=[],S=this.rowStart;S<=this.rowEnd;S++)A.push(this.host.session.getLine(S));if(E=A.join(`
166
+ `),I=L(F.start.row,F.start.column),D=L(F.end.row,F.end.column),F.start.row<this.rowStart){var N=this.host.session.getLine(this.rowStart-1);I=F.start.row<this.rowStart-1?0:I,D+=N.length+1,E=N+`
167
+ `+E}else if(F.end.row>this.rowEnd){var W=this.host.session.getLine(this.rowEnd+1);D=F.end.row>this.rowEnd+1?W.length:F.end.column,D+=E.length+1,E=E+`
168
+ `+W}else R&&O>0&&(E=`
169
+ `+E,D+=1,I+=1);E.length>n&&(I<n&&D<n?E=E.slice(0,n):(E=`
170
+ `,I==D?I=D=0:(I=0,D=1)));var V=E+`
171
+
172
+ `;V!=this.lastValue&&(this.text.value=this.lastValue=V,this.lastSelectionStart=this.lastSelectionEnd=V.length)}if(this.afterContextMenu&&(this.lastSelectionStart=this.text.selectionStart,this.lastSelectionEnd=this.text.selectionEnd),this.lastSelectionEnd!=D||this.lastSelectionStart!=I||this.text.selectionEnd!=this.lastSelectionEnd)try{this.text.setSelectionRange(I,D),this.lastSelectionStart=I,this.lastSelectionEnd=D}catch{}this.inComposition=!1}},k.prototype.setHost=function(w){this.host=w},k.prototype.setNumberOfExtraLines=function(w){if(this.rowStart=Number.MAX_SAFE_INTEGER,this.rowEnd=Number.MIN_SAFE_INTEGER,w<0){this.numberOfExtraLines=0;return}this.numberOfExtraLines=w},k.prototype.setAriaLabel=function(){var w="";if(this.host.$textInputAriaLabel&&(w+="".concat(this.host.$textInputAriaLabel,", ")),this.host.session){var I=this.host.session.selection.cursor.row;w+=v("text-input.aria-label","Cursor at row $0",[I+1])}this.text.setAttribute("aria-label",w)},k.prototype.setAriaOptions=function(w){w.activeDescendant?(this.text.setAttribute("aria-haspopup","true"),this.text.setAttribute("aria-autocomplete",w.inline?"both":"list"),this.text.setAttribute("aria-activedescendant",w.activeDescendant)):(this.text.setAttribute("aria-haspopup","false"),this.text.setAttribute("aria-autocomplete","both"),this.text.removeAttribute("aria-activedescendant")),w.role&&this.text.setAttribute("role",w.role),w.setLabel&&(this.text.setAttribute("aria-roledescription",v("text-input.aria-roledescription","editor")),this.setAriaLabel())},k.prototype.focus=function(){var w=this;if(this.setAriaOptions({setLabel:this.host.renderer.enableKeyboardAccessibility}),this.tempStyle||r||this.$focusScroll=="browser")return this.text.focus({preventScroll:!0});var I=this.text.style.top;this.text.style.position="fixed",this.text.style.top="0px";try{var D=this.text.getBoundingClientRect().top!=0}catch{return}var E=[];if(D)for(var L=this.text.parentElement;L&&L.nodeType==1;)E.push(L),L.setAttribute("ace_nocontext","true"),!L.parentElement&&L.getRootNode?L=L.getRootNode().host:L=L.parentElement;this.text.focus({preventScroll:!0}),D&&E.forEach(function(z){z.removeAttribute("ace_nocontext")}),setTimeout(function(){w.text.style.position="",w.text.style.top=="0px"&&(w.text.style.top=I)},0)},k.prototype.blur=function(){this.text.blur()},k.prototype.isFocused=function(){return this.$isFocused},k.prototype.setInputHandler=function(w){this.inputHandler=w},k.prototype.getInputHandler=function(){return this.inputHandler},k.prototype.getElement=function(){return this.text},k.prototype.setCommandMode=function(w){this.commandMode=w,this.text.readOnly=!1},k.prototype.setReadOnly=function(w){this.commandMode||(this.text.readOnly=w)},k.prototype.setCopyWithEmptySelection=function(w){},k.prototype.onContextMenu=function(w){this.afterContextMenu=!0,this.resetSelection(),this.host._emit("nativecontextmenu",{target:this.host,domEvent:w}),this.moveToMouse(w,!0)},k.prototype.moveToMouse=function(w,I){var D=this;this.tempStyle||(this.tempStyle=this.text.style.cssText),this.text.style.cssText=(I?"z-index:100000;":"")+(x.isIE?"opacity:0.1;":"")+"text-indent: -"+(this.lastSelectionStart+this.lastSelectionEnd)*this.host.renderer.characterWidth*.5+"px;";var E=this.host.container.getBoundingClientRect(),L=p.computedStyle(this.host.container),z=E.top+(parseInt(L.borderTopWidth)||0),F=E.left+(parseInt(L.borderLeftWidth)||0),O=E.bottom-z-this.text.clientHeight-2,A=function(S){p.translate(D.text,S.clientX-F-2,Math.min(S.clientY-z-2,O))};A(w),w.type=="mousedown"&&(this.host.renderer.$isMousePressed=!0,clearTimeout(this.closeTimeout),x.isWin&&b.capture(this.host.container,A,this.onContextMenuClose.bind(this)))},k.prototype.destroy=function(){this.text.parentElement&&this.text.parentElement.removeChild(this.text)},k})();u.TextInput=T,u.$setUserAgentForTests=function(k,w){R=k,m=w}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(e,u,M){var b=e("../lib/useragent"),v=0,x=550,p=(function(){function s(o){o.$clickSelection=null;var r=o.editor;r.setDefaultHandler("mousedown",this.onMouseDown.bind(o)),r.setDefaultHandler("dblclick",this.onDoubleClick.bind(o)),r.setDefaultHandler("tripleclick",this.onTripleClick.bind(o)),r.setDefaultHandler("quadclick",this.onQuadClick.bind(o)),r.setDefaultHandler("mousewheel",this.onMouseWheel.bind(o));var n=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];n.forEach(function(i){o[i]=this[i]},this),o.selectByLines=this.extendSelectionBy.bind(o,"getLineRange"),o.selectByWords=this.extendSelectionBy.bind(o,"getWordRange")}return s.prototype.onMouseDown=function(o){var r=o.inSelection(),n=o.getDocumentPosition();this.mousedownEvent=o;var i=this.editor,h=o.getButton();if(h!==0){var m=i.getSelectionRange(),y=m.isEmpty();(y||h==1)&&i.selection.moveToPosition(n),h==2&&(i.textInput.onContextMenu(o.domEvent),b.isMozilla||o.preventDefault());return}if(this.mousedownEvent.time=Date.now(),r&&!i.isFocused()&&(i.focus(),this.$focusTimeout&&!this.$clickSelection&&!i.inMultiSelectMode)){this.setState("focusWait"),this.captureMouse(o);return}return this.captureMouse(o),this.startSelect(n,o.domEvent._clicks>1),o.preventDefault()},s.prototype.startSelect=function(o,r){o=o||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var n=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?n.selection.selectToPosition(o):r||n.selection.moveToPosition(o),r||this.select(),n.setStyle("ace_selecting"),this.setState("select"))},s.prototype.select=function(){var o,r=this.editor,n=r.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var i=this.$clickSelection.comparePoint(n);if(i==-1)o=this.$clickSelection.end;else if(i==1)o=this.$clickSelection.start;else{var h=a(this.$clickSelection,n,r.session);n=h.cursor,o=h.anchor}r.selection.setSelectionAnchor(o.row,o.column)}r.selection.selectToPosition(n),r.renderer.scrollCursorIntoView()},s.prototype.extendSelectionBy=function(o){var r,n=this.editor,i=n.renderer.screenToTextCoordinates(this.x,this.y),h=n.selection[o](i.row,i.column);if(this.$clickSelection){var m=this.$clickSelection.comparePoint(h.start),y=this.$clickSelection.comparePoint(h.end);if(m==-1&&y<=0)r=this.$clickSelection.end,(h.end.row!=i.row||h.end.column!=i.column)&&(i=h.start);else if(y==1&&m>=0)r=this.$clickSelection.start,(h.start.row!=i.row||h.start.column!=i.column)&&(i=h.end);else if(m==-1&&y==1)i=h.end,r=h.start;else{var R=a(this.$clickSelection,i,n.session);i=R.cursor,r=R.anchor}n.selection.setSelectionAnchor(r.row,r.column)}n.selection.selectToPosition(i),n.renderer.scrollCursorIntoView()},s.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},s.prototype.focusWait=function(){var o=f(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),r=Date.now();(o>v||r-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},s.prototype.onDoubleClick=function(o){var r=o.getDocumentPosition(),n=this.editor,i=n.session,h=i.getBracketRange(r);h?(h.isEmpty()&&(h.start.column--,h.end.column++),this.setState("select")):(h=n.selection.getWordRange(r.row,r.column),this.setState("selectByWords")),this.$clickSelection=h,this.select()},s.prototype.onTripleClick=function(o){var r=o.getDocumentPosition(),n=this.editor;this.setState("selectByLines");var i=n.getSelectionRange();i.isMultiLine()&&i.contains(r.row,r.column)?(this.$clickSelection=n.selection.getLineRange(i.start.row),this.$clickSelection.end=n.selection.getLineRange(i.end.row).end):this.$clickSelection=n.selection.getLineRange(r.row),this.select()},s.prototype.onQuadClick=function(o){var r=this.editor;r.selectAll(),this.$clickSelection=r.getSelectionRange(),this.setState("selectAll")},s.prototype.onMouseWheel=function(o){if(!o.getAccelKey()){o.getShiftKey()&&o.wheelY&&!o.wheelX&&(o.wheelX=o.wheelY,o.wheelY=0);var r=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var n=this.$lastScroll,i=o.domEvent.timeStamp,h=i-n.t,m=h?o.wheelX/h:n.vx,y=h?o.wheelY/h:n.vy;h<x&&(m=(m+n.vx)/2,y=(y+n.vy)/2);var R=Math.abs(m/y),T=!1;if(R>=1&&r.renderer.isScrollableBy(o.wheelX*o.speed,0)&&(T=!0),R<=1&&r.renderer.isScrollableBy(0,o.wheelY*o.speed)&&(T=!0),T)n.allowed=i;else if(i-n.allowed<x){var k=Math.abs(m)<=1.5*Math.abs(n.vx)&&Math.abs(y)<=1.5*Math.abs(n.vy);k?(T=!0,n.allowed=i):n.allowed=0}if(n.t=i,n.vx=m,n.vy=y,T)return r.renderer.scrollBy(o.wheelX*o.speed,o.wheelY*o.speed),o.stop()}},s})();p.prototype.selectEnd=p.prototype.selectByLinesEnd,p.prototype.selectAllEnd=p.prototype.selectByLinesEnd,p.prototype.selectByWordsEnd=p.prototype.selectByLinesEnd,u.DefaultHandlers=p;function f(s,o,r,n){return Math.sqrt(Math.pow(r-s,2)+Math.pow(n-o,2))}function a(s,o,r){if(s.start.row==s.end.row)var n=2*o.column-s.start.column-s.end.column;else if(s.start.row==s.end.row-1&&!s.start.column&&!s.end.column)var n=3*o.column-2*r.getLine(s.start.row).length;else var n=2*o.row-s.start.row-s.end.row;return n<0?{cursor:s.start,anchor:s.end}:{cursor:s.end,anchor:s.start}}}),ace.define("ace/mouse/mouse_event",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,u,M){var b=e("../lib/event"),v=e("../lib/useragent"),x=(function(){function p(f,a){this.speed,this.wheelX,this.wheelY,this.domEvent=f,this.editor=a,this.x=this.clientX=f.clientX,this.y=this.clientY=f.clientY,this.$pos=null,this.$inSelection=null,this.propagationStopped=!1,this.defaultPrevented=!1}return p.prototype.stopPropagation=function(){b.stopPropagation(this.domEvent),this.propagationStopped=!0},p.prototype.preventDefault=function(){b.preventDefault(this.domEvent),this.defaultPrevented=!0},p.prototype.stop=function(){this.stopPropagation(),this.preventDefault()},p.prototype.getDocumentPosition=function(){return this.$pos?this.$pos:(this.$pos=this.editor.renderer.screenToTextCoordinates(this.clientX,this.clientY),this.$pos)},p.prototype.getGutterRow=function(){var f=this.getDocumentPosition().row,a=this.editor.session.documentToScreenRow(f,0),s=this.editor.session.documentToScreenRow(this.editor.renderer.$gutterLayer.$lines.get(0).row,0);return a-s},p.prototype.inSelection=function(){if(this.$inSelection!==null)return this.$inSelection;var f=this.editor,a=f.getSelectionRange();if(a.isEmpty())this.$inSelection=!1;else{var s=this.getDocumentPosition();this.$inSelection=a.contains(s.row,s.column)}return this.$inSelection},p.prototype.getButton=function(){return b.getButton(this.domEvent)},p.prototype.getShiftKey=function(){return this.domEvent.shiftKey},p.prototype.getAccelKey=function(){return v.isMac?this.domEvent.metaKey:this.domEvent.ctrlKey},p})();u.MouseEvent=x}),ace.define("ace/lib/scroll",["require","exports","module"],function(e,u,M){u.preventParentScroll=function(v){v.stopPropagation();var x=v.currentTarget,p=x.scrollHeight>x.clientHeight;p||v.preventDefault()}}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(e,u,M){var b=this&&this.__extends||(function(){var i=function(h,m){return i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(y,R){y.__proto__=R}||function(y,R){for(var T in R)Object.prototype.hasOwnProperty.call(R,T)&&(y[T]=R[T])},i(h,m)};return function(h,m){if(typeof m!="function"&&m!==null)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");i(h,m);function y(){this.constructor=h}h.prototype=m===null?Object.create(m):(y.prototype=m.prototype,new y)}})(),v=this&&this.__values||function(i){var h=typeof Symbol=="function"&&Symbol.iterator,m=h&&i[h],y=0;if(m)return m.call(i);if(i&&typeof i.length=="number")return{next:function(){return i&&y>=i.length&&(i=void 0),{value:i&&i[y++],done:!i}}};throw new TypeError(h?"Object is not iterable.":"Symbol.iterator is not defined.")},x=e("./lib/dom");e("./lib/event");var p=e("./range").Range,f=e("./lib/scroll").preventParentScroll,a="ace_tooltip",s=(function(){function i(h){this.isOpen=!1,this.$element=null,this.$parentNode=h}return i.prototype.$init=function(){return this.$element=x.createElement("div"),this.$element.className=a,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},i.prototype.getElement=function(){return this.$element||this.$init()},i.prototype.setText=function(h){this.getElement().textContent=h},i.prototype.setHtml=function(h){this.getElement().innerHTML=h},i.prototype.setPosition=function(h,m){this.getElement().style.left=h+"px",this.getElement().style.top=m+"px"},i.prototype.setClassName=function(h){x.addCssClass(this.getElement(),h)},i.prototype.setTheme=function(h){this.theme&&(this.theme.isDark&&x.removeCssClass(this.getElement(),"ace_dark"),this.theme.cssClass&&x.removeCssClass(this.getElement(),this.theme.cssClass)),h.isDark&&x.addCssClass(this.getElement(),"ace_dark"),h.cssClass&&x.addCssClass(this.getElement(),h.cssClass),this.theme={isDark:h.isDark,cssClass:h.cssClass}},i.prototype.show=function(h,m,y){h!=null&&this.setText(h),m!=null&&y!=null&&this.setPosition(m,y),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},i.prototype.hide=function(h){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=a,this.isOpen=!1)},i.prototype.getHeight=function(){return this.getElement().offsetHeight},i.prototype.getWidth=function(){return this.getElement().offsetWidth},i.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},i})(),o=(function(){function i(){this.popups=[]}return i.prototype.addPopup=function(h){this.popups.push(h),this.updatePopups()},i.prototype.removePopup=function(h){var m=this.popups.indexOf(h);m!==-1&&(this.popups.splice(m,1),this.updatePopups())},i.prototype.updatePopups=function(){var h,m,y,R;this.popups.sort(function(F,O){return O.priority-F.priority});var T=[];try{for(var k=v(this.popups),w=k.next();!w.done;w=k.next()){var I=w.value,D=!0;try{for(var E=(y=void 0,v(T)),L=E.next();!L.done;L=E.next()){var z=L.value;if(this.doPopupsOverlap(z,I)){D=!1;break}}}catch(F){y={error:F}}finally{try{L&&!L.done&&(R=E.return)&&R.call(E)}finally{if(y)throw y.error}}D?T.push(I):I.hide()}}catch(F){h={error:F}}finally{try{w&&!w.done&&(m=k.return)&&m.call(k)}finally{if(h)throw h.error}}},i.prototype.doPopupsOverlap=function(h,m){var y=h.getElement().getBoundingClientRect(),R=m.getElement().getBoundingClientRect();return y.left<R.right&&y.right>R.left&&y.top<R.bottom&&y.bottom>R.top},i})(),r=new o;u.popupManager=r,u.Tooltip=s;var n=(function(i){b(h,i);function h(m){m===void 0&&(m=document.body);var y=i.call(this,m)||this;y.timeout=void 0,y.lastT=0,y.idleTime=350,y.lastEvent=void 0,y.onMouseOut=y.onMouseOut.bind(y),y.onMouseMove=y.onMouseMove.bind(y),y.waitForHover=y.waitForHover.bind(y),y.hide=y.hide.bind(y);var R=y.getElement();return R.style.whiteSpace="pre-wrap",R.style.pointerEvents="auto",R.addEventListener("mouseout",y.onMouseOut),R.tabIndex=-1,R.addEventListener("blur",(function(){R.contains(document.activeElement)||this.hide()}).bind(y)),R.addEventListener("wheel",f),y}return h.prototype.addToEditor=function(m){m.on("mousemove",this.onMouseMove),m.on("mousedown",this.hide);var y=m.renderer.getMouseEventTarget();y&&typeof y.removeEventListener=="function"&&y.addEventListener("mouseout",this.onMouseOut,!0)},h.prototype.removeFromEditor=function(m){m.off("mousemove",this.onMouseMove),m.off("mousedown",this.hide);var y=m.renderer.getMouseEventTarget();y&&typeof y.removeEventListener=="function"&&y.removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},h.prototype.onMouseMove=function(m,y){this.lastEvent=m,this.lastT=Date.now();var R=y.$mouseHandler.isMousePressed;if(this.isOpen){var T=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(T.row,T.column)||R||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||R||(this.lastEvent=m,this.timeout=setTimeout(this.waitForHover,this.idleTime))},h.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var m=Date.now()-this.lastT;if(this.idleTime-m>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-m);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},h.prototype.isOutsideOfText=function(m){var y=m.editor,R=m.getDocumentPosition(),T=y.session.getLine(R.row);if(R.column==T.length){var k=y.renderer.pixelToScreenCoordinates(m.clientX,m.clientY),w=y.session.documentToScreenPosition(R.row,R.column);if(w.column!=k.column||w.row!=k.row)return!0}return!1},h.prototype.setDataProvider=function(m){this.$gatherData=m},h.prototype.showForRange=function(m,y,R,T){if(!(T&&T!=this.lastEvent)&&!(this.isOpen&&document.activeElement==this.getElement())){var k=m.renderer;this.isOpen||(r.addPopup(this),this.$registerCloseEvents(),this.setTheme(k.theme)),this.isOpen=!0,this.range=p.fromPoints(y.start,y.end);var w=k.textToScreenCoordinates(y.start.row,y.start.column),I=k.scroller.getBoundingClientRect();w.pageX<I.left&&(w.pageX=I.left);var D=this.getElement();D.innerHTML="",D.appendChild(R),D.style.maxHeight="",D.style.display="block",this.$setPosition(m,w,!0,y),x.$fixPositionBug(D)}},h.prototype.$setPosition=function(m,y,R,T){var k=10;R&&this.addMarker(T,m.session);var w=m.renderer,I=this.getElement(),D=I.offsetHeight,E=I.offsetWidth,L=y.pageY,z=y.pageX,F=window.innerHeight-L-w.lineHeight,O=this.$shouldPlaceAbove(D,L,F-k);I.style.maxHeight=(O?L:F)-k+"px",I.style.top=O?"":L+w.lineHeight+"px",I.style.bottom=O?window.innerHeight-L+"px":"",I.style.left=Math.min(z,window.innerWidth-E-k)+"px"},h.prototype.$shouldPlaceAbove=function(m,y,R){return!(y-m<0&&y<R)},h.prototype.addMarker=function(m,y){this.marker&&this.$markerSession.removeMarker(this.marker),this.$markerSession=y,this.marker=y&&y.addMarker(m,"ace_highlight-marker","text")},h.prototype.hide=function(m){m&&this.$fromKeyboard&&m.type=="keydown"&&m.code=="Escape"||!m&&document.activeElement==this.getElement()||m&&m.target&&(m.type!="keydown"||m.ctrlKey||m.metaKey)&&this.$element.contains(m.target)||(this.lastEvent=null,this.timeout&&clearTimeout(this.timeout),this.timeout=null,this.addMarker(null),this.isOpen&&(this.$fromKeyboard=!1,this.$removeCloseEvents(),this.getElement().style.display="none",this.isOpen=!1,r.removePopup(this)))},h.prototype.$registerCloseEvents=function(){window.addEventListener("keydown",this.hide,!0),window.addEventListener("wheel",this.hide,!0),window.addEventListener("mousedown",this.hide,!0)},h.prototype.$removeCloseEvents=function(){window.removeEventListener("keydown",this.hide,!0),window.removeEventListener("wheel",this.hide,!0),window.removeEventListener("mousedown",this.hide,!0)},h.prototype.onMouseOut=function(m){this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.lastEvent=null,this.isOpen&&(!m.relatedTarget||this.getElement().contains(m.relatedTarget)||m&&m.currentTarget.contains(m.relatedTarget)||m.relatedTarget.classList.contains("ace_content")||this.hide())},h})(s);u.HoverTooltip=n}),ace.define("ace/mouse/default_gutter_handler",["require","exports","module","ace/lib/dom","ace/mouse/mouse_event","ace/tooltip","ace/config","ace/range"],function(e,u,M){var b=this&&this.__extends||(function(){var n=function(i,h){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,y){m.__proto__=y}||function(m,y){for(var R in y)Object.prototype.hasOwnProperty.call(y,R)&&(m[R]=y[R])},n(i,h)};return function(i,h){if(typeof h!="function"&&h!==null)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");n(i,h);function m(){this.constructor=i}i.prototype=h===null?Object.create(h):(m.prototype=h.prototype,new m)}})(),v=this&&this.__values||function(n){var i=typeof Symbol=="function"&&Symbol.iterator,h=i&&n[i],m=0;if(h)return h.call(n);if(n&&typeof n.length=="number")return{next:function(){return n&&m>=n.length&&(n=void 0),{value:n&&n[m++],done:!n}}};throw new TypeError(i?"Object is not iterable.":"Symbol.iterator is not defined.")},x=e("../lib/dom"),p=e("./mouse_event").MouseEvent,f=e("../tooltip").HoverTooltip,a=e("../config").nls,s=e("../range").Range;function o(n){var i=n.editor,h=i.renderer.$gutterLayer;n.$tooltip=new r(i),n.$tooltip.addToEditor(i),n.$tooltip.setDataProvider(function(m,y){var R=m.getDocumentPosition().row;n.$tooltip.showTooltip(R)}),n.editor.setDefaultHandler("guttermousedown",function(m){if(!(!i.isFocused()||m.getButton()!=0)){var y=h.getRegion(m);if(y!="foldWidgets"){var R=m.getDocumentPosition().row,T=i.session.selection;if(m.getShiftKey())T.selectTo(R,0);else{if(m.domEvent.detail==2)return i.selectAll(),m.preventDefault();n.$clickSelection=i.selection.getLineRange(R)}return n.setState("selectByLines"),n.captureMouse(m),m.preventDefault()}}})}u.GutterHandler=o;var r=(function(n){b(i,n);function i(h){var m=n.call(this,h.container)||this;m.id="gt"+ ++i.$uid,m.editor=h,m.visibleTooltipRow;var y=m.getElement();return y.setAttribute("role","tooltip"),y.setAttribute("id",m.id),y.style.pointerEvents="auto",m.idleTime=50,m.onDomMouseMove=m.onDomMouseMove.bind(m),m.onDomMouseOut=m.onDomMouseOut.bind(m),m.setClassName("ace_gutter-tooltip"),m}return i.prototype.onDomMouseMove=function(h){var m=new p(h,this.editor);this.onMouseMove(m,this.editor)},i.prototype.onDomMouseOut=function(h){var m=new p(h,this.editor);this.onMouseOut(m)},i.prototype.addToEditor=function(h){var m=h.renderer.$gutter;m.addEventListener("mousemove",this.onDomMouseMove),m.addEventListener("mouseout",this.onDomMouseOut),n.prototype.addToEditor.call(this,h)},i.prototype.removeFromEditor=function(h){var m=h.renderer.$gutter;m.removeEventListener("mousemove",this.onDomMouseMove),m.removeEventListener("mouseout",this.onDomMouseOut),n.prototype.removeFromEditor.call(this,h)},i.prototype.destroy=function(){this.editor&&this.removeFromEditor(this.editor),n.prototype.destroy.call(this)},Object.defineProperty(i,"annotationLabels",{get:function(){return{error:{singular:a("gutter-tooltip.aria-label.error.singular","error"),plural:a("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:a("gutter-tooltip.aria-label.security.singular","security finding"),plural:a("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:a("gutter-tooltip.aria-label.warning.singular","warning"),plural:a("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:a("gutter-tooltip.aria-label.info.singular","information message"),plural:a("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:a("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:a("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),i.prototype.showTooltip=function(h){var m,y=this.editor.renderer.$gutterLayer,R=y.$annotations[h],T;R?T={displayText:Array.from(R.displayText),type:Array.from(R.type)}:T={displayText:[],type:[]};var k=y.session.getFoldLine(h);if(k&&y.$showFoldedAnnotations){for(var w={error:[],security:[],warning:[],info:[],hint:[]},I={error:1,security:2,warning:3,info:4,hint:5},D,E=h+1;E<=k.end.row;E++)if(y.$annotations[E])for(var L=0;L<y.$annotations[E].text.length;L++){var z=y.$annotations[E].type[L];w[z].push(y.$annotations[E].text[L]),(!D||I[z]<I[D])&&(D=z)}if(["error","security","warning"].includes(D)){var F="".concat(i.annotationsToSummaryString(w)," in folded code.");T.displayText.push(F),T.type.push(D+"_fold")}}if(T.displayText.length===0)return this.hide();for(var O={error:[],security:[],warning:[],info:[],hint:[]},A=y.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",E=0;E<T.displayText.length;E++){var S=x.createElement("span"),N=x.createElement("span");(m=N.classList).add.apply(m,["ace_".concat(T.type[E]),A]),N.setAttribute("aria-label","".concat(i.annotationLabels[T.type[E].replace("_fold","")].singular)),N.setAttribute("role","img"),N.appendChild(x.createTextNode(" ")),S.appendChild(N),S.appendChild(x.createTextNode(T.displayText[E])),S.appendChild(x.createElement("br")),O[T.type[E].replace("_fold","")].push(S)}var W=x.createElement("span");O.error.forEach(function(Q){return W.appendChild(Q)}),O.security.forEach(function(Q){return W.appendChild(Q)}),O.warning.forEach(function(Q){return W.appendChild(Q)}),O.info.forEach(function(Q){return W.appendChild(Q)}),O.hint.forEach(function(Q){return W.appendChild(Q)}),W.setAttribute("aria-live","polite");var V=this.$findLinkedAnnotationNode(h);V&&V.setAttribute("aria-describedby",this.id);var G=s.fromPoints({row:h,column:0},{row:h,column:0});this.showForRange(this.editor,G,W),this.visibleTooltipRow=h,this.editor._signal("showGutterTooltip",this)},i.prototype.$setPosition=function(h,m,y,R){var T=this.$findCellByRow(R.start.row);if(T){var k=T&&T.element,w=k&&k.querySelector(".ace_gutter_annotation");if(w){var I=w.getBoundingClientRect();if(I){var D={pageX:I.right,pageY:I.top};return n.prototype.$setPosition.call(this,h,D,!1,R)}}}},i.prototype.$shouldPlaceAbove=function(h,m,y){return y<h},i.prototype.$findLinkedAnnotationNode=function(h){var m=this.$findCellByRow(h);if(m){var y=m.element;if(y.childNodes.length>2)return y.childNodes[2]}},i.prototype.$findCellByRow=function(h){return this.editor.renderer.$gutterLayer.$lines.cells.find(function(m){return m.row===h})},i.prototype.hide=function(h){if(this.isOpen){if(this.$element.removeAttribute("aria-live"),this.visibleTooltipRow!=null){var m=this.$findLinkedAnnotationNode(this.visibleTooltipRow);m&&m.removeAttribute("aria-describedby")}this.visibleTooltipRow=void 0,this.editor._signal("hideGutterTooltip",this),n.prototype.hide.call(this,h)}},i.annotationsToSummaryString=function(h){var m,y,R=[],T=["error","security","warning","info","hint"];try{for(var k=v(T),w=k.next();!w.done;w=k.next()){var I=w.value;if(h[I].length){var D=h[I].length===1?i.annotationLabels[I].singular:i.annotationLabels[I].plural;R.push("".concat(h[I].length," ").concat(D))}}}catch(E){m={error:E}}finally{try{w&&!w.done&&(y=k.return)&&y.call(k)}finally{if(m)throw m.error}}return R.join(", ")},i.prototype.isOutsideOfText=function(h){var m=h.editor,y=m.renderer.$gutter.getBoundingClientRect();return!(h.clientX>=y.left&&h.clientX<=y.right&&h.clientY>=y.top&&h.clientY<=y.bottom)},i})(f);r.$uid=0,u.GutterTooltip=r}),ace.define("ace/mouse/dragdrop_handler",["require","exports","module","ace/lib/dom","ace/lib/event","ace/lib/useragent"],function(e,u,M){var b=e("../lib/dom"),v=e("../lib/event"),x=e("../lib/useragent"),p=200,f=200,a=5;function s(r){var n=r.editor,i=b.createElement("div");i.style.cssText="top:-100px;position:absolute;z-index:2147483647;opacity:0.5",i.textContent=" ";var h=["dragWait","dragWaitEnd","startDrag","dragReadyEnd","onMouseDrag"];h.forEach(function(ne){r[ne]=this[ne]},this),n.on("mousedown",this.onMouseDown.bind(r));var m=n.container,y,R,T,k,w,I,D=0,E,L,z,F,O;this.onDragStart=function(ne){if(this.cancelDrag||!m.draggable){var ue=this;return setTimeout(function(){ue.startSelect(),ue.captureMouse(ne)},0),ne.preventDefault()}w=n.getSelectionRange();var he=ne.dataTransfer;he.effectAllowed=n.getReadOnly()?"copy":"copyMove",n.container.appendChild(i),he.setDragImage&&he.setDragImage(i,0,0),setTimeout(function(){n.container.removeChild(i)}),he.clearData(),he.setData("Text",n.session.getTextRange()),L=!0,this.setState("drag")},this.onDragEnd=function(ne){if(m.draggable=!1,L=!1,this.setState(null),!n.getReadOnly()){var ue=ne.dataTransfer.dropEffect;!E&&ue=="move"&&n.session.remove(n.getSelectionRange()),n.$resetCursorStyle()}this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle("")},this.onDragEnter=function(ne){if(!(n.getReadOnly()||!te(ne.dataTransfer)))return R=ne.clientX,T=ne.clientY,y||W(),D++,ne.dataTransfer.dropEffect=E=le(ne),v.preventDefault(ne)},this.onDragOver=function(ne){if(!(n.getReadOnly()||!te(ne.dataTransfer)))return R=ne.clientX,T=ne.clientY,y||(W(),D++),G!==null&&(G=null),ne.dataTransfer.dropEffect=E=le(ne),v.preventDefault(ne)},this.onDragLeave=function(ne){if(D--,D<=0&&y)return V(),E=null,v.preventDefault(ne)},this.onDrop=function(ne){if(I){var ue=ne.dataTransfer;if(L)switch(E){case"move":w.contains(I.row,I.column)?w={start:I,end:I}:w=n.moveText(w,I);break;case"copy":w=n.moveText(w,I,!0);break}else{var he=ue.getData("Text");w={start:I,end:n.session.insert(I,he)},n.focus(),E=null}return V(),v.preventDefault(ne)}},v.addListener(m,"dragstart",this.onDragStart.bind(r),n),v.addListener(m,"dragend",this.onDragEnd.bind(r),n),v.addListener(m,"dragenter",this.onDragEnter.bind(r),n),v.addListener(m,"dragover",this.onDragOver.bind(r),n),v.addListener(m,"dragleave",this.onDragLeave.bind(r),n),v.addListener(m,"drop",this.onDrop.bind(r),n);function A(ne,ue){var he=Date.now(),ce=!ue||ne.row!=ue.row,me=!ue||ne.column!=ue.column;if(!F||ce||me)n.moveCursorToPosition(ne),F=he,O={x:R,y:T};else{var _e=o(O.x,O.y,R,T);_e>a?F=null:he-F>=f&&(n.renderer.scrollCursorIntoView(),F=null)}}function S(ne,ue){var he=Date.now(),ce=n.renderer.layerConfig.lineHeight,me=n.renderer.layerConfig.characterWidth,_e=n.renderer.scroller.getBoundingClientRect(),Ae={x:{left:R-_e.left,right:_e.right-R},y:{top:T-_e.top,bottom:_e.bottom-T}},Me=Math.min(Ae.x.left,Ae.x.right),Ye=Math.min(Ae.y.top,Ae.y.bottom),Ve={row:ne.row,column:ne.column};Me/me<=2&&(Ve.column+=Ae.x.left<Ae.x.right?-3:2),Ye/ce<=1&&(Ve.row+=Ae.y.top<Ae.y.bottom?-1:1);var it=ne.row!=Ve.row,lt=ne.column!=Ve.column,nt=!ue||ne.row!=ue.row;it||lt&&!nt?z?he-z>=p&&n.renderer.scrollCursorIntoView(Ve):z=he:z=null}function N(){var ne=I;I=n.renderer.screenToTextCoordinates(R,T),A(I,ne),S(I,ne)}function W(){w=n.selection.toOrientedRange(),y=n.session.addMarker(w,"ace_selection",n.getSelectionStyle()),n.clearSelection(),n.isFocused()&&n.renderer.$cursorLayer.setBlinking(!1),clearInterval(k),N(),k=setInterval(N,20),D=0,v.addListener(document,"mousemove",Q)}function V(){clearInterval(k),n.session.removeMarker(y),y=null,n.selection.fromOrientedRange(w),n.isFocused()&&!L&&n.$resetCursorStyle(),w=null,I=null,D=0,z=null,F=null,v.removeListener(document,"mousemove",Q)}var G=null;function Q(){G==null&&(G=setTimeout(function(){G!=null&&y&&V()},20))}function te(ne){var ue=ne.types;return!ue||Array.prototype.some.call(ue,function(he){return he=="text/plain"||he=="Text"})}function le(ne){var ue=["copy","copymove","all","uninitialized"],he=["move","copymove","linkmove","all","uninitialized"],ce=x.isMac?ne.altKey:ne.ctrlKey,me="uninitialized";try{me=ne.dataTransfer.effectAllowed.toLowerCase()}catch{}var _e="none";return ce&&ue.indexOf(me)>=0?_e="copy":he.indexOf(me)>=0?_e="move":ue.indexOf(me)>=0&&(_e="copy"),_e}}(function(){this.dragWait=function(){var r=Date.now()-this.mousedownEvent.time;r>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var r=this.editor.container;r.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(r){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var r=this.editor,n=r.container;n.draggable=!0,r.renderer.$cursorLayer.setBlinking(!1),r.setStyle("ace_dragging");var i=x.isWin?"default":"move";r.renderer.setCursorStyle(i),this.setState("dragReady")},this.onMouseDrag=function(r){var n=this.editor.container;if(x.isIE&&this.state=="dragReady"){var i=o(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);i>3&&n.dragDrop()}if(this.state==="dragWait"){var i=o(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);i>0&&(n.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(r){if(this.$dragEnabled){this.mousedownEvent=r;var n=this.editor,i=r.inSelection(),h=r.getButton(),m=r.domEvent.detail||1;if(m===1&&h===0&&i){if(r.editor.inMultiSelectMode&&(r.getAccelKey()||r.getShiftKey()))return;this.mousedownEvent.time=Date.now();var y=r.domEvent.target||r.domEvent.srcElement;if("unselectable"in y&&(y.unselectable="on"),n.getDragDelay()){if(x.isWebKit){this.cancelDrag=!0;var R=n.container;R.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(r,this.onMouseDrag.bind(this)),r.defaultPrevented=!0}}}}).call(s.prototype);function o(r,n,i,h){return Math.sqrt(Math.pow(i-r,2)+Math.pow(h-n,2))}u.DragdropHandler=s}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(e,u,M){var b=e("./mouse_event").MouseEvent,v=e("../lib/event"),x=e("../lib/dom");u.addTouchListeners=function(p,f){var a="scroll",s,o,r,n,i,h,m=0,y,R=0,T=0,k=0,w,I;function D(){var A=window.navigator&&window.navigator.clipboard,S=!1,N=function(){var G=f.getCopyText(),Q=f.session.getUndoManager().hasUndo();I.replaceChild(x.buildDom(S?["span",!G&&W("selectall")&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],G&&W("copy")&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],G&&W("cut")&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],A&&W("paste")&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],Q&&W("undo")&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],W("find")&&["span",{class:"ace_mobile-button",action:"find"},"Find"],W("openCommandPalette")&&["span",{class:"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),I.firstChild)},W=function(G){return f.commands.canExecute(G,f)},V=function(G){var Q=G.target.getAttribute("action");if(Q=="more"||!S)return S=!S,N();Q=="paste"?A.readText().then(function(te){f.execCommand(Q,te)}):Q&&((Q=="cut"||Q=="copy")&&(A?A.writeText(f.getCopyText()):document.execCommand("copy")),f.execCommand(Q)),I.firstChild.style.display="none",S=!1,Q!="openCommandPalette"&&f.focus()};I=x.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(G){a="menu",G.stopPropagation(),G.preventDefault(),f.textInput.focus()},ontouchend:function(G){G.stopPropagation(),G.preventDefault(),V(G)},onclick:V},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],f.container)}function E(){if(!f.getOption("enableMobileMenu")){I&&L();return}I||D();var A=f.selection.cursor,S=f.renderer.textToScreenCoordinates(A.row,A.column),N=f.renderer.textToScreenCoordinates(0,0).pageX,W=f.renderer.scrollLeft,V=f.container.getBoundingClientRect();I.style.top=S.pageY-V.top-3+"px",S.pageX-V.left<V.width-70?(I.style.left="",I.style.right="10px"):(I.style.right="",I.style.left=N+W-V.left+"px"),I.style.display="",I.firstChild.style.display="none",f.on("input",L)}function L(A){I&&(I.style.display="none"),f.off("input",L)}function z(){i=null,clearTimeout(i);var A=f.selection.getRange(),S=A.contains(y.row,y.column);(A.isEmpty()||!S)&&(f.selection.moveToPosition(y),f.selection.selectWord()),a="wait",E()}function F(){i=null,clearTimeout(i),f.selection.moveToPosition(y);var A=R>=2?f.selection.getLineRange(y.row):f.session.getBracketRange(y);A&&!A.isEmpty()?f.selection.setRange(A):f.selection.selectWord(),a="wait"}v.addListener(p,"contextmenu",function(A){if(w){var S=f.textInput.getElement();S.focus()}},f),v.addListener(p,"touchstart",function(A){var S=A.touches;if(i||S.length>1){clearTimeout(i),i=null,r=-1,a="zoom";return}w=f.$mouseHandler.isMousePressed=!0;var N=f.renderer.layerConfig.lineHeight,W=f.renderer.layerConfig.lineHeight,V=A.timeStamp;n=V;var G=S[0],Q=G.clientX,te=G.clientY;Math.abs(s-Q)+Math.abs(o-te)>N&&(r=-1),s=A.clientX=Q,o=A.clientY=te,T=k=0;var le=new b(A,f);if(y=le.getDocumentPosition(),V-r<500&&S.length==1&&!m)R++,A.preventDefault(),A.button=0,F();else{R=0;var ne=f.selection.cursor,ue=f.selection.isEmpty()?ne:f.selection.anchor,he=f.renderer.$cursorLayer.getPixelPosition(ne,!0),ce=f.renderer.$cursorLayer.getPixelPosition(ue,!0),me=f.renderer.scroller.getBoundingClientRect(),_e=f.renderer.layerConfig.offset,Ae=f.renderer.scrollLeft,Me=function(it,lt){return it=it/W,lt=lt/N-.75,it*it+lt*lt};if(A.clientX<me.left){a="zoom";return}var Ye=Me(A.clientX-me.left-he.left+Ae,A.clientY-me.top-he.top+_e),Ve=Me(A.clientX-me.left-ce.left+Ae,A.clientY-me.top-ce.top+_e);Ye<3.5&&Ve<3.5&&(a=Ye>Ve?"cursor":"anchor"),Ve<3.5?a="anchor":Ye<3.5?a="cursor":a="scroll",i=setTimeout(z,450)}r=V},f),v.addListener(p,"touchend",function(A){w=f.$mouseHandler.isMousePressed=!1,h&&clearInterval(h),a=="zoom"?(a="",m=0):i?(f.selection.moveToPosition(y),m=0,E()):a=="scroll"?(O(),L()):E(),clearTimeout(i),i=null},f),v.addListener(p,"touchmove",function(A){i&&(clearTimeout(i),i=null);var S=A.touches;if(!(S.length>1||a=="zoom")){var N=S[0],W=s-N.clientX,V=o-N.clientY;if(a=="wait")if(W*W+V*V>4)a="cursor";else return A.preventDefault();s=N.clientX,o=N.clientY,A.clientX=N.clientX,A.clientY=N.clientY;var G=A.timeStamp,Q=G-n;if(n=G,a=="scroll"){var te=new b(A,f);te.speed=1,te.wheelX=W,te.wheelY=V,10*Math.abs(W)<Math.abs(V)&&(W=0),10*Math.abs(V)<Math.abs(W)&&(V=0),Q!=0&&(T=W/Q,k=V/Q),f._emit("mousewheel",te),te.propagationStopped||(T=k=0)}else{var le=new b(A,f),ne=le.getDocumentPosition();a=="cursor"?f.selection.moveCursorToPosition(ne):a=="anchor"&&f.selection.setSelectionAnchor(ne.row,ne.column),f.renderer.scrollCursorIntoView(ne),A.preventDefault()}}},f);function O(){m+=60,h=setInterval(function(){m--<=0&&(clearInterval(h),h=null),Math.abs(T)<.01&&(T=0),Math.abs(k)<.01&&(k=0),m<20&&(T=.9*T),m<20&&(k=.9*k);var A=f.session.getScrollTop();f.renderer.scrollBy(10*T,10*k),A==f.session.getScrollTop()&&(m=0)},10)}}}),ace.define("ace/mouse/mouse_handler",["require","exports","module","ace/lib/event","ace/lib/useragent","ace/mouse/default_handlers","ace/mouse/default_gutter_handler","ace/mouse/mouse_event","ace/mouse/dragdrop_handler","ace/mouse/touch_handler","ace/config"],function(e,u,M){var b=e("../lib/event"),v=e("../lib/useragent"),x=e("./default_handlers").DefaultHandlers,p=e("./default_gutter_handler").GutterHandler,f=e("./mouse_event").MouseEvent,a=e("./dragdrop_handler").DragdropHandler,s=e("./touch_handler").addTouchListeners,o=e("../config"),r=(function(){function n(i){this.$dragDelay,this.$dragEnabled,this.$mouseMoved,this.mouseEvent,this.$focusTimeout;var h=this;this.editor=i,new x(this),new p(this),new a(this);var m=function(T){var k=!document.hasFocus||!document.hasFocus()||!i.isFocused()&&document.activeElement==(i.textInput&&i.textInput.getElement());k&&window.focus(),i.focus(),setTimeout(function(){i.isFocused()||i.focus()})},y=i.renderer.getMouseEventTarget();b.addListener(y,"click",this.onMouseEvent.bind(this,"click"),i),b.addListener(y,"mousemove",this.onMouseMove.bind(this,"mousemove"),i),b.addMultiMouseDownListener([y,i.renderer.scrollBarV&&i.renderer.scrollBarV.inner,i.renderer.scrollBarH&&i.renderer.scrollBarH.inner,i.textInput&&i.textInput.getElement()].filter(Boolean),[400,300,250],this,"onMouseEvent",i),b.addMouseWheelListener(i.container,this.onMouseWheel.bind(this,"mousewheel"),i),s(i.container,i);var R=i.renderer.$gutter;b.addListener(R,"mousedown",this.onMouseEvent.bind(this,"guttermousedown"),i),b.addListener(R,"click",this.onMouseEvent.bind(this,"gutterclick"),i),b.addListener(R,"dblclick",this.onMouseEvent.bind(this,"gutterdblclick"),i),b.addListener(R,"mousemove",this.onMouseEvent.bind(this,"guttermousemove"),i),b.addListener(y,"mousedown",m,i),b.addListener(R,"mousedown",m,i),v.isIE&&i.renderer.scrollBarV&&(b.addListener(i.renderer.scrollBarV.element,"mousedown",m,i),b.addListener(i.renderer.scrollBarH.element,"mousedown",m,i)),i.on("mousemove",function(T){if(!(h.state||h.$dragDelay||!h.$dragEnabled)){var k=i.renderer.screenToTextCoordinates(T.x,T.y),w=i.session.selection.getRange(),I=i.renderer;!w.isEmpty()&&w.insideStart(k.row,k.column)?I.setCursorStyle("default"):I.setCursorStyle("")}},i)}return n.prototype.onMouseEvent=function(i,h){this.editor.session&&this.editor._emit(i,new f(h,this.editor))},n.prototype.onMouseMove=function(i,h){var m=this.editor._eventRegistry&&this.editor._eventRegistry.mousemove;!m||!m.length||this.editor._emit(i,new f(h,this.editor))},n.prototype.onMouseWheel=function(i,h){var m=new f(h,this.editor);m.speed=this.$scrollSpeed*2,m.wheelX=h.wheelX,m.wheelY=h.wheelY,this.editor._emit(i,m)},n.prototype.setState=function(i){this.state=i},n.prototype.captureMouse=function(i,h){this.x=i.x,this.y=i.y,this.isMousePressed=!0;var m=this.editor,y=this.editor.renderer;y.$isMousePressed=!0;var R=this,T=!0,k=function(L){if(L){if(v.isWebKit&&!L.which&&R.releaseMouse)return R.releaseMouse();R.x=L.clientX,R.y=L.clientY,h&&h(L),R.mouseEvent=new f(L,R.editor),R.$mouseMoved=!0}},w=function(L){m.off("beforeEndOperation",E),T=!1,m.session&&I(),R[R.state+"End"]&&R[R.state+"End"](L),R.state="",R.isMousePressed=y.$isMousePressed=!1,y.$keepTextAreaAtCursor&&y.$moveTextAreaToCursor(),R.$onCaptureMouseMove=R.releaseMouse=null,L&&R.onMouseEvent("mouseup",L),m.endOperation()},I=function(){R[R.state]&&R[R.state](),R.$mouseMoved=!1},D=function(){T&&(I(),b.nextFrame(D))};if(v.isOldIE&&i.domEvent.type=="dblclick")return setTimeout(function(){w(i)});var E=function(L){R.releaseMouse&&m.curOp.command.name&&m.curOp.selectionChanged&&(R[R.state+"End"]&&R[R.state+"End"](),R.state="",R.releaseMouse())};m.on("beforeEndOperation",E),m.startOperation({command:{name:"mouse"}}),R.$onCaptureMouseMove=k,R.releaseMouse=b.capture(this.editor.container,k,w),D()},n.prototype.cancelContextMenu=function(){var i=(function(h){h&&h.domEvent&&h.domEvent.type!="contextmenu"||(this.editor.off("nativecontextmenu",i),h&&h.domEvent&&b.stopEvent(h.domEvent))}).bind(this);setTimeout(i,10),this.editor.on("nativecontextmenu",i)},n.prototype.destroy=function(){this.releaseMouse&&this.releaseMouse(),this.$tooltip&&this.$tooltip.destroy()},n})();r.prototype.releaseMouse=null,o.defineOptions(r.prototype,"mouseHandler",{scrollSpeed:{initialValue:2},dragDelay:{initialValue:v.isMac?150:0},dragEnabled:{initialValue:!0},focusTimeout:{initialValue:0}}),u.MouseHandler=r}),ace.define("ace/mouse/fold_handler",["require","exports","module","ace/lib/dom"],function(e,u,M){var b=e("../lib/dom"),v=(function(){function x(p){p.on("click",function(f){var a=f.getDocumentPosition(),s=p.session,o=s.getFoldAt(a.row,a.column,1);o&&(f.getAccelKey()?s.removeFold(o):s.expandFold(o),f.stop());var r=f.domEvent&&f.domEvent.target;r&&b.hasCssClass(r,"ace_inline_button")&&b.hasCssClass(r,"ace_toggle_wrap")&&(s.setOption("wrap",!s.getUseWrapMode()),p.renderer.scrollCursorIntoView())}),p.on("gutterclick",function(f){var a=p.renderer.$gutterLayer.getRegion(f);if(a=="foldWidgets"){var s=f.getDocumentPosition().row,o=p.session;o.foldWidgets&&o.foldWidgets[s]&&p.session.onFoldWidgetClick(s,f),p.isFocused()||p.focus(),f.stop()}}),p.on("gutterdblclick",function(f){var a=p.renderer.$gutterLayer.getRegion(f);if(a=="foldWidgets"){var s=f.getDocumentPosition().row,o=p.session,r=o.getParentFoldRangeData(s,!0),n=r.range||r.firstRange;if(n){s=n.start.row;var i=o.getFoldAt(s,o.getLine(s).length,1);i?o.removeFold(i):(o.addFold("...",n),p.renderer.scrollCursorIntoView({row:n.start.row,column:0}))}f.stop()}})}return x})();u.FoldHandler=v}),ace.define("ace/keyboard/keybinding",["require","exports","module","ace/lib/keys","ace/lib/event"],function(e,u,M){var b=e("../lib/keys"),v=e("../lib/event"),x=(function(){function p(f){this.$editor=f,this.$data={editor:f},this.$handlers=[],this.setDefaultHandler(f.commands)}return p.prototype.setDefaultHandler=function(f){this.removeKeyboardHandler(this.$defaultHandler),this.$defaultHandler=f,this.addKeyboardHandler(f,0)},p.prototype.setKeyboardHandler=function(f){var a=this.$handlers;if(a[a.length-1]!=f){for(;a[a.length-1]&&a[a.length-1]!=this.$defaultHandler;)this.removeKeyboardHandler(a[a.length-1]);this.addKeyboardHandler(f,1)}},p.prototype.addKeyboardHandler=function(f,a){if(f){typeof f=="function"&&!f.handleKeyboard&&(f.handleKeyboard=f);var s=this.$handlers.indexOf(f);s!=-1&&this.$handlers.splice(s,1),a==null?this.$handlers.push(f):this.$handlers.splice(a,0,f),s==-1&&f.attach&&f.attach(this.$editor)}},p.prototype.removeKeyboardHandler=function(f){var a=this.$handlers.indexOf(f);return a==-1?!1:(this.$handlers.splice(a,1),f.detach&&f.detach(this.$editor),!0)},p.prototype.getKeyboardHandler=function(){return this.$handlers[this.$handlers.length-1]},p.prototype.getStatusText=function(){var f=this.$data,a=f.editor;return this.$handlers.map(function(s){return s.getStatusText&&s.getStatusText(a,f)||""}).filter(Boolean).join(" ")},p.prototype.$callKeyboardHandlers=function(f,a,s,o){for(var r,n=!1,i=this.$editor.commands,h=this.$handlers.length;h--&&(r=this.$handlers[h].handleKeyboard(this.$data,f,a,s,o),!(!(!r||!r.command)&&(r.command=="null"?n=!0:n=i.exec(r.command,this.$editor,r.args,o),n&&o&&f!=-1&&r.passEvent!=!0&&r.command.passEvent!=!0&&v.stopEvent(o),n))););return!n&&f==-1&&(r={command:"insertstring"},n=i.exec("insertstring",this.$editor,a)),n&&this.$editor._signal&&this.$editor._signal("keyboardActivity",r),n},p.prototype.onCommandKey=function(f,a,s){var o=b.keyCodeToString(s);return this.$callKeyboardHandlers(a,o,s,f)},p.prototype.onTextInput=function(f){return this.$callKeyboardHandlers(-1,f)},p})();u.KeyBinding=x}),ace.define("ace/lib/bidiutil",["require","exports","module"],function(e,u,M){var b=0,v=0,x=!1,p=!1,f=!1,a=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],s=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],o=0,r=1,n=0,i=1,h=2,m=3,y=4,R=5,T=6,k=7,w=8,I=9,D=10,E=11,L=12,z=13,F=14,O=15,A=16,S=17,N=18,W=[N,N,N,N,N,N,N,N,N,T,R,T,w,R,N,N,N,N,N,N,N,N,N,N,N,N,N,N,R,R,R,T,w,y,y,E,E,E,y,y,y,y,y,D,I,D,I,I,h,h,h,h,h,h,h,h,h,h,I,y,y,y,y,y,y,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,y,y,y,y,y,y,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,y,y,y,y,N,N,N,N,N,N,R,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,N,I,y,E,E,E,E,y,y,y,y,n,y,y,N,y,y,E,E,h,h,y,n,y,y,y,h,n,y,y,y,y,y],V=[w,w,w,w,w,w,w,w,w,w,w,N,N,N,n,i,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,w,R,z,F,O,A,S,I,E,E,E,E,E,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,I,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,w];function G(ne,ue,he,ce){var me=b?s:a,_e=null,Ae=null,Me=null,Ye=0,Ve=null,it=null,lt=-1,nt=null,Ot=null,bi=[];if(!ce)for(nt=0,ce=[];nt<he;nt++)ce[nt]=le(ne[nt]);for(v=b,x=!1,p=!1,f=!1,Ot=0;Ot<he;Ot++){if(_e=Ye,bi[Ot]=Ae=te(ne,ce,bi,Ot),Ye=me[_e][Ae],Ve=Ye&240,Ye&=15,ue[Ot]=Me=me[Ye][5],Ve>0)if(Ve==16){for(nt=lt;nt<Ot;nt++)ue[nt]=1;lt=-1}else lt=-1;if(it=me[Ye][6],it)lt==-1&&(lt=Ot);else if(lt>-1){for(nt=lt;nt<Ot;nt++)ue[nt]=Me;lt=-1}ce[Ot]==R&&(ue[Ot]=0),v|=Me}if(f){for(nt=0;nt<he;nt++)if(ce[nt]==T){ue[nt]=b;for(var kt=nt-1;kt>=0&&ce[kt]==w;kt--)ue[kt]=b}}}function Q(ne,ue,he){if(!(v<ne)){if(ne==1&&b==r&&!p){he.reverse();return}for(var ce=he.length,me=0,_e,Ae,Me,Ye;me<ce;){if(ue[me]>=ne){for(_e=me+1;_e<ce&&ue[_e]>=ne;)_e++;for(Ae=me,Me=_e-1;Ae<Me;Ae++,Me--)Ye=he[Ae],he[Ae]=he[Me],he[Me]=Ye;me=_e}me++}}}function te(ne,ue,he,ce){var me=ue[ce],_e,Ae,Me,Ye;switch(me){case n:case i:x=!1;case y:case m:return me;case h:return x?m:h;case k:return x=!0,i;case w:return y;case I:return ce<1||ce+1>=ue.length||(_e=he[ce-1])!=h&&_e!=m||(Ae=ue[ce+1])!=h&&Ae!=m?y:(x&&(Ae=m),Ae==_e?Ae:y);case D:return _e=ce>0?he[ce-1]:R,_e==h&&ce+1<ue.length&&ue[ce+1]==h?h:y;case E:if(ce>0&&he[ce-1]==h)return h;if(x)return y;for(Ye=ce+1,Me=ue.length;Ye<Me&&ue[Ye]==E;)Ye++;return Ye<Me&&ue[Ye]==h?h:y;case L:for(Me=ue.length,Ye=ce+1;Ye<Me&&ue[Ye]==L;)Ye++;if(Ye<Me){var Ve=ne[ce],it=Ve>=1425&&Ve<=2303||Ve==64286;if(_e=ue[Ye],it&&(_e==i||_e==k))return i}return ce<1||(_e=ue[ce-1])==R?y:he[ce-1];case R:return x=!1,p=!0,b;case T:return f=!0,y;case z:case F:case A:case S:case O:x=!1;case N:return y}}function le(ne){var ue=ne.charCodeAt(0),he=ue>>8;return he==0?ue>191?n:W[ue]:he==5?/[\u0591-\u05f4]/.test(ne)?i:n:he==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(ne)?L:/[\u0660-\u0669\u066b-\u066c]/.test(ne)?m:ue==1642?E:/[\u06f0-\u06f9]/.test(ne)?h:k:he==32&&ue<=8287?V[ue&255]:he==254&&ue>=65136?k:y}u.L=n,u.R=i,u.EN=h,u.ON_R=3,u.AN=4,u.R_H=5,u.B=6,u.RLE=7,u.DOT="·",u.doBidiReorder=function(ne,ue,he){if(ne.length<2)return{};var ce=ne.split(""),me=new Array(ce.length),_e=new Array(ce.length),Ae=[];b=he?r:o,G(ce,Ae,ce.length,ue);for(var Me=0;Me<me.length;me[Me]=Me,Me++);Q(2,Ae,me),Q(1,Ae,me);for(var Me=0;Me<me.length-1;Me++)ue[Me]===m?Ae[Me]=u.AN:Ae[Me]===i&&(ue[Me]>k&&ue[Me]<z||ue[Me]===y||ue[Me]===N)?Ae[Me]=u.ON_R:Me>0&&ce[Me-1]==="ل"&&/\u0622|\u0623|\u0625|\u0627/.test(ce[Me])&&(Ae[Me-1]=Ae[Me]=u.R_H,Me++);ce[ce.length-1]===u.DOT&&(Ae[ce.length-1]=u.B),ce[0]==="‫"&&(Ae[0]=u.RLE);for(var Me=0;Me<me.length;Me++)_e[Me]=Ae[me[Me]];return{logicalFromVisual:me,bidiLevels:_e}},u.hasBidiCharacters=function(ne,ue){for(var he=!1,ce=0;ce<ne.length;ce++)ue[ce]=le(ne.charAt(ce)),!he&&(ue[ce]==i||ue[ce]==k||ue[ce]==m)&&(he=!0);return he},u.getVisualFromLogicalIdx=function(ne,ue){for(var he=0;he<ue.logicalFromVisual.length;he++)if(ue.logicalFromVisual[he]==ne)return he;return 0}}),ace.define("ace/bidihandler",["require","exports","module","ace/lib/bidiutil","ace/lib/lang"],function(e,u,M){var b=e("./lib/bidiutil"),v=e("./lib/lang"),x=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\u202B]/,p=(function(){function f(a){this.session=a,this.bidiMap={},this.currentRow=null,this.bidiUtil=b,this.charWidths=[],this.EOL="¬",this.showInvisibles=!0,this.isRtlDir=!1,this.$isRtl=!1,this.line="",this.wrapIndent=0,this.EOF="¶",this.RLE="‫",this.contentWidth=0,this.fontMetrics=null,this.rtlLineOffset=0,this.wrapOffset=0,this.isMoveLeftOperation=!1,this.seenBidi=x.test(a.getValue())}return f.prototype.isBidiRow=function(a,s,o){return this.seenBidi?(a!==this.currentRow&&(this.currentRow=a,this.updateRowLine(s,o),this.updateBidiMap()),this.bidiMap.bidiLevels):!1},f.prototype.onChange=function(a){this.seenBidi?this.currentRow=null:a.action=="insert"&&x.test(a.lines.join(`
173
+ `))&&(this.seenBidi=!0,this.currentRow=null)},f.prototype.getDocumentRow=function(){var a=0,s=this.session.$screenRowCache;if(s.length){var o=this.session.$getRowCacheIndex(s,this.currentRow);o>=0&&(a=this.session.$docRowCache[o])}return a},f.prototype.getSplitIndex=function(){var a=0,s=this.session.$screenRowCache;if(s.length)for(var o,r=this.session.$getRowCacheIndex(s,this.currentRow);this.currentRow-a>0&&(o=this.session.$getRowCacheIndex(s,this.currentRow-a-1),o===r);)r=o,a++;else a=this.currentRow;return a},f.prototype.updateRowLine=function(a,s){a===void 0&&(a=this.getDocumentRow());var o=a===this.session.getLength()-1,r=o?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(a),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var n=this.session.$wrapData[a];n&&(s===void 0&&(s=this.getSplitIndex()),s>0&&n.length?(this.wrapIndent=n.indent,this.wrapOffset=this.wrapIndent*this.charWidths[b.L],this.line=s<n.length?this.line.substring(n[s-1],n[s]):this.line.substring(n[n.length-1])):this.line=this.line.substring(0,n[s]),s==n.length&&(this.line+=this.showInvisibles?r:b.DOT))}else this.line+=this.showInvisibles?r:b.DOT;var i=this.session,h=0,m;this.line=this.line.replace(/\t|[\u1100-\u2029, \u202F-\uFFE6]/g,function(y,R){return y===" "||i.isFullWidth(y.charCodeAt(0))?(m=y===" "?i.getScreenTabSize(R+h):2,h+=m-1,v.stringRepeat(b.DOT,m)):y}),this.isRtlDir&&(this.fontMetrics.$main.textContent=this.line.charAt(this.line.length-1)==b.DOT?this.line.substr(0,this.line.length-1):this.line,this.rtlLineOffset=this.contentWidth-this.fontMetrics.$main.getBoundingClientRect().width)},f.prototype.updateBidiMap=function(){var a=[];b.hasBidiCharacters(this.line,a)||this.isRtlDir?this.bidiMap=b.doBidiReorder(this.line,a,this.isRtlDir):this.bidiMap={}},f.prototype.markAsDirty=function(){this.currentRow=null},f.prototype.updateCharacterWidths=function(a){if(this.characterWidth!==a.$characterSize.width){this.fontMetrics=a;var s=this.characterWidth=a.$characterSize.width,o=a.$measureCharWidth("ה");this.charWidths[b.L]=this.charWidths[b.EN]=this.charWidths[b.ON_R]=s,this.charWidths[b.R]=this.charWidths[b.AN]=o,this.charWidths[b.R_H]=o*.45,this.charWidths[b.B]=this.charWidths[b.RLE]=0,this.currentRow=null}},f.prototype.setShowInvisibles=function(a){this.showInvisibles=a,this.currentRow=null},f.prototype.setEolChar=function(a){this.EOL=a},f.prototype.setContentWidth=function(a){this.contentWidth=a},f.prototype.isRtlLine=function(a){return this.$isRtl?!0:a!=null?this.session.getLine(a).charAt(0)==this.RLE:this.isRtlDir},f.prototype.setRtlDirection=function(a,s){for(var o=a.getCursorPosition(),r=a.selection.getSelectionAnchor().row;r<=o.row;r++)!s&&a.session.getLine(r).charAt(0)===a.session.$bidiHandler.RLE?a.session.doc.removeInLine(r,0,1):s&&a.session.getLine(r).charAt(0)!==a.session.$bidiHandler.RLE&&a.session.doc.insert({column:0,row:r},a.session.$bidiHandler.RLE)},f.prototype.getPosLeft=function(a){a-=this.wrapIndent;var s=this.line.charAt(0)===this.RLE?1:0,o=a>s?this.session.getOverwrite()?a:a-1:s,r=b.getVisualFromLogicalIdx(o,this.bidiMap),n=this.bidiMap.bidiLevels,i=0;!this.session.getOverwrite()&&a<=s&&n[r]%2!==0&&r++;for(var h=0;h<r;h++)i+=this.charWidths[n[h]];return!this.session.getOverwrite()&&a>s&&n[r]%2===0&&(i+=this.charWidths[n[r]]),this.wrapIndent&&(i+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(i+=this.rtlLineOffset),i},f.prototype.getSelections=function(a,s){var o=this.bidiMap,r=o.bidiLevels,n,i=[],h=0,m=Math.min(a,s)-this.wrapIndent,y=Math.max(a,s)-this.wrapIndent,R=!1,T=!1,k=0;this.wrapIndent&&(h+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var w,I=0;I<r.length;I++)w=o.logicalFromVisual[I],n=r[I],R=w>=m&&w<y,R&&!T?k=h:!R&&T&&i.push({left:k,width:h-k}),h+=this.charWidths[n],T=R;if(R&&I===r.length&&i.push({left:k,width:h-k}),this.isRtlDir)for(var D=0;D<i.length;D++)i[D].left+=this.rtlLineOffset;return i},f.prototype.offsetToCol=function(o){this.isRtlDir&&(o-=this.rtlLineOffset);var s=0,o=Math.max(o,0),r=0,n=0,i=this.bidiMap.bidiLevels,h=this.charWidths[i[n]];for(this.wrapIndent&&(o-=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);o>r+h/2;){if(r+=h,n===i.length-1){h=0;break}h=this.charWidths[i[++n]]}return n>0&&i[n-1]%2!==0&&i[n]%2===0?(o<r&&n--,s=this.bidiMap.logicalFromVisual[n]):n>0&&i[n-1]%2===0&&i[n]%2!==0?s=1+(o>r?this.bidiMap.logicalFromVisual[n]:this.bidiMap.logicalFromVisual[n-1]):this.isRtlDir&&n===i.length-1&&h===0&&i[n-1]%2===0||!this.isRtlDir&&n===0&&i[n]%2!==0?s=1+this.bidiMap.logicalFromVisual[n]:(n>0&&i[n-1]%2!==0&&h!==0&&n--,s=this.bidiMap.logicalFromVisual[n]),s===0&&this.isRtlDir&&s++,s+this.wrapIndent},f})();u.BidiHandler=p}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(e,u,M){var b=e("./lib/oop"),v=e("./lib/lang"),x=e("./lib/event_emitter").EventEmitter,p=e("./range").Range,f=(function(){function a(s){this.session=s,this.doc=s.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var o=this;this.cursor.on("change",function(r){o.$cursorChanged=!0,o.$silent||o._emit("changeCursor"),!o.$isEmpty&&!o.$silent&&o._emit("changeSelection"),!o.$keepDesiredColumnOnChange&&r.old.column!=r.value.column&&(o.$desiredColumn=null)}),this.anchor.on("change",function(){o.$anchorChanged=!0,!o.$isEmpty&&!o.$silent&&o._emit("changeSelection")})}return a.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},a.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},a.prototype.getCursor=function(){return this.lead.getPosition()},a.prototype.setAnchor=function(s,o){this.$isEmpty=!1,this.anchor.setPosition(s,o)},a.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},a.prototype.getSelectionLead=function(){return this.lead.getPosition()},a.prototype.isBackwards=function(){var s=this.anchor,o=this.lead;return s.row>o.row||s.row==o.row&&s.column>o.column},a.prototype.getRange=function(){var s=this.anchor,o=this.lead;return this.$isEmpty?p.fromPoints(o,o):this.isBackwards()?p.fromPoints(o,s):p.fromPoints(s,o)},a.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},a.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},a.prototype.setRange=function(s,o){var r=o?s.end:s.start,n=o?s.start:s.end;this.$setSelection(r.row,r.column,n.row,n.column)},a.prototype.$setSelection=function(s,o,r,n){if(!this.$silent){var i=this.$isEmpty,h=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(s,o),this.cursor.setPosition(r,n),this.$isEmpty=!p.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||i!=this.$isEmpty||h)&&this._emit("changeSelection")}},a.prototype.$moveSelection=function(s){var o=this.lead;this.$isEmpty&&this.setSelectionAnchor(o.row,o.column),s.call(this)},a.prototype.selectTo=function(s,o){this.$moveSelection(function(){this.moveCursorTo(s,o)})},a.prototype.selectToPosition=function(s){this.$moveSelection(function(){this.moveCursorToPosition(s)})},a.prototype.moveTo=function(s,o){this.clearSelection(),this.moveCursorTo(s,o)},a.prototype.moveToPosition=function(s){this.clearSelection(),this.moveCursorToPosition(s)},a.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},a.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},a.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},a.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},a.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},a.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},a.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},a.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},a.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},a.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},a.prototype.getWordRange=function(s,o){if(typeof o>"u"){var r=s||this.lead;s=r.row,o=r.column}return this.session.getWordRange(s,o)},a.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},a.prototype.selectAWord=function(){var s=this.getCursor(),o=this.session.getAWordRange(s.row,s.column);this.setSelectionRange(o)},a.prototype.getLineRange=function(s,o){var r=typeof s=="number"?s:this.lead.row,n,i=this.session.getFoldLine(r);return i?(r=i.start.row,n=i.end.row):n=r,o===!0?new p(r,0,n,this.session.getLine(n).length):new p(r,0,n+1,0)},a.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},a.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},a.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},a.prototype.wouldMoveIntoSoftTab=function(s,o,r){var n=s.column,i=s.column+o;return r<0&&(n=s.column-o,i=s.column),this.session.isTabStop(s)&&this.doc.getLine(s.row).slice(n,i).split(" ").length-1==o},a.prototype.moveCursorLeft=function(){var s=this.lead.getPosition(),o;if(o=this.session.getFoldAt(s.row,s.column,-1))this.moveCursorTo(o.start.row,o.start.column);else if(s.column===0)s.row>0&&this.moveCursorTo(s.row-1,this.doc.getLine(s.row-1).length);else{var r=this.session.getTabSize();this.wouldMoveIntoSoftTab(s,r,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-r):this.moveCursorBy(0,-1)}},a.prototype.moveCursorRight=function(){var s=this.lead.getPosition(),o;if(o=this.session.getFoldAt(s.row,s.column,1))this.moveCursorTo(o.end.row,o.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row<this.doc.getLength()-1&&this.moveCursorTo(this.lead.row+1,0);else{var r=this.session.getTabSize(),s=this.lead;this.wouldMoveIntoSoftTab(s,r,1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,r):this.moveCursorBy(0,1)}},a.prototype.moveCursorLineStart=function(){var s=this.lead.row,o=this.lead.column,r=this.session.documentToScreenRow(s,o),n=this.session.screenToDocumentPosition(r,0),i=this.session.getDisplayLine(s,null,n.row,n.column),h=i.match(/^\s*/);h[0].length!=o&&!this.session.$useEmacsStyleLineStart&&(n.column+=h[0].length),this.moveCursorToPosition(n)},a.prototype.moveCursorLineEnd=function(){var s=this.lead,o=this.session.getDocumentLastRowColumnPosition(s.row,s.column);if(this.lead.column==o.column){var r=this.session.getLine(o.row);if(o.column==r.length){var n=r.search(/\s+$/);n>0&&(o.column=n)}}this.moveCursorTo(o.row,o.column)},a.prototype.moveCursorFileEnd=function(){var s=this.doc.getLength()-1,o=this.doc.getLine(s).length;this.moveCursorTo(s,o)},a.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},a.prototype.moveCursorLongWordRight=function(){var s=this.lead.row,o=this.lead.column,r=this.doc.getLine(s),n=r.substring(o);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var i=this.session.getFoldAt(s,o,1);if(i){this.moveCursorTo(i.end.row,i.end.column);return}if(this.session.nonTokenRe.exec(n)&&(o+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,n=r.substring(o)),o>=r.length){this.moveCursorTo(s,r.length),this.moveCursorRight(),s<this.doc.getLength()-1&&this.moveCursorWordRight();return}this.session.tokenRe.exec(n)&&(o+=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(s,o)},a.prototype.moveCursorLongWordLeft=function(){var s=this.lead.row,o=this.lead.column,r;if(r=this.session.getFoldAt(s,o,-1)){this.moveCursorTo(r.start.row,r.start.column);return}var n=this.session.getFoldStringAt(s,o,-1);n==null&&(n=this.doc.getLine(s).substring(0,o));var i=v.stringReverse(n);if(this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0,this.session.nonTokenRe.exec(i)&&(o-=this.session.nonTokenRe.lastIndex,i=i.slice(this.session.nonTokenRe.lastIndex),this.session.nonTokenRe.lastIndex=0),o<=0){this.moveCursorTo(s,0),this.moveCursorLeft(),s>0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(i)&&(o-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(s,o)},a.prototype.$shortWordEndIndex=function(s){var o=0,r,n=/\s/,i=this.session.tokenRe;if(i.lastIndex=0,this.session.tokenRe.exec(s))o=this.session.tokenRe.lastIndex;else{for(;(r=s[o])&&n.test(r);)o++;if(o<1){for(i.lastIndex=0;(r=s[o])&&!i.test(r);)if(i.lastIndex=0,o++,n.test(r))if(o>2){o--;break}else{for(;(r=s[o])&&n.test(r);)o++;if(o>2)break}}}return i.lastIndex=0,o},a.prototype.moveCursorShortWordRight=function(){var s=this.lead.row,o=this.lead.column,r=this.doc.getLine(s),n=r.substring(o),i=this.session.getFoldAt(s,o,1);if(i)return this.moveCursorTo(i.end.row,i.end.column);if(o==r.length){var h=this.doc.getLength();do s++,n=this.doc.getLine(s);while(s<h&&/^\s*$/.test(n));/^\s+/.test(n)||(n=""),o=0}var m=this.$shortWordEndIndex(n);this.moveCursorTo(s,o+m)},a.prototype.moveCursorShortWordLeft=function(){var s=this.lead.row,o=this.lead.column,r;if(r=this.session.getFoldAt(s,o,-1))return this.moveCursorTo(r.start.row,r.start.column);var n=this.session.getLine(s).substring(0,o);if(o===0){do s--,n=this.doc.getLine(s);while(s>0&&/^\s*$/.test(n));o=n.length,/\s+$/.test(n)||(n="")}var i=v.stringReverse(n),h=this.$shortWordEndIndex(i);return this.moveCursorTo(s,o-h)},a.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},a.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},a.prototype.moveCursorBy=function(s,o){var r=this.session.documentToScreenPosition(this.lead.row,this.lead.column),n;if(o===0&&(s!==0&&(this.session.$bidiHandler.isBidiRow(r.row,this.lead.row)?(n=this.session.$bidiHandler.getPosLeft(r.column),r.column=Math.round(n/this.session.$bidiHandler.charWidths[0])):n=r.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?r.column=this.$desiredColumn:this.$desiredColumn=r.column),s!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var i=this.session.lineWidgets[this.lead.row];s<0?s-=i.rowsAbove||0:s>0&&(s+=i.rowCount-(i.rowsAbove||0))}var h=this.session.screenToDocumentPosition(r.row+s,r.column,n);s!==0&&o===0&&h.row===this.lead.row&&(h.column,this.lead.column),this.moveCursorTo(h.row,h.column+o,o===0)},a.prototype.moveCursorToPosition=function(s){this.moveCursorTo(s.row,s.column)},a.prototype.moveCursorTo=function(s,o,r){var n=this.session.getFoldAt(s,o,1);n&&(s=n.start.row,o=n.start.column),this.$keepDesiredColumnOnChange=!0;var i=this.session.getLine(s);/[\uDC00-\uDFFF]/.test(i.charAt(o))&&i.charAt(o-1)&&(this.lead.row==s&&this.lead.column==o+1?o=o-1:o=o+1),this.lead.setPosition(s,o),this.$keepDesiredColumnOnChange=!1,r||(this.$desiredColumn=null)},a.prototype.moveCursorToScreen=function(s,o,r){var n=this.session.screenToDocumentPosition(s,o);this.moveCursorTo(n.row,n.column,r)},a.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},a.prototype.fromOrientedRange=function(s){this.setSelectionRange(s,s.cursor==s.start),this.$desiredColumn=s.desiredColumn||this.$desiredColumn},a.prototype.toOrientedRange=function(s){var o=this.getRange();return s?(s.start.column=o.start.column,s.start.row=o.start.row,s.end.column=o.end.column,s.end.row=o.end.row):s=o,s.cursor=this.isBackwards()?s.start:s.end,s.desiredColumn=this.$desiredColumn,s},a.prototype.getRangeOfMovements=function(s){var o=this.getCursor();try{s(this);var r=this.getCursor();return p.fromPoints(o,r)}catch{return p.fromPoints(o,o)}finally{this.moveCursorToPosition(o)}},a.prototype.toJSON=function(){if(this.rangeCount)var s=this.ranges.map(function(o){var r=o.clone();return r.isBackwards=o.cursor==o.start,r});else{var s=this.getRange();s.isBackwards=this.isBackwards()}return s},a.prototype.fromJSON=function(s){if(s.start==null)if(this.rangeList&&s.length>1){this.toSingleRange(s[0]);for(var o=s.length;o--;){var r=p.fromPoints(s[o].start,s[o].end);s[o].isBackwards&&(r.cursor=r.start),this.addRange(r,!0)}return}else s=s[0];this.rangeList&&this.toSingleRange(s),this.setSelectionRange(s,s.isBackwards)},a.prototype.isEqual=function(s){if((s.length||this.rangeCount)&&s.length!=this.rangeCount)return!1;if(!s.length||!this.ranges)return this.getRange().isEqual(s);for(var o=this.ranges.length;o--;)if(!this.ranges[o].isEqual(s[o]))return!1;return!0},a})();f.prototype.setSelectionAnchor=f.prototype.setAnchor,f.prototype.getSelectionAnchor=f.prototype.getAnchor,f.prototype.setSelectionRange=f.prototype.setRange,b.implement(f.prototype,x),u.Selection=f}),ace.define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(e,u,M){var b=e("./lib/report_error").reportError,v=2e3,x=(function(){function p(f){this.splitRegex,this.states=f,this.regExps={},this.matchMappings={};for(var a in this.states){for(var s=this.states[a],o=[],r=0,n=this.matchMappings[a]={defaultToken:"text"},i="g",h=[],m=0;m<s.length;m++){var y=s[m];if(y.defaultToken&&(n.defaultToken=y.defaultToken),y.caseInsensitive&&i.indexOf("i")===-1&&(i+="i"),y.unicode&&i.indexOf("u")===-1&&(i+="u"),y.regex!=null){y.regex instanceof RegExp&&(y.regex=y.regex.toString().slice(1,-1));var R=y.regex,T=new RegExp("(?:("+R+")|(.))").exec("a").length-2;Array.isArray(y.token)?y.token.length==1||T==1?y.token=y.token[0]:T-1!=y.token.length?(this.reportError("number of classes and regexp groups doesn't match",{rule:y,groupCount:T-1}),y.token=y.token[0]):(y.tokenArray=y.token,y.token=null,y.onMatch=this.$arrayTokens):typeof y.token=="function"&&!y.onMatch&&(T>1?y.onMatch=this.$applyToken:y.onMatch=y.token),T>1&&(/\\\d/.test(y.regex)?R=y.regex.replace(/\\([0-9]+)/g,function(k,w){return"\\"+(parseInt(w,10)+r+1)}):(T=1,R=this.removeCapturingGroups(y.regex)),!y.splitRegex&&typeof y.token!="string"&&h.push(y)),n[r]=m,r+=T,o.push(R),y.onMatch||(y.onMatch=null)}}o.length||(n[0]=0,o.push("$")),h.forEach(function(k){k.splitRegex=this.createSplitterRegexp(k.regex,i)},this),this.regExps[a]=new RegExp("("+o.join(")|(")+")|($)",i)}}return p.prototype.$setMaxTokenCount=function(f){v=f|0},p.prototype.$applyToken=function(f){var a=this.splitRegex.exec(f).slice(1),s=this.token.apply(this,a);if(typeof s=="string")return[{type:s,value:f}];for(var o=[],r=0,n=s.length;r<n;r++)a[r]&&(o[o.length]={type:s[r],value:a[r]});return o},p.prototype.$arrayTokens=function(f){if(!f)return[];var a=this.splitRegex.exec(f);if(!a)return"text";for(var s=[],o=this.tokenArray,r=0,n=o.length;r<n;r++)a[r+1]&&(s[s.length]={type:o[r],value:a[r+1]});return s},p.prototype.removeCapturingGroups=function(f){var a=f.replace(/\\.|\[(?:\\.|[^\\\]])*|\(\?[:=!<]|(\()/g,function(s,o){return o?"(?:":s});return a},p.prototype.createSplitterRegexp=function(f,a){if(f.indexOf("(?=")!=-1){var s=0,o=!1,r={};f.replace(/(\\.)|(\((?:\?[=!])?)|(\))|([\[\]])/g,function(n,i,h,m,y,R){return o?o=y!="]":y?o=!0:m?(s==r.stack&&(r.end=R+1,r.stack=-1),s--):h&&(s++,h.length!=1&&(r.stack=s,r.start=R)),n}),r.end!=null&&/^\)*$/.test(f.substr(r.end))&&(f=f.substring(0,r.start)+f.substr(r.end))}return f.charAt(0)!="^"&&(f="^"+f),f.charAt(f.length-1)!="$"&&(f+="$"),new RegExp(f,(a||"").replace("g",""))},p.prototype.getLineTokens=function(f,a){if(a&&typeof a!="string"){var s=a.slice(0);a=s[0],a==="#tmp"&&(s.shift(),a=s.shift())}else var s=[];var o=a||"start",r=this.states[o];r||(o="start",r=this.states[o]);var n=this.matchMappings[o],i=this.regExps[o];i.lastIndex=0;for(var h,m=[],y=0,R=0,T={type:null,value:""};h=i.exec(f);){var k=n.defaultToken,w=null,I=h[0],D=i.lastIndex;if(D-I.length>y){var E=f.substring(y,D-I.length);T.type==k?T.value+=E:(T.type&&m.push(T),T={type:k,value:E})}for(var L=0;L<h.length-2;L++)if(h[L+1]!==void 0){w=r[n[L]],w.onMatch?k=w.onMatch(I,o,s,f):k=w.token,w.next&&(typeof w.next=="string"?o=w.next:o=w.next(o,s),r=this.states[o],r||(this.reportError("state doesn't exist",o),o="start",r=this.states[o]),n=this.matchMappings[o],y=D,i=this.regExps[o],i.lastIndex=D),w.consumeLineEnd&&(y=D);break}if(I){if(typeof k=="string")(!w||w.merge!==!1)&&T.type===k?T.value+=I:(T.type&&m.push(T),T={type:k,value:I});else if(k){T.type&&m.push(T),T={type:null,value:""};for(var L=0;L<k.length;L++)m.push(k[L])}}if(y==f.length)break;if(y=D,R++>v){for(R>2*f.length&&this.reportError("infinite loop with in ace tokenizer",{startState:a,line:f});y<f.length;)T.type&&m.push(T),T={value:f.substring(y,y+=500),type:"overflow"};o="start",s=[];break}}return T.type&&m.push(T),s.length>1&&s[0]!==o&&s.unshift("#tmp",o),{tokens:m,state:s.length?s:o}},p})();x.prototype.reportError=b,u.Tokenizer=x}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(e,u,M){var b=e("../lib/deep_copy").deepCopy,v;v=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},(function(){this.addRules=function(f,a){if(!a){for(var s in f)this.$rules[s]=f[s];return}for(var s in f){for(var o=f[s],r=0;r<o.length;r++){var n=o[r];(n.next||n.onMatch)&&(typeof n.next=="string"&&n.next.indexOf(a)!==0&&(n.next=a+n.next),n.nextState&&n.nextState.indexOf(a)!==0&&(n.nextState=a+n.nextState))}this.$rules[a+s]=o}},this.getRules=function(){return this.$rules},this.embedRules=function(f,a,s,o,r){var n=typeof f=="function"?new f().getRules():f;if(o)for(var i=0;i<o.length;i++)o[i]=a+o[i];else{o=[];for(var h in n)o.push(a+h)}if(this.addRules(n,a),s)for(var m=Array.prototype[r?"push":"unshift"],i=0;i<o.length;i++)m.apply(this.$rules[o[i]],b(s));this.$embeds||(this.$embeds=[]),this.$embeds.push(a)},this.getEmbeds=function(){return this.$embeds};var x=function(f,a){return(f!="start"||a.length)&&a.unshift(this.nextState,f),this.nextState},p=function(f,a){return a.shift(),a.shift()||"start"};this.normalizeRules=function(){var f=0,a=this.$rules;function s(o){var r=a[o];r.processed=!0;for(var n=0;n<r.length;n++){var i=r[n],h=null;Array.isArray(i)&&(h=i,i={}),!i.regex&&i.start&&(i.regex=i.start,i.next||(i.next=[]),i.next.push({defaultToken:i.token},{token:i.token+".end",regex:i.end||i.start,next:"pop"}),i.token=i.token+".start",i.push=!0);var m=i.next||i.push;if(m&&Array.isArray(m)){var y=i.stateName;y||(y=i.token,typeof y!="string"&&(y=y[0]||""),a[y]&&(y+=f++)),a[y]=m,i.next=y,s(y)}else m=="pop"&&(i.next=p);if(i.push&&(i.nextState=i.next||i.push,i.next=x,delete i.push),i.rules)for(var R in i.rules)a[R]?a[R].push&&a[R].push.apply(a[R],i.rules[R]):a[R]=i.rules[R];var T=typeof i=="string"?i:i.include;if(T&&(T==="$self"&&(T="start"),Array.isArray(T)?h=T.map(function(w){return a[w]}):h=a[T]),h){var k=[n,1].concat(h);i.noEscape&&(k=k.filter(function(w){return!w.next})),r.splice.apply(r,k),n--}i.keywordMap&&(i.token=this.createKeywordMapper(i.keywordMap,i.defaultToken||"text",i.caseInsensitive),delete i.defaultToken)}}Object.keys(a).forEach(s,this)},this.createKeywordMapper=function(f,a,s,o){var r=Object.create(null);return this.$keywordList=[],Object.keys(f).forEach(function(n){for(var i=f[n],h=i.split(o||"|"),m=h.length;m--;){var y=h[m];this.$keywordList.push(y),s&&(y=y.toLowerCase()),r[y]=n}},this),f=null,s?function(n){return r[n.toLowerCase()]||a}:function(n){return r[n]||a}},this.getKeywords=function(){return this.$keywords}}).call(v.prototype),u.TextHighlightRules=v}),ace.define("ace/mode/behaviour",["require","exports","module"],function(e,u,M){var b;b=function(){this.$behaviours={}},(function(){this.add=function(v,x,p){switch(void 0){case this.$behaviours:this.$behaviours={};case this.$behaviours[v]:this.$behaviours[v]={}}this.$behaviours[v][x]=p},this.addBehaviours=function(v){for(var x in v)for(var p in v[x])this.add(x,p,v[x][p])},this.remove=function(v){this.$behaviours&&this.$behaviours[v]&&delete this.$behaviours[v]},this.inherit=function(v,x){if(typeof v=="function")var p=new v().getBehaviours(x);else var p=v.getBehaviours(x);this.addBehaviours(p)},this.getBehaviours=function(v){if(v){for(var x={},p=0;p<v.length;p++)this.$behaviours[v[p]]&&(x[v[p]]=this.$behaviours[v[p]]);return x}else return this.$behaviours}}).call(b.prototype),u.Behaviour=b}),ace.define("ace/token_iterator",["require","exports","module","ace/range"],function(e,u,M){var b=e("./range").Range,v=(function(){function x(p,f,a){this.$session=p,this.$row=f,this.$rowTokens=p.getTokens(f);var s=p.getTokenAt(f,a);this.$tokenIndex=s?s.index:-1}return x.prototype.stepBackward=function(){for(this.$tokenIndex-=1;this.$tokenIndex<0;){if(this.$row-=1,this.$row<0)return this.$row=0,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=this.$rowTokens.length-1}return this.$rowTokens[this.$tokenIndex]},x.prototype.stepForward=function(){this.$tokenIndex+=1;for(var p;this.$tokenIndex>=this.$rowTokens.length;){if(this.$row+=1,p||(p=this.$session.getLength()),this.$row>=p)return this.$row=p-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},x.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},x.prototype.getCurrentTokenRow=function(){return this.$row},x.prototype.getCurrentTokenColumn=function(){var p=this.$rowTokens,f=this.$tokenIndex,a=p[f].start;if(a!==void 0)return a;for(a=0;f>0;)f-=1,a+=p[f].value.length;return a},x.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},x.prototype.getCurrentTokenRange=function(){var p=this.$rowTokens[this.$tokenIndex],f=this.getCurrentTokenColumn();return new b(this.$row,f,this.$row,f+p.value.length)},x})();u.TokenIterator=v}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(e,u,M){var b=e("../../lib/oop"),v=e("../behaviour").Behaviour,x=e("../../token_iterator").TokenIterator,p=e("../../lib/lang"),f=["text","paren.rparen","rparen","paren","punctuation.operator"],a=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],s,o={},r={'"':'"',"'":"'"},n=function(m){var y=-1;if(m.multiSelect&&(y=m.selection.index,o.rangeCount!=m.multiSelect.rangeCount&&(o={rangeCount:m.multiSelect.rangeCount})),o[y])return s=o[y];s=o[y]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},i=function(m,y,R,T){var k=m.end.row-m.start.row;return{text:R+y+T,selection:[0,m.start.column+1,k,m.end.column+(k?0:1)]}},h;h=function(m){m=m||{},this.add("braces","insertion",function(y,R,T,k,w){var I=T.getCursorPosition(),D=k.doc.getLine(I.row);if(w=="{"){n(T);var E=T.getSelectionRange(),L=k.doc.getTextRange(E),z=k.getTokenAt(I.row,I.column);if(L!==""&&L!=="{"&&T.getWrapBehavioursEnabled())return i(E,L,"{","}");if(z&&/(?:string)\.quasi|\.xml/.test(z.type)){var F=[/tag\-(?:open|name)/,/attribute\-name/];return F.some(function(G){return G.test(z.type)})||/(string)\.quasi/.test(z.type)&&z.value[I.column-z.start-1]!=="$"?void 0:(h.recordAutoInsert(T,k,"}"),{text:"{}",selection:[1,1]})}else if(h.isSaneInsertion(T,k))return/[\]\}\)]/.test(D[I.column])||T.inMultiSelectMode||m.braces?(h.recordAutoInsert(T,k,"}"),{text:"{}",selection:[1,1]}):(h.recordMaybeInsert(T,k,"{"),{text:"{",selection:[1,1]})}else if(w=="}"){n(T);var O=D.substring(I.column,I.column+1);if(O=="}"){var A=k.$findOpeningBracket("}",{column:I.column+1,row:I.row});if(A!==null&&h.isAutoInsertedClosing(I,D,w))return h.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if(w==`
174
+ `||w==`\r
175
+ `){n(T);var S="";h.isMaybeInsertedClosing(I,D)&&(S=p.stringRepeat("}",s.maybeInsertedBrackets),h.clearMaybeInsertedClosing());var O=D.substring(I.column,I.column+1);if(O==="}"){var N=k.findMatchingBracket({row:I.row,column:I.column+1},"}");if(!N)return null;var W=this.$getIndent(k.getLine(N.row))}else if(S)var W=this.$getIndent(D);else{h.clearMaybeInsertedClosing();return}var V=W+k.getTabString();return{text:`
176
+ `+V+`
177
+ `+W+S,selection:[1,V.length,1,V.length]}}else h.clearMaybeInsertedClosing()}),this.add("braces","deletion",function(y,R,T,k,w){var I=k.doc.getTextRange(w);if(!w.isMultiLine()&&I=="{"){n(T);var D=k.doc.getLine(w.start.row),E=D.substring(w.end.column,w.end.column+1);if(E=="}")return w.end.column++,w;s.maybeInsertedBrackets--}}),this.add("parens","insertion",function(y,R,T,k,w){if(w=="("){n(T);var I=T.getSelectionRange(),D=k.doc.getTextRange(I);if(D!==""&&T.getWrapBehavioursEnabled())return i(I,D,"(",")");if(h.isSaneInsertion(T,k))return h.recordAutoInsert(T,k,")"),{text:"()",selection:[1,1]}}else if(w==")"){n(T);var E=T.getCursorPosition(),L=k.doc.getLine(E.row),z=L.substring(E.column,E.column+1);if(z==")"){var F=k.$findOpeningBracket(")",{column:E.column+1,row:E.row});if(F!==null&&h.isAutoInsertedClosing(E,L,w))return h.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(y,R,T,k,w){var I=k.doc.getTextRange(w);if(!w.isMultiLine()&&I=="("){n(T);var D=k.doc.getLine(w.start.row),E=D.substring(w.start.column+1,w.start.column+2);if(E==")")return w.end.column++,w}}),this.add("brackets","insertion",function(y,R,T,k,w){if(w=="["){n(T);var I=T.getSelectionRange(),D=k.doc.getTextRange(I);if(D!==""&&T.getWrapBehavioursEnabled())return i(I,D,"[","]");if(h.isSaneInsertion(T,k))return h.recordAutoInsert(T,k,"]"),{text:"[]",selection:[1,1]}}else if(w=="]"){n(T);var E=T.getCursorPosition(),L=k.doc.getLine(E.row),z=L.substring(E.column,E.column+1);if(z=="]"){var F=k.$findOpeningBracket("]",{column:E.column+1,row:E.row});if(F!==null&&h.isAutoInsertedClosing(E,L,w))return h.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(y,R,T,k,w){var I=k.doc.getTextRange(w);if(!w.isMultiLine()&&I=="["){n(T);var D=k.doc.getLine(w.start.row),E=D.substring(w.start.column+1,w.start.column+2);if(E=="]")return w.end.column++,w}}),this.add("string_dquotes","insertion",function(y,R,T,k,w){var I=k.$mode.$quotes||r;if(w.length==1&&I[w]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(w)!=-1)return;n(T);var D=w,E=T.getSelectionRange(),L=k.doc.getTextRange(E);if(L!==""&&(L.length!=1||!I[L])&&T.getWrapBehavioursEnabled())return i(E,L,D,D);if(!L){var z=T.getCursorPosition(),F=k.doc.getLine(z.row),O=F.substring(z.column-1,z.column),A=F.substring(z.column,z.column+1),S=k.getTokenAt(z.row,z.column),N=k.getTokenAt(z.row,z.column+1);if(O=="\\"&&S&&/escape/.test(S.type))return null;var W=S&&/string|escape/.test(S.type),V=!N||/string|escape/.test(N.type),G;if(A==D)G=W!==V,G&&/string\.end/.test(N.type)&&(G=!1);else{if(W&&!V||W&&V)return null;var Q=k.$mode.tokenRe;Q.lastIndex=0;var te=Q.test(O);Q.lastIndex=0;var le=Q.test(A),ne=k.$mode.$pairQuotesAfter,ue=ne&&ne[D]&&ne[D].test(O);if(!ue&&te||le||A&&!/[\s;,.})\]\\]/.test(A))return null;var he=F[z.column-2];if(O==D&&(he==D||Q.test(he)))return null;G=!0}return{text:G?D+D:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(y,R,T,k,w){var I=k.$mode.$quotes||r,D=k.doc.getTextRange(w);if(!w.isMultiLine()&&I.hasOwnProperty(D)){n(T);var E=k.doc.getLine(w.start.row),L=E.substring(w.start.column+1,w.start.column+2);if(L==D)return w.end.column++,w}}),m.closeDocComment!==!1&&this.add("doc comment end","insertion",function(y,R,T,k,w){if(y==="doc-start"&&(w===`
178
+ `||w===`\r
179
+ `)&&T.selection.isEmpty()){var I=T.getCursorPosition();if(I.column===0)return;for(var D=k.doc.getLine(I.row),E=k.doc.getLine(I.row+1),L=k.getTokens(I.row),z=0,F=0;F<L.length;F++){z+=L[F].value.length;var O=L[F];if(z>=I.column){if(z===I.column){if(!/\.doc/.test(O.type))return;if(/\*\//.test(O.value)){var A=L[F+1];if(!A||!/\.doc/.test(A.type))return}}var S=I.column-(z-O.value.length),N=O.value.indexOf("*/"),W=O.value.indexOf("/**",N>-1?N+2:0);if(W!==-1&&S>W&&S<W+3||N!==-1&&W!==-1&&S>=N&&S<=W||!/\.doc/.test(O.type))return;break}}var V=this.$getIndent(D);if(/\s*\*/.test(E))return/^\s*\*/.test(D)?{text:w+V+"* ",selection:[1,2+V.length,1,2+V.length]}:{text:w+V+" * ",selection:[1,3+V.length,1,3+V.length]};if(/\/\*\*/.test(D.substring(0,I.column)))return{text:w+V+" * "+w+" "+V+"*/",selection:[1,4+V.length,1,4+V.length]}}})},h.isSaneInsertion=function(m,y){var R=m.getCursorPosition(),T=new x(y,R.row,R.column);if(!this.$matchTokenType(T.getCurrentToken()||"text",f)){if(/[)}\]]/.test(m.session.getLine(R.row)[R.column]))return!0;var k=new x(y,R.row,R.column+1);if(!this.$matchTokenType(k.getCurrentToken()||"text",f))return!1}return T.stepForward(),T.getCurrentTokenRow()!==R.row||this.$matchTokenType(T.getCurrentToken()||"text",a)},h.$matchTokenType=function(m,y){return y.indexOf(m.type||m)>-1},h.recordAutoInsert=function(m,y,R){var T=m.getCursorPosition(),k=y.doc.getLine(T.row);this.isAutoInsertedClosing(T,k,s.autoInsertedLineEnd[0])||(s.autoInsertedBrackets=0),s.autoInsertedRow=T.row,s.autoInsertedLineEnd=R+k.substr(T.column),s.autoInsertedBrackets++},h.recordMaybeInsert=function(m,y,R){var T=m.getCursorPosition(),k=y.doc.getLine(T.row);this.isMaybeInsertedClosing(T,k)||(s.maybeInsertedBrackets=0),s.maybeInsertedRow=T.row,s.maybeInsertedLineStart=k.substr(0,T.column)+R,s.maybeInsertedLineEnd=k.substr(T.column),s.maybeInsertedBrackets++},h.isAutoInsertedClosing=function(m,y,R){return s.autoInsertedBrackets>0&&m.row===s.autoInsertedRow&&R===s.autoInsertedLineEnd[0]&&y.substr(m.column)===s.autoInsertedLineEnd},h.isMaybeInsertedClosing=function(m,y){return s.maybeInsertedBrackets>0&&m.row===s.maybeInsertedRow&&y.substr(m.column)===s.maybeInsertedLineEnd&&y.substr(0,m.column)==s.maybeInsertedLineStart},h.popAutoInsertedClosing=function(){s.autoInsertedLineEnd=s.autoInsertedLineEnd.substr(1),s.autoInsertedBrackets--},h.clearMaybeInsertedClosing=function(){s&&(s.maybeInsertedBrackets=0,s.maybeInsertedRow=-1)},b.inherits(h,v),u.CstyleBehaviour=h}),ace.define("ace/unicode",["require","exports","module"],function(e,u,M){for(var b=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],v=0,x=[],p=0;p<b.length;p+=2)x.push(v+=b[p]),b[p+1]&&x.push(45,v+=b[p+1]);u.wordChars=String.fromCharCode.apply(null,x)}),ace.define("ace/mode/text",["require","exports","module","ace/config","ace/tokenizer","ace/mode/text_highlight_rules","ace/mode/behaviour/cstyle","ace/unicode","ace/lib/lang","ace/token_iterator","ace/range"],function(e,u,M){var b=e("../config"),v=e("../tokenizer").Tokenizer,x=e("./text_highlight_rules").TextHighlightRules,p=e("./behaviour/cstyle").CstyleBehaviour,f=e("../unicode"),a=e("../lib/lang"),s=e("../token_iterator").TokenIterator,o=e("../range").Range,r;r=function(){this.HighlightRules=x},(function(){this.$defaultBehaviour=new p,this.tokenRe=new RegExp("^["+f.wordChars+"\\$_]+","g"),this.nonTokenRe=new RegExp("^(?:[^"+f.wordChars+"\\$_]|\\s])+","g"),this.getTokenizer=function(){return this.$tokenizer||(this.$highlightRules=this.$highlightRules||new this.HighlightRules(this.$highlightRuleConfig),this.$tokenizer=new v(this.$highlightRules.getRules())),this.$tokenizer},this.lineCommentStart="",this.blockComment="",this.toggleCommentLines=function(n,i,h,m){var y=i.doc,R=!0,T=!0,k=1/0,w=i.getTabSize(),I=!1;if(this.lineCommentStart){if(Array.isArray(this.lineCommentStart))var L=this.lineCommentStart.map(a.escapeRegExp).join("|"),D=this.lineCommentStart[0];else var L=a.escapeRegExp(this.lineCommentStart),D=this.lineCommentStart;L=new RegExp("^(\\s*)(?:"+L+") ?"),I=i.getUseSoftTabs();var O=function(le,ne){var ue=le.match(L);if(ue){var he=ue[1].length,ce=ue[0].length;!N(le,he,ce)&&ue[0][ce-1]==" "&&ce--,y.removeInLine(ne,he,ce)}},S=D+" ",F=function(le,ne){(!R||/\S/.test(le))&&(N(le,k,k)?y.insertInLine({row:ne,column:k},S):y.insertInLine({row:ne,column:k},D))},A=function(le,ne){return L.test(le)},N=function(le,ne,ue){for(var he=0;ne--&&le.charAt(ne)==" ";)he++;if(he%w!=0)return!1;for(var he=0;le.charAt(ue++)==" ";)he++;return w>2?he%w!=w-1:he%w==0}}else{if(!this.blockComment)return!1;var D=this.blockComment.start,E=this.blockComment.end,L=new RegExp("^(\\s*)(?:"+a.escapeRegExp(D)+")"),z=new RegExp("(?:"+a.escapeRegExp(E)+")\\s*$"),F=function(G,Q){A(G,Q)||(!R||/\S/.test(G))&&(y.insertInLine({row:Q,column:G.length},E),y.insertInLine({row:Q,column:k},D))},O=function(G,Q){var te;(te=G.match(z))&&y.removeInLine(Q,G.length-te[0].length,G.length),(te=G.match(L))&&y.removeInLine(Q,te[1].length,te[0].length)},A=function(G,Q){if(L.test(G))return!0;for(var te=i.getTokens(Q),le=0;le<te.length;le++)if(te[le].type==="comment")return!0}}function W(G){for(var Q=h;Q<=m;Q++)G(y.getLine(Q),Q)}var V=1/0;W(function(G,Q){var te=G.search(/\S/);te!==-1?(te<k&&(k=te),T&&!A(G,Q)&&(T=!1)):V>G.length&&(V=G.length)}),k==1/0&&(k=V,R=!1,T=!1),I&&k%w!=0&&(k=Math.floor(k/w)*w),W(T?O:F)},this.toggleBlockComment=function(n,i,h,m){var y=this.blockComment;if(y){!y.start&&y[0]&&(y=y[0]);var R=new s(i,m.row,m.column),T=R.getCurrentToken();i.selection;var k=i.selection.toOrientedRange(),w,I;if(T&&/comment/.test(T.type)){for(var D,E;T&&/comment/.test(T.type);){var L=T.value.indexOf(y.start);if(L!=-1){var z=R.getCurrentTokenRow(),F=R.getCurrentTokenColumn()+L;D=new o(z,F,z,F+y.start.length);break}T=R.stepBackward()}for(var R=new s(i,m.row,m.column),T=R.getCurrentToken();T&&/comment/.test(T.type);){var L=T.value.indexOf(y.end);if(L!=-1){var z=R.getCurrentTokenRow(),F=R.getCurrentTokenColumn()+L;E=new o(z,F,z,F+y.end.length);break}T=R.stepForward()}E&&i.remove(E),D&&(i.remove(D),w=D.start.row,I=-y.start.length)}else I=y.start.length,w=h.start.row,i.insert(h.end,y.end),i.insert(h.start,y.start);k.start.row==w&&(k.start.column+=I),k.end.row==w&&(k.end.column+=I),i.selection.fromOrientedRange(k)}},this.getNextLineIndent=function(n,i,h){return this.$getIndent(i)},this.checkOutdent=function(n,i,h){return!1},this.autoOutdent=function(n,i,h){},this.$getIndent=function(n){return n.match(/^\s*/)[0]},this.createWorker=function(n){return null},this.createModeDelegates=function(n){this.$embeds=[],this.$modes={};for(var i in n)if(n[i]){var h=n[i],m=h.prototype.$id,y=b.$modes[m];y||(b.$modes[m]=y=new h),b.$modes[i]||(b.$modes[i]=y),this.$embeds.push(i),this.$modes[i]=y}for(var R=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],T=function(w){(function(I){var D=R[w],E=I[D];I[R[w]]=function(){return this.$delegator(D,arguments,E)}})(k)},k=this,i=0;i<R.length;i++)T(i)},this.$delegator=function(n,i,h){var m=i[0]||"start";if(typeof m!="string"){if(Array.isArray(m[2])){var y=m[2][m[2].length-1],R=this.$modes[y];if(R)return R[n].apply(R,[m[1]].concat([].slice.call(i,1)))}m=m[0]||"start"}for(var T=0;T<this.$embeds.length;T++)if(this.$modes[this.$embeds[T]]){var k=m.split(this.$embeds[T]);if(!k[0]&&k[1]){i[0]=k[1];var R=this.$modes[this.$embeds[T]];return R[n].apply(R,i)}}var w=h.apply(this,i);return h?w:void 0},this.transformAction=function(n,i,h,m,y){if(this.$behaviour){var R=this.$behaviour.getBehaviours();for(var T in R)if(R[T][i]){var k=R[T][i].apply(this,arguments);if(k)return k}}},this.getKeywords=function(n){if(!this.completionKeywords){var i=this.$tokenizer.rules,h=[];for(var m in i)for(var y=i[m],R=0,T=y.length;R<T;R++)if(typeof y[R].token=="string")/keyword|support|storage/.test(y[R].token)&&h.push(y[R].regex);else if(typeof y[R].token=="object"){for(var k=0,w=y[R].token.length;k<w;k++)if(/keyword|support|storage/.test(y[R].token[k])){var m=y[R].regex.match(/\(.+?\)/g)[k];h.push(m.substr(1,m.length-2))}}this.completionKeywords=h}return n?h.concat(this.$keywordList||[]):this.$keywordList},this.$createKeywordList=function(){return this.$highlightRules||this.getTokenizer(),this.$keywordList=this.$highlightRules.$keywordList||[]},this.getCompletions=function(n,i,h,m){var y=this.$keywordList||this.$createKeywordList();return y.map(function(R){return{name:R,value:R,score:0,meta:"keyword"}})},this.$id="ace/mode/text"}).call(r.prototype),u.Mode=r}),ace.define("ace/line_widgets",["require","exports","module","ace/lib/dom"],function(e,u,M){var b=e("./lib/dom"),v=(function(){function x(p){this.session=p,this.session.widgetManager=this,this.session.getRowLength=this.getRowLength,this.session.$getWidgetScreenLength=this.$getWidgetScreenLength,this.updateOnChange=this.updateOnChange.bind(this),this.renderWidgets=this.renderWidgets.bind(this),this.measureWidgets=this.measureWidgets.bind(this),this.session._changedWidgets=[],this.$onChangeEditor=this.$onChangeEditor.bind(this),this.session.on("change",this.updateOnChange),this.session.on("changeFold",this.updateOnFold),this.session.on("changeEditor",this.$onChangeEditor)}return x.prototype.getRowLength=function(p){var f;return this.lineWidgets?f=this.lineWidgets[p]&&this.lineWidgets[p].rowCount||0:f=0,!this.$useWrapMode||!this.$wrapData[p]?1+f:this.$wrapData[p].length+1+f},x.prototype.$getWidgetScreenLength=function(){var p=0;return this.lineWidgets.forEach(function(f){f&&f.rowCount&&!f.hidden&&(p+=f.rowCount)}),p},x.prototype.$onChangeEditor=function(p){this.attach(p.editor)},x.prototype.attach=function(p){p&&p.widgetManager&&p.widgetManager!=this&&p.widgetManager.detach(),this.editor!=p&&(this.detach(),this.editor=p,p&&(p.widgetManager=this,p.renderer.on("beforeRender",this.measureWidgets),p.renderer.on("afterRender",this.renderWidgets)))},x.prototype.detach=function(p){var f=this.editor;if(f){this.editor=null,f.widgetManager=null,f.renderer.off("beforeRender",this.measureWidgets),f.renderer.off("afterRender",this.renderWidgets);var a=this.session.lineWidgets;a&&a.forEach(function(s){s&&s.el&&s.el.parentNode&&(s._inDocument=!1,s.el.parentNode.removeChild(s.el))})}},x.prototype.updateOnFold=function(p,f){var a=f.lineWidgets;if(!(!a||!p.action)){for(var s=p.data,o=s.start.row,r=s.end.row,n=p.action=="add",i=o+1;i<r;i++)a[i]&&(a[i].hidden=n);a[r]&&(n?a[o]?a[r].hidden=n:a[o]=a[r]:(a[o]==a[r]&&(a[o]=void 0),a[r].hidden=n))}},x.prototype.updateOnChange=function(p){var f=this.session.lineWidgets;if(f){var a=p.start.row,s=p.end.row-a;if(s!==0)if(p.action=="remove"){var o=f.splice(a+1,s);!f[a]&&o[o.length-1]&&(f[a]=o.pop()),o.forEach(function(n){n&&this.removeLineWidget(n)},this),this.$updateRows()}else{var r=new Array(s);f[a]&&f[a].column!=null&&p.start.column>f[a].column&&a++,r.unshift(a,0),f.splice.apply(f,r),this.$updateRows()}}},x.prototype.$updateRows=function(){var p=this.session.lineWidgets;if(p){var f=!0;p.forEach(function(a,s){if(a)for(f=!1,a.row=s;a.$oldWidget;)a.$oldWidget.row=s,a=a.$oldWidget}),f&&(this.session.lineWidgets=null)}},x.prototype.$registerLineWidget=function(p){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var f=this.session.lineWidgets[p.row];return f&&(p.$oldWidget=f,f.el&&f.el.parentNode&&(f.el.parentNode.removeChild(f.el),f._inDocument=!1)),this.session.lineWidgets[p.row]=p,p},x.prototype.addLineWidget=function(p){if(this.$registerLineWidget(p),p.session=this.session,!this.editor)return p;var f=this.editor.renderer;p.html&&!p.el&&(p.el=b.createElement("div"),p.el.innerHTML=p.html),p.text&&!p.el&&(p.el=b.createElement("div"),p.el.textContent=p.text),p.el&&(b.addCssClass(p.el,"ace_lineWidgetContainer"),p.className&&b.addCssClass(p.el,p.className),p.el.style.position="absolute",p.el.style.zIndex="5",f.container.appendChild(p.el),p._inDocument=!0,p.coverGutter||(p.el.style.zIndex="3"),p.pixelHeight==null&&(p.pixelHeight=p.el.offsetHeight)),p.rowCount==null&&(p.rowCount=p.pixelHeight/f.layerConfig.lineHeight);var a=this.session.getFoldAt(p.row,0);if(p.$fold=a,a){var s=this.session.lineWidgets;p.row==a.end.row&&!s[a.start.row]?s[a.start.row]=p:p.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:p.row}}}),this.$updateRows(),this.renderWidgets(null,f),this.onWidgetChanged(p),p},x.prototype.removeLineWidget=function(p){if(p._inDocument=!1,p.session=null,p.el&&p.el.parentNode&&p.el.parentNode.removeChild(p.el),p.editor&&p.editor.destroy)try{p.editor.destroy()}catch{}if(this.session.lineWidgets){var f=this.session.lineWidgets[p.row];if(f==p)this.session.lineWidgets[p.row]=p.$oldWidget,p.$oldWidget&&this.onWidgetChanged(p.$oldWidget);else for(;f;){if(f.$oldWidget==p){f.$oldWidget=p.$oldWidget;break}f=f.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:p.row}}}),this.$updateRows()},x.prototype.getWidgetsAtRow=function(p){for(var f=this.session.lineWidgets,a=f&&f[p],s=[];a;)s.push(a),a=a.$oldWidget;return s},x.prototype.onWidgetChanged=function(p){this.session._changedWidgets.push(p),this.editor&&this.editor.renderer.updateFull()},x.prototype.measureWidgets=function(p,f){var a=this.session._changedWidgets,s=f.layerConfig;if(!(!a||!a.length)){for(var o=1/0,r=0;r<a.length;r++){var n=a[r];if(!(!n||!n.el)&&n.session==this.session){if(!n._inDocument){if(this.session.lineWidgets[n.row]!=n)continue;n._inDocument=!0,f.container.appendChild(n.el)}n.h=n.el.offsetHeight,n.fixedWidth||(n.w=n.el.offsetWidth,n.screenWidth=Math.ceil(n.w/s.characterWidth));var i=n.h/s.lineHeight;n.coverLine&&(i-=this.session.getRowLineCount(n.row),i<0&&(i=0)),n.rowCount!=i&&(n.rowCount=i,n.row<o&&(o=n.row))}}o!=1/0&&(this.session._emit("changeFold",{data:{start:{row:o}}}),this.session.lineWidgetWidth=null),this.session._changedWidgets=[]}},x.prototype.renderWidgets=function(p,f){var a=f.layerConfig,s=this.session.lineWidgets;if(s){for(var o=Math.min(this.firstRow,a.firstRow),r=Math.max(this.lastRow,a.lastRow,s.length);o>0&&!s[o];)o--;this.firstRow=a.firstRow,this.lastRow=a.lastRow,f.$cursorLayer.config=a;for(var n=o;n<=r;n++){var i=s[n];if(!(!i||!i.el)){if(i.hidden){i.el.style.top=-100-(i.pixelHeight||0)+"px";continue}i._inDocument||(i._inDocument=!0,f.container.appendChild(i.el));var h=f.$cursorLayer.getPixelPosition({row:n,column:0},!0).top;i.coverLine||(h+=a.lineHeight*this.session.getRowLineCount(i.row)),i.el.style.top=h-a.offset+"px";var m=i.coverGutter?0:f.gutterWidth;i.fixedWidth||(m-=f.scrollLeft),i.el.style.left=m+"px",i.fullWidth&&i.screenWidth&&(i.el.style.minWidth=a.width+2*a.padding+"px"),i.fixedWidth?i.el.style.right=f.scrollBar.getWidth()+"px":i.el.style.right=""}}}},x})();u.LineWidgets=v}),ace.define("ace/apply_delta",["require","exports","module"],function(e,u,M){u.applyDelta=function(b,v,x){var p=v.start.row,f=v.start.column,a=b[p]||"";switch(v.action){case"insert":var s=v.lines;if(s.length===1)b[p]=a.substring(0,f)+v.lines[0]+a.substring(f);else{var o=[p,1].concat(v.lines);b.splice.apply(b,o),b[p]=a.substring(0,f)+b[p],b[p+v.lines.length-1]+=a.substring(f)}break;case"remove":var r=v.end.column,n=v.end.row;p===n?b[p]=a.substring(0,f)+a.substring(r):b.splice(p,n-p+1,a.substring(0,f)+b[n].substring(r));break}}}),ace.define("ace/anchor",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,u,M){var b=e("./lib/oop"),v=e("./lib/event_emitter").EventEmitter,x=(function(){function a(s,o,r){this.$onChange=this.onChange.bind(this),this.attach(s),typeof o!="number"?this.setPosition(o.row,o.column):this.setPosition(o,r)}return a.prototype.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},a.prototype.getDocument=function(){return this.document},a.prototype.onChange=function(s){if(!(s.start.row==s.end.row&&s.start.row!=this.row)&&!(s.start.row>this.row)){var o=f(s,{row:this.row,column:this.column},this.$insertRight);this.setPosition(o.row,o.column,!0)}},a.prototype.setPosition=function(s,o,r){var n;if(r?n={row:s,column:o}:n=this.$clipPositionToDocument(s,o),!(this.row==n.row&&this.column==n.column)){var i={row:this.row,column:this.column};this.row=n.row,this.column=n.column,this._signal("change",{old:i,value:n})}},a.prototype.detach=function(){this.document.off("change",this.$onChange)},a.prototype.attach=function(s){this.document=s||this.document,this.document.on("change",this.$onChange)},a.prototype.$clipPositionToDocument=function(s,o){var r={};return s>=this.document.getLength()?(r.row=Math.max(0,this.document.getLength()-1),r.column=this.document.getLine(r.row).length):s<0?(r.row=0,r.column=0):(r.row=s,r.column=Math.min(this.document.getLine(r.row).length,Math.max(0,o))),o<0&&(r.column=0),r},a})();x.prototype.$insertRight=!1,b.implement(x.prototype,v);function p(a,s,o){var r=o?a.column<=s.column:a.column<s.column;return a.row<s.row||a.row==s.row&&r}function f(a,s,o){var r=a.action=="insert",n=(r?1:-1)*(a.end.row-a.start.row),i=(r?1:-1)*(a.end.column-a.start.column),h=a.start,m=r?h:a.end;return p(s,h,o)?{row:s.row,column:s.column}:p(m,s,!o)?{row:s.row+n,column:s.column+(s.row==m.row?i:0)}:{row:h.row,column:h.column}}u.Anchor=x}),ace.define("ace/document",["require","exports","module","ace/lib/oop","ace/apply_delta","ace/lib/event_emitter","ace/range","ace/anchor"],function(e,u,M){var b=e("./lib/oop"),v=e("./apply_delta").applyDelta,x=e("./lib/event_emitter").EventEmitter,p=e("./range").Range,f=e("./anchor").Anchor,a=(function(){function s(o){this.$lines=[""],o.length===0?this.$lines=[""]:Array.isArray(o)?this.insertMergedLines({row:0,column:0},o):this.insert({row:0,column:0},o)}return s.prototype.setValue=function(o){var r=this.getLength()-1;this.remove(new p(0,0,r,this.getLine(r).length)),this.insert({row:0,column:0},o||"")},s.prototype.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},s.prototype.createAnchor=function(o,r){return new f(this,o,r)},s.prototype.$detectNewLine=function(o){var r=o.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=r?r[1]:`
180
+ `,this._signal("changeNewLineMode")},s.prototype.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return`\r
181
+ `;case"unix":return`
182
+ `;default:return this.$autoNewLine||`
183
+ `}},s.prototype.setNewLineMode=function(o){this.$newLineMode!==o&&(this.$newLineMode=o,this._signal("changeNewLineMode"))},s.prototype.getNewLineMode=function(){return this.$newLineMode},s.prototype.isNewLine=function(o){return o==`\r
184
+ `||o=="\r"||o==`
185
+ `},s.prototype.getLine=function(o){return this.$lines[o]||""},s.prototype.getLines=function(o,r){return this.$lines.slice(o,r+1)},s.prototype.getAllLines=function(){return this.getLines(0,this.getLength())},s.prototype.getLength=function(){return this.$lines.length},s.prototype.getTextRange=function(o){return this.getLinesForRange(o).join(this.getNewLineCharacter())},s.prototype.getLinesForRange=function(o){var r;if(o.start.row===o.end.row)r=[this.getLine(o.start.row).substring(o.start.column,o.end.column)];else{r=this.getLines(o.start.row,o.end.row),r[0]=(r[0]||"").substring(o.start.column);var n=r.length-1;o.end.row-o.start.row==n&&(r[n]=r[n].substring(0,o.end.column))}return r},s.prototype.insertLines=function(o,r){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(o,r)},s.prototype.removeLines=function(o,r){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(o,r)},s.prototype.insertNewLine=function(o){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(o,["",""])},s.prototype.insert=function(o,r){return this.getLength()<=1&&this.$detectNewLine(r),this.insertMergedLines(o,this.$split(r))},s.prototype.insertInLine=function(o,r){var n=this.clippedPos(o.row,o.column),i=this.pos(o.row,o.column+r.length);return this.applyDelta({start:n,end:i,action:"insert",lines:[r]},!0),this.clonePos(i)},s.prototype.clippedPos=function(o,r){var n=this.getLength();o===void 0?o=n:o<0?o=0:o>=n&&(o=n-1,r=void 0);var i=this.getLine(o);return r==null&&(r=i.length),r=Math.min(Math.max(r,0),i.length),{row:o,column:r}},s.prototype.clonePos=function(o){return{row:o.row,column:o.column}},s.prototype.pos=function(o,r){return{row:o,column:r}},s.prototype.$clipPosition=function(o){var r=this.getLength();return o.row>=r?(o.row=Math.max(0,r-1),o.column=this.getLine(r-1).length):(o.row=Math.max(0,o.row),o.column=Math.min(Math.max(o.column,0),this.getLine(o.row).length)),o},s.prototype.insertFullLines=function(o,r){o=Math.min(Math.max(o,0),this.getLength());var n=0;o<this.getLength()?(r=r.concat([""]),n=0):(r=[""].concat(r),o--,n=this.$lines[o].length),this.insertMergedLines({row:o,column:n},r)},s.prototype.insertMergedLines=function(o,r){var n=this.clippedPos(o.row,o.column),i={row:n.row+r.length-1,column:(r.length==1?n.column:0)+r[r.length-1].length};return this.applyDelta({start:n,end:i,action:"insert",lines:r}),this.clonePos(i)},s.prototype.remove=function(o){var r=this.clippedPos(o.start.row,o.start.column),n=this.clippedPos(o.end.row,o.end.column);return this.applyDelta({start:r,end:n,action:"remove",lines:this.getLinesForRange({start:r,end:n})}),this.clonePos(r)},s.prototype.removeInLine=function(o,r,n){var i=this.clippedPos(o,r),h=this.clippedPos(o,n);return this.applyDelta({start:i,end:h,action:"remove",lines:this.getLinesForRange({start:i,end:h})},!0),this.clonePos(i)},s.prototype.removeFullLines=function(o,r){o=Math.min(Math.max(0,o),this.getLength()-1),r=Math.min(Math.max(0,r),this.getLength()-1);var n=r==this.getLength()-1&&o>0,i=r<this.getLength()-1,h=n?o-1:o,m=n?this.getLine(h).length:0,y=i?r+1:r,R=i?0:this.getLine(y).length,T=new p(h,m,y,R),k=this.$lines.slice(o,r+1);return this.applyDelta({start:T.start,end:T.end,action:"remove",lines:this.getLinesForRange(T)}),k},s.prototype.removeNewLine=function(o){o<this.getLength()-1&&o>=0&&this.applyDelta({start:this.pos(o,this.getLine(o).length),end:this.pos(o+1,0),action:"remove",lines:["",""]})},s.prototype.replace=function(o,r){if(o instanceof p||(o=p.fromPoints(o.start,o.end)),r.length===0&&o.isEmpty())return o.start;if(r==this.getTextRange(o))return o.end;this.remove(o);var n;return r?n=this.insert(o.start,r):n=o.start,n},s.prototype.applyDeltas=function(o){for(var r=0;r<o.length;r++)this.applyDelta(o[r])},s.prototype.revertDeltas=function(o){for(var r=o.length-1;r>=0;r--)this.revertDelta(o[r])},s.prototype.applyDelta=function(o,r){var n=o.action=="insert";(n?o.lines.length<=1&&!o.lines[0]:!p.comparePoints(o.start,o.end))||(n&&o.lines.length>2e4?this.$splitAndapplyLargeDelta(o,2e4):(v(this.$lines,o,r),this._signal("change",o)))},s.prototype.$safeApplyDelta=function(o){var r=this.$lines.length;(o.action=="remove"&&o.start.row<r&&o.end.row<r||o.action=="insert"&&o.start.row<=r)&&this.applyDelta(o)},s.prototype.$splitAndapplyLargeDelta=function(o,r){for(var n=o.lines,i=n.length-r+1,h=o.start.row,m=o.start.column,y=0,R=0;y<i;y=R){R+=r-1;var T=n.slice(y,R);T.push(""),this.applyDelta({start:this.pos(h+y,m),end:this.pos(h+R,m=0),action:o.action,lines:T},!0)}o.lines=n.slice(y),o.start.row=h+y,o.start.column=m,this.applyDelta(o,!0)},s.prototype.revertDelta=function(o){this.$safeApplyDelta({start:this.clonePos(o.start),end:this.clonePos(o.end),action:o.action=="insert"?"remove":"insert",lines:o.lines.slice()})},s.prototype.indexToPosition=function(o,r){for(var n=this.$lines||this.getAllLines(),i=this.getNewLineCharacter().length,h=r||0,m=n.length;h<m;h++)if(o-=n[h].length+i,o<0)return{row:h,column:o+n[h].length+i};return{row:m-1,column:o+n[m-1].length+i}},s.prototype.positionToIndex=function(o,r){for(var n=this.$lines||this.getAllLines(),i=this.getNewLineCharacter().length,h=0,m=Math.min(o.row,n.length),y=r||0;y<m;++y)h+=n[y].length+i;return h+o.column},s.prototype.$split=function(o){return o.split(/\r\n|\r|\n/)},s})();a.prototype.$autoNewLine="",a.prototype.$newLineMode="auto",b.implement(a.prototype,x),u.Document=a}),ace.define("ace/background_tokenizer",["require","exports","module","ace/lib/oop","ace/lib/event_emitter"],function(e,u,M){var b=e("./lib/oop"),v=e("./lib/event_emitter").EventEmitter,x=(function(){function p(f,a){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.tokenizer=f;var s=this;this.$worker=function(){if(s.running){for(var o=new Date,r=s.currentLine,n=-1,i=s.doc,h=r;s.lines[r];)r++;var m=i.getLength(),y=0;for(s.running=!1;r<m;){s.$tokenizeRow(r),n=r;do r++;while(s.lines[r]);if(y++,y%5===0&&new Date-o>20){s.running=setTimeout(s.$worker,20);break}}s.currentLine=r,n==-1&&(n=r),h<=n&&s.fireUpdateEvent(h,n)}}}return p.prototype.setTokenizer=function(f){this.tokenizer=f,this.lines=[],this.states=[],this.start(0)},p.prototype.setDocument=function(f){this.doc=f,this.lines=[],this.states=[],this.stop()},p.prototype.fireUpdateEvent=function(f,a){var s={first:f,last:a};this._signal("update",{data:s})},p.prototype.start=function(f){this.currentLine=Math.min(f||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},p.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},p.prototype.$updateOnChange=function(f){var a=f.start.row,s=f.end.row-a;if(s===0)this.lines[a]=null;else if(f.action=="remove")this.lines.splice(a,s+1,null),this.states.splice(a,s+1,null);else{var o=Array(s+1);o.unshift(a,1),this.lines.splice.apply(this.lines,o),this.states.splice.apply(this.states,o)}this.currentLine=Math.min(a,this.currentLine,this.doc.getLength()),this.stop()},p.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},p.prototype.getTokens=function(f){return this.lines[f]||this.$tokenizeRow(f)},p.prototype.getState=function(f){return this.currentLine==f&&this.$tokenizeRow(f),this.states[f]||"start"},p.prototype.$tokenizeRow=function(f){var a=this.doc.getLine(f),s=this.states[f-1],o=this.tokenizer.getLineTokens(a,s,f);return this.states[f]+""!=o.state+""?(this.states[f]=o.state,this.lines[f+1]=null,this.currentLine>f+1&&(this.currentLine=f+1)):this.currentLine==f&&(this.currentLine=f+1),this.lines[f]=o.tokens},p.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},p})();b.implement(x.prototype,v),u.BackgroundTokenizer=x}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(e,u,M){var b=e("./lib/lang"),v=e("./range").Range,x=(function(){function p(f,a,s){s===void 0&&(s="text"),this.setRegexp(f),this.clazz=a,this.type=s,this.docLen=0}return p.prototype.setRegexp=function(f){this.regExp+""!=f+""&&(this.regExp=f,this.cache=[])},p.prototype.update=function(f,a,s,o){if(this.regExp){for(var r=o.firstRow,n=o.lastRow,i={},h=s.$editor&&s.$editor.$search,m=h&&h.$isMultilineSearch(s.$editor.getLastSearchOptions()),y=r;y<=n;y++){var R=this.cache[y];if(R==null||s.getValue().length!=this.docLen){if(m){R=[];var T=h.$multiLineForward(s,this.regExp,y,n);if(T){var k=T.endRow<=n?T.endRow-1:n;k>y&&(y=k),R.push(new v(T.startRow,T.startCol,T.endRow,T.endCol))}R.length>this.MAX_RANGES&&(R=R.slice(0,this.MAX_RANGES))}else R=b.getMatchOffsets(s.getLine(y),this.regExp),R.length>this.MAX_RANGES&&(R=R.slice(0,this.MAX_RANGES)),R=R.map(function(E){return new v(y,E.offset,y,E.offset+E.length)});this.cache[y]=R.length?R:""}if(R.length!==0)for(var w=R.length;w--;){var I=R[w].toScreenRange(s),D=I.toString();i[D]||(i[D]=!0,a.drawSingleLineMarker(f,I,this.clazz,o))}}this.docLen=s.getValue().length}},p})();x.prototype.MAX_RANGES=500,u.SearchHighlight=x}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(e,u,M){var b=(function(){function k(){this.$keepRedoStack,this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return k.prototype.addSession=function(w){this.$session=w},k.prototype.add=function(w,I,D){if(!this.$fromUndo&&w!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),I===!1||!this.lastDeltas){this.lastDeltas=[];var E=this.$undoStack.length;E>this.$undoDepth-1&&this.$undoStack.splice(0,E-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),w.id=this.$rev=++this.$maxRev}(w.action=="remove"||w.action=="insert")&&(this.$lastDelta=w),this.lastDeltas.push(w)}},k.prototype.addSelection=function(w,I){this.selections.push({value:w,rev:I||this.$rev})},k.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},k.prototype.markIgnored=function(w,I){I==null&&(I=this.$rev+1);for(var D=this.$undoStack,E=D.length;E--;){var L=D[E][0];if(L.id<=w)break;L.id<I&&(L.ignore=!0)}this.lastDeltas=null},k.prototype.getSelection=function(w,I){for(var D=this.selections,E=D.length;E--;){var L=D[E];if(L.rev<w)return I&&(L=D[E+1]),L}},k.prototype.getRevision=function(){return this.$rev},k.prototype.getDeltas=function(w,I){I==null&&(I=this.$rev+1);for(var D=this.$undoStack,E=null,L=0,z=D.length;z--;){var F=D[z][0];if(F.id<I&&!E&&(E=z+1),F.id<=w){L=z+1;break}}return D.slice(L,E)},k.prototype.getChangedRanges=function(w,I){I==null&&(I=this.$rev+1)},k.prototype.getChangedLines=function(w,I){I==null&&(I=this.$rev+1)},k.prototype.undo=function(w,I){this.lastDeltas=null;var D=this.$undoStack;if(v(D,D.length)){w||(w=this.$session),this.$redoStackBaseRev!==this.$rev&&this.$redoStack.length&&(this.$redoStack=[]),this.$fromUndo=!0;var E=D.pop(),L=null;return E&&(L=w.undoChanges(E,I),this.$redoStack.push(E),this.$syncRev()),this.$fromUndo=!1,L}},k.prototype.redo=function(w,I){if(this.lastDeltas=null,w||(w=this.$session),this.$fromUndo=!0,this.$redoStackBaseRev!=this.$rev){var D=this.getDeltas(this.$redoStackBaseRev,this.$rev+1);T(this.$redoStack,D),this.$redoStackBaseRev=this.$rev,this.$redoStack.forEach(function(z){z[0].id=++this.$maxRev},this)}var E=this.$redoStack.pop(),L=null;return E&&(L=w.redoChanges(E,I),this.$undoStack.push(E),this.$syncRev()),this.$fromUndo=!1,L},k.prototype.$syncRev=function(){var w=this.$undoStack,I=w[w.length-1],D=I&&I[0].id||0;this.$redoStackBaseRev=D,this.$rev=D},k.prototype.reset=function(){this.lastDeltas=null,this.$lastDelta=null,this.$undoStack=[],this.$redoStack=[],this.$rev=0,this.mark=0,this.$redoStackBaseRev=this.$rev,this.selections=[]},k.prototype.canUndo=function(){return this.$undoStack.length>0},k.prototype.canRedo=function(){return this.$redoStack.length>0},k.prototype.bookmark=function(w){w==null&&(w=this.$rev),this.mark=w},k.prototype.isAtBookmark=function(){return this.$rev===this.mark},k.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},k.prototype.fromJSON=function(w){this.reset(),this.$undoStack=w.$undoStack,this.$redoStack=w.$redoStack},k.prototype.$prettyPrint=function(w){return w?s(w):s(this.$undoStack)+`
186
+ ---
187
+ `+s(this.$redoStack)},k})();b.prototype.hasUndo=b.prototype.canUndo,b.prototype.hasRedo=b.prototype.canRedo,b.prototype.isClean=b.prototype.isAtBookmark,b.prototype.markClean=b.prototype.bookmark;function v(k,w){for(var I=w;I--;){var D=k[I];if(D&&!D[0].ignore){for(;I<w-1;){var E=n(k[I],k[I+1]);k[I]=E[0],k[I+1]=E[1],I++}return!0}}}var x=e("./range").Range,p=x.comparePoints;x.comparePoints;function f(k){return{row:k.row,column:k.column}}function a(k){return{start:f(k.start),end:f(k.end),action:k.action,lines:k.lines.slice()}}function s(k){if(k=k||this,Array.isArray(k))return k.map(s).join(`
188
+ `);var w="";return k.action?(w=k.action=="insert"?"+":"-",w+="["+k.lines+"]"):k.value&&(Array.isArray(k.value)?w=k.value.map(o).join(`
189
+ `):w=o(k.value)),k.start&&(w+=o(k)),(k.id||k.rev)&&(w+=" ("+(k.id||k.rev)+")"),w}function o(k){return k.start.row+":"+k.start.column+"=>"+k.end.row+":"+k.end.column}function r(k,w){var I=k.action=="insert",D=w.action=="insert";if(I&&D)if(p(w.start,k.end)>=0)h(w,k,-1);else if(p(w.start,k.start)<=0)h(k,w,1);else return null;else if(I&&!D)if(p(w.start,k.end)>=0)h(w,k,-1);else if(p(w.end,k.start)<=0)h(k,w,-1);else return null;else if(!I&&D)if(p(w.start,k.start)>=0)h(w,k,1);else if(p(w.start,k.start)<=0)h(k,w,1);else return null;else if(!I&&!D)if(p(w.start,k.start)>=0)h(w,k,1);else if(p(w.end,k.start)<=0)h(k,w,-1);else return null;return[w,k]}function n(k,w){for(var I=k.length;I--;)for(var D=0;D<w.length;D++)if(!r(k[I],w[D])){for(;I<k.length;){for(;D--;)r(w[D],k[I]);D=w.length,I++}return[k,w]}return k.selectionBefore=w.selectionBefore=k.selectionAfter=w.selectionAfter=null,[w,k]}function i(k,w){var I=k.action=="insert",D=w.action=="insert";if(I&&D)p(k.start,w.start)<0?h(w,k,1):h(k,w,1);else if(I&&!D)p(k.start,w.end)>=0?h(k,w,-1):(p(k.start,w.start)<=0||h(k,x.fromPoints(w.start,k.start),-1),h(w,k,1));else if(!I&&D)p(w.start,k.end)>=0?h(w,k,-1):(p(w.start,k.start)<=0||h(w,x.fromPoints(k.start,w.start),-1),h(k,w,1));else if(!I&&!D)if(p(w.start,k.end)>=0)h(w,k,-1);else if(p(w.end,k.start)<=0)h(k,w,-1);else{var E,L;return p(k.start,w.start)<0&&(E=k,k=y(k,w.start)),p(k.end,w.end)>0&&(L=y(k,w.end)),m(w.end,k.start,k.end,-1),L&&!E&&(k.lines=L.lines,k.start=L.start,k.end=L.end,L=k),[w,E,L].filter(Boolean)}return[w,k]}function h(k,w,I){m(k.start,w.start,w.end,I),m(k.end,w.start,w.end,I)}function m(k,w,I,D){k.row==(D==1?w:I).row&&(k.column+=D*(I.column-w.column)),k.row+=D*(I.row-w.row)}function y(k,w){var I=k.lines,D=k.end;k.end=f(w);var E=k.end.row-k.start.row,L=I.splice(E,I.length),z=E?w.column:w.column-k.start.column;I.push(L[0].substring(0,z)),L[0]=L[0].substr(z);var F={start:f(w),end:D,lines:L,action:k.action};return F}function R(k,w){w=a(w);for(var I=k.length;I--;){for(var D=k[I],E=0;E<D.length;E++){var L=D[E],z=i(L,w);w=z[0],z.length!=2&&(z[2]?(D.splice(E+1,1,z[1],z[2]),E++):z[1]||(D.splice(E,1),E--))}D.length||k.splice(I,1)}return k}function T(k,w){for(var I=0;I<w.length;I++)for(var D=w[I],E=0;E<D.length;E++)R(k,D[E])}u.UndoManager=b}),ace.define("ace/edit_session/fold_line",["require","exports","module","ace/range"],function(e,u,M){var b=e("../range").Range,v=(function(){function x(p,f){this.foldData=p,Array.isArray(f)?this.folds=f:f=this.folds=[f];var a=f[f.length-1];this.range=new b(f[0].start.row,f[0].start.column,a.end.row,a.end.column),this.start=this.range.start,this.end=this.range.end,this.folds.forEach(function(s){s.setFoldLine(this)},this)}return x.prototype.shiftRow=function(p){this.start.row+=p,this.end.row+=p,this.folds.forEach(function(f){f.start.row+=p,f.end.row+=p})},x.prototype.addFold=function(p){if(p.sameRow){if(p.start.row<this.startRow||p.endRow>this.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(p),this.folds.sort(function(f,a){return-f.range.compareEnd(a.start.row,a.start.column)}),this.range.compareEnd(p.start.row,p.start.column)>0?(this.end.row=p.end.row,this.end.column=p.end.column):this.range.compareStart(p.end.row,p.end.column)<0&&(this.start.row=p.start.row,this.start.column=p.start.column)}else if(p.start.row==this.end.row)this.folds.push(p),this.end.row=p.end.row,this.end.column=p.end.column;else if(p.end.row==this.start.row)this.folds.unshift(p),this.start.row=p.start.row,this.start.column=p.start.column;else throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");p.foldLine=this},x.prototype.containsRow=function(p){return p>=this.start.row&&p<=this.end.row},x.prototype.walk=function(p,f,a){var s=0,o=this.folds,r,n,i,h=!0;f==null&&(f=this.end.row,a=this.end.column);for(var m=0;m<o.length;m++){if(r=o[m],n=r.range.compareStart(f,a),n==-1){p(null,f,a,s,h);return}if(i=p(null,r.start.row,r.start.column,s,h),i=!i&&p(r.placeholder,r.start.row,r.start.column,s),i||n===0)return;h=!r.sameRow,s=r.end.column}p(null,f,a,s,h)},x.prototype.getNextFoldTo=function(p,f){for(var a,s,o=0;o<this.folds.length;o++){if(a=this.folds[o],s=a.range.compareEnd(p,f),s==-1)return{fold:a,kind:"after"};if(s===0)return{fold:a,kind:"inside"}}return null},x.prototype.addRemoveChars=function(p,f,a){var s=this.getNextFoldTo(p,f),o,r;if(s){if(o=s.fold,s.kind=="inside"&&o.start.column!=f&&o.start.row!=p)window.console&&window.console.log(p,f,o);else if(o.start.row==p){r=this.folds;var n=r.indexOf(o);for(n===0&&(this.start.column+=a),n;n<r.length;n++){if(o=r[n],o.start.column+=a,!o.sameRow)return;o.end.column+=a}this.end.column+=a}}},x.prototype.split=function(p,f){var a=this.getNextFoldTo(p,f);if(!a||a.kind=="inside")return null;var s=a.fold,o=this.folds,r=this.foldData,n=o.indexOf(s),i=o[n-1];this.end.row=i.end.row,this.end.column=i.end.column,o=o.splice(n,o.length-n);var h=new x(r,o);return r.splice(r.indexOf(this)+1,0,h),h},x.prototype.merge=function(p){for(var f=p.folds,a=0;a<f.length;a++)this.addFold(f[a]);var s=this.foldData;s.splice(s.indexOf(p),1)},x.prototype.toString=function(){var p=[this.range.toString()+": ["];return this.folds.forEach(function(f){p.push(" "+f.toString())}),p.push("]"),p.join(`
190
+ `)},x.prototype.idxToPosition=function(p){for(var f=0,a=0;a<this.folds.length;a++){var s=this.folds[a];if(p-=s.start.column-f,p<0)return{row:s.start.row,column:s.start.column+p};if(p-=s.placeholder.length,p<0)return s.start;f=s.end.column}return{row:this.end.row,column:this.end.column+p}},x})();u.FoldLine=v}),ace.define("ace/range_list",["require","exports","module","ace/range"],function(e,u,M){var b=e("./range").Range,v=b.comparePoints,x=(function(){function p(){this.ranges=[],this.$bias=1}return p.prototype.pointIndex=function(f,a,s){for(var o=this.ranges,r=s||0;r<o.length;r++){var n=o[r],i=v(f,n.end);if(!(i>0)){var h=v(f,n.start);return i===0?a&&h!==0?-r-2:r:h>0||h===0&&!a?r:-r-1}}return-r-1},p.prototype.add=function(f){var a=!f.isEmpty(),s=this.pointIndex(f.start,a);s<0&&(s=-s-1);var o=this.pointIndex(f.end,a,s);return o<0?o=-o-1:o++,this.ranges.splice(s,o-s,f)},p.prototype.addList=function(f){for(var a=[],s=f.length;s--;)a.push.apply(a,this.add(f[s]));return a},p.prototype.substractPoint=function(f){var a=this.pointIndex(f);if(a>=0)return this.ranges.splice(a,1)},p.prototype.merge=function(){var f=[],a=this.ranges;a=a.sort(function(i,h){return v(i.start,h.start)});for(var s=a[0],o,r=1;r<a.length;r++){o=s,s=a[r];var n=v(o.end,s.start);n<0||n==0&&!o.isEmpty()&&!s.isEmpty()||(v(o.end,s.end)<0&&(o.end.row=s.end.row,o.end.column=s.end.column),a.splice(r,1),f.push(s),s=o,r--)}return this.ranges=a,f},p.prototype.contains=function(f,a){return this.pointIndex({row:f,column:a})>=0},p.prototype.containsPoint=function(f){return this.pointIndex(f)>=0},p.prototype.rangeAtPoint=function(f){var a=this.pointIndex(f);if(a>=0)return this.ranges[a]},p.prototype.clipRows=function(f,a){var s=this.ranges;if(s[0].start.row>a||s[s.length-1].start.row<f)return[];var o=this.pointIndex({row:f,column:0});o<0&&(o=-o-1);var r=this.pointIndex({row:a,column:0},o);r<0&&(r=-r-1);for(var n=[],i=o;i<r;i++)n.push(s[i]);return n},p.prototype.removeAll=function(){return this.ranges.splice(0,this.ranges.length)},p.prototype.attach=function(f){this.session&&this.detach(),this.session=f,this.onChange=this.$onChange.bind(this),this.session.on("change",this.onChange)},p.prototype.detach=function(){this.session&&(this.session.removeListener("change",this.onChange),this.session=null)},p.prototype.$onChange=function(f){for(var a=f.start,s=f.end,o=a.row,r=s.row,n=this.ranges,i=0,h=n.length;i<h;i++){var m=n[i];if(m.end.row>=o)break}if(f.action=="insert")for(var y=r-o,R=-a.column+s.column;i<h;i++){var m=n[i];if(m.start.row>o)break;if(m.start.row==o&&m.start.column>=a.column&&(m.start.column==a.column&&this.$bias<=0||(m.start.column+=R,m.start.row+=y)),m.end.row==o&&m.end.column>=a.column){if(m.end.column==a.column&&this.$bias<0)continue;m.end.column==a.column&&R>0&&i<h-1&&m.end.column>m.start.column&&m.end.column==n[i+1].start.column&&(m.end.column-=R),m.end.column+=R,m.end.row+=y}}else for(var y=o-r,R=a.column-s.column;i<h;i++){var m=n[i];if(m.start.row>r)break;m.end.row<r&&(o<m.end.row||o==m.end.row&&a.column<m.end.column)?(m.end.row=o,m.end.column=a.column):m.end.row==r?m.end.column<=s.column?(y||m.end.column>a.column)&&(m.end.column=a.column,m.end.row=a.row):(m.end.column+=R,m.end.row+=y):m.end.row>r&&(m.end.row+=y),m.start.row<r&&(o<m.start.row||o==m.start.row&&a.column<m.start.column)?(m.start.row=o,m.start.column=a.column):m.start.row==r?m.start.column<=s.column?(y||m.start.column>a.column)&&(m.start.column=a.column,m.start.row=a.row):(m.start.column+=R,m.start.row+=y):m.start.row>r&&(m.start.row+=y)}if(y!=0&&i<h)for(;i<h;i++){var m=n[i];m.start.row+=y,m.end.row+=y}},p})();x.prototype.comparePoints=v,u.RangeList=x}),ace.define("ace/edit_session/fold",["require","exports","module","ace/range_list"],function(e,u,M){var b=this&&this.__extends||(function(){var o=function(r,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,h){i.__proto__=h}||function(i,h){for(var m in h)Object.prototype.hasOwnProperty.call(h,m)&&(i[m]=h[m])},o(r,n)};return function(r,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");o(r,n);function i(){this.constructor=r}r.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)}})(),v=e("../range_list").RangeList,x=(function(o){b(r,o);function r(n,i){var h=o.call(this)||this;return h.foldLine=null,h.placeholder=i,h.range=n,h.start=n.start,h.end=n.end,h.sameRow=n.start.row==n.end.row,h.subFolds=h.ranges=[],h}return r.prototype.toString=function(){return'"'+this.placeholder+'" '+this.range.toString()},r.prototype.setFoldLine=function(n){this.foldLine=n,this.subFolds.forEach(function(i){i.setFoldLine(n)})},r.prototype.clone=function(){var n=this.range.clone(),i=new r(n,this.placeholder);return this.subFolds.forEach(function(h){i.subFolds.push(h.clone())}),i.collapseChildren=this.collapseChildren,i},r.prototype.addSubFold=function(n){if(!this.range.isEqual(n)){f(n,this.start);for(var R=n.start.row,T=n.start.column,i=0,h=-1;i<this.subFolds.length&&(h=this.subFolds[i].range.compare(R,T),h==1);i++);var m=this.subFolds[i],y=0;if(h==0){if(m.range.containsRange(n))return m.addSubFold(n);y=1}for(var R=n.range.end.row,T=n.range.end.column,k=i,h=-1;k<this.subFolds.length&&(h=this.subFolds[k].range.compare(R,T),h==1);k++);h==0&&k++;for(var w=this.subFolds.splice(i,k-i,n),I=h==0?w.length-1:w.length,D=y;D<I;D++)n.addSubFold(w[D]);return n.setFoldLine(this.foldLine),n}},r.prototype.restoreRange=function(n){return s(n,this.start)},r})(v);function p(o,r){o.row-=r.row,o.row==0&&(o.column-=r.column)}function f(o,r){p(o.start,r),p(o.end,r)}function a(o,r){o.row==0&&(o.column+=r.column),o.row+=r.row}function s(o,r){a(o.start,r),a(o.end,r)}u.Fold=x}),ace.define("ace/edit_session/folding",["require","exports","module","ace/range","ace/edit_session/fold_line","ace/edit_session/fold","ace/token_iterator","ace/mouse/mouse_event"],function(e,u,M){var b=e("../range").Range,v=e("./fold_line").FoldLine,x=e("./fold").Fold,p=e("../token_iterator").TokenIterator,f=e("../mouse/mouse_event").MouseEvent;function a(){this.getFoldAt=function(s,o,r){var n=this.getFoldLine(s);if(!n)return null;for(var i=n.folds,h=0;h<i.length;h++){var m=i[h].range;if(m.contains(s,o)){if(r==1&&m.isEnd(s,o)&&!m.isEmpty())continue;if(r==-1&&m.isStart(s,o)&&!m.isEmpty())continue;return i[h]}}},this.getFoldsInRange=function(s){var o=s.start,r=s.end,n=this.$foldData,i=[];o.column+=1,r.column-=1;for(var h=0;h<n.length;h++){var m=n[h].range.compareRange(s);if(m!=2){if(m==-2)break;for(var y=n[h].folds,R=0;R<y.length;R++){var T=y[R];if(m=T.range.compareRange(s),m==-2)break;if(m==2)continue;if(m==42)break;i.push(T)}}}return o.column-=1,r.column+=1,i},this.getFoldsInRangeList=function(s){if(Array.isArray(s)){var o=[];s.forEach(function(r){o=o.concat(this.getFoldsInRange(r))},this)}else var o=this.getFoldsInRange(s);return o},this.getAllFolds=function(){for(var s=[],o=this.$foldData,r=0;r<o.length;r++)for(var n=0;n<o[r].folds.length;n++)s.push(o[r].folds[n]);return s},this.getFoldStringAt=function(s,o,r,n){if(n=n||this.getFoldLine(s),!n)return null;for(var i={end:{column:0}},h,m,y=0;y<n.folds.length;y++){m=n.folds[y];var R=m.range.compareEnd(s,o);if(R==-1){h=this.getLine(m.start.row).substring(i.end.column,m.start.column);break}else if(R===0)return null;i=m}return h||(h=this.getLine(m.start.row).substring(i.end.column)),r==-1?h.substring(0,o-i.end.column):r==1?h.substring(o-i.end.column):h},this.getFoldLine=function(s,o){var r=this.$foldData,n=0;for(o&&(n=r.indexOf(o)),n==-1&&(n=0),n;n<r.length;n++){var i=r[n];if(i.start.row<=s&&i.end.row>=s)return i;if(i.end.row>s)return null}return null},this.getNextFoldLine=function(s,o){var r=this.$foldData,n=0;for(o&&(n=r.indexOf(o)),n==-1&&(n=0),n;n<r.length;n++){var i=r[n];if(i.end.row>=s)return i}return null},this.getFoldedRowCount=function(s,o){for(var r=this.$foldData,n=o-s+1,i=0;i<r.length;i++){var h=r[i],m=h.end.row,y=h.start.row;if(m>=o){y<o&&(y>=s?n-=o-y:n=0);break}else m>=s&&(y>=s?n-=m-y:n-=m-s+1)}return n},this.$addFoldLine=function(s){return this.$foldData.push(s),this.$foldData.sort(function(o,r){return o.start.row-r.start.row}),s},this.addFold=function(s,o){var r=this.$foldData,n=!1,i;s instanceof x?i=s:(i=new x(o,s),i.collapseChildren=o.collapseChildren),this.$clipRangeToDocument(i.range);var h=i.start.row,m=i.start.column,y=i.end.row,R=i.end.column,T=this.getFoldAt(h,m,1),k=this.getFoldAt(y,R,-1);if(T&&k==T)return T.addSubFold(i);T&&!T.range.isStart(h,m)&&this.removeFold(T),k&&!k.range.isEnd(y,R)&&this.removeFold(k);var w=this.getFoldsInRange(i.range);w.length>0&&(this.removeFolds(w),i.collapseChildren||w.forEach(function(L){i.addSubFold(L)}));for(var I=0;I<r.length;I++){var D=r[I];if(y==D.start.row){D.addFold(i),n=!0;break}else if(h==D.end.row){if(D.addFold(i),n=!0,!i.sameRow){var E=r[I+1];if(E&&E.start.row==y){D.merge(E);break}}break}else if(y<=D.start.row)break}return n||(D=this.$addFoldLine(new v(this.$foldData,i))),this.$useWrapMode?this.$updateWrapData(D.start.row,D.start.row):this.$updateRowLengthCache(D.start.row,D.start.row),this.$modified=!0,this._signal("changeFold",{data:i,action:"add"}),i},this.addFolds=function(s){s.forEach(function(o){this.addFold(o)},this)},this.removeFold=function(s){var o=s.foldLine,r=o.start.row,n=o.end.row,i=this.$foldData,h=o.folds;if(h.length==1)i.splice(i.indexOf(o),1);else if(o.range.isEnd(s.end.row,s.end.column))h.pop(),o.end.row=h[h.length-1].end.row,o.end.column=h[h.length-1].end.column;else if(o.range.isStart(s.start.row,s.start.column))h.shift(),o.start.row=h[0].start.row,o.start.column=h[0].start.column;else if(s.sameRow)h.splice(h.indexOf(s),1);else{var m=o.split(s.start.row,s.start.column);h=m.folds,h.shift(),m.start.row=h[0].start.row,m.start.column=h[0].start.column}this.$updating||(this.$useWrapMode?this.$updateWrapData(r,n):this.$updateRowLengthCache(r,n)),this.$modified=!0,this._signal("changeFold",{data:s,action:"remove"})},this.removeFolds=function(s){for(var o=[],r=0;r<s.length;r++)o.push(s[r]);o.forEach(function(n){this.removeFold(n)},this),this.$modified=!0},this.expandFold=function(s){this.removeFold(s),s.subFolds.forEach(function(o){s.restoreRange(o),this.addFold(o)},this),s.collapseChildren>0&&this.foldAll(s.start.row+1,s.end.row,s.collapseChildren-1),s.subFolds=[]},this.expandFolds=function(s){s.forEach(function(o){this.expandFold(o)},this)},this.unfold=function(s,o){var r,n;if(s==null)r=new b(0,0,this.getLength(),0),o==null&&(o=!0);else if(typeof s=="number")r=new b(s,0,s,this.getLine(s).length);else if("row"in s)r=b.fromPoints(s,s);else{if(Array.isArray(s))return n=[],s.forEach(function(h){n=n.concat(this.unfold(h))},this),n;r=s}n=this.getFoldsInRangeList(r);for(var i=n;n.length==1&&b.comparePoints(n[0].start,r.start)<0&&b.comparePoints(n[0].end,r.end)>0;)this.expandFolds(n),n=this.getFoldsInRangeList(r);if(o!=!1?this.removeFolds(n):this.expandFolds(n),i.length)return i},this.isRowFolded=function(s,o){return!!this.getFoldLine(s,o)},this.getRowFoldEnd=function(s,o){var r=this.getFoldLine(s,o);return r?r.end.row:s},this.getRowFoldStart=function(s,o){var r=this.getFoldLine(s,o);return r?r.start.row:s},this.getFoldDisplayLine=function(s,o,r,n,i){n==null&&(n=s.start.row),i==null&&(i=0),o==null&&(o=s.end.row),r==null&&(r=this.getLine(o).length);var h=this.doc,m="";return s.walk(function(y,R,T,k){if(!(R<n)){if(R==n){if(T<i)return;k=Math.max(i,k)}y!=null?m+=y:m+=h.getLine(R).substring(k,T)}},o,r),m},this.getDisplayLine=function(s,o,r,n){var i=this.getFoldLine(s);if(i)return this.getFoldDisplayLine(i,s,o,r,n);var h;return h=this.doc.getLine(s),h.substring(n||0,o||h.length)},this.$cloneFoldData=function(){var s=[];return s=this.$foldData.map(function(o){var r=o.folds.map(function(n){return n.clone()});return new v(s,r)}),s},this.toggleFold=function(s){var o=this.selection,r=o.getRange(),n,i;if(r.isEmpty()){var h=r.start;if(n=this.getFoldAt(h.row,h.column),n){this.expandFold(n);return}else if(s){var m=this.getFoldLine(h.row);m&&this.expandFolds(m.folds);return}else(i=this.findMatchingBracket(h))?r.comparePoint(i)==1?r.end=i:(r.start=i,r.start.column++,r.end.column--):(i=this.findMatchingBracket({row:h.row,column:h.column+1}))?(r.comparePoint(i)==1?r.end=i:r.start=i,r.start.column++):r=this.getCommentFoldRange(h.row,h.column)||r}else{var y=this.getFoldsInRange(r);if(s&&y.length){this.expandFolds(y);return}else y.length==1&&(n=y[0])}if(n||(n=this.getFoldAt(r.start.row,r.start.column)),n&&n.range.toString()==r.toString()){this.expandFold(n);return}var R="...";if(!r.isMultiLine()){if(R=this.getTextRange(r),R.length<4)return;R=R.trim().substring(0,2)+".."}this.addFold(R,r)},this.getCommentFoldRange=function(s,o,r){var n=new p(this,s,o),i=n.getCurrentToken(),h=i&&i.type;if(i&&/^comment|string/.test(h)){h=h.match(/comment|string/)[0],h=="comment"&&(h+="|doc-start|\\.doc");var m=new RegExp(h),y=new b;if(r!=1){do i=n.stepBackward();while(i&&m.test(i.type));i=n.stepForward()}y.start.row=n.getCurrentTokenRow(),y.start.column=n.getCurrentTokenColumn()+i.value.length,n=new p(this,s,o);var R=this.getState(n.$row);if(r!=-1){var T=-1;do if(i=n.stepForward(),T==-1){var k=this.getState(n.$row);R.toString()!==k.toString()&&(T=n.$row)}else if(n.$row>T)break;while(i&&m.test(i.type));i=n.stepBackward()}else i=n.getCurrentToken();return y.end.row=n.getCurrentTokenRow(),y.end.column=n.getCurrentTokenColumn(),y.start.row==y.end.row&&y.start.column>y.end.column?void 0:y}},this.foldAll=function(s,o,r,n){r==null&&(r=1e5);var i=this.foldWidgets;if(i){o=o||this.getLength(),s=s||0;for(var h=s;h<o;h++)if(i[h]==null&&(i[h]=this.getFoldWidget(h)),i[h]=="start"&&!(n&&!n(h))){var m=this.getFoldWidgetRange(h);m&&m.isMultiLine()&&m.end.row<=o&&m.start.row>=s&&(h=m.end.row,m.collapseChildren=r,this.addFold("...",m))}}},this.foldToLevel=function(s){for(this.foldAll();s-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var s=this;this.foldAll(null,null,null,function(o){for(var r=s.getTokens(o),n=0;n<r.length;n++){var i=r[n];if(!(i.type=="text"&&/^\s+$/.test(i.value)))return!!/comment/.test(i.type)}})},this.$foldStyles={manual:1,markbegin:1,markbeginend:1},this.$foldStyle="markbegin",this.setFoldStyle=function(s){if(!this.$foldStyles[s])throw new Error("invalid fold style: "+s+"["+Object.keys(this.$foldStyles).join(", ")+"]");if(this.$foldStyle!=s){this.$foldStyle=s,s=="manual"&&this.unfold();var o=this.$foldMode;this.$setFolding(null),this.$setFolding(o)}},this.$setFolding=function(s){if(this.$foldMode!=s){if(this.$foldMode=s,this.off("change",this.$updateFoldWidgets),this.off("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets),this._signal("changeAnnotation"),!s||this.$foldStyle=="manual"){this.foldWidgets=null;return}this.foldWidgets=[],this.getFoldWidget=s.getFoldWidget.bind(s,this,this.$foldStyle),this.getFoldWidgetRange=s.getFoldWidgetRange.bind(s,this,this.$foldStyle),this.$updateFoldWidgets=this.updateFoldWidgets.bind(this),this.$tokenizerUpdateFoldWidgets=this.tokenizerUpdateFoldWidgets.bind(this),this.on("change",this.$updateFoldWidgets),this.on("tokenizerUpdate",this.$tokenizerUpdateFoldWidgets)}},this.getParentFoldRangeData=function(s,o){var r=this.foldWidgets;if(!r||o&&r[s])return{};for(var n=s-1,i;n>=0;){var h=r[n];if(h==null&&(h=r[n]=this.getFoldWidget(n)),h=="start"){var m=this.getFoldWidgetRange(n);if(i||(i=m),m&&m.end.row>=s)break}n--}return{range:n!==-1&&m,firstRange:i}},this.onFoldWidgetClick=function(s,o){o instanceof f&&(o=o.domEvent);var r={children:o.shiftKey,all:o.ctrlKey||o.metaKey,siblings:o.altKey},n=this.$toggleFoldWidget(s,r);if(!n){var i=o.target||o.srcElement;i&&/ace_fold-widget/.test(i.className)&&(i.className+=" ace_invalid")}},this.$toggleFoldWidget=function(s,o){if(this.getFoldWidget){var r=this.getFoldWidget(s),n=this.getLine(s),i=r==="end"?-1:1,h=this.getFoldAt(s,i===-1?0:n.length,i);if(h)return o.children||o.all?this.removeFold(h):this.expandFold(h),h;var m=this.getFoldWidgetRange(s,!0);if(m&&!m.isMultiLine()&&(h=this.getFoldAt(m.start.row,m.start.column,1),h&&m.isEqual(h.range)))return this.removeFold(h),h;if(o.siblings){var y=this.getParentFoldRangeData(s);if(y.range)var R=y.range.start.row+1,T=y.range.end.row;this.foldAll(R,T,o.all?1e4:0)}else o.children?(T=m?m.end.row:this.getLength(),this.foldAll(s+1,T,o.all?1e4:0)):m&&(o.all&&(m.collapseChildren=1e4),this.addFold("...",m));return m}},this.toggleFoldWidget=function(s){var o=this.selection.getCursor().row;o=this.getRowFoldStart(o);var r=this.$toggleFoldWidget(o,{});if(!r){var n=this.getParentFoldRangeData(o,!0);if(r=n.range||n.firstRange,r){o=r.start.row;var i=this.getFoldAt(o,this.getLine(o).length,1);i?this.removeFold(i):this.addFold("...",r)}}},this.updateFoldWidgets=function(s){var o=s.start.row,r=s.end.row-o;if(r===0)this.foldWidgets[o]=null;else if(s.action=="remove")this.foldWidgets.splice(o,r+1,null);else{var n=Array(r+1);n.unshift(o,1),this.foldWidgets.splice.apply(this.foldWidgets,n)}},this.tokenizerUpdateFoldWidgets=function(s){var o=s.data;o.first!=o.last&&this.foldWidgets.length>o.first&&this.foldWidgets.splice(o.first,this.foldWidgets.length)}}u.Folding=a}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(e,u,M){var b=e("../token_iterator").TokenIterator,v=e("../range").Range;function x(){this.findMatchingBracket=function(p,f){if(p.column==0)return null;var a=f||this.getLine(p.row).charAt(p.column-1);if(a=="")return null;var s=a.match(/([\(\[\{])|([\)\]\}])/);return s?s[1]?this.$findClosingBracket(s[1],p):this.$findOpeningBracket(s[2],p):null},this.getBracketRange=function(p){var f=this.getLine(p.row),a=!0,s,o=f.charAt(p.column-1),r=o&&o.match(/([\(\[\{])|([\)\]\}])/);if(r||(o=f.charAt(p.column),p={row:p.row,column:p.column+1},r=o&&o.match(/([\(\[\{])|([\)\]\}])/),a=!1),!r)return null;if(r[1]){var n=this.$findClosingBracket(r[1],p);if(!n)return null;s=v.fromPoints(p,n),a||(s.end.column++,s.start.column--),s.cursor=s.end}else{var n=this.$findOpeningBracket(r[2],p);if(!n)return null;s=v.fromPoints(n,p),a||(s.start.column++,s.end.column--),s.cursor=s.start}return s},this.getMatchingBracketRanges=function(p,f){var a=this.getLine(p.row),s=/([\(\[\{])|([\)\]\}])/,o=!f&&a.charAt(p.column-1),r=o&&o.match(s);if(r||(o=(f===void 0||f)&&a.charAt(p.column),p={row:p.row,column:p.column+1},r=o&&o.match(s)),!r)return null;var n=new v(p.row,p.column-1,p.row,p.column),i=r[1]?this.$findClosingBracket(r[1],p):this.$findOpeningBracket(r[2],p);if(!i)return[n];var h=new v(i.row,i.column,i.row,i.column+1);return[n,h]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(p,f,a){var s=this.$brackets[p],o=1,r=new b(this,f.row,f.column),n=r.getCurrentToken();if(n||(n=r.stepForward()),!!n){a||(a=new RegExp("(\\.?"+n.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var i=f.column-r.getCurrentTokenColumn()-2,h=n.value;;){for(;i>=0;){var m=h.charAt(i);if(m==s){if(o-=1,o==0)return{row:r.getCurrentTokenRow(),column:i+r.getCurrentTokenColumn()}}else m==p&&(o+=1);i-=1}do n=r.stepBackward();while(n&&!a.test(n.type));if(n==null)break;h=n.value,i=h.length-1}return null}},this.$findClosingBracket=function(p,f,a){var s=this.$brackets[p],o=1,r=new b(this,f.row,f.column),n=r.getCurrentToken();if(n||(n=r.stepForward()),!!n){a||(a=new RegExp("(\\.?"+n.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var i=f.column-r.getCurrentTokenColumn();;){for(var h=n.value,m=h.length;i<m;){var y=h.charAt(i);if(y==s){if(o-=1,o==0)return{row:r.getCurrentTokenRow(),column:i+r.getCurrentTokenColumn()}}else y==p&&(o+=1);i+=1}do n=r.stepForward();while(n&&!a.test(n.type));if(n==null)break;i=0}return null}},this.getMatchingTags=function(p){var f=new b(this,p.row,p.column),a=this.$findTagName(f);if(a){var s=f.stepBackward();return s.value==="<"?this.$findClosingTag(f,a):this.$findOpeningTag(f,a)}},this.$findTagName=function(p){var f=p.getCurrentToken(),a=!1,s=!1;if(f&&f.type.indexOf("tag-name")===-1)do s?f=p.stepBackward():f=p.stepForward(),f&&(f.value==="/>"?s=!0:f.type.indexOf("tag-name")!==-1&&(a=!0));while(f&&!a);return f},this.$findClosingTag=function(p,f){var a,s=f.value,o=f.value,r=0,n=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1);f=p.stepForward();var i=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+f.value.length),h=!1;do{if(a=f,a.type.indexOf("tag-close")!==-1&&!h){var m=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1);h=!0}if(f=p.stepForward(),f){if(f.value===">"&&!h){var m=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1);h=!0}if(f.type.indexOf("tag-name")!==-1){if(s=f.value,o===s){if(a.value==="<")r++;else if(a.value==="</"&&(r--,r<0)){p.stepBackward();var y=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+2);f=p.stepForward();var R=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+f.value.length);if(f.type.indexOf("tag-close")===-1&&(f=p.stepForward()),f&&f.value===">")var T=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1);else return}}}else if(o===s&&f.value==="/>"&&(r--,r<0))var y=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+2),R=y,T=R,m=new v(i.end.row,i.end.column,i.end.row,i.end.column+1)}}while(f&&r>=0);if(n&&m&&y&&T&&i&&R)return{openTag:new v(n.start.row,n.start.column,m.end.row,m.end.column),closeTag:new v(y.start.row,y.start.column,T.end.row,T.end.column),openTagName:i,closeTagName:R}},this.$findOpeningTag=function(p,f){var a=p.getCurrentToken(),s=f.value,o=0,r=p.getCurrentTokenRow(),n=p.getCurrentTokenColumn(),i=n+2,h=new v(r,n,r,i);p.stepForward();var m=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+f.value.length);if(f.type.indexOf("tag-close")===-1&&(f=p.stepForward()),!(!f||f.value!==">")){var y=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1);p.stepBackward(),p.stepBackward();do if(f=a,r=p.getCurrentTokenRow(),n=p.getCurrentTokenColumn(),i=n+f.value.length,a=p.stepBackward(),f){if(f.type.indexOf("tag-name")!==-1){if(s===f.value)if(a.value==="<"){if(o++,o>0){var R=new v(r,n,r,i),T=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1);do f=p.stepForward();while(f&&f.value!==">");var k=new v(p.getCurrentTokenRow(),p.getCurrentTokenColumn(),p.getCurrentTokenRow(),p.getCurrentTokenColumn()+1)}}else a.value==="</"&&o--}else if(f.value==="/>"){for(var w=0,I=a;I;){if(I.type.indexOf("tag-name")!==-1&&I.value===s){o--;break}else if(I.value==="<")break;I=p.stepBackward(),w++}for(var D=0;D<w;D++)p.stepForward()}}while(a&&o<=0);if(T&&k&&h&&y&&R&&m)return{openTag:new v(T.start.row,T.start.column,k.end.row,k.end.column),closeTag:new v(h.start.row,h.start.column,y.end.row,y.end.column),openTagName:R,closeTagName:m}}}}u.BracketMatch=x}),ace.define("ace/edit_session",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/bidihandler","ace/config","ace/lib/event_emitter","ace/selection","ace/mode/text","ace/range","ace/line_widgets","ace/document","ace/background_tokenizer","ace/search_highlight","ace/undomanager","ace/edit_session/folding","ace/edit_session/bracket_match"],function(e,u,M){var b=e("./lib/oop"),v=e("./lib/lang"),x=e("./bidihandler").BidiHandler,p=e("./config"),f=e("./lib/event_emitter").EventEmitter,a=e("./selection").Selection,s=e("./mode/text").Mode,o=e("./range").Range,r=e("./line_widgets").LineWidgets,n=e("./document").Document,i=e("./background_tokenizer").BackgroundTokenizer,h=e("./search_highlight").SearchHighlight,m=e("./undomanager").UndoManager,y=(function(){function F(O,A){this.doc,this.$breakpoints=[],this.$decorations=[],this.$frontMarkers={},this.$backMarkers={},this.$markerId=1,this.$undoSelect=!0,this.$editor=null,this.prevOp={},this.$foldData=[],this.id="session"+ ++F.$uid,this.$foldData.toString=function(){return this.join(`
191
+ `)},this.$gutterCustomWidgets={},this.bgTokenizer=new i(new s().getTokenizer(),this);var S=this;this.bgTokenizer.on("update",function(N){S._signal("tokenizerUpdate",N)}),this.on("changeFold",this.onChangeFold.bind(this)),this.$onChange=this.onChange.bind(this),(typeof O!="object"||!O.getLine)&&(O=new n(O)),this.setDocument(O),this.selection=new a(this),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.selection.on("changeCursor",this.$onSelectionChange),this.$bidiHandler=new x(this),p.resetOptions(this),this.setMode(A),p._signal("session",this),this.destroyed=!1,this.$initOperationListeners()}return F.prototype.$initOperationListeners=function(){var O=this;this.curOp=null,this.on("change",function(){O.curOp||(O.startOperation(),O.curOp.selectionBefore=O.$lastSel),O.curOp.docChanged=!0},!0),this.on("changeSelection",function(){O.curOp||(O.startOperation(),O.curOp.selectionBefore=O.$lastSel),O.curOp.selectionChanged=!0},!0),this.$operationResetTimer=v.delayedCall(this.endOperation.bind(this,!0))},F.prototype.startOperation=function(O){if(this.curOp){if(!O||this.curOp.command)return;this.prevOp=this.curOp}O||(O={}),this.$operationResetTimer.schedule(),this.curOp={command:O.command||{},args:O.args},this.curOp.selectionBefore=this.selection.toJSON(),this._signal("startOperation",O)},F.prototype.endOperation=function(O){if(this.curOp){if(O&&O.returnValue===!1){this.curOp=null,this._signal("endOperation",O);return}if(O==!0&&this.curOp.command&&this.curOp.command.name=="mouse")return;var A=this.selection.toJSON();this.curOp.selectionAfter=A,this.$lastSel=this.selection.toJSON(),this.getUndoManager().addSelection(A),this._signal("beforeEndOperation"),this.prevOp=this.curOp,this.curOp=null,this._signal("endOperation",O)}},F.prototype.setDocument=function(O){this.doc&&this.doc.off("change",this.$onChange),this.doc=O,O.on("change",this.$onChange,!0),this.bgTokenizer.setDocument(this.getDocument()),this.resetCaches()},F.prototype.getDocument=function(){return this.doc},Object.defineProperty(F.prototype,"widgetManager",{get:function(){var O=new r(this);return this.widgetManager=O,this.$editor&&O.attach(this.$editor),O},set:function(O){Object.defineProperty(this,"widgetManager",{writable:!0,enumerable:!0,configurable:!0,value:O})},enumerable:!1,configurable:!0}),F.prototype.$resetRowCache=function(O){if(!O){this.$docRowCache=[],this.$screenRowCache=[];return}var A=this.$docRowCache.length,S=this.$getRowCacheIndex(this.$docRowCache,O)+1;A>S&&(this.$docRowCache.splice(S,A),this.$screenRowCache.splice(S,A))},F.prototype.$getRowCacheIndex=function(O,A){for(var S=0,N=O.length-1;S<=N;){var W=S+N>>1,V=O[W];if(A>V)S=W+1;else if(A<V)N=W-1;else return W}return S-1},F.prototype.resetCaches=function(){this.$modified=!0,this.$wrapData=[],this.$rowLengthCache=[],this.$resetRowCache(0),this.destroyed||this.bgTokenizer.start(0)},F.prototype.onChangeFold=function(O){var A=O.data;this.$resetRowCache(A.start.row)},F.prototype.onChange=function(O){this.$modified=!0,this.$bidiHandler.onChange(O),this.$resetRowCache(O.start.row);var A=this.$updateInternalDataOnChange(O);!this.$fromUndo&&this.$undoManager&&(A&&A.length&&(this.$undoManager.add({action:"removeFolds",folds:A},this.mergeUndoDeltas),this.mergeUndoDeltas=!0),this.$undoManager.add(O,this.mergeUndoDeltas),this.mergeUndoDeltas=!0,this.$informUndoManager.schedule()),this.bgTokenizer.$updateOnChange(O),this._signal("change",O)},F.prototype.onSelectionChange=function(){this._signal("changeSelection")},F.prototype.setValue=function(O){this.doc.setValue(O),this.selection.moveTo(0,0),this.$resetRowCache(0),this.setUndoManager(this.$undoManager),this.getUndoManager().reset()},F.fromJSON=function(O){typeof O=="string"&&(O=JSON.parse(O));var A=new m;A.$undoStack=O.history.undo,A.$redoStack=O.history.redo,A.mark=O.history.mark,A.$rev=O.history.rev;var S=new F(O.value);return O.folds.forEach(function(N){S.addFold("...",o.fromPoints(N.start,N.end))}),S.setAnnotations(O.annotations),S.setBreakpoints(O.breakpoints),S.setMode(O.mode),S.setScrollLeft(O.scrollLeft),S.setScrollTop(O.scrollTop),S.setUndoManager(A),S.selection.fromJSON(O.selection),S},F.prototype.toJSON=function(){return{annotations:this.$annotations,breakpoints:this.$breakpoints,folds:this.getAllFolds().map(function(O){return O.range}),history:this.getUndoManager(),mode:this.$mode.$id,scrollLeft:this.$scrollLeft,scrollTop:this.$scrollTop,selection:this.selection.toJSON(),value:this.doc.getValue()}},F.prototype.toString=function(){return this.doc.getValue()},F.prototype.getSelection=function(){return this.selection},F.prototype.getState=function(O){return this.bgTokenizer.getState(O)},F.prototype.getTokens=function(O){return this.bgTokenizer.getTokens(O)},F.prototype.getTokenAt=function(O,A){var S=this.bgTokenizer.getTokens(O),N,W=0;if(A==null){var V=S.length-1;W=this.getLine(O).length}else for(var V=0;V<S.length&&(W+=S[V].value.length,!(W>=A));V++);return N=S[V],N?(N.index=V,N.start=W-N.value.length,N):null},F.prototype.setUndoManager=function(O){if(this.$undoManager=O,this.$informUndoManager&&this.$informUndoManager.cancel(),O){var A=this;O.addSession(this),this.$syncInformUndoManager=function(){A.$informUndoManager.cancel(),A.mergeUndoDeltas=!1},this.$informUndoManager=v.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},F.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},F.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},F.prototype.getTabString=function(){return this.getUseSoftTabs()?v.stringRepeat(" ",this.getTabSize()):" "},F.prototype.setUseSoftTabs=function(O){this.setOption("useSoftTabs",O)},F.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},F.prototype.setTabSize=function(O){this.setOption("tabSize",O)},F.prototype.getTabSize=function(){return this.$tabSize},F.prototype.isTabStop=function(O){return this.$useSoftTabs&&O.column%this.$tabSize===0},F.prototype.setNavigateWithinSoftTabs=function(O){this.setOption("navigateWithinSoftTabs",O)},F.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},F.prototype.setOverwrite=function(O){this.setOption("overwrite",O)},F.prototype.getOverwrite=function(){return this.$overwrite},F.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},F.prototype.addGutterDecoration=function(O,A){this.$decorations[O]||(this.$decorations[O]=""),this.$decorations[O]+=" "+A,this._signal("changeBreakpoint",{})},F.prototype.removeGutterCustomWidget=function(O){this.$editor&&this.$editor.renderer.$gutterLayer.$removeCustomWidget(O)},F.prototype.addGutterCustomWidget=function(O,A){this.$editor&&this.$editor.renderer.$gutterLayer.$addCustomWidget(O,A)},F.prototype.removeGutterDecoration=function(O,A){this.$decorations[O]=(this.$decorations[O]||"").replace(" "+A,""),this._signal("changeBreakpoint",{})},F.prototype.getBreakpoints=function(){return this.$breakpoints},F.prototype.setBreakpoints=function(O){this.$breakpoints=[];for(var A=0;A<O.length;A++)this.$breakpoints[O[A]]="ace_breakpoint";this._signal("changeBreakpoint",{})},F.prototype.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},F.prototype.setBreakpoint=function(O,A){A===void 0&&(A="ace_breakpoint"),A?this.$breakpoints[O]=A:delete this.$breakpoints[O],this._signal("changeBreakpoint",{})},F.prototype.clearBreakpoint=function(O){delete this.$breakpoints[O],this._signal("changeBreakpoint",{})},F.prototype.addMarker=function(O,A,S,N){var W=this.$markerId++,V={range:O,type:S||"line",renderer:typeof S=="function"?S:null,clazz:A,inFront:!!N,id:W};return N?(this.$frontMarkers[W]=V,this._signal("changeFrontMarker")):(this.$backMarkers[W]=V,this._signal("changeBackMarker")),W},F.prototype.addDynamicMarker=function(O,A){if(O.update){var S=this.$markerId++;return O.id=S,O.inFront=!!A,A?(this.$frontMarkers[S]=O,this._signal("changeFrontMarker")):(this.$backMarkers[S]=O,this._signal("changeBackMarker")),O}},F.prototype.removeMarker=function(O){var A=this.$frontMarkers[O]||this.$backMarkers[O];if(A){var S=A.inFront?this.$frontMarkers:this.$backMarkers;delete S[O],this._signal(A.inFront?"changeFrontMarker":"changeBackMarker")}},F.prototype.getMarkers=function(O){return O?this.$frontMarkers:this.$backMarkers},F.prototype.highlight=function(O){if(!this.$searchHighlight){var A=new h(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(A)}this.$searchHighlight.setRegexp(O)},F.prototype.highlightLines=function(O,A,S,N){typeof A!="number"&&(S=A,A=O),S||(S="ace_step");var W=new o(O,0,A,1/0);return W.id=this.addMarker(W,S,"fullLine",N),W},F.prototype.setAnnotations=function(O){this.$annotations=O,this._signal("changeAnnotation",{})},F.prototype.getAnnotations=function(){return this.$annotations||[]},F.prototype.clearAnnotations=function(){this.setAnnotations([])},F.prototype.$detectNewLine=function(O){var A=O.match(/^.*?(\r?\n)/m);A?this.$autoNewLine=A[1]:this.$autoNewLine=`
192
+ `},F.prototype.getWordRange=function(O,A){var S=this.getLine(O),N=!1;if(A>0&&(N=!!S.charAt(A-1).match(this.tokenRe)),N||(N=!!S.charAt(A).match(this.tokenRe)),N)var W=this.tokenRe;else if(/^\s+$/.test(S.slice(A-1,A+1)))var W=/\s/;else var W=this.nonTokenRe;var V=A;if(V>0){do V--;while(V>=0&&S.charAt(V).match(W));V++}for(var G=A;G<S.length&&S.charAt(G).match(W);)G++;return new o(O,V,O,G)},F.prototype.getAWordRange=function(O,A){for(var S=this.getWordRange(O,A),N=this.getLine(S.end.row);N.charAt(S.end.column).match(/[ \t]/);)S.end.column+=1;return S},F.prototype.setNewLineMode=function(O){this.doc.setNewLineMode(O)},F.prototype.getNewLineMode=function(){return this.doc.getNewLineMode()},F.prototype.setUseWorker=function(O){this.setOption("useWorker",O)},F.prototype.getUseWorker=function(){return this.$useWorker},F.prototype.onReloadTokenizer=function(O){var A=O.data;this.bgTokenizer.start(A.first),this._signal("tokenizerUpdate",O)},F.prototype.setMode=function(O,A){if(O&&typeof O=="object"){if(O.getTokenizer)return this.$onChangeMode(O);var S=O,N=S.path}else N=O||"ace/mode/text";if(this.$modes["ace/mode/text"]||(this.$modes["ace/mode/text"]=new s),this.$modes[N]&&!S){this.$onChangeMode(this.$modes[N]),A&&A();return}this.$modeId=N,p.loadModule(["mode",N],(function(W){if(!this.destroyed){if(this.$modeId!==N)return A&&A();this.$modes[N]&&!S?this.$onChangeMode(this.$modes[N]):W&&W.Mode&&(W=new W.Mode(S),S||(this.$modes[N]=W,W.$id=N),this.$onChangeMode(W)),A&&A()}}).bind(this)),this.$mode||this.$onChangeMode(this.$modes["ace/mode/text"],!0)},F.prototype.$onChangeMode=function(O,A){if(A||(this.$modeId=O.$id),this.$mode!==O){var S=this.$mode;this.$mode=O,this.$stopWorker(),this.$useWorker&&this.$startWorker();var N=O.getTokenizer();if(N.on!==void 0){var W=this.onReloadTokenizer.bind(this);N.on("update",W)}this.bgTokenizer.setTokenizer(N),this.bgTokenizer.setDocument(this.getDocument()),this.tokenRe=O.tokenRe,this.nonTokenRe=O.nonTokenRe,A||(O.attachToSession&&O.attachToSession(this),this.$options.wrapMethod.set.call(this,this.$wrapMethod),this.$setFolding(O.foldingRules),this.bgTokenizer.start(0),this._emit("changeMode",{oldMode:S,mode:O}))}},F.prototype.$stopWorker=function(){this.$worker&&(this.$worker.terminate(),this.$worker=null)},F.prototype.$startWorker=function(){try{this.$worker=this.$mode.createWorker(this)}catch(O){p.warn("Could not load worker",O),this.$worker=null}},F.prototype.getMode=function(){return this.$mode},F.prototype.setScrollTop=function(O){this.$scrollTop===O||isNaN(O)||(this.$scrollTop=O,this._signal("changeScrollTop",O))},F.prototype.getScrollTop=function(){return this.$scrollTop},F.prototype.setScrollLeft=function(O){this.$scrollLeft===O||isNaN(O)||(this.$scrollLeft=O,this._signal("changeScrollLeft",O))},F.prototype.getScrollLeft=function(){return this.$scrollLeft},F.prototype.getScreenWidth=function(){return this.$computeWidth(),this.lineWidgets?Math.max(this.getLineWidgetMaxWidth(),this.screenWidth):this.screenWidth},F.prototype.getLineWidgetMaxWidth=function(){if(this.lineWidgetsWidth!=null)return this.lineWidgetsWidth;var O=0;return this.lineWidgets.forEach(function(A){A&&A.screenWidth>O&&(O=A.screenWidth)}),this.lineWidgetWidth=O},F.prototype.$computeWidth=function(O){if(this.$modified||O){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var A=this.doc.getAllLines(),S=this.$rowLengthCache,N=0,W=0,V=this.$foldData[W],G=V?V.start.row:1/0,Q=A.length,te=0;te<Q;te++){if(te>G){if(te=V.end.row+1,te>=Q)break;V=this.$foldData[W++],G=V?V.start.row:1/0}S[te]==null&&(S[te]=this.$getStringScreenWidth(A[te])[0]),S[te]>N&&(N=S[te])}this.screenWidth=N}},F.prototype.getLine=function(O){return this.doc.getLine(O)},F.prototype.getLines=function(O,A){return this.doc.getLines(O,A)},F.prototype.getLength=function(){return this.doc.getLength()},F.prototype.getTextRange=function(O){return this.doc.getTextRange(O||this.selection.getRange())},F.prototype.insert=function(O,A){return this.doc.insert(O,A)},F.prototype.remove=function(O){return this.doc.remove(O)},F.prototype.removeFullLines=function(O,A){return this.doc.removeFullLines(O,A)},F.prototype.undoChanges=function(O,A){if(O.length){this.$fromUndo=!0;for(var S=O.length-1;S!=-1;S--){var N=O[S];N.action=="insert"||N.action=="remove"?this.doc.revertDelta(N):N.folds&&this.addFolds(N.folds)}!A&&this.$undoSelect&&(O.selectionBefore?this.selection.fromJSON(O.selectionBefore):this.selection.setRange(this.$getUndoSelection(O,!0))),this.$fromUndo=!1}},F.prototype.redoChanges=function(O,A){if(O.length){this.$fromUndo=!0;for(var S=0;S<O.length;S++){var N=O[S];(N.action=="insert"||N.action=="remove")&&this.doc.$safeApplyDelta(N)}!A&&this.$undoSelect&&(O.selectionAfter?this.selection.fromJSON(O.selectionAfter):this.selection.setRange(this.$getUndoSelection(O,!1))),this.$fromUndo=!1}},F.prototype.setUndoSelect=function(O){this.$undoSelect=O},F.prototype.$getUndoSelection=function(O,A){function S(Q){return A?Q.action!=="insert":Q.action==="insert"}for(var N,W,V=0;V<O.length;V++){var G=O[V];if(G.start){if(!N){S(G)?N=o.fromPoints(G.start,G.end):N=o.fromPoints(G.start,G.start);continue}S(G)?(W=G.start,N.compare(W.row,W.column)==-1&&N.setStart(W),W=G.end,N.compare(W.row,W.column)==1&&N.setEnd(W)):(W=G.start,N.compare(W.row,W.column)==-1&&(N=o.fromPoints(G.start,G.start)))}}return N},F.prototype.replace=function(O,A){return this.doc.replace(O,A)},F.prototype.moveText=function(O,A,S){var N=this.getTextRange(O),W=this.getFoldsInRange(O),V=o.fromPoints(A,A);if(!S){this.remove(O);var G=O.start.row-O.end.row,Q=G?-O.end.column:O.start.column-O.end.column;Q&&(V.start.row==O.end.row&&V.start.column>O.end.column&&(V.start.column+=Q),V.end.row==O.end.row&&V.end.column>O.end.column&&(V.end.column+=Q)),G&&V.start.row>=O.end.row&&(V.start.row+=G,V.end.row+=G)}if(V.end=this.insert(V.start,N),W.length){var te=O.start,le=V.start,G=le.row-te.row,Q=le.column-te.column;this.addFolds(W.map(function(he){return he=he.clone(),he.start.row==te.row&&(he.start.column+=Q),he.end.row==te.row&&(he.end.column+=Q),he.start.row+=G,he.end.row+=G,he}))}return V},F.prototype.indentRows=function(O,A,S){S=S.replace(/\t/g,this.getTabString());for(var N=O;N<=A;N++)this.doc.insertInLine({row:N,column:0},S)},F.prototype.outdentRows=function(O){for(var A=O.collapseRows(),S=new o(0,0,0,0),N=this.getTabSize(),W=A.start.row;W<=A.end.row;++W){var V=this.getLine(W);S.start.row=W,S.end.row=W;for(var G=0;G<N&&V.charAt(G)==" ";++G);G<N&&V.charAt(G)==" "?(S.start.column=G,S.end.column=G+1):(S.start.column=0,S.end.column=G),this.remove(S)}},F.prototype.$moveLines=function(O,A,S){if(O=this.getRowFoldStart(O),A=this.getRowFoldEnd(A),S<0){var N=this.getRowFoldStart(O+S);if(N<0)return 0;var W=N-O}else if(S>0){var N=this.getRowFoldEnd(A+S);if(N>this.doc.getLength()-1)return 0;var W=N-A}else{O=this.$clipRowToDocument(O),A=this.$clipRowToDocument(A);var W=A-O+1}var V=new o(O,0,A,Number.MAX_VALUE),G=this.getFoldsInRange(V).map(function(te){return te=te.clone(),te.start.row+=W,te.end.row+=W,te}),Q=S==0?this.doc.getLines(O,A):this.doc.removeFullLines(O,A);return this.doc.insertFullLines(O+W,Q),G.length&&this.addFolds(G),W},F.prototype.moveLinesUp=function(O,A){return this.$moveLines(O,A,-1)},F.prototype.moveLinesDown=function(O,A){return this.$moveLines(O,A,1)},F.prototype.duplicateLines=function(O,A){return this.$moveLines(O,A,0)},F.prototype.$clipRowToDocument=function(O){return Math.max(0,Math.min(O,this.doc.getLength()-1))},F.prototype.$clipColumnToRow=function(O,A){return A<0?0:Math.min(this.doc.getLine(O).length,A)},F.prototype.$clipPositionToDocument=function(O,A){if(A=Math.max(0,A),O<0)O=0,A=0;else{var S=this.doc.getLength();O>=S?(O=S-1,A=this.doc.getLine(S-1).length):A=Math.min(this.doc.getLine(O).length,A)}return{row:O,column:A}},F.prototype.$clipRangeToDocument=function(O){O.start.row<0?(O.start.row=0,O.start.column=0):O.start.column=this.$clipColumnToRow(O.start.row,O.start.column);var A=this.doc.getLength()-1;return O.end.row>A?(O.end.row=A,O.end.column=this.doc.getLine(A).length):O.end.column=this.$clipColumnToRow(O.end.row,O.end.column),O},F.prototype.setUseWrapMode=function(O){if(O!=this.$useWrapMode){if(this.$useWrapMode=O,this.$modified=!0,this.$resetRowCache(0),O){var A=this.getLength();this.$wrapData=Array(A),this.$updateWrapData(0,A-1)}this._signal("changeWrapMode")}},F.prototype.getUseWrapMode=function(){return this.$useWrapMode},F.prototype.setWrapLimitRange=function(O,A){(this.$wrapLimitRange.min!==O||this.$wrapLimitRange.max!==A)&&(this.$wrapLimitRange={min:O,max:A},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},F.prototype.adjustWrapLimit=function(O,A){var S=this.$wrapLimitRange;S.max<0&&(S={min:A,max:A});var N=this.$constrainWrapLimit(O,S.min,S.max);return N!=this.$wrapLimit&&N>1?(this.$wrapLimit=N,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},F.prototype.$constrainWrapLimit=function(O,A,S){return A&&(O=Math.max(A,O)),S&&(O=Math.min(S,O)),O},F.prototype.getWrapLimit=function(){return this.$wrapLimit},F.prototype.setWrapLimit=function(O){this.setWrapLimitRange(O,O)},F.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},F.prototype.$updateInternalDataOnChange=function(O){var A=this.$useWrapMode,S=O.action,N=O.start,W=O.end,V=N.row,G=W.row,Q=G-V,te=null;if(this.$updating=!0,Q!=0)if(S==="remove"){this[A?"$wrapData":"$rowLengthCache"].splice(V,Q);var le=this.$foldData;te=this.getFoldsInRange(O),this.removeFolds(te);var ne=this.getFoldLine(W.row),ue=0;if(ne){ne.addRemoveChars(W.row,W.column,N.column-W.column),ne.shiftRow(-Q);var he=this.getFoldLine(V);he&&he!==ne&&(he.merge(ne),ne=he),ue=le.indexOf(ne)+1}for(ue;ue<le.length;ue++){var ne=le[ue];ne.start.row>=W.row&&ne.shiftRow(-Q)}G=V}else{var ce=Array(Q);ce.unshift(V,0);var me=A?this.$wrapData:this.$rowLengthCache;me.splice.apply(me,ce);var le=this.$foldData,ne=this.getFoldLine(V),ue=0;if(ne){var _e=ne.range.compareInside(N.row,N.column);_e==0?(ne=ne.split(N.row,N.column),ne&&(ne.shiftRow(Q),ne.addRemoveChars(G,0,W.column-N.column))):_e==-1&&(ne.addRemoveChars(V,0,W.column-N.column),ne.shiftRow(Q)),ue=le.indexOf(ne)+1}for(ue;ue<le.length;ue++){var ne=le[ue];ne.start.row>=V&&ne.shiftRow(Q)}}else{Q=Math.abs(O.start.column-O.end.column),S==="remove"&&(te=this.getFoldsInRange(O),this.removeFolds(te),Q=-Q);var ne=this.getFoldLine(V);ne&&ne.addRemoveChars(V,N.column,Q)}return A&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,A?this.$updateWrapData(V,G):this.$updateRowLengthCache(V,G),te},F.prototype.$updateRowLengthCache=function(O,A){this.$rowLengthCache[O]=null,this.$rowLengthCache[A]=null},F.prototype.$updateWrapData=function(O,A){var S=this.doc.getAllLines(),N=this.getTabSize(),W=this.$wrapData,V=this.$wrapLimit,G,Q,te=O;for(A=Math.min(A,S.length-1);te<=A;)Q=this.getFoldLine(te,Q),Q?(G=[],Q.walk((function(le,ne,ue,he){var ce;if(le!=null){ce=this.$getDisplayTokens(le,G.length),ce[0]=k;for(var me=1;me<ce.length;me++)ce[me]=w}else ce=this.$getDisplayTokens(S[ne].substring(he,ue),G.length);G=G.concat(ce)}).bind(this),Q.end.row,S[Q.end.row].length+1),W[Q.start.row]=this.$computeWrapSplits(G,V,N),te=Q.end.row+1):(G=this.$getDisplayTokens(S[te]),W[te]=this.$computeWrapSplits(G,V,N),te++)},F.prototype.$computeWrapSplits=function(O,A,S){if(O.length==0)return[];var N=[],W=O.length,V=0,G=0,Q=this.$wrapAsCode,te=this.$indentedSoftWrap,le=A<=Math.max(2*S,8)||te===!1?0:Math.floor(A/2);function ne(){var _e=0;if(le===0)return _e;if(te)for(var Ae=0;Ae<O.length;Ae++){var Me=O[Ae];if(Me==D)_e+=1;else if(Me==E)_e+=S;else{if(Me==L)continue;break}}return Q&&te!==!1&&(_e+=S),Math.min(_e,le)}function ue(_e){for(var Ae=_e-V,Me=V;Me<_e;Me++){var Ye=O[Me];(Ye===12||Ye===2)&&(Ae-=1)}N.length||(he=ne(),N.indent=he),G+=Ae,N.push(G),V=_e}for(var he=0;W-V>A-he;){var ce=V+A-he;if(O[ce-1]>=D&&O[ce]>=D){ue(ce);continue}if(O[ce]==k||O[ce]==w){for(ce;ce!=V-1&&O[ce]!=k;ce--);if(ce>V){ue(ce);continue}for(ce=V+A,ce;ce<O.length&&O[ce]==w;ce++);if(ce==O.length)break;ue(ce);continue}for(var me=Math.max(ce-(A-(A>>2)),V-1);ce>me&&O[ce]<k;)ce--;if(Q){for(;ce>me&&O[ce]<k;)ce--;for(;ce>me&&O[ce]==I;)ce--}else for(;ce>me&&O[ce]<D;)ce--;if(ce>me){ue(++ce);continue}ce=V+A,O[ce]==T&&ce--,ue(ce-he)}return N},F.prototype.$getDisplayTokens=function(O,A){var S=[],N;A=A||0;for(var W=0;W<O.length;W++){var V=O.charCodeAt(W);if(V==9){N=this.getScreenTabSize(S.length+A),S.push(E);for(var G=1;G<N;G++)S.push(L)}else V==32?S.push(D):V>39&&V<48||V>57&&V<64?S.push(I):V>=4352&&z(V)?S.push(R,T):S.push(R)}return S},F.prototype.$getStringScreenWidth=function(O,A,S){if(A==0)return[0,0];A==null&&(A=1/0),S=S||0;var N,W;for(W=0;W<O.length&&(N=O.charCodeAt(W),N==9?S+=this.getScreenTabSize(S):N>=4352&&z(N)?S+=2:S+=1,!(S>A));W++);return[S,W]},F.prototype.getRowLength=function(O){var A=1;return this.lineWidgets&&(A+=this.lineWidgets[O]&&this.lineWidgets[O].rowCount||0),!this.$useWrapMode||!this.$wrapData[O]?A:this.$wrapData[O].length+A},F.prototype.getRowLineCount=function(O){return!this.$useWrapMode||!this.$wrapData[O]?1:this.$wrapData[O].length+1},F.prototype.getRowWrapIndent=function(O){if(this.$useWrapMode){var A=this.screenToDocumentPosition(O,Number.MAX_VALUE),S=this.$wrapData[A.row];return S.length&&S[0]<A.column?S.indent:0}else return 0},F.prototype.getScreenLastRowColumn=function(O){var A=this.screenToDocumentPosition(O,Number.MAX_VALUE);return this.documentToScreenColumn(A.row,A.column)},F.prototype.getDocumentLastRowColumn=function(O,A){var S=this.documentToScreenRow(O,A);return this.getScreenLastRowColumn(S)},F.prototype.getDocumentLastRowColumnPosition=function(O,A){var S=this.documentToScreenRow(O,A);return this.screenToDocumentPosition(S,Number.MAX_VALUE/10)},F.prototype.getRowSplitData=function(O){if(this.$useWrapMode)return this.$wrapData[O]},F.prototype.getScreenTabSize=function(O){return this.$tabSize-(O%this.$tabSize|0)},F.prototype.screenToDocumentRow=function(O,A){return this.screenToDocumentPosition(O,A).row},F.prototype.screenToDocumentColumn=function(O,A){return this.screenToDocumentPosition(O,A).column},F.prototype.screenToDocumentPosition=function(O,A,S){if(O<0)return{row:0,column:0};var N,W=0,V=0,G,Q=0,te=0,le=this.$screenRowCache,ne=this.$getRowCacheIndex(le,O),ue=le.length;if(ue&&ne>=0)var Q=le[ne],W=this.$docRowCache[ne],he=O>le[ue-1];else var he=!ue;for(var ce=this.getLength()-1,me=this.getNextFoldLine(W),_e=me?me.start.row:1/0;Q<=O&&(te=this.getRowLength(W),!(Q+te>O||W>=ce));)Q+=te,W++,W>_e&&(W=me.end.row+1,me=this.getNextFoldLine(W,me),_e=me?me.start.row:1/0),he&&(this.$docRowCache.push(W),this.$screenRowCache.push(Q));if(me&&me.start.row<=W)N=this.getFoldDisplayLine(me),W=me.start.row;else{if(Q+te<=O||W>ce)return{row:ce,column:this.getLine(ce).length};N=this.getLine(W),me=null}var Ae=0,Me=Math.floor(O-Q);if(this.$useWrapMode){var Ye=this.$wrapData[W];Ye&&(G=Ye[Me],Me>0&&Ye.length&&(Ae=Ye.indent,V=Ye[Me-1]||Ye[Ye.length-1],N=N.substring(V)))}return S!==void 0&&this.$bidiHandler.isBidiRow(Q+Me,W,Me)&&(A=this.$bidiHandler.offsetToCol(S)),V+=this.$getStringScreenWidth(N,A-Ae)[1],this.$useWrapMode&&V>=G&&(V=G-1),me?me.idxToPosition(V):{row:W,column:V}},F.prototype.documentToScreenPosition=function(O,A){if(typeof A>"u")var S=this.$clipPositionToDocument(O.row,O.column);else S=this.$clipPositionToDocument(O,A);O=S.row,A=S.column;var N=0,W=null,V=null;V=this.getFoldAt(O,A,1),V&&(O=V.start.row,A=V.start.column);var G,Q=0,te=this.$docRowCache,le=this.$getRowCacheIndex(te,O),ne=te.length;if(ne&&le>=0)var Q=te[le],N=this.$screenRowCache[le],ue=O>te[ne-1];else var ue=!ne;for(var he=this.getNextFoldLine(Q),ce=he?he.start.row:1/0;Q<O;){if(Q>=ce){if(G=he.end.row+1,G>O)break;he=this.getNextFoldLine(G,he),ce=he?he.start.row:1/0}else G=Q+1;N+=this.getRowLength(Q),Q=G,ue&&(this.$docRowCache.push(Q),this.$screenRowCache.push(N))}var me="";he&&Q>=ce?(me=this.getFoldDisplayLine(he,O,A),W=he.start.row):(me=this.getLine(O).substring(0,A),W=O);var _e=0;if(this.$useWrapMode){var Ae=this.$wrapData[W];if(Ae){for(var Me=0;me.length>=Ae[Me];)N++,Me++;me=me.substring(Ae[Me-1]||0,me.length),_e=Me>0?Ae.indent:0}}return this.lineWidgets&&this.lineWidgets[Q]&&this.lineWidgets[Q].rowsAbove&&(N+=this.lineWidgets[Q].rowsAbove),{row:N,column:_e+this.$getStringScreenWidth(me)[0]}},F.prototype.documentToScreenColumn=function(O,A){return this.documentToScreenPosition(O,A).column},F.prototype.documentToScreenRow=function(O,A){return this.documentToScreenPosition(O,A).row},F.prototype.getScreenLength=function(){var O=0,A=null;if(this.$useWrapMode)for(var W=this.$wrapData.length,V=0,N=0,A=this.$foldData[N++],G=A?A.start.row:1/0;V<W;){var Q=this.$wrapData[V];O+=Q?Q.length+1:1,V++,V>G&&(V=A.end.row+1,A=this.$foldData[N++],G=A?A.start.row:1/0)}else{O=this.getLength();for(var S=this.$foldData,N=0;N<S.length;N++)A=S[N],O-=A.end.row-A.start.row}return this.lineWidgets&&(O+=this.$getWidgetScreenLength()),O},F.prototype.$setFontMetrics=function(O){this.$enableVarChar&&(this.$getStringScreenWidth=function(A,S,N){if(S===0)return[0,0];S||(S=1/0),N=N||0;var W,V;for(V=0;V<A.length&&(W=A.charAt(V),W===" "?N+=this.getScreenTabSize(N):N+=O.getCharacterWidth(W),!(N>S));V++);return[N,V]})},F.prototype.getPrecedingCharacter=function(){var O=this.selection.getCursor();if(O.column===0)return O.row===0?"":this.doc.getNewLineCharacter();var A=this.getLine(O.row);return A[O.column-1]},F.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.endOperation(),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection&&(this.selection.off("changeCursor",this.$onSelectionChange),this.selection.off("changeSelection",this.$onSelectionChange)),this.selection.detach()},F})();y.$uid=0,y.prototype.$modes=p.$modes,y.prototype.getValue=y.prototype.toString,y.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},y.prototype.$overwrite=!1,y.prototype.$mode=null,y.prototype.$modeId=null,y.prototype.$scrollTop=0,y.prototype.$scrollLeft=0,y.prototype.$wrapLimit=80,y.prototype.$useWrapMode=!1,y.prototype.$wrapLimitRange={min:null,max:null},y.prototype.lineWidgets=null,y.prototype.isFullWidth=z,b.implement(y.prototype,f);var R=1,T=2,k=3,w=4,I=9,D=10,E=11,L=12;function z(F){return F<4352?!1:F>=4352&&F<=4447||F>=4515&&F<=4519||F>=4602&&F<=4607||F>=9001&&F<=9002||F>=11904&&F<=11929||F>=11931&&F<=12019||F>=12032&&F<=12245||F>=12272&&F<=12283||F>=12288&&F<=12350||F>=12353&&F<=12438||F>=12441&&F<=12543||F>=12549&&F<=12589||F>=12593&&F<=12686||F>=12688&&F<=12730||F>=12736&&F<=12771||F>=12784&&F<=12830||F>=12832&&F<=12871||F>=12880&&F<=13054||F>=13056&&F<=19903||F>=19968&&F<=42124||F>=42128&&F<=42182||F>=43360&&F<=43388||F>=44032&&F<=55203||F>=55216&&F<=55238||F>=55243&&F<=55291||F>=63744&&F<=64255||F>=65040&&F<=65049||F>=65072&&F<=65106||F>=65108&&F<=65126||F>=65128&&F<=65131||F>=65281&&F<=65376||F>=65504&&F<=65510}e("./edit_session/folding").Folding.call(y.prototype),e("./edit_session/bracket_match").BracketMatch.call(y.prototype),p.defineOptions(y.prototype,"session",{wrap:{set:function(F){if(!F||F=="off"?F=!1:F=="free"?F=!0:F=="printMargin"?F=-1:typeof F=="string"&&(F=parseInt(F,10)||!1),this.$wrap!=F)if(this.$wrap=F,!F)this.setUseWrapMode(!1);else{var O=typeof F=="number"?F:null;this.setWrapLimitRange(O,O),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(F){F=F=="auto"?this.$mode.type!="text":F!="text",F!=this.$wrapAsCode&&(this.$wrapAsCode=F,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(F){this.$useWorker=F,this.$stopWorker(),F&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(F){F=parseInt(F),F>0&&this.$tabSize!==F&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=F,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(F){this.setFoldStyle(F)},handlesSet:!0},overwrite:{set:function(F){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(F){this.doc.setNewLineMode(F)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(F){this.setMode(F)},get:function(){return this.$modeId},handlesSet:!0}}),u.EditSession=y}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(e,u,M){var b=e("./lib/lang"),v=e("./lib/oop"),x=e("./range").Range,p=(function(){function o(){this.$options={}}return o.prototype.set=function(r){return v.mixin(this.$options,r),this},o.prototype.getOptions=function(){return b.copyObject(this.$options)},o.prototype.setOptions=function(r){this.$options=r},o.prototype.find=function(r){var n=this.$options,i=this.$matchIterator(r,n);if(!i)return!1;var h=null;return i.forEach(function(m,y,R,T){return h=new x(m,y,R,T),y==T&&n.start&&n.start.start&&n.skipCurrent!=!1&&h.isEqual(n.start)?(h=null,!1):!0}),h},o.prototype.findAll=function(r){var n=this.$options;if(!n.needle)return[];this.$assembleRegExp(n);var i=n.range,h=i?r.getLines(i.start.row,i.end.row):r.doc.getAllLines(),m=[],y=n.re;if(n.$isMultiLine){var R=y.length,T=h.length-R,k;e:for(var w=y.offset||0;w<=T;w++){for(var I=0;I<R;I++)if(h[w+I].search(y[I])==-1)continue e;var D=h[w],E=h[w+R-1],L=D.length-D.match(y[0])[0].length,z=E.match(y[R-1])[0].length;k&&k.end.row===w&&k.end.column>L||(m.push(k=new x(w,L,w+R-1,z)),R>2&&(w=w+R-2))}}else for(var F,O=0;O<h.length;O++)if(this.$isMultilineSearch(n)){var A=h.length-1;if(F=this.$multiLineForward(r,y,O,A),F){var S=F.endRow<=A?F.endRow-1:A;S>O&&(O=S),m.push(new x(F.startRow,F.startCol,F.endRow,F.endCol))}}else{F=b.getMatchOffsets(h[O],y);for(var I=0;I<F.length;I++){var N=F[I];m.push(new x(O,N.offset,O,N.offset+N.length))}}if(i){for(var W=i.start.column,V=i.end.column,O=0,I=m.length-1;O<I&&m[O].start.column<W&&m[O].start.row==0;)O++;for(var G=i.end.row-i.start.row;O<I&&m[I].end.column>V&&m[I].end.row==G;)I--;for(m=m.slice(O,I+1),O=0,I=m.length;O<I;O++)m[O].start.row+=i.start.row,m[O].end.row+=i.start.row}return m},o.prototype.parseReplaceString=function(r){for(var n={DollarSign:36,Ampersand:38,Digit0:48,Digit1:49,Digit9:57,Backslash:92,n:110,t:116},i="",h=0,m=r.length;h<m;h++){var y=r.charCodeAt(h);if(y===n.Backslash){if(h++,h>=m){i+="\\";break}var R=r.charCodeAt(h);switch(R){case n.Backslash:i+="\\";break;case n.n:i+=`
193
+ `;break;case n.t:i+=" ";break}continue}if(y===n.DollarSign){if(h++,h>=m){i+="$";break}var T=r.charCodeAt(h);if(T===n.DollarSign){i+="$$";continue}if(T===n.Digit0||T===n.Ampersand){i+="$&";continue}if(n.Digit1<=T&&T<=n.Digit9){i+="$"+r[h];continue}}i+=r[h]}return i||r},o.prototype.replace=function(r,n){var i=this.$options,h=this.$assembleRegExp(i);if(i.$isMultiLine)return n;if(h){var m=this.$isMultilineSearch(i);m&&(r=r.replace(/\r\n|\r|\n/g,`
194
+ `));var y=h.exec(r);if(!y||!m&&y[0].length!=r.length)return null;if(n=i.regExp?this.parseReplaceString(n):n.replace(/\$/g,"$$$$"),n=r.replace(h,n),i.preserveCase){n=n.split("");for(var R=Math.min(r.length,r.length);R--;){var T=r[R];T&&T.toLowerCase()!=T?n[R]=n[R].toUpperCase():n[R]=n[R].toLowerCase()}n=n.join("")}return n}},o.prototype.$assembleRegExp=function(r,n){if(r.needle instanceof RegExp)return r.re=r.needle;var i=r.needle;if(!r.needle)return r.re=!1;r.regExp||(i=b.escapeRegExp(i));var h=r.caseSensitive?"gm":"gmi";try{new RegExp(i,"u"),r.$supportsUnicodeFlag=!0,h+="u"}catch{r.$supportsUnicodeFlag=!1}if(r.wholeWord&&(i=f(i,r)),r.$isMultiLine=!n&&/[\n\r]/.test(i),r.$isMultiLine)return r.re=this.$assembleMultilineRegExp(i,h);try{var m=new RegExp(i,h)}catch{m=!1}return r.re=m},o.prototype.$assembleMultilineRegExp=function(r,n){for(var i=r.replace(/\r\n|\r|\n/g,`$
195
+ ^`).split(`
196
+ `),h=[],m=0;m<i.length;m++)try{h.push(new RegExp(i[m],n))}catch{return!1}return h},o.prototype.$isMultilineSearch=function(r){return r.re&&/\\r\\n|\\r|\\n/.test(r.re.source)&&r.regExp&&!r.$isMultiLine},o.prototype.$multiLineForward=function(r,n,i,h){for(var m,y=s(r,i),R=i;R<=h;){for(var T=0;T<y&&!(R>h);T++){var k=r.getLine(R++);m=m==null?k:m+`
197
+ `+k}var w=n.exec(m);if(n.lastIndex=0,w){var I=m.slice(0,w.index).split(`
198
+ `),D=w[0].split(`
199
+ `),E=i+I.length-1,L=I[I.length-1].length,z=E+D.length-1,F=D.length==1?L+D[0].length:D[D.length-1].length;return{startRow:E,startCol:L,endRow:z,endCol:F}}}return null},o.prototype.$multiLineBackward=function(r,n,i,h,m){for(var y,R=s(r,h),T=r.getLine(h).length-i,k=h;k>=m;){for(var w=0;w<R&&k>=m;w++){var I=r.getLine(k--);y=y==null?I:I+`
200
+ `+y}var D=a(y,n,T);if(D){var E=y.slice(0,D.index).split(`
201
+ `),L=D[0].split(`
202
+ `),z=k+E.length,F=E[E.length-1].length,O=z+L.length-1,A=L.length==1?F+L[0].length:L[L.length-1].length;return{startRow:z,startCol:F,endRow:O,endCol:A}}}return null},o.prototype.$matchIterator=function(r,n){var i=this.$assembleRegExp(n);if(!i)return!1;var h=this.$isMultilineSearch(n),m=this.$multiLineForward,y=this.$multiLineBackward,R=n.backwards==!0,T=n.skipCurrent!=!1,k=i.unicode,w=n.range,I=n.start;I||(I=w?w[R?"end":"start"]:r.selection.getRange()),I.start&&(I=I[T!=R?"end":"start"]);var D=w?w.start.row:0,E=w?w.end.row:r.getLength()-1;if(R)var L=function(O){var A=I.row;if(!F(A,I.column,O)){for(A--;A>=D;A--)if(F(A,Number.MAX_VALUE,O))return;if(n.wrap!=!1){for(A=E,D=I.row;A>=D;A--)if(F(A,Number.MAX_VALUE,O))return}}};else var L=function(A){var S=I.row;if(!F(S,I.column,A)){for(S=S+1;S<=E;S++)if(F(S,0,A))return;if(n.wrap!=!1){for(S=D,E=I.row;S<=E;S++)if(F(S,0,A))return}}};if(n.$isMultiLine)var z=i.length,F=function(O,A,S){var N=R?O-z+1:O;if(!(N<0||N+z>r.getLength())){var W=r.getLine(N),V=W.search(i[0]);if(!(!R&&V<A||V===-1)){for(var G=1;G<z;G++)if(W=r.getLine(N+G),W.search(i[G])==-1)return;var Q=W.match(i[z-1])[0].length;if(!(R&&Q>A)&&S(N,V,N+z-1,Q))return!0}}};else if(R)var F=function(A,S,N){if(h){var W=y(r,i,S,A,D);if(!W)return!1;if(N(W.startRow,W.startCol,W.endRow,W.endCol))return!0}else{var V=r.getLine(A),G=[],Q,te=0;for(i.lastIndex=0;Q=i.exec(V);){var le=Q[0].length;if(te=Q.index,!le){if(te>=V.length)break;i.lastIndex=te+=b.skipEmptyMatch(V,te,k)}if(Q.index+le>S)break;G.push(Q.index,le)}for(var ne=G.length-1;ne>=0;ne-=2){var ue=G[ne-1],le=G[ne];if(N(A,ue,A,ue+le))return!0}}};else var F=function(A,S,N){if(i.lastIndex=S,h){var W=m(r,i,A,E);if(W){var V=W.endRow<=E?W.endRow-1:E;V>A&&(A=V)}if(!W)return!1;if(N(W.startRow,W.startCol,W.endRow,W.endCol))return!0}else for(var G=r.getLine(A),Q,te;te=i.exec(G);){var le=te[0].length;if(Q=te.index,N(A,Q,A,Q+le))return!0;if(!le&&(i.lastIndex=Q+=b.skipEmptyMatch(G,Q,k),Q>=G.length))return!1}};return{forEach:L}},o})();function f(o,r){var n=b.supportsLookbehind();function i(R,T){T===void 0&&(T=!0);var k=n&&r.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");return k.test(R)||r.regExp?n&&r.$supportsUnicodeFlag?T?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b":""}var h=Array.from(o),m=h[0],y=h[h.length-1];return i(m)+o+i(y,!1)}function a(o,r,n){for(var i=null,h=0;h<=o.length;){r.lastIndex=h;var m=r.exec(o);if(!m)break;var y=m.index+m[0].length;if(y>o.length-n)break;(!i||y>i.index+i[0].length)&&(i=m),h=m.index+1}return i}function s(o,r){var n=5e3,i={row:r,column:0},h=o.doc.positionToIndex(i),m=h+n,y=o.doc.indexToPosition(m),R=y.row;return R+1}u.Search=p}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(e,u,M){var b=this&&this.__extends||(function(){var o=function(r,n){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,h){i.__proto__=h}||function(i,h){for(var m in h)Object.prototype.hasOwnProperty.call(h,m)&&(i[m]=h[m])},o(r,n)};return function(r,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");o(r,n);function i(){this.constructor=r}r.prototype=n===null?Object.create(n):(i.prototype=n.prototype,new i)}})(),v=e("../lib/keys"),x=e("../lib/useragent"),p=v.KEY_MODS,f=(function(){function o(r,n){this.$init(r,n,!1)}return o.prototype.$init=function(r,n,i){this.platform=n||(x.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(r),this.$singleCommand=i},o.prototype.addCommand=function(r){this.commands[r.name]&&this.removeCommand(r),this.commands[r.name]=r,r.bindKey&&this._buildKeyHash(r)},o.prototype.removeCommand=function(r,n){var i=r&&(typeof r=="string"?r:r.name);r=this.commands[i],n||delete this.commands[i];var h=this.commandKeyBinding;for(var m in h){var y=h[m];if(y==r)delete h[m];else if(Array.isArray(y)){var R=y.indexOf(r);R!=-1&&(y.splice(R,1),y.length==1&&(h[m]=y[0]))}}},o.prototype.bindKey=function(r,n,i){if(typeof r=="object"&&r&&(i==null&&(i=r.position),r=r[this.platform]),!!r){if(typeof n=="function")return this.addCommand({exec:n,bindKey:r,name:n.name||r});r.split("|").forEach(function(h){var m="";if(h.indexOf(" ")!=-1){var y=h.split(/\s+/);h=y.pop(),y.forEach(function(k){var w=this.parseKeys(k),I=p[w.hashId]+w.key;m+=(m?" ":"")+I,this._addCommandToBinding(m,"chainKeys")},this),m+=" "}var R=this.parseKeys(h),T=p[R.hashId]+R.key;this._addCommandToBinding(m+T,n,i)},this)}},o.prototype._addCommandToBinding=function(r,n,i){var h=this.commandKeyBinding,m;if(!n)delete h[r];else if(!h[r]||this.$singleCommand)h[r]=n;else{Array.isArray(h[r])?(m=h[r].indexOf(n))!=-1&&h[r].splice(m,1):h[r]=[h[r]],typeof i!="number"&&(i=a(n));var y=h[r];for(m=0;m<y.length;m++){var R=y[m],T=a(R);if(T>i)break}y.splice(m,0,n)}},o.prototype.addCommands=function(r){r&&Object.keys(r).forEach(function(n){var i=r[n];if(i){if(typeof i=="string")return this.bindKey(i,n);typeof i=="function"&&(i={exec:i}),typeof i=="object"&&(i.name||(i.name=n),this.addCommand(i))}},this)},o.prototype.removeCommands=function(r){Object.keys(r).forEach(function(n){this.removeCommand(r[n])},this)},o.prototype.bindKeys=function(r){Object.keys(r).forEach(function(n){this.bindKey(n,r[n])},this)},o.prototype._buildKeyHash=function(r){this.bindKey(r.bindKey,r)},o.prototype.parseKeys=function(r){var n=r.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(T){return T}),i=n.pop(),h=v[i];if(v.FUNCTION_KEYS[h])i=v.FUNCTION_KEYS[h].toLowerCase();else if(n.length){if(n.length==1&&n[0]=="shift")return{key:i.toUpperCase(),hashId:-1}}else return{key:i,hashId:-1};for(var m=0,y=n.length;y--;){var R=v.KEY_MODS[n[y]];if(R==null)return typeof console<"u"&&console.error("invalid modifier "+n[y]+" in "+r),!1;m|=R}return{key:i,hashId:m}},o.prototype.findKeyCommand=function(r,n){var i=p[r]+n;return this.commandKeyBinding[i]},o.prototype.handleKeyboard=function(r,n,i,h){if(!(h<0)){var m=p[n]+i,y=this.commandKeyBinding[m];return r.$keyChain&&(r.$keyChain+=" "+m,y=this.commandKeyBinding[r.$keyChain]||y),y&&(y=="chainKeys"||y[y.length-1]=="chainKeys")?(r.$keyChain=r.$keyChain||m,{command:"null"}):(r.$keyChain&&((!n||n==4)&&i.length==1?r.$keyChain=r.$keyChain.slice(0,-m.length-1):(n==-1||h>0)&&(r.$keyChain="")),{command:y})}},o.prototype.getStatusText=function(r,n){return n.$keyChain||""},o})();function a(o){return typeof o=="object"&&o.bindKey&&o.bindKey.position||(o.isDefault?-100:0)}var s=(function(o){b(r,o);function r(n,i){var h=o.call(this,n,i)||this;return h.$singleCommand=!0,h}return r})(f);s.call=function(o,r,n){f.prototype.$init.call(o,r,n,!0)},f.call=function(o,r,n){f.prototype.$init.call(o,r,n,!1)},u.HashHandler=s,u.MultiHashHandler=f}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(e,u,M){var b=this&&this.__extends||(function(){var a=function(s,o){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(r[i]=n[i])},a(s,o)};return function(s,o){if(typeof o!="function"&&o!==null)throw new TypeError("Class extends value "+String(o)+" is not a constructor or null");a(s,o);function r(){this.constructor=s}s.prototype=o===null?Object.create(o):(r.prototype=o.prototype,new r)}})(),v=e("../lib/oop"),x=e("../keyboard/hash_handler").MultiHashHandler,p=e("../lib/event_emitter").EventEmitter,f=(function(a){b(s,a);function s(o,r){var n=a.call(this,r,o)||this;return n.byName=n.commands,n.setDefaultHandler("exec",function(i){return i.args?i.command.exec(i.editor,i.args,i.event,!1):i.command.exec(i.editor,{},i.event,!0)}),n}return s.prototype.exec=function(o,r,n){if(Array.isArray(o)){for(var i=o.length;i--;)if(this.exec(o[i],r,n))return!0;return!1}typeof o=="string"&&(o=this.commands[o]);var h={editor:r,command:o,args:n};return this.canExecute(o,r)?(h.returnValue=this._emit("exec",h),this._signal("afterExec",h),h.returnValue!==!1):(this._signal("commandUnavailable",h),!1)},s.prototype.canExecute=function(o,r){return typeof o=="string"&&(o=this.commands[o]),!(!o||r&&r.$readOnly&&!o.readOnly||this.$checkCommandState!=!1&&o.isAvailable&&!o.isAvailable(r))},s.prototype.toggleRecording=function(o){if(!this.$inReplay)return o&&o._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=(function(r){this.macro.push([r.command,r.args])}).bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},s.prototype.replay=function(o){if(!(this.$inReplay||!this.macro)){if(this.recording)return this.toggleRecording(o);try{this.$inReplay=!0,this.macro.forEach(function(r){typeof r=="string"?this.exec(r,o):this.exec(r[0],o,r[1])},this)}finally{this.$inReplay=!1}}},s.prototype.trimMacro=function(o){return o.map(function(r){return typeof r[0]!="string"&&(r[0]=r[0].name),r[1]||(r=r[0]),r})},s})(x);v.implement(f.prototype,p),u.CommandManager=f}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(e,u,M){var b=e("../lib/lang"),v=e("../config"),x=e("../range").Range;function p(a,s){return{win:a,mac:s}}u.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:p("Ctrl-,","Command-,"),exec:function(a){v.loadModule("ace/ext/settings_menu",function(s){s.init(a),a.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:p("Alt-E","F4"),exec:function(a){v.loadModule("ace/ext/error_marker",function(s){s.showErrorMarker(a,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:p("Alt-Shift-E","Shift-F4"),exec:function(a){v.loadModule("ace/ext/error_marker",function(s){s.showErrorMarker(a,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:p("Ctrl-A","Command-A"),exec:function(a){a.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:p(null,"Ctrl-L"),exec:function(a){a.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:p("Ctrl-L","Command-L"),exec:function(a,s){typeof s=="number"&&!isNaN(s)&&a.gotoLine(s),a.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:p("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(a){a.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:p("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(a){a.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:p("F2","F2"),exec:function(a){a.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:p("Alt-F2","Alt-F2"),exec:function(a){a.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:p(null,"Ctrl-Command-Option-0"),exec:function(a){a.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:p(null,"Ctrl-Command-Option-0"),exec:function(a){a.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:p("Alt-0","Command-Option-0"),exec:function(a){a.session.foldAll(),a.session.unfold(a.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:p("Alt-Shift-0","Command-Option-Shift-0"),exec:function(a){a.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:p("Ctrl-K","Command-G"),exec:function(a){a.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:p("Ctrl-Shift-K","Command-Shift-G"),exec:function(a){a.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:p("Alt-K","Ctrl-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:p("Alt-Shift-K","Ctrl-Shift-G"),exec:function(a){a.selection.isEmpty()?a.selection.selectWord():a.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:p("Ctrl-F","Command-F"),exec:function(a){v.loadModule("ace/ext/searchbox",function(s){s.Search(a)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(a){a.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:p("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(a){a.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:p("Ctrl-Home","Command-Home|Command-Up"),exec:function(a){a.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:p("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(a){a.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:p("Up","Up|Ctrl-P"),exec:function(a,s){a.navigateUp(s.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:p("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(a){a.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:p("Ctrl-End","Command-End|Command-Down"),exec:function(a){a.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:p("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(a){a.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:p("Down","Down|Ctrl-N"),exec:function(a,s){a.navigateDown(s.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:p("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(a){a.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:p("Ctrl-Left","Option-Left"),exec:function(a){a.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:p("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:p("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(a){a.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:p("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(a){a.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:p("Left","Left|Ctrl-B"),exec:function(a,s){a.navigateLeft(s.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:p("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(a){a.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:p("Ctrl-Right","Option-Right"),exec:function(a){a.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:p("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:p("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(a){a.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:p("Shift-Right","Shift-Right"),exec:function(a){a.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:p("Right","Right|Ctrl-F"),exec:function(a,s){a.navigateRight(s.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(a){a.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:p(null,"Option-PageDown"),exec:function(a){a.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:p("PageDown","PageDown|Ctrl-V"),exec:function(a){a.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(a){a.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:p(null,"Option-PageUp"),exec:function(a){a.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(a){a.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:p("Ctrl-Up",null),exec:function(a){a.renderer.scrollBy(0,-2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:p("Ctrl-Down",null),exec:function(a){a.renderer.scrollBy(0,2*a.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(a){a.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(a){a.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:p("Ctrl-Alt-E","Command-Option-E"),exec:function(a){a.commands.toggleRecording(a)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:p("Ctrl-Shift-E","Command-Shift-E"),exec:function(a){a.commands.replay(a)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:p("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(a){a.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:p("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(a){a.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:p("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(a){a.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:p(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(a){},readOnly:!0},{name:"cut",description:"Cut",exec:function(a){var s=a.$copyWithEmptySelection&&a.selection.isEmpty(),o=s?a.selection.getLineRange():a.selection.getRange();a._emit("cut",o),o.isEmpty()||a.session.remove(o),a.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(a,s){a.$handlePaste(s)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:p("Ctrl-D","Command-D"),exec:function(a){a.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:p("Ctrl-Shift-D","Command-Shift-D"),exec:function(a){a.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:p("Ctrl-Alt-S","Command-Alt-S"),exec:function(a){a.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:p("Ctrl-/","Command-/"),exec:function(a){a.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:p("Ctrl-Shift-/","Command-Shift-/"),exec:function(a){a.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:p("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(a){a.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:p("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(a){a.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:p("Ctrl-H","Command-Option-F"),exec:function(a){v.loadModule("ace/ext/searchbox",function(s){s.Search(a,!0)})}},{name:"undo",description:"Undo",bindKey:p("Ctrl-Z","Command-Z"),exec:function(a){a.undo()}},{name:"redo",description:"Redo",bindKey:p("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(a){a.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:p("Alt-Shift-Up","Command-Option-Up"),exec:function(a){a.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:p("Alt-Up","Option-Up"),exec:function(a){a.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:p("Alt-Shift-Down","Command-Option-Down"),exec:function(a){a.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:p("Alt-Down","Option-Down"),exec:function(a){a.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:p("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(a){a.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:p("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(a){a.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:p("Shift-Delete",null),exec:function(a){if(a.selection.isEmpty())a.remove("left");else return!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:p("Alt-Backspace","Command-Backspace"),exec:function(a){a.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:p("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(a){a.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:p("Ctrl-Shift-Backspace",null),exec:function(a){var s=a.selection.getRange();s.start.column=0,a.session.remove(s)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:p("Ctrl-Shift-Delete",null),exec:function(a){var s=a.selection.getRange();s.end.column=Number.MAX_VALUE,a.session.remove(s)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:p("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(a){a.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:p("Ctrl-Delete","Alt-Delete"),exec:function(a){a.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:p("Shift-Tab","Shift-Tab"),exec:function(a){a.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:p("Tab","Tab"),exec:function(a){a.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:p("Ctrl-[","Ctrl-["),exec:function(a){a.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:p("Ctrl-]","Ctrl-]"),exec:function(a){a.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(a,s){a.insert(s)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(a,s){a.insert(b.stringRepeat(s.text||"",s.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:p(null,"Ctrl-O"),exec:function(a){a.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:p("Alt-Shift-X","Ctrl-T"),exec:function(a){a.transposeLetters()},multiSelectAction:function(a){a.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:p("Ctrl-U","Ctrl-U"),exec:function(a){a.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:p("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(a){a.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:p(null,null),exec:function(a){a.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:p("Ctrl-Shift-L","Command-Shift-L"),exec:function(a){var s=a.selection.getRange();s.start.column=s.end.column=0,s.end.row++,a.selection.setRange(s,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:p("Ctrl+F3","F3"),exec:function(a){a.openLink()}},{name:"joinlines",description:"Join lines",bindKey:p(null,null),exec:function(a){for(var s=a.selection.isBackwards(),o=s?a.selection.getSelectionLead():a.selection.getSelectionAnchor(),r=s?a.selection.getSelectionAnchor():a.selection.getSelectionLead(),n=a.session.doc.getLine(o.row).length,i=a.session.doc.getTextRange(a.selection.getRange()),h=i.replace(/\n\s*/," ").length,m=a.session.doc.getLine(o.row),y=o.row+1;y<=r.row+1;y++){var R=b.stringTrimLeft(b.stringTrimRight(a.session.doc.getLine(y)));R.length!==0&&(R=" "+R),m+=R}r.row+1<a.session.doc.getLength()-1&&(m+=a.session.doc.getNewLineCharacter()),a.clearSelection(),a.session.doc.replace(new x(o.row,0,r.row+2,0),m),h>0?(a.selection.moveCursorTo(o.row,o.column),a.selection.selectTo(o.row,o.column+h)):(n=a.session.doc.getLine(o.row).length>n?n+1:n,a.selection.moveCursorTo(o.row,n))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:p(null,null),exec:function(a){var s=a.session.doc.getLength()-1,o=a.session.doc.getLine(s).length,r=a.selection.rangeList.ranges,n=[];r.length<1&&(r=[a.selection.getRange()]);for(var i=0;i<r.length;i++)i==r.length-1&&(r[i].end.row===s&&r[i].end.column===o||n.push(new x(r[i].end.row,r[i].end.column,s,o))),i===0?r[i].start.row===0&&r[i].start.column===0||n.push(new x(0,0,r[i].start.row,r[i].start.column)):n.push(new x(r[i-1].end.row,r[i-1].end.column,r[i].start.row,r[i].start.column));a.exitMultiSelectMode(),a.clearSelection();for(var i=0;i<n.length;i++)a.selection.addRange(n[i],!1)},readOnly:!0,scrollIntoView:"none"},{name:"addLineAfter",description:"Add new line after the current line",exec:function(a){a.selection.clearSelection(),a.navigateLineEnd(),a.insert(`
203
+ `)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"addLineBefore",description:"Add new line before the current line",exec:function(a){a.selection.clearSelection();var s=a.getCursorPosition();a.selection.moveTo(s.row-1,Number.MAX_VALUE),a.insert(`
204
+ `),s.row===0&&a.navigateUp()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"openCommandPallete",exec:function(a){console.warn("This is an obsolete command. Please use `openCommandPalette` instead."),a.prompt({$type:"commands"})},readOnly:!0},{name:"openCommandPalette",description:"Open command palette",bindKey:p("F1","F1"),exec:function(a){a.prompt({$type:"commands"})},readOnly:!0},{name:"modeSelect",description:"Change language mode...",bindKey:p(null,null),exec:function(a){a.prompt({$type:"modes"})},readOnly:!0}];for(var f=1;f<9;f++)u.commands.push({name:"foldToLevel"+f,description:"Fold To Level "+f,level:f,exec:function(a){a.session.foldToLevel(this.level)},scrollIntoView:"center",readOnly:!0})}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys"],function(e,u,M){var b=e("../lib/keys"),v=(function(){function p(f){this.editor=f,this.gutterLayer=f.renderer.$gutterLayer,this.element=f.renderer.$gutter,this.lines=f.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=this.editor.$mouseHandler.$tooltip}return p.prototype.addListener=function(){this.element.addEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.addEventListener("focusout",this.$blurGutter.bind(this)),this.editor.on("mousewheel",this.$blurGutter.bind(this))},p.prototype.removeListener=function(){this.element.removeEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.removeEventListener("focusout",this.$blurGutter.bind(this)),this.editor.off("mousewheel",this.$blurGutter.bind(this))},p.prototype.$onGutterKeyDown=function(f){if(this.annotationTooltip.isOpen){f.preventDefault(),f.keyCode===b.escape&&this.annotationTooltip.hide();return}if(f.target===this.element){if(f.keyCode!=b.enter)return;f.preventDefault();var a=this.editor.getCursorPosition().row;this.editor.isRowVisible(a)||this.editor.scrollToLine(a,!0,!0),setTimeout((function(){var s=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),o=this.$findNearestFoldLaneWidget(s),r=this.$findNearestAnnotation(s);if(!(o===null&&r===null)){var n=this.$findClosestNumber(o,r,s);if(n===o)if(this.activeLane="fold",this.activeRowIndex=o,this.$isCustomWidgetVisible(o)){this.$focusCustomWidget(this.activeRowIndex);return}else{this.$focusFoldWidget(this.activeRowIndex);return}else{this.activeRowIndex=r,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}}}).bind(this),10);return}this.$handleGutterKeyboardInteraction(f),setTimeout((function(){this.editor._signal("gutterkeydown",new x(f,this))}).bind(this),10)},p.prototype.$handleGutterKeyboardInteraction=function(f){if(f.keyCode===b.tab){f.preventDefault();return}if(f.keyCode===b.escape){f.preventDefault(),this.$blurGutter(),this.element.focus(),this.lane=null;return}if(f.keyCode===b.up){switch(f.preventDefault(),this.activeLane){case"fold":this.$moveFoldWidgetUp();break;case"annotation":this.$moveAnnotationUp();break}return}if(f.keyCode===b.down){switch(f.preventDefault(),this.activeLane){case"fold":this.$moveFoldWidgetDown();break;case"annotation":this.$moveAnnotationDown();break}return}if(f.keyCode===b.left){f.preventDefault(),this.$switchLane("annotation");return}if(f.keyCode===b.right){f.preventDefault(),this.$switchLane("fold");return}if(f.keyCode===b.enter||f.keyCode===b.space){switch(f.preventDefault(),this.activeLane){case"fold":var a=this.$rowIndexToRow(this.activeRowIndex),s=this.editor.session.$gutterCustomWidgets[a];if(s)s.callbacks&&s.callbacks.onClick&&s.callbacks.onClick(f,a);else if(this.gutterLayer.session.foldWidgets[a]==="start"){this.editor.session.onFoldWidgetClick(this.$rowIndexToRow(this.activeRowIndex),f),setTimeout((function(){this.$rowIndexToRow(this.activeRowIndex)!==a&&(this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=this.$rowToRowIndex(a),this.$focusFoldWidget(this.activeRowIndex))}).bind(this),10);break}else if(this.gutterLayer.session.foldWidgets[this.$rowIndexToRow(this.activeRowIndex)]==="end")break;return;case"annotation":this.annotationTooltip.showTooltip(this.$rowIndexToRow(this.activeRowIndex)),this.annotationTooltip.$fromKeyboard=!0;break}return}},p.prototype.$blurGutter=function(){if(this.activeRowIndex!==null)switch(this.activeLane){case"fold":this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex);break;case"annotation":this.$blurAnnotation(this.activeRowIndex);break}this.annotationTooltip.isOpen&&this.annotationTooltip.hide()},p.prototype.$isFoldWidgetVisible=function(f){var a=this.editor.isRowFullyVisible(this.$rowIndexToRow(f)),s=this.$getFoldWidget(f).style.display!=="none";return a&&s},p.prototype.$isCustomWidgetVisible=function(f){var a=this.editor.isRowFullyVisible(this.$rowIndexToRow(f)),s=!!this.$getCustomWidget(f);return a&&s},p.prototype.$isAnnotationVisible=function(f){var a=this.editor.isRowFullyVisible(this.$rowIndexToRow(f)),s=this.$getAnnotation(f).style.display!=="none";return a&&s},p.prototype.$getFoldWidget=function(f){var a=this.lines.get(f),s=a.element;return s.childNodes[1]},p.prototype.$getCustomWidget=function(f){var a=this.lines.get(f),s=a.element;return s.childNodes[3]},p.prototype.$getAnnotation=function(f){var a=this.lines.get(f),s=a.element;return s.childNodes[2]},p.prototype.$findNearestFoldLaneWidget=function(f){if(this.$isCustomWidgetVisible(f)||this.$isFoldWidgetVisible(f))return f;for(var a=0;f-a>0||f+a<this.lines.getLength()-1;){if(a++,f-a>=0&&this.$isCustomWidgetVisible(f-a))return f-a;if(f+a<=this.lines.getLength()-1&&this.$isCustomWidgetVisible(f+a))return f+a;if(f-a>=0&&this.$isFoldWidgetVisible(f-a))return f-a;if(f+a<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(f+a))return f+a}return null},p.prototype.$findNearestAnnotation=function(f){if(this.$isAnnotationVisible(f))return f;for(var a=0;f-a>0||f+a<this.lines.getLength()-1;){if(a++,f-a>=0&&this.$isAnnotationVisible(f-a))return f-a;if(f+a<=this.lines.getLength()-1&&this.$isAnnotationVisible(f+a))return f+a}return null},p.prototype.$focusFoldWidget=function(f){if(f!=null){var a=this.$getFoldWidget(f);a.classList.add(this.editor.renderer.keyboardFocusClassName),a.focus()}},p.prototype.$focusCustomWidget=function(f){if(f!=null){var a=this.$getCustomWidget(f);a&&(a.classList.add(this.editor.renderer.keyboardFocusClassName),a.focus())}},p.prototype.$focusAnnotation=function(f){if(f!=null){var a=this.$getAnnotation(f);a.classList.add(this.editor.renderer.keyboardFocusClassName),a.focus()}},p.prototype.$blurFoldWidget=function(f){var a=this.$getFoldWidget(f);a.classList.remove(this.editor.renderer.keyboardFocusClassName),a.blur()},p.prototype.$blurCustomWidget=function(f){var a=this.$getCustomWidget(f);a&&(a.classList.remove(this.editor.renderer.keyboardFocusClassName),a.blur())},p.prototype.$blurAnnotation=function(f){var a=this.$getAnnotation(f);a.classList.remove(this.editor.renderer.keyboardFocusClassName),a.blur()},p.prototype.$moveFoldWidgetUp=function(){for(var f=this.activeRowIndex;f>0;)if(f--,this.$isFoldWidgetVisible(f)||this.$isCustomWidgetVisible(f)){this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=f,this.$isFoldWidgetVisible(f)?this.$focusFoldWidget(this.activeRowIndex):this.$focusCustomWidget(this.activeRowIndex);return}},p.prototype.$moveFoldWidgetDown=function(){for(var f=this.activeRowIndex;f<this.lines.getLength()-1;)if(f++,this.$isFoldWidgetVisible(f)||this.$isCustomWidgetVisible(f)){this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=f,this.$isFoldWidgetVisible(f)?this.$focusFoldWidget(this.activeRowIndex):this.$focusCustomWidget(this.activeRowIndex);return}},p.prototype.$moveAnnotationUp=function(){for(var f=this.activeRowIndex;f>0;)if(f--,this.$isAnnotationVisible(f)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=f,this.$focusAnnotation(this.activeRowIndex);return}},p.prototype.$moveAnnotationDown=function(){for(var f=this.activeRowIndex;f<this.lines.getLength()-1;)if(f++,this.$isAnnotationVisible(f)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=f,this.$focusAnnotation(this.activeRowIndex);return}},p.prototype.$findClosestNumber=function(f,a,s){return f===null?a:a===null||Math.abs(s-f)<=Math.abs(s-a)?f:a},p.prototype.$switchLane=function(f){switch(f){case"annotation":if(this.activeLane==="annotation")break;var a=this.$findNearestAnnotation(this.activeRowIndex);if(a==null)break;this.activeLane="annotation",this.$blurFoldWidget(this.activeRowIndex),this.$blurCustomWidget(this.activeRowIndex),this.activeRowIndex=a,this.$focusAnnotation(this.activeRowIndex);break;case"fold":if(this.activeLane==="fold")break;var s=this.$findNearestFoldLaneWidget(this.activeRowIndex);if(s===null)break;this.activeLane="fold",this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,this.$isCustomWidgetVisible(s)?this.$focusCustomWidget(this.activeRowIndex):this.$focusFoldWidget(this.activeRowIndex);break}},p.prototype.$rowIndexToRow=function(f){var a=this.lines.get(f);return a?a.row:null},p.prototype.$rowToRowIndex=function(f){for(var a=0;a<this.lines.getLength();a++){var s=this.lines.get(a);if(s.row==f)return a}return null},p})();u.GutterKeyboardHandler=v;var x=(function(){function p(f,a){this.gutterKeyboardHandler=a,this.domEvent=f}return p.prototype.getKey=function(){return b.keyCodeToString(this.domEvent.keyCode)},p.prototype.getRow=function(){return this.gutterKeyboardHandler.$rowIndexToRow(this.gutterKeyboardHandler.activeRowIndex)},p.prototype.isInAnnotationLane=function(){return this.gutterKeyboardHandler.activeLane==="annotation"},p.prototype.isInFoldLane=function(){return this.gutterKeyboardHandler.activeLane==="fold"},p})();u.GutterKeyboardEvent=x}),ace.define("ace/editor",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/useragent","ace/keyboard/textinput","ace/mouse/mouse_handler","ace/mouse/fold_handler","ace/keyboard/keybinding","ace/edit_session","ace/search","ace/range","ace/lib/event_emitter","ace/commands/command_manager","ace/commands/default_commands","ace/config","ace/token_iterator","ace/keyboard/gutter_handler","ace/config","ace/clipboard","ace/lib/keys","ace/lib/event","ace/tooltip"],function(e,u,M){var b=this&&this.__values||function(A){var S=typeof Symbol=="function"&&Symbol.iterator,N=S&&A[S],W=0;if(N)return N.call(A);if(A&&typeof A.length=="number")return{next:function(){return A&&W>=A.length&&(A=void 0),{value:A&&A[W++],done:!A}}};throw new TypeError(S?"Object is not iterable.":"Symbol.iterator is not defined.")},v=e("./lib/oop"),x=e("./lib/dom"),p=e("./lib/lang"),f=e("./lib/useragent"),a=e("./keyboard/textinput").TextInput,s=e("./mouse/mouse_handler").MouseHandler,o=e("./mouse/fold_handler").FoldHandler,r=e("./keyboard/keybinding").KeyBinding,n=e("./edit_session").EditSession,i=e("./search").Search,h=e("./range").Range,m=e("./lib/event_emitter").EventEmitter,y=e("./commands/command_manager").CommandManager,R=e("./commands/default_commands").commands,T=e("./config"),k=e("./token_iterator").TokenIterator,w=e("./keyboard/gutter_handler").GutterKeyboardHandler,I=e("./config").nls,D=e("./clipboard"),E=e("./lib/keys"),L=e("./lib/event"),z=e("./tooltip").HoverTooltip,F=(function(){function A(S,N,W){this.id="editor"+ ++A.$uid,this.session,this.$toDestroy=[];var V=S.getContainerElement();this.container=V,this.renderer=S,this.commands=new y(f.isMac?"mac":"win",R),typeof document=="object"&&(this.textInput=new a(S.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new s(this),new o(this)),this.keyBinding=new r(this),this.$search=new i().set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=p.delayedCall((function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}).bind(this)),this.on("change",function(G,Q){Q._$emitInputEvent.schedule(31)}),this.setSession(N||W&&W.session||new n("")),T.resetOptions(this),W&&this.setOptions(W),T._signal("editor",this)}return A.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0)},A.prototype.startOperation=function(S){this.session.startOperation(S)},A.prototype.endOperation=function(S){this.session.endOperation(S)},A.prototype.onStartOperation=function(S){this.curOp=this.session.curOp,this.curOp.scrollTop=this.renderer.scrollTop,this.prevOp=this.session.prevOp,S||(this.previousCommand=null)},A.prototype.onEndOperation=function(S){if(this.curOp&&this.session){if(S&&S.returnValue===!1){this.curOp=null;return}if(this._signal("beforeEndOperation"),!this.curOp)return;var N=this.curOp.command,W=N&&N.scrollIntoView;if(W){switch(W){case"center-animate":W="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var V=this.selection.getRange(),G=this.renderer.layerConfig;(V.start.row>=G.lastRow||V.end.row<=G.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break}W=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}this.$lastSel=this.session.selection.toJSON(),this.prevOp=this.curOp,this.curOp=null}},A.prototype.$historyTracker=function(S){if(this.$mergeUndoDeltas){var N=this.prevOp,W=this.$mergeableCommands,V=N.command&&S.command.name==N.command.name;if(S.command.name=="insertstring"){var G=S.args;this.mergeNextCommand===void 0&&(this.mergeNextCommand=!0),V=V&&this.mergeNextCommand&&(!/\s/.test(G)||/\s/.test(N.args)),this.mergeNextCommand=!0}else V=V&&W.indexOf(S.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(V=!1),V?this.session.mergeUndoDeltas=!0:W.indexOf(S.command.name)!==-1&&(this.sequenceStartTime=Date.now())}},A.prototype.setKeyboardHandler=function(S,N){if(S&&typeof S=="string"&&S!="ace"){this.$keybindingId=S;var W=this;T.loadModule(["keybinding",S],function(V){W.$keybindingId==S&&W.keyBinding.setKeyboardHandler(V&&V.handler),N&&N()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(S),N&&N()},A.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},A.prototype.setSession=function(S){if(this.session!=S){this.curOp&&this.endOperation(),this.curOp={};var N=this.session;if(N){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange),this.session.off("startOperation",this.$onStartOperation),this.session.off("endOperation",this.$onEndOperation);var W=this.session.getSelection();W.off("changeCursor",this.$onCursorChange),W.off("changeSelection",this.$onSelectionChange)}this.session=S,S?(this.$onDocumentChange=this.onDocumentChange.bind(this),S.on("change",this.$onDocumentChange),this.renderer.setSession(S),this.$onChangeMode=this.onChangeMode.bind(this),S.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),S.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),S.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),S.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),S.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),S.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=S.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.$onStartOperation=this.onStartOperation.bind(this),this.session.on("startOperation",this.$onStartOperation),this.$onEndOperation=this.onEndOperation.bind(this),this.session.on("endOperation",this.$onEndOperation),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(S)),this._signal("changeSession",{session:S,oldSession:N}),this.curOp=null,N&&N._signal("changeEditor",{oldEditor:this}),N&&(N.$editor=null),S&&S._signal("changeEditor",{editor:this}),S&&(S.$editor=this),S&&!S.destroyed&&S.bgTokenizer.scheduleStart()}},A.prototype.getSession=function(){return this.session},A.prototype.setValue=function(S,N){return this.session.doc.setValue(S),N?N==1?this.navigateFileEnd():N==-1&&this.navigateFileStart():this.selectAll(),S},A.prototype.getValue=function(){return this.session.getValue()},A.prototype.getSelection=function(){return this.selection},A.prototype.resize=function(S){this.renderer.onResize(S)},A.prototype.setTheme=function(S,N){this.renderer.setTheme(S,N)},A.prototype.getTheme=function(){return this.renderer.getTheme()},A.prototype.setStyle=function(S,N){this.renderer.setStyle(S,N)},A.prototype.unsetStyle=function(S){this.renderer.unsetStyle(S)},A.prototype.getFontSize=function(){return this.getOption("fontSize")||x.computedStyle(this.container).fontSize},A.prototype.setFontSize=function(S){this.setOption("fontSize",S)},A.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var S=this;this.$highlightPending=!0,setTimeout(function(){S.$highlightPending=!1;var N=S.session;if(!(!N||N.destroyed)){N.$bracketHighlight&&(N.$bracketHighlight.markerIds.forEach(function(he){N.removeMarker(he)}),N.$bracketHighlight=null);var W=S.getCursorPosition(),V=S.getKeyboardHandler(),G=V&&V.$getDirectionForHighlight&&V.$getDirectionForHighlight(S),Q=N.getMatchingBracketRanges(W,G);if(!Q){var te=new k(N,W.row,W.column),le=te.getCurrentToken();if(le&&/\b(?:tag-open|tag-name)/.test(le.type)){var ne=N.getMatchingTags(W);ne&&(Q=[ne.openTagName.isEmpty()?ne.openTag:ne.openTagName,ne.closeTagName.isEmpty()?ne.closeTag:ne.closeTagName])}}if(!Q&&N.$mode.getMatching&&(Q=N.$mode.getMatching(S.session)),!Q){S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide();return}var ue="ace_bracket";Array.isArray(Q)?Q.length==1&&(ue="ace_error_bracket"):Q=[Q],Q.length==2&&(h.comparePoints(Q[0].end,Q[1].start)==0?Q=[h.fromPoints(Q[0].start,Q[1].end)]:h.comparePoints(Q[0].start,Q[1].end)==0&&(Q=[h.fromPoints(Q[1].start,Q[0].end)])),N.$bracketHighlight={ranges:Q,markerIds:Q.map(function(he){return N.addMarker(he,ue,"text")})},S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide()}},50)}},A.prototype.focus=function(){this.textInput.focus()},A.prototype.isFocused=function(){return this.textInput.isFocused()},A.prototype.blur=function(){this.textInput.blur()},A.prototype.onFocus=function(S){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",S))},A.prototype.onBlur=function(S){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",S))},A.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},A.prototype.onDocumentChange=function(S){var N=this.session.$useWrapMode,W=S.start.row==S.end.row?S.end.row:1/0;this.renderer.updateLines(S.start.row,W,N),this._signal("change",S),this.$cursorChange()},A.prototype.onTokenizerUpdate=function(S){var N=S.data;this.renderer.updateLines(N.first,N.last)},A.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},A.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},A.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},A.prototype.$updateHighlightActiveLine=function(){var S=this.getSession(),N;if(this.$highlightActiveLine&&((this.$selectionStyle!="line"||!this.selection.isMultiLine())&&(N=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(N=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(N=!1)),S.$highlightLineMarker&&!N)S.removeMarker(S.$highlightLineMarker.id),S.$highlightLineMarker=null;else if(!S.$highlightLineMarker&&N){var W=new h(N.row,N.column,N.row,1/0);W.id=S.addMarker(W,"ace_active-line","screenLine"),S.$highlightLineMarker=W}else N&&(S.$highlightLineMarker.start.row=N.row,S.$highlightLineMarker.end.row=N.row,S.$highlightLineMarker.start.column=N.column,S._signal("changeBackMarker"))},A.prototype.onSelectionChange=function(S){var N=this.session;if(N.$selectionMarker&&N.removeMarker(N.$selectionMarker),N.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var W=this.selection.getRange(),V=this.getSelectionStyle();N.$selectionMarker=N.addMarker(W,"ace_selection",V)}var G=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(G),this._signal("changeSelection")},A.prototype.$getSelectionHighLightRegexp=function(){var S=this.session,N=this.getSelectionRange();if(!(N.isEmpty()||N.isMultiLine())){var W=N.start.column,V=N.end.column,G=S.getLine(N.start.row),Q=G.substring(W,V);if(!(Q.length>5e3||!/[\w\d]/.test(Q))){var te=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:Q}),le=G.substring(W-1,V+1);if(te.test(le))return te}}},A.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},A.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},A.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},A.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},A.prototype.onChangeMode=function(S){this.renderer.updateText(),this._emit("changeMode",S)},A.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},A.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},A.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},A.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},A.prototype.getCopyText=function(){var S=this.getSelectedText(),N=this.session.doc.getNewLineCharacter(),W=!1;if(!S&&this.$copyWithEmptySelection){W=!0;for(var V=this.selection.getAllRanges(),G=0;G<V.length;G++){var Q=V[G];G&&V[G-1].start.row==Q.start.row||(S+=this.session.getLine(Q.start.row)+N)}}var te={text:S};return this._signal("copy",te),D.lineMode=W?te.text:!1,te.text},A.prototype.onCopy=function(){this.commands.exec("copy",this)},A.prototype.onCut=function(){this.commands.exec("cut",this)},A.prototype.onPaste=function(S,N){var W={text:S,event:N};this.commands.exec("paste",this,W)},A.prototype.$handlePaste=function(S){typeof S=="string"&&(S={text:S}),this._signal("paste",S);var N=S.text,W=N===D.lineMode,V=this.session;if(!this.inMultiSelectMode||this.inVirtualSelectionMode)W?V.insert({row:this.selection.lead.row,column:0},N):this.insert(N);else if(W)this.selection.rangeList.ranges.forEach(function(ue){V.insert({row:ue.start.row,column:0},N)});else{var G=N.split(/\r\n|\r|\n/),Q=this.selection.rangeList.ranges,te=G.length==2&&(!G[0]||!G[1]);if(G.length!=Q.length||te)return this.commands.exec("insertstring",this,N);for(var le=Q.length;le--;){var ne=Q[le];ne.isEmpty()||V.remove(ne),V.insert(ne.start,G[le])}}},A.prototype.execCommand=function(S,N){return this.commands.exec(S,this,N)},A.prototype.insert=function(S,N){var W=this.session,V=W.getMode(),G=this.getCursorPosition();if(this.getBehavioursEnabled()&&!N){var Q=V.transformAction(W.getState(G.row),"insertion",this,W,S);Q&&(S!==Q.text&&(this.inVirtualSelectionMode||(this.session.mergeUndoDeltas=!1,this.mergeNextCommand=!1)),S=Q.text)}if(S==" "&&(S=this.session.getTabString()),this.selection.isEmpty()){if(this.session.getOverwrite()&&S.indexOf(`
205
+ `)==-1){var te=h.fromPoints(G,G);te.end.column+=S.length,this.session.remove(te)}}else{var te=this.getSelectionRange();G=this.session.remove(te),this.clearSelection()}if(S==`
206
+ `||S==`\r
207
+ `){var he=W.getLine(G.row);if(G.column>he.search(/\S|$/)){var le=he.substr(G.column).search(/\S|$/);W.doc.removeInLine(G.row,G.column,G.column+le)}}this.clearSelection();var ne=G.column,ue=W.getState(G.row),he=W.getLine(G.row),ce=V.checkOutdent(ue,he,S);if(W.insert(G,S),Q&&Q.selection&&(Q.selection.length==2?this.selection.setSelectionRange(new h(G.row,ne+Q.selection[0],G.row,ne+Q.selection[1])):this.selection.setSelectionRange(new h(G.row+Q.selection[0],Q.selection[1],G.row+Q.selection[2],Q.selection[3]))),this.$enableAutoIndent){if(W.getDocument().isNewLine(S)){var me=V.getNextLineIndent(ue,he.slice(0,G.column),W.getTabString());W.insert({row:G.row+1,column:0},me)}ce&&V.autoOutdent(ue,W,G.row)}},A.prototype.autoIndent=function(){for(var S=this.session,N=S.getMode(),W=this.selection.isEmpty()?[new h(0,0,S.doc.getLength()-1,0)]:this.selection.getAllRanges(),V="",G="",Q="",te=S.getTabString(),le=0;le<W.length;le++)for(var ne=W[le].start.row,ue=W[le].end.row,he=ne;he<=ue;he++){he>0&&(V=S.getState(he-1),G=S.getLine(he-1),Q=N.getNextLineIndent(V,G,te));var ce=S.getLine(he),me=N.$getIndent(ce);if(Q!==me){if(me.length>0){var _e=new h(he,0,he,me.length);S.remove(_e)}Q.length>0&&S.insert({row:he,column:0},Q)}N.autoOutdent(V,S,he)}},A.prototype.onTextInput=function(S,N){if(!N)return this.keyBinding.onTextInput(S);this.startOperation({command:{name:"insertstring"}});var W=this.applyComposition.bind(this,S,N);this.selection.rangeCount?this.forEachSelection(W):W(),this.endOperation()},A.prototype.applyComposition=function(S,N){if(N.extendLeft||N.extendRight){var W=this.selection.getRange();W.start.column-=N.extendLeft,W.end.column+=N.extendRight,W.start.column<0&&(W.start.row--,W.start.column+=this.session.getLine(W.start.row).length+1),this.selection.setRange(W),!S&&!W.isEmpty()&&this.remove()}if((S||!this.selection.isEmpty())&&this.insert(S,!0),N.restoreStart||N.restoreEnd){var W=this.selection.getRange();W.start.column-=N.restoreStart,W.end.column-=N.restoreEnd,this.selection.setRange(W)}},A.prototype.onCommandKey=function(S,N,W){return this.keyBinding.onCommandKey(S,N,W)},A.prototype.setOverwrite=function(S){this.session.setOverwrite(S)},A.prototype.getOverwrite=function(){return this.session.getOverwrite()},A.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},A.prototype.setScrollSpeed=function(S){this.setOption("scrollSpeed",S)},A.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},A.prototype.setDragDelay=function(S){this.setOption("dragDelay",S)},A.prototype.getDragDelay=function(){return this.getOption("dragDelay")},A.prototype.setSelectionStyle=function(S){this.setOption("selectionStyle",S)},A.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},A.prototype.setHighlightActiveLine=function(S){this.setOption("highlightActiveLine",S)},A.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},A.prototype.setHighlightGutterLine=function(S){this.setOption("highlightGutterLine",S)},A.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},A.prototype.setHighlightSelectedWord=function(S){this.setOption("highlightSelectedWord",S)},A.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},A.prototype.setAnimatedScroll=function(S){this.renderer.setAnimatedScroll(S)},A.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},A.prototype.setShowInvisibles=function(S){this.renderer.setShowInvisibles(S)},A.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},A.prototype.setDisplayIndentGuides=function(S){this.renderer.setDisplayIndentGuides(S)},A.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},A.prototype.setHighlightIndentGuides=function(S){this.renderer.setHighlightIndentGuides(S)},A.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},A.prototype.setShowPrintMargin=function(S){this.renderer.setShowPrintMargin(S)},A.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},A.prototype.setPrintMarginColumn=function(S){this.renderer.setPrintMarginColumn(S)},A.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},A.prototype.setReadOnly=function(S){this.setOption("readOnly",S)},A.prototype.getReadOnly=function(){return this.getOption("readOnly")},A.prototype.setBehavioursEnabled=function(S){this.setOption("behavioursEnabled",S)},A.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},A.prototype.setWrapBehavioursEnabled=function(S){this.setOption("wrapBehavioursEnabled",S)},A.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},A.prototype.setShowFoldWidgets=function(S){this.setOption("showFoldWidgets",S)},A.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},A.prototype.setFadeFoldWidgets=function(S){this.setOption("fadeFoldWidgets",S)},A.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},A.prototype.remove=function(S){this.selection.isEmpty()&&(S=="left"?this.selection.selectLeft():this.selection.selectRight());var N=this.getSelectionRange();if(this.getBehavioursEnabled()){var W=this.session,V=W.getState(N.start.row),G=W.getMode().transformAction(V,"deletion",this,W,N);if(N.end.column===0){var Q=W.getTextRange(N);if(Q[Q.length-1]==`
208
+ `){var te=W.getLine(N.end.row);/^\s+$/.test(te)&&(N.end.column=te.length)}}G&&(N=G)}this.session.remove(N),this.clearSelection()},A.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},A.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},A.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},A.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var S=this.getSelectionRange();S.start.column==S.end.column&&S.start.row==S.end.row&&(S.end.column=0,S.end.row++),this.session.remove(S),this.clearSelection()},A.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var S=this.getCursorPosition();this.insert(`
209
+ `),this.moveCursorToPosition(S)},A.prototype.setGhostText=function(S,N){this.renderer.setGhostText(S,N)},A.prototype.removeGhostText=function(){this.renderer.removeGhostText()},A.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var S=this.getCursorPosition(),N=S.column;if(N!==0){var W=this.session.getLine(S.row),V,G;N<W.length?(V=W.charAt(N)+W.charAt(N-1),G=new h(S.row,N-1,S.row,N+1)):(V=W.charAt(N-1)+W.charAt(N-2),G=new h(S.row,N-2,S.row,N)),this.session.replace(G,V),this.session.selection.moveToPosition(G.end)}}},A.prototype.toLowerCase=function(){var S=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var N=this.getSelectionRange(),W=this.session.getTextRange(N);this.session.replace(N,W.toLowerCase()),this.selection.setSelectionRange(S)},A.prototype.toUpperCase=function(){var S=this.getSelectionRange();this.selection.isEmpty()&&this.selection.selectWord();var N=this.getSelectionRange(),W=this.session.getTextRange(N);this.session.replace(N,W.toUpperCase()),this.selection.setSelectionRange(S)},A.prototype.indent=function(){var S=this.session,N=this.getSelectionRange();if(N.start.row<N.end.row){var W=this.$getSelectedRows();S.indentRows(W.first,W.last," ");return}else if(N.start.column<N.end.column){var V=S.getTextRange(N);if(!/^\s+$/.test(V)){var W=this.$getSelectedRows();S.indentRows(W.first,W.last," ");return}}var G=S.getLine(N.start.row),Q=N.start,te=S.getTabSize(),le=S.documentToScreenColumn(Q.row,Q.column);if(this.session.getUseSoftTabs())var ne=te-le%te,ue=p.stringRepeat(" ",ne);else{for(var ne=le%te;G[N.start.column-1]==" "&&ne;)N.start.column--,ne--;this.selection.setSelectionRange(N),ue=" "}return this.insert(ue)},A.prototype.blockIndent=function(){var S=this.$getSelectedRows();this.session.indentRows(S.first,S.last," ")},A.prototype.blockOutdent=function(){var S=this.session.getSelection();this.session.outdentRows(S.getRange())},A.prototype.sortLines=function(){for(var S=this.$getSelectedRows(),N=this.session,W=[],V=S.first;V<=S.last;V++)W.push(N.getLine(V));W.sort(function(te,le){return te.toLowerCase()<le.toLowerCase()?-1:te.toLowerCase()>le.toLowerCase()?1:0});for(var G=new h(0,0,0,0),V=S.first;V<=S.last;V++){var Q=N.getLine(V);G.start.row=V,G.end.row=V,G.end.column=Q.length,N.replace(G,W[V-S.first])}},A.prototype.toggleCommentLines=function(){var S=this.session.getState(this.getCursorPosition().row),N=this.$getSelectedRows();this.session.getMode().toggleCommentLines(S,this.session,N.first,N.last)},A.prototype.toggleBlockComment=function(){var S=this.getCursorPosition(),N=this.session.getState(S.row),W=this.getSelectionRange();this.session.getMode().toggleBlockComment(N,this.session,W,S)},A.prototype.getNumberAt=function(S,N){var W=/[\-]?[0-9]+(?:\.[0-9]+)?/g;W.lastIndex=0;for(var V=this.session.getLine(S);W.lastIndex<N;){var G=W.exec(V);if(G.index<=N&&G.index+G[0].length>=N){var Q={value:G[0],start:G.index,end:G.index+G[0].length};return Q}}return null},A.prototype.modifyNumber=function(S){var N=this.selection.getCursor().row,W=this.selection.getCursor().column,V=new h(N,W-1,N,W),G=this.session.getTextRange(V);if(!isNaN(parseFloat(G))&&isFinite(G)){var Q=this.getNumberAt(N,W);if(Q){var te=Q.value.indexOf(".")>=0?Q.start+Q.value.indexOf(".")+1:Q.end,le=Q.start+Q.value.length-te,ne=parseFloat(Q.value);ne*=Math.pow(10,le),te!==Q.end&&W<te?S*=Math.pow(10,Q.end-W-1):S*=Math.pow(10,Q.end-W),ne+=S,ne/=Math.pow(10,le);var ue=ne.toFixed(le),he=new h(N,Q.start,N,Q.end);this.session.replace(he,ue),this.moveCursorTo(N,Math.max(Q.start+1,W+ue.length-Q.value.length))}}else this.toggleWord()},A.prototype.toggleWord=function(){var S=this.selection.getCursor().row,N=this.selection.getCursor().column;this.selection.selectWord();var W=this.getSelectedText(),V=this.selection.getWordRange().start.column,G=W.replace(/([a-z]+|[A-Z]+)(?=[A-Z_]|$)/g,"$1 ").split(/\s/),Q=N-V-1;Q<0&&(Q=0);var te=0,le=0,ne=this;W.match(/[A-Za-z0-9_]+/)&&G.forEach(function(Ve,it){le=te+Ve.length,Q>=te&&Q<=le&&(W=Ve,ne.selection.clearSelection(),ne.moveCursorTo(S,te+V),ne.selection.selectTo(S,le+V)),te=le});for(var ue=this.$toggleWordPairs,he,ce=0;ce<ue.length;ce++)for(var me=ue[ce],_e=0;_e<=1;_e++){var Ae=+!_e,Me=W.match(new RegExp("^\\s?_?("+p.escapeRegExp(me[_e])+")\\s?$","i"));if(Me){var Ye=W.match(new RegExp("([_]|^|\\s)("+p.escapeRegExp(Me[1])+")($|\\s)","g"));Ye&&(he=W.replace(new RegExp(p.escapeRegExp(me[_e]),"i"),function(Ve){var it=me[Ae];return Ve.toUpperCase()==Ve?it=it.toUpperCase():Ve.charAt(0).toUpperCase()==Ve.charAt(0)&&(it=it.substr(0,0)+me[Ae].charAt(0).toUpperCase()+it.substr(1)),it}),this.insert(he),he="")}}},A.prototype.findLinkAt=function(S,N){var W,V,G=this.session.getLine(S),Q=G.split(/((?:https?|ftp):\/\/[\S]+)/),te=N;te<0&&(te=0);var le=0,ne=0,ue;try{for(var he=b(Q),ce=he.next();!ce.done;ce=he.next()){var me=ce.value;if(ne=le+me.length,te>=le&&te<=ne&&me.match(/((?:https?|ftp):\/\/[\S]+)/)){ue=me.replace(/[\s:.,'";}\]]+$/,"");break}le=ne}}catch(_e){W={error:_e}}finally{try{ce&&!ce.done&&(V=he.return)&&V.call(he)}finally{if(W)throw W.error}}return ue},A.prototype.openLink=function(){var S=this.selection.getCursor(),N=this.findLinkAt(S.row,S.column);return N&&window.open(N,"_blank"),N!=null},A.prototype.removeLines=function(){var S=this.$getSelectedRows();this.session.removeFullLines(S.first,S.last),this.clearSelection()},A.prototype.duplicateSelection=function(){var S=this.selection,N=this.session,W=S.getRange(),V=S.isBackwards();if(W.isEmpty()){var G=W.start.row;N.duplicateLines(G,G)}else{var Q=V?W.start:W.end,te=N.insert(Q,N.getTextRange(W));W.start=Q,W.end=te,S.setSelectionRange(W,V)}},A.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},A.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},A.prototype.moveText=function(S,N,W){return this.session.moveText(S,N,W)},A.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},A.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},A.prototype.$moveLines=function(S,N){var W,V,G=this.selection;if(!G.inMultiSelectMode||this.inVirtualSelectionMode){var Q=G.toOrientedRange();W=this.$getSelectedRows(Q),V=this.session.$moveLines(W.first,W.last,N?0:S),N&&S==-1&&(V=0),Q.moveBy(V,0),G.fromOrientedRange(Q)}else{var te=G.rangeList.ranges;G.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var le=0,ne=0,ue=te.length,he=0;he<ue;he++){var ce=he;te[he].moveBy(le,0),W=this.$getSelectedRows(te[he]);for(var me=W.first,_e=W.last;++he<ue;){ne&&te[he].moveBy(ne,0);var Ae=this.$getSelectedRows(te[he]);if(N&&Ae.first!=_e)break;if(!N&&Ae.first>_e+1)break;_e=Ae.last}for(he--,le=this.session.$moveLines(me,_e,N?0:S),N&&S==-1&&(ce=he+1);ce<=he;)te[ce].moveBy(le,0),ce++;N||(le=0),ne+=le}G.fromOrientedRange(G.ranges[0]),G.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},A.prototype.$getSelectedRows=function(S){return S=(S||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(S.start.row),last:this.session.getRowFoldEnd(S.end.row)}},A.prototype.onCompositionStart=function(S){this.renderer.showComposition(S)},A.prototype.onCompositionUpdate=function(S){this.renderer.setCompositionText(S)},A.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},A.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},A.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},A.prototype.isRowVisible=function(S){return S>=this.getFirstVisibleRow()&&S<=this.getLastVisibleRow()},A.prototype.isRowFullyVisible=function(S){return S>=this.renderer.getFirstFullyVisibleRow()&&S<=this.renderer.getLastFullyVisibleRow()},A.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},A.prototype.$moveByPage=function(S,N){var W=this.renderer,V=this.renderer.layerConfig,G=S*Math.floor(V.height/V.lineHeight);N===!0?this.selection.$moveSelection(function(){this.moveCursorBy(G,0)}):N===!1&&(this.selection.moveCursorBy(G,0),this.selection.clearSelection());var Q=W.scrollTop;W.scrollBy(0,G*V.lineHeight),N!=null&&W.scrollCursorIntoView(null,.5),W.animateScrolling(Q)},A.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},A.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},A.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},A.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},A.prototype.scrollPageDown=function(){this.$moveByPage(1)},A.prototype.scrollPageUp=function(){this.$moveByPage(-1)},A.prototype.scrollToRow=function(S){this.renderer.scrollToRow(S)},A.prototype.scrollToLine=function(S,N,W,V){this.renderer.scrollToLine(S,N,W,V)},A.prototype.centerSelection=function(){var S=this.getSelectionRange(),N={row:Math.floor(S.start.row+(S.end.row-S.start.row)/2),column:Math.floor(S.start.column+(S.end.column-S.start.column)/2)};this.renderer.alignCursor(N,.5)},A.prototype.getCursorPosition=function(){return this.selection.getCursor()},A.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},A.prototype.getSelectionRange=function(){return this.selection.getRange()},A.prototype.selectAll=function(){this.selection.selectAll()},A.prototype.clearSelection=function(){this.selection.clearSelection()},A.prototype.moveCursorTo=function(S,N){this.selection.moveCursorTo(S,N)},A.prototype.moveCursorToPosition=function(S){this.selection.moveCursorToPosition(S)},A.prototype.jumpToMatching=function(S,N){var W=this.getCursorPosition(),V=new k(this.session,W.row,W.column),G=V.getCurrentToken(),Q=0;G&&G.type.indexOf("tag-name")!==-1&&(G=V.stepBackward());var te=G||V.stepForward();if(te){var le,ne=!1,ue={},he=W.column-te.start,ce,me={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(te.value.match(/[{}()\[\]]/g)){for(;he<te.value.length&&!ne;he++)if(me[te.value[he]])switch(ce=me[te.value[he]]+"."+te.type.replace("rparen","lparen"),isNaN(ue[ce])&&(ue[ce]=0),te.value[he]){case"(":case"[":case"{":ue[ce]++;break;case")":case"]":case"}":ue[ce]--,ue[ce]===-1&&(le="bracket",ne=!0);break}}else te.type.indexOf("tag-name")!==-1&&(isNaN(ue[te.value])&&(ue[te.value]=0),G.value==="<"&&Q>1?ue[te.value]++:G.value==="</"&&ue[te.value]--,ue[te.value]===-1&&(le="tag",ne=!0));ne||(G=te,Q++,te=V.stepForward(),he=0)}while(te&&!ne);if(le){var _e,Ae;if(le==="bracket")_e=this.session.getBracketRange(W),_e||(_e=new h(V.getCurrentTokenRow(),V.getCurrentTokenColumn()+he-1,V.getCurrentTokenRow(),V.getCurrentTokenColumn()+he-1),Ae=_e.start,(N||Ae.row===W.row&&Math.abs(Ae.column-W.column)<2)&&(_e=this.session.getBracketRange(Ae)));else if(le==="tag"){if(!te||te.type.indexOf("tag-name")===-1)return;if(_e=new h(V.getCurrentTokenRow(),V.getCurrentTokenColumn()-2,V.getCurrentTokenRow(),V.getCurrentTokenColumn()-2),_e.compare(W.row,W.column)===0){var Me=this.session.getMatchingTags(W);Me&&(Me.openTag.contains(W.row,W.column)?(_e=Me.closeTag,Ae=_e.start):(_e=Me.openTag,Me.closeTag.start.row===W.row&&Me.closeTag.start.column===W.column?Ae=_e.end:Ae=_e.start))}Ae=Ae||_e.start}Ae=_e&&_e.cursor||Ae,Ae&&(S?_e&&N?this.selection.setRange(_e):_e&&_e.isEqual(this.getSelectionRange())?this.clearSelection():this.selection.selectTo(Ae.row,Ae.column):this.selection.moveTo(Ae.row,Ae.column))}}},A.prototype.gotoLine=function(S,N,W){this.selection.clearSelection(),this.session.unfold({row:S-1,column:N||0}),this.exitMultiSelectMode&&this.exitMultiSelectMode(),this.moveCursorTo(S-1,N||0),this.isRowFullyVisible(S-1)||this.scrollToLine(S-1,!0,W)},A.prototype.navigateTo=function(S,N){this.selection.moveTo(S,N)},A.prototype.navigateUp=function(S){if(this.selection.isMultiLine()&&!this.selection.isBackwards()){var N=this.selection.anchor.getPosition();return this.moveCursorToPosition(N)}this.selection.clearSelection(),this.selection.moveCursorBy(-S||-1,0)},A.prototype.navigateDown=function(S){if(this.selection.isMultiLine()&&this.selection.isBackwards()){var N=this.selection.anchor.getPosition();return this.moveCursorToPosition(N)}this.selection.clearSelection(),this.selection.moveCursorBy(S||1,0)},A.prototype.navigateLeft=function(S){if(this.selection.isEmpty())for(S=S||1;S--;)this.selection.moveCursorLeft();else{var N=this.getSelectionRange().start;this.moveCursorToPosition(N)}this.clearSelection()},A.prototype.navigateRight=function(S){if(this.selection.isEmpty())for(S=S||1;S--;)this.selection.moveCursorRight();else{var N=this.getSelectionRange().end;this.moveCursorToPosition(N)}this.clearSelection()},A.prototype.navigateLineStart=function(){this.selection.moveCursorLineStart(),this.clearSelection()},A.prototype.navigateLineEnd=function(){this.selection.moveCursorLineEnd(),this.clearSelection()},A.prototype.navigateFileEnd=function(){this.selection.moveCursorFileEnd(),this.clearSelection()},A.prototype.navigateFileStart=function(){this.selection.moveCursorFileStart(),this.clearSelection()},A.prototype.navigateWordRight=function(){this.selection.moveCursorWordRight(),this.clearSelection()},A.prototype.navigateWordLeft=function(){this.selection.moveCursorWordLeft(),this.clearSelection()},A.prototype.replace=function(S,N){N&&this.$search.set(N);var W=this.$search.find(this.session),V=0;return W&&(this.$tryReplace(W,S)&&(V=1),this.selection.setSelectionRange(W),this.renderer.scrollSelectionIntoView(W.start,W.end)),V},A.prototype.replaceAll=function(S,N){N&&this.$search.set(N);var W=this.$search.findAll(this.session),V=0;if(!W.length)return V;var G=this.getSelectionRange();this.selection.moveTo(0,0);for(var Q=W.length-1;Q>=0;--Q)this.$tryReplace(W[Q],S)&&V++;return this.selection.setSelectionRange(G),V},A.prototype.$tryReplace=function(S,N){var W=this.session.getTextRange(S);return N=this.$search.replace(W,N),N!==null?(S.end=this.session.replace(S,N),S):null},A.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},A.prototype.find=function(S,N,W){N||(N={}),typeof S=="string"||S instanceof RegExp?N.needle=S:typeof S=="object"&&v.mixin(N,S);var V=this.selection.getRange();N.needle==null&&(S=this.session.getTextRange(V)||this.$search.$options.needle,S||(V=this.session.getWordRange(V.start.row,V.start.column),S=this.session.getTextRange(V)),this.$search.set({needle:S})),this.$search.set(N),N.start||this.$search.set({start:V});var G=this.$search.find(this.session);if(N.preventScroll)return G;if(G)return this.revealRange(G,W),G;N.backwards?V.start=V.end:V.end=V.start,this.selection.setRange(V)},A.prototype.findNext=function(S,N){this.find({skipCurrent:!0,backwards:!1},S,N)},A.prototype.findPrevious=function(S,N){this.find(S,{skipCurrent:!0,backwards:!0},N)},A.prototype.revealRange=function(S,N){this.session.unfold(S),this.selection.setSelectionRange(S);var W=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(S.start,S.end,.5),N!==!1&&this.renderer.animateScrolling(W)},A.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},A.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},A.prototype.destroy=function(){this.destroyed=!0,this.$toDestroy&&(this.$toDestroy.forEach(function(S){S.destroy()}),this.$toDestroy=[]),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},A.prototype.setAutoScrollEditorIntoView=function(S){if(S){var N,W=this,V=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var G=this.$scrollAnchor;G.style.cssText="position:absolute",this.container.insertBefore(G,this.container.firstChild);var Q=this.on("changeSelection",function(){V=!0}),te=this.renderer.on("beforeRender",function(){V&&(N=W.renderer.container.getBoundingClientRect())}),le=this.renderer.on("afterRender",function(){if(V&&N&&(W.isFocused()||W.searchBox&&W.searchBox.isFocused())){var ne=W.renderer,ue=ne.$cursorLayer.$pixelPos,he=ne.layerConfig,ce=ue.top-he.offset;ue.top>=0&&ce+N.top<0?V=!0:ue.top<he.height&&ue.top+N.top+he.lineHeight>window.innerHeight?V=!1:V=null,V!=null&&(G.style.top=ce+"px",G.style.left=ue.left+"px",G.style.height=he.lineHeight+"px",G.scrollIntoView(V)),V=N=null}});this.setAutoScrollEditorIntoView=function(ne){ne||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",Q),this.renderer.off("afterRender",le),this.renderer.off("beforeRender",te))}}},A.prototype.$resetCursorStyle=function(){var S=this.$cursorStyle||"ace",N=this.renderer.$cursorLayer;N&&(N.setSmoothBlinking(/smooth/.test(S)),N.isBlinking=!this.$readOnly&&S!="wide",x.setCssClass(N.element,"ace_slim-cursors",/slim/.test(S)))},A.prototype.prompt=function(S,N,W){var V=this;T.loadModule("ace/ext/prompt",function(G){G.prompt(V,S,N,W)})},Object.defineProperty(A.prototype,"hoverTooltip",{get:function(){return this.$hoverTooltip||(this.$hoverTooltip=new z(this.container))},set:function(S){this.$hoverTooltip&&this.$hoverTooltip.destroy(),this.$hoverTooltip=S},enumerable:!1,configurable:!0}),A})();F.$uid=0,F.prototype.curOp=null,F.prototype.prevOp={},F.prototype.$mergeableCommands=["backspace","del","insertstring"],F.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],v.implement(F.prototype,m),T.defineOptions(F.prototype,"editor",{selectionStyle:{set:function(A){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:A})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(A){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(A){var S=this;if(this.textInput.setReadOnly(A),!this.destroyed){this.$resetCursorStyle(),this.$readOnlyCallback||(this.$readOnlyCallback=function(W){var V=!1;if(W&&W.type=="keydown"){if(W&&W.key&&!W.ctrlKey&&!W.metaKey&&(W.key==" "&&W.preventDefault(),V=W.key.length==1),!V)return}else W&&W.type!=="exec"&&(V=!0);if(V){var G=x.createElement("div");G.textContent=I("editor.tooltip.disable-editing","Editing is disabled"),S.hoverTooltip.isOpen||S.hoverTooltip.showForRange(S,S.getSelectionRange(),G)}else S.hoverTooltip&&S.hoverTooltip.isOpen&&S.hoverTooltip.hide()});var N=this.textInput.getElement();A?(L.addListener(N,"keydown",this.$readOnlyCallback,this),this.commands.on("exec",this.$readOnlyCallback),this.commands.on("commandUnavailable",this.$readOnlyCallback)):(L.removeListener(N,"keydown",this.$readOnlyCallback),this.commands.off("exec",this.$readOnlyCallback),this.commands.off("commandUnavailable",this.$readOnlyCallback))}},initialValue:!1},copyWithEmptySelection:{set:function(A){this.textInput.setCopyWithEmptySelection(A)},initialValue:!1},cursorStyle:{set:function(A){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(A){this.setAutoScrollEditorIntoView(A)}},keyboardHandler:{set:function(A){this.setKeyboardHandler(A)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(A){this.session.setValue(A)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(A){this.setSession(A)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(A){this.renderer.$gutterLayer.setShowLineNumbers(A),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),A&&this.$relativeLineNumbers?O.attach(this):O.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(A){this.$showLineNumbers&&A?O.attach(this):O.detach(this)}},placeholder:{set:function(A){this.$updatePlaceholder||(this.$updatePlaceholder=(function(){var S=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(S&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),x.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!S&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),x.addCssClass(this.container,"ace_hasPlaceholder");var N=x.createElement("div");N.className="ace_placeholder",N.textContent=this.$placeholder||"",this.renderer.placeholderNode=N,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!S&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}).bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(A){var S={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(V){V.blur(),V.renderer.scroller.focus()},readOnly:!0},N=function(V){if(V.target==this.renderer.scroller&&V.keyCode===E.enter){V.preventDefault();var G=this.getCursorPosition().row;this.isRowVisible(G)||this.scrollToLine(G,!0,!0),this.focus()}},W;A?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(f.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",I("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",I("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",N.bind(this)),this.commands.addCommand(S),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",I("editor.gutter.aria-roledescription","editor gutter")),this.renderer.$gutter.setAttribute("aria-label",I("editor.gutter.aria-label","Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),W||(W=new w(this)),W.addListener(),this.textInput.setAriaOptions({setLabel:!0})):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.textInput.setNumberOfExtraLines(0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",N.bind(this)),this.commands.removeCommand(S),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),W&&W.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(A){this.$textInputAriaLabel=A},initialValue:""},enableMobileMenu:{set:function(A){this.$enableMobileMenu=A},initialValue:!0},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var O={getText:function(A,S){return(Math.abs(A.selection.lead.row-S)||S+1+(S<9?"·":""))+""},getWidth:function(A,S,N){return Math.max(S.toString().length,(N.lastRow+1).toString().length,2)*N.characterWidth},update:function(A,S){S.renderer.$loop.schedule(S.renderer.CHANGE_GUTTER)},attach:function(A){A.renderer.$gutterLayer.$renderer=this,A.on("changeSelection",this.update),this.update(null,A)},detach:function(A){A.renderer.$gutterLayer.$renderer==this&&(A.renderer.$gutterLayer.$renderer=null),A.off("changeSelection",this.update),this.update(null,A)}};u.Editor=F}),ace.define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(e,u,M){var b=e("../lib/dom"),v=(function(){function x(p,f){this.element=p,this.canvasHeight=f||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return x.prototype.moveContainer=function(p){b.translate(this.element,0,-(p.firstRowScreen*p.lineHeight%this.canvasHeight)-p.offset*this.$offsetCoefficient)},x.prototype.pageChanged=function(p,f){return Math.floor(p.firstRowScreen*p.lineHeight/this.canvasHeight)!==Math.floor(f.firstRowScreen*f.lineHeight/this.canvasHeight)},x.prototype.computeLineTop=function(p,f,a){var s=f.firstRowScreen*f.lineHeight,o=Math.floor(s/this.canvasHeight),r=a.documentToScreenRow(p,0)*f.lineHeight;return r-o*this.canvasHeight},x.prototype.computeLineHeight=function(p,f,a){return f.lineHeight*a.getRowLineCount(p)},x.prototype.getLength=function(){return this.cells.length},x.prototype.get=function(p){return this.cells[p]},x.prototype.shift=function(){this.$cacheCell(this.cells.shift())},x.prototype.pop=function(){this.$cacheCell(this.cells.pop())},x.prototype.push=function(p){if(Array.isArray(p)){this.cells.push.apply(this.cells,p);for(var f=b.createFragment(this.element),a=0;a<p.length;a++)f.appendChild(p[a].element);this.element.appendChild(f)}else this.cells.push(p),this.element.appendChild(p.element)},x.prototype.unshift=function(p){if(Array.isArray(p)){this.cells.unshift.apply(this.cells,p);for(var f=b.createFragment(this.element),a=0;a<p.length;a++)f.appendChild(p[a].element);this.element.firstChild?this.element.insertBefore(f,this.element.firstChild):this.element.appendChild(f)}else this.cells.unshift(p),this.element.insertAdjacentElement("afterbegin",p.element)},x.prototype.last=function(){return this.cells.length?this.cells[this.cells.length-1]:null},x.prototype.$cacheCell=function(p){p&&(p.element.remove(),this.cellCache.push(p))},x.prototype.createCell=function(p,f,a,s){var o=this.cellCache.pop();if(!o){var r=b.createElement("div");s&&s(r),this.element.appendChild(r),o={element:r,text:"",row:p}}return o.row=p,o},x})();u.Lines=v}),ace.define("ace/layer/gutter",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/layer/lines","ace/config"],function(e,u,M){var b=e("../lib/dom"),v=e("../lib/oop"),x=e("../lib/lang"),p=e("../lib/event_emitter").EventEmitter,f=e("./lines").Lines,a=e("../config").nls,s=(function(){function r(n){this.$showCursorMarker=null,this.element=b.createElement("div"),this.element.className="ace_layer ace_gutter-layer",n.appendChild(this.element),this.setShowFoldWidgets(this.$showFoldWidgets),this.gutterWidth=0,this.$annotations=[],this.$updateAnnotations=this.$updateAnnotations.bind(this),this.$lines=new f(this.element),this.$lines.$offsetCoefficient=1}return r.prototype.setSession=function(n){this.session&&this.session.off("change",this.$updateAnnotations),this.session=n,n&&n.on("change",this.$updateAnnotations)},r.prototype.addGutterDecoration=function(n,i){window.console&&console.warn&&console.warn("deprecated use session.addGutterDecoration"),this.session.addGutterDecoration(n,i)},r.prototype.removeGutterDecoration=function(n,i){window.console&&console.warn&&console.warn("deprecated use session.removeGutterDecoration"),this.session.removeGutterDecoration(n,i)},r.prototype.setAnnotations=function(n){this.$annotations=[];for(var i=0;i<n.length;i++){var h=n[i],m=h.row,y=this.$annotations[m];y||(y=this.$annotations[m]={text:[],type:[],displayText:[]});var R=h.text,T=h.text,k=h.type;R=R?x.escapeHTML(R):h.html||"",T=T||h.html||"",y.text.indexOf(R)===-1&&(y.text.push(R),y.type.push(k),y.displayText.push(T));var w=h.className;w?y.className=w:k==="error"?y.className=" ace_error":k==="security"&&!/\bace_error\b/.test(y.className)?y.className=" ace_security":k==="warning"&&!/\bace_(error|security)\b/.test(y.className)?y.className=" ace_warning":k==="info"&&!y.className?y.className=" ace_info":k==="hint"&&!y.className&&(y.className=" ace_hint")}},r.prototype.$updateAnnotations=function(n){if(this.$annotations.length){var i=n.start.row,h=n.end.row-i;if(h!==0)if(n.action=="remove")this.$annotations.splice(i,h+1,null);else{var m=new Array(h+1);m.unshift(i,1),this.$annotations.splice.apply(this.$annotations,m)}}},r.prototype.update=function(n){this.config=n;var i=this.session,h=n.firstRow,m=Math.min(n.lastRow+n.gutterOffset,i.getLength()-1);this.oldLastRow=m,this.config=n,this.$lines.moveContainer(n),this.$updateCursorRow();for(var y=i.getNextFoldLine(h),R=y?y.start.row:1/0,T=null,k=-1,w=h;;){if(w>R&&(w=y.end.row+1,y=i.getNextFoldLine(w,y),R=y?y.start.row:1/0),w>m){for(;this.$lines.getLength()>k+1;)this.$lines.pop();break}T=this.$lines.get(++k),T?T.row=w:(T=this.$lines.createCell(w,n,this.session,o),this.$lines.push(T)),this.$renderCell(T,n,y,w),w++}this._signal("afterRender"),this.$updateGutterWidth(n),this.$showCursorMarker&&this.$highlightGutterLine&&this.$updateCursorMarker()},r.prototype.$updateGutterWidth=function(n){var i=this.session,h=i.gutterRenderer||this.$renderer,m=i.$firstLineNumber,y=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||i.$useWrapMode)&&(y=i.getLength()+m-1);var R=h?h.getWidth(i,y,n):y.toString().length*n.characterWidth,T=this.$padding||this.$computePadding();R+=T.left+T.right,R!==this.gutterWidth&&!isNaN(R)&&(this.gutterWidth=R,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",R))},r.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var n=this.session.selection.getCursor();this.$cursorRow!==n.row&&(this.$cursorRow=n.row)}},r.prototype.updateLineHighlight=function(){if(this.$showCursorMarker&&this.$updateCursorMarker(),!!this.$highlightGutterLine){var n=this.session.selection.cursor.row;if(this.$cursorRow=n,!(this.$cursorCell&&this.$cursorCell.row==n)){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var i=this.$lines.cells;this.$cursorCell=null;for(var h=0;h<i.length;h++){var m=i[h];if(m.row>=this.$cursorRow){if(m.row>this.$cursorRow){var y=this.session.getFoldLine(this.$cursorRow);if(h>0&&y&&y.start.row==i[h-1].row)m=i[h-1];else break}m.element.className="ace_gutter-active-line "+m.element.className,this.$cursorCell=m;break}}}}},r.prototype.$updateCursorMarker=function(){if(this.session){var n=this.session;this.$highlightElement||(this.$highlightElement=b.createElement("div"),this.$highlightElement.className="ace_gutter-cursor",this.$highlightElement.style.pointerEvents="none",this.element.appendChild(this.$highlightElement));var i=n.selection.cursor,h=this.config,m=this.$lines,y=h.firstRowScreen*h.lineHeight,R=Math.floor(y/m.canvasHeight),T=n.documentToScreenRow(i)*h.lineHeight,k=T-R*m.canvasHeight;b.setStyle(this.$highlightElement.style,"height",h.lineHeight+"px"),b.setStyle(this.$highlightElement.style,"top",k+"px")}},r.prototype.scrollLines=function(n){var i=this.config;if(this.config=n,this.$updateCursorRow(),this.$lines.pageChanged(i,n))return this.update(n);this.$lines.moveContainer(n);var h=Math.min(n.lastRow+n.gutterOffset,this.session.getLength()-1),m=this.oldLastRow;if(this.oldLastRow=h,!i||m<n.firstRow)return this.update(n);if(h<i.firstRow)return this.update(n);if(i.firstRow<n.firstRow)for(var y=this.session.getFoldedRowCount(i.firstRow,n.firstRow-1);y>0;y--)this.$lines.shift();if(m>h)for(var y=this.session.getFoldedRowCount(h+1,m);y>0;y--)this.$lines.pop();n.firstRow<i.firstRow&&this.$lines.unshift(this.$renderLines(n,n.firstRow,i.firstRow-1)),h>m&&this.$lines.push(this.$renderLines(n,m+1,h)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(n)},r.prototype.$renderLines=function(n,i,h){for(var m=[],y=i,R=this.session.getNextFoldLine(y),T=R?R.start.row:1/0;y>T&&(y=R.end.row+1,R=this.session.getNextFoldLine(y,R),T=R?R.start.row:1/0),!(y>h);){var k=this.$lines.createCell(y,n,this.session,o);this.$renderCell(k,n,R,y),m.push(k),y++}return m},r.prototype.$renderCell=function(n,i,h,m){var y=n.element,R=this.session,T=y.childNodes[0],k=y.childNodes[1],w=y.childNodes[2],I=y.childNodes[3],D=w.firstChild,E=R.$firstLineNumber,L=R.$breakpoints,z=R.$decorations,F=R.gutterRenderer||this.$renderer,O=this.$showFoldWidgets&&R.foldWidgets,A=h?h.start.row:Number.MAX_VALUE,S=i.lineHeight+"px",N=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",W=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",V=(F?F.getText(R,m):m+E).toString();if(this.$highlightGutterLine&&(m==this.$cursorRow||h&&m<this.$cursorRow&&m>=A&&this.$cursorRow<=h.end.row)&&(N+="ace_gutter-active-line ",this.$cursorCell!=n&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=n)),L[m]&&(N+=L[m]),z[m]&&(N+=z[m]),this.$annotations[m]&&m!==A&&(N+=this.$annotations[m].className),O){var G=O[m];G==null&&(G=O[m]=R.getFoldWidget(m))}if(G){var Q="ace_fold-widget ace_"+G,te=G=="start"&&m==A&&m<h.end.row;if(te){Q+=" ace_closed";for(var le="",ne=!1,ue=m+1;ue<=h.end.row;ue++)if(this.$annotations[ue]){if(this.$annotations[ue].className===" ace_error"){ne=!0,le=" ace_error_fold";break}this.$annotations[ue].className===" ace_security"?(ne=!0,le=" ace_security_fold"):this.$annotations[ue].className===" ace_warning"&&le!==" ace_security_fold"&&(ne=!0,le=" ace_warning_fold")}N+=le}else Q+=" ace_open";k.className!=Q&&(k.className=Q),b.setStyle(k.style,"height",S),b.setStyle(k.style,"display","inline-block"),k.setAttribute("role","button"),k.setAttribute("tabindex","-1");var he=R.getFoldWidgetRange(m);he?k.setAttribute("aria-label",a("gutter.code-folding.range.aria-label","Toggle code folding, rows $0 through $1",[he.start.row+1,he.end.row+1])):h?k.setAttribute("aria-label",a("gutter.code-folding.closed.aria-label","Toggle code folding, rows $0 through $1",[h.start.row+1,h.end.row+1])):k.setAttribute("aria-label",a("gutter.code-folding.open.aria-label","Toggle code folding, row $0",[m+1])),te?(k.setAttribute("aria-expanded","false"),k.setAttribute("title",a("gutter.code-folding.closed.title","Unfold code"))):(k.setAttribute("aria-expanded","true"),k.setAttribute("title",a("gutter.code-folding.open.title","Fold code")))}else k&&(b.setStyle(k.style,"display","none"),k.setAttribute("tabindex","0"),k.removeAttribute("role"),k.removeAttribute("aria-label"));var ce=this.session.$gutterCustomWidgets[m];if(ce?this.$addCustomWidget(m,ce,n):I&&this.$removeCustomWidget(m,n),ne&&this.$showFoldedAnnotations){w.className="ace_gutter_annotation",D.className=W,D.className+=le,b.setStyle(D.style,"height",S),b.setStyle(w.style,"display","block"),b.setStyle(w.style,"height",S);var me;switch(le){case" ace_error_fold":me=a("gutter.annotation.aria-label.error","Error, read annotations row $0",[V]);break;case" ace_security_fold":me=a("gutter.annotation.aria-label.security","Security finding, read annotations row $0",[V]);break;case" ace_warning_fold":me=a("gutter.annotation.aria-label.warning","Warning, read annotations row $0",[V]);break}w.setAttribute("aria-label",me),w.setAttribute("tabindex","-1"),w.setAttribute("role","button")}else if(this.$annotations[m]){w.className="ace_gutter_annotation",D.className=W,this.$useSvgGutterIcons?D.className+=this.$annotations[m].className:y.classList.add(this.$annotations[m].className.replace(" ","")),b.setStyle(D.style,"height",S),b.setStyle(w.style,"display","block"),b.setStyle(w.style,"height",S);var me;switch(this.$annotations[m].className){case" ace_error":me=a("gutter.annotation.aria-label.error","Error, read annotations row $0",[V]);break;case" ace_security":me=a("gutter.annotation.aria-label.security","Security finding, read annotations row $0",[V]);break;case" ace_warning":me=a("gutter.annotation.aria-label.warning","Warning, read annotations row $0",[V]);break;case" ace_info":me=a("gutter.annotation.aria-label.info","Info, read annotations row $0",[V]);break;case" ace_hint":me=a("gutter.annotation.aria-label.hint","Suggestion, read annotations row $0",[V]);break}w.setAttribute("aria-label",me),w.setAttribute("tabindex","-1"),w.setAttribute("role","button")}else b.setStyle(w.style,"display","none"),w.removeAttribute("aria-label"),w.removeAttribute("role"),w.setAttribute("tabindex","0");return V!==T.data&&(T.data=V),y.className!=N&&(y.className=N),b.setStyle(n.element.style,"height",this.$lines.computeLineHeight(m,i,R)+"px"),b.setStyle(n.element.style,"top",this.$lines.computeLineTop(m,i,R)+"px"),n.text=V,w.style.display==="none"&&k.style.display==="none"&&!ce?n.element.setAttribute("aria-hidden",!0):n.element.setAttribute("aria-hidden",!1),n},r.prototype.setHighlightGutterLine=function(n){this.$highlightGutterLine=n,!n&&this.$highlightElement&&(this.$highlightElement.remove(),this.$highlightElement=null)},r.prototype.setShowLineNumbers=function(n){this.$renderer=!n&&{getWidth:function(){return 0},getText:function(){return""}}},r.prototype.getShowLineNumbers=function(){return this.$showLineNumbers},r.prototype.setShowFoldWidgets=function(n){n?b.addCssClass(this.element,"ace_folding-enabled"):b.removeCssClass(this.element,"ace_folding-enabled"),this.$showFoldWidgets=n,this.$padding=null},r.prototype.getShowFoldWidgets=function(){return this.$showFoldWidgets},r.prototype.$hideFoldWidget=function(n,i){var h=i||this.$getGutterCell(n);if(h&&h.element){var m=h.element.childNodes[1];m&&b.setStyle(m.style,"display","none")}},r.prototype.$showFoldWidget=function(n,i){var h=i||this.$getGutterCell(n);if(h&&h.element){var m=h.element.childNodes[1];m&&this.session.foldWidgets&&this.session.foldWidgets[h.row]&&b.setStyle(m.style,"display","inline-block")}},r.prototype.$getGutterCell=function(n){var i=this.$lines.cells,h=0,m=i.length-1;if(!(n<i[0].row||n>i[m].row)){for(;h<=m;){var y=Math.floor((h+m)/2),R=i[y];if(R.row>n)m=y-1;else if(R.row<n)h=y+1;else return R}return R}},r.prototype.$addCustomWidget=function(n,i,h){var m=i.className,y=i.label,R=i.title,T=i.callbacks;this.session.$gutterCustomWidgets[n]={className:m,label:y,title:R,callbacks:T},this.$hideFoldWidget(n,h);var k=h||this.$getGutterCell(n);if(k&&k.element){var w=k.element.querySelector(".ace_custom-widget");w&&w.remove(),w=b.createElement("span"),w.className="ace_custom-widget ".concat(m),w.setAttribute("tabindex","-1"),w.setAttribute("role","button"),w.setAttribute("aria-label",y),w.setAttribute("title",R),b.setStyle(w.style,"display","inline-block"),b.setStyle(w.style,"height","inherit"),T&&T.onClick&&w.addEventListener("click",function(I){T.onClick(I,n),I.stopPropagation()}),k.element.appendChild(w)}},r.prototype.$removeCustomWidget=function(n,i){delete this.session.$gutterCustomWidgets[n],this.$showFoldWidget(n,i);var h=i||this.$getGutterCell(n);if(h&&h.element){var m=h.element.querySelector(".ace_custom-widget");m&&h.element.removeChild(m)}},r.prototype.$computePadding=function(){if(!this.element.firstChild)return{left:0,right:0};var n=b.computedStyle(this.element.firstChild);return this.$padding={},this.$padding.left=(parseInt(n.borderLeftWidth)||0)+(parseInt(n.paddingLeft)||0)+1,this.$padding.right=(parseInt(n.borderRightWidth)||0)+(parseInt(n.paddingRight)||0),this.$padding},r.prototype.getRegion=function(n){var i=this.$padding||this.$computePadding(),h=this.element.getBoundingClientRect();if(n.x<i.left+h.left)return"markers";if(this.$showFoldWidgets&&n.x>h.right-i.right)return"foldWidgets"},r})();s.prototype.$fixedWidth=!1,s.prototype.$highlightGutterLine=!0,s.prototype.$renderer=void 0,s.prototype.$showLineNumbers=!0,s.prototype.$showFoldWidgets=!0,v.implement(s.prototype,p);function o(r){var n=document.createTextNode("");r.appendChild(n);var i=b.createElement("span");r.appendChild(i);var h=b.createElement("span");r.appendChild(h);var m=b.createElement("span");return h.appendChild(m),r}u.Gutter=s}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(e,u,M){var b=e("../range").Range,v=e("../lib/dom"),x=(function(){function f(a){this.element=v.createElement("div"),this.element.className="ace_layer ace_marker-layer",a.appendChild(this.element)}return f.prototype.setPadding=function(a){this.$padding=a},f.prototype.setSession=function(a){this.session=a},f.prototype.setMarkers=function(a){this.markers=a},f.prototype.elt=function(a,s){var o=this.i!=-1&&this.element.childNodes[this.i];o?this.i++:(o=document.createElement("div"),this.element.appendChild(o),this.i=-1),o.style.cssText=s,o.className=a},f.prototype.update=function(a){if(a){this.config=a,this.i=0;var s;for(var o in this.markers){var r=this.markers[o];if(!r.range){r.update(s,this,this.session,a);continue}var n=r.range.clipRows(a.firstRow,a.lastRow);if(!n.isEmpty())if(n=n.toScreenRange(this.session),r.renderer){var i=this.$getTop(n.start.row,a),h=this.$padding+n.start.column*a.characterWidth;r.renderer(s,n,h,i,a)}else r.type=="fullLine"?this.drawFullLineMarker(s,n,r.clazz,a):r.type=="screenLine"?this.drawScreenLineMarker(s,n,r.clazz,a):n.isMultiLine()?r.type=="text"?this.drawTextMarker(s,n,r.clazz,a):this.drawMultiLineMarker(s,n,r.clazz,a):this.drawSingleLineMarker(s,n,r.clazz+" ace_start ace_br15",a)}if(this.i!=-1)for(;this.i<this.element.childElementCount;)this.element.removeChild(this.element.lastChild)}},f.prototype.$getTop=function(a,s){return(a-s.firstRowScreen)*s.lineHeight},f.prototype.drawTextMarker=function(a,s,o,r,n){for(var i=this.session,h=s.start.row,m=s.end.row,y=h,R=0,T=0,k=i.getScreenLastRowColumn(y),w=new b(y,s.start.column,y,T);y<=m;y++)w.start.row=w.end.row=y,w.start.column=y==h?s.start.column:i.getRowWrapIndent(y),w.end.column=k,R=T,T=k,k=y+1<m?i.getScreenLastRowColumn(y+1):y==m?0:s.end.column,this.drawSingleLineMarker(a,w,o+(y==h?" ace_start":"")+" ace_br"+p(y==h||y==h+1&&s.start.column,R<T,T>k,y==m),r,y==m?0:1,n)},f.prototype.drawMultiLineMarker=function(a,s,o,r,n){var i=this.$padding,h=r.lineHeight,m=this.$getTop(s.start.row,r),y=i+s.start.column*r.characterWidth;if(n=n||"",this.session.$bidiHandler.isBidiRow(s.start.row)){var R=s.clone();R.end.row=R.start.row,R.end.column=this.session.getLine(R.start.row).length,this.drawBidiSingleLineMarker(a,R,o+" ace_br1 ace_start",r,null,n)}else this.elt(o+" ace_br1 ace_start","height:"+h+"px;right:"+i+"px;top:"+m+"px;left:"+y+"px;"+(n||""));if(this.session.$bidiHandler.isBidiRow(s.end.row)){var R=s.clone();R.start.row=R.end.row,R.start.column=0,this.drawBidiSingleLineMarker(a,R,o+" ace_br12",r,null,n)}else{m=this.$getTop(s.end.row,r);var T=s.end.column*r.characterWidth;this.elt(o+" ace_br12","height:"+h+"px;width:"+T+"px;top:"+m+"px;left:"+i+"px;"+(n||""))}if(h=(s.end.row-s.start.row-1)*r.lineHeight,!(h<=0)){m=this.$getTop(s.start.row+1,r);var k=(s.start.column?1:0)|(s.end.column?0:8);this.elt(o+(k?" ace_br"+k:""),"height:"+h+"px;right:"+i+"px;top:"+m+"px;left:"+i+"px;"+(n||""))}},f.prototype.drawSingleLineMarker=function(a,s,o,r,n,i){if(this.session.$bidiHandler.isBidiRow(s.start.row))return this.drawBidiSingleLineMarker(a,s,o,r,n,i);var h=r.lineHeight,m=(s.end.column+(n||0)-s.start.column)*r.characterWidth,y=this.$getTop(s.start.row,r),R=this.$padding+s.start.column*r.characterWidth;this.elt(o,"height:"+h+"px;width:"+m+"px;top:"+y+"px;left:"+R+"px;"+(i||""))},f.prototype.drawBidiSingleLineMarker=function(a,s,o,r,n,i){var h=r.lineHeight,m=this.$getTop(s.start.row,r),y=this.$padding,R=this.session.$bidiHandler.getSelections(s.start.column,s.end.column);R.forEach(function(T){this.elt(o,"height:"+h+"px;width:"+(T.width+(n||0))+"px;top:"+m+"px;left:"+(y+T.left)+"px;"+(i||""))},this)},f.prototype.drawFullLineMarker=function(a,s,o,r,n){var i=this.$getTop(s.start.row,r),h=r.lineHeight;s.start.row!=s.end.row&&(h+=this.$getTop(s.end.row,r)-i),this.elt(o,"height:"+h+"px;top:"+i+"px;left:0;right:0;"+(n||""))},f.prototype.drawScreenLineMarker=function(a,s,o,r,n){var i=this.$getTop(s.start.row,r),h=r.lineHeight;this.elt(o,"height:"+h+"px;top:"+i+"px;left:0;right:0;"+(n||""))},f})();x.prototype.$padding=0;function p(f,a,s,o){return(f?1:0)|(a?2:0)|(s?4:0)|(o?8:0)}u.Marker=x}),ace.define("ace/layer/text_util",["require","exports","module"],function(e,u,M){var b=new Set(["text","rparen","lparen"]);u.isTextToken=function(v){return b.has(v)}}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(e,u,M){var b=e("../lib/oop"),v=e("../lib/dom"),x=e("../lib/lang"),p=e("./lines").Lines,f=e("../lib/event_emitter").EventEmitter,a=e("../config").nls,s=e("./text_util").isTextToken,o=(function(){function r(n){this.dom=v,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",n.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new p(this.element)}return r.prototype.$updateEolChar=function(){var n=this.session.doc,i=n.getNewLineCharacter()==`
210
+ `&&n.getNewLineMode()!="windows",h=i?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=h)return this.EOL_CHAR=h,!0},r.prototype.setPadding=function(n){this.$padding=n,this.element.style.margin="0 "+n+"px"},r.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},r.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},r.prototype.$setFontMetrics=function(n){this.$fontMetrics=n,this.$fontMetrics.on("changeCharacterSize",(function(i){this._signal("changeCharacterSize",i)}).bind(this)),this.$pollSizeChanges()},r.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},r.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},r.prototype.setSession=function(n){this.session=n,n&&this.$computeTabString()},r.prototype.setShowInvisibles=function(n){return this.showInvisibles==n?!1:(this.showInvisibles=n,typeof n=="string"?(this.showSpaces=/tab/i.test(n),this.showTabs=/space/i.test(n),this.showEOL=/eol/i.test(n)):this.showSpaces=this.showTabs=this.showEOL=n,this.$computeTabString(),!0)},r.prototype.setDisplayIndentGuides=function(n){return this.displayIndentGuides==n?!1:(this.displayIndentGuides=n,this.$computeTabString(),!0)},r.prototype.setHighlightIndentGuides=function(n){return this.$highlightIndentGuides===n?!1:(this.$highlightIndentGuides=n,n)},r.prototype.$computeTabString=function(){var n=this.session.getTabSize();this.tabSize=n;for(var i=this.$tabStrings=[0],h=1;h<n+1;h++)if(this.showTabs){var m=this.dom.createElement("span");m.className="ace_invisible ace_invisible_tab",m.textContent=x.stringRepeat(this.TAB_CHAR,h),i.push(m)}else i.push(this.dom.createTextNode(x.stringRepeat(" ",h),this.element));if(this.displayIndentGuides){this.$indentGuideRe=/\s\S| \t|\t |\s$/;var y="ace_indent-guide",R=this.showSpaces?" ace_invisible ace_invisible_space":"",T=this.showSpaces?x.stringRepeat(this.SPACE_CHAR,this.tabSize):x.stringRepeat(" ",this.tabSize),k=this.showTabs?" ace_invisible ace_invisible_tab":"",w=this.showTabs?x.stringRepeat(this.TAB_CHAR,this.tabSize):T,m=this.dom.createElement("span");m.className=y+R,m.textContent=T,this.$tabStrings[" "]=m;var m=this.dom.createElement("span");m.className=y+k,m.textContent=w,this.$tabStrings[" "]=m}},r.prototype.updateLines=function(n,i,h){if(this.config.lastRow!=n.lastRow||this.config.firstRow!=n.firstRow)return this.update(n);this.config=n;for(var m=Math.max(i,n.firstRow),y=Math.min(h,n.lastRow),R=this.element.childNodes,T=0,w=n.firstRow;w<m;w++){var I=this.session.getFoldLine(w);if(I)if(I.containsRow(m)){m=I.start.row;break}else w=I.end.row;T++}for(var k=!1,w=m,I=this.session.getNextFoldLine(w),D=I?I.start.row:1/0;w>D&&(w=I.end.row+1,I=this.session.getNextFoldLine(w,I),D=I?I.start.row:1/0),!(w>y);){var E=R[T++];if(E){this.dom.removeChildren(E),this.$renderLine(E,w,w==D?I:!1),k&&(E.style.top=this.$lines.computeLineTop(w,n,this.session)+"px");var L=n.lineHeight*this.session.getRowLength(w)+"px";E.style.height!=L&&(k=!0,E.style.height=L)}w++}if(k)for(;T<this.$lines.cells.length;){var z=this.$lines.cells[T++];z.element.style.top=this.$lines.computeLineTop(z.row,n,this.session)+"px"}},r.prototype.scrollLines=function(n){var i=this.config;if(this.config=n,this.$lines.pageChanged(i,n))return this.update(n);this.$lines.moveContainer(n);var h=n.lastRow,m=i?i.lastRow:-1;if(!i||m<n.firstRow)return this.update(n);if(h<i.firstRow)return this.update(n);if(!i||i.lastRow<n.firstRow)return this.update(n);if(n.lastRow<i.firstRow)return this.update(n);if(i.firstRow<n.firstRow)for(var y=this.session.getFoldedRowCount(i.firstRow,n.firstRow-1);y>0;y--)this.$lines.shift();if(i.lastRow>n.lastRow)for(var y=this.session.getFoldedRowCount(n.lastRow+1,i.lastRow);y>0;y--)this.$lines.pop();n.firstRow<i.firstRow&&this.$lines.unshift(this.$renderLinesFragment(n,n.firstRow,i.firstRow-1)),n.lastRow>i.lastRow&&this.$lines.push(this.$renderLinesFragment(n,i.lastRow+1,n.lastRow)),this.$highlightIndentGuide()},r.prototype.$renderLinesFragment=function(n,i,h){for(var m=[],y=i,R=this.session.getNextFoldLine(y),T=R?R.start.row:1/0;y>T&&(y=R.end.row+1,R=this.session.getNextFoldLine(y,R),T=R?R.start.row:1/0),!(y>h);){var k=this.$lines.createCell(y,n,this.session),w=k.element;this.dom.removeChildren(w),v.setStyle(w.style,"height",this.$lines.computeLineHeight(y,n,this.session)+"px"),v.setStyle(w.style,"top",this.$lines.computeLineTop(y,n,this.session)+"px"),this.$renderLine(w,y,y==T?R:!1),this.$useLineGroups()?w.className="ace_line_group":w.className="ace_line",m.push(k),y++}return m},r.prototype.update=function(n){this.$lines.moveContainer(n),this.config=n;for(var i=n.firstRow,h=n.lastRow,m=this.$lines;m.getLength();)m.pop();m.push(this.$renderLinesFragment(n,i,h))},r.prototype.$renderToken=function(n,i,h,m){for(var y=this,R=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069\u2060\u2061\u2062\u2063\u2064\u206A\u206B\u206B\u206C\u206D\u206E\u206F]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,T=this.dom.createFragment(this.element),k,w=0;k=R.exec(m);){var I=k[1],D=k[2],E=k[3],L=k[4],z=k[5];if(!(!y.showSpaces&&D)){var F=w!=k.index?m.slice(w,k.index):"";if(w=k.index+k[0].length,F&&T.appendChild(this.dom.createTextNode(F,this.element)),I){var O=y.session.getScreenTabSize(i+k.index),A=y.$tabStrings[O].cloneNode(!0);A.charCount=1,T.appendChild(A),i+=O-1}else if(D)if(y.showSpaces){var S=this.dom.createElement("span");S.className="ace_invisible ace_invisible_space",S.textContent=x.stringRepeat(y.SPACE_CHAR,D.length),T.appendChild(S)}else T.appendChild(this.dom.createTextNode(D,this.element));else if(E){var S=this.dom.createElement("span");S.className="ace_invisible ace_invisible_space ace_invalid",S.textContent=x.stringRepeat(y.SPACE_CHAR,E.length),T.appendChild(S)}else if(L){i+=1;var S=this.dom.createElement("span");S.style.width=y.config.characterWidth*2+"px",S.className=y.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",S.textContent=y.showSpaces?y.SPACE_CHAR:L,T.appendChild(S)}else if(z){i+=1;var S=this.dom.createElement("span");S.style.width=y.config.characterWidth*2+"px",S.className="ace_cjk",S.textContent=z,T.appendChild(S)}}}if(T.appendChild(this.dom.createTextNode(w?m.slice(w):m,this.element)),s(h.type))n.appendChild(T);else{var N="ace_"+h.type.replace(/\./g," ace_"),S=this.dom.createElement("span");h.type=="fold"&&(S.style.width=h.value.length*this.config.characterWidth+"px",S.setAttribute("title",a("inline-fold.closed.title","Unfold code"))),S.className=N,S.appendChild(T),n.appendChild(S)}return i+m.length},r.prototype.renderIndentGuide=function(n,i,h){var m=i.search(this.$indentGuideRe);if(m<=0||m>=h)return i;if(i[0]==" "){m-=m%this.tabSize;for(var y=m/this.tabSize,R=0;R<y;R++)n.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),i.substr(m)}else if(i[0]==" "){for(var R=0;R<m;R++)n.appendChild(this.$tabStrings[" "].cloneNode(!0));return this.$highlightIndentGuide(),i.substr(m)}return this.$highlightIndentGuide(),i},r.prototype.$highlightIndentGuide=function(){if(!(!this.$highlightIndentGuides||!this.displayIndentGuides)){this.$highlightIndentGuideMarker={indentLevel:void 0,start:void 0,end:void 0,dir:void 0};var n=this.session.doc.$lines;if(n){var i=this.session.selection.getCursor(),h=/^\s*/.exec(this.session.doc.getLine(i.row))[0].length,m=Math.floor(h/this.tabSize);this.$highlightIndentGuideMarker={indentLevel:m,start:i.row};var y=this.session.$bracketHighlight;if(y){for(var R=this.session.$bracketHighlight.ranges,T=0;T<R.length;T++)if(i.row!==R[T].start.row){this.$highlightIndentGuideMarker.end=R[T].start.row+1,i.row>R[T].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&n[i.row]!==""&&i.column===n[i.row].length){this.$highlightIndentGuideMarker.dir=1;for(var T=i.row+1;T<n.length;T++){var k=n[T],w=/^\s*/.exec(k)[0].length;if(k!==""&&(this.$highlightIndentGuideMarker.end=T,w<=h))break}}this.$renderHighlightIndentGuide()}}},r.prototype.$clearActiveIndentGuide=function(){for(var n=this.element.querySelectorAll(".ace_indent-guide-active"),i=0;i<n.length;i++)n[i].classList.remove("ace_indent-guide-active")},r.prototype.$setIndentGuideActive=function(n,i){var h=this.session.doc.getLine(n.row);if(h!==""){var m=n.element;if(n.element.classList&&n.element.classList.contains("ace_line_group"))if(n.element.childNodes.length>0)m=n.element.childNodes[0];else return;var y=m.childNodes;if(y){var R=y[i-1];R&&R.classList&&R.classList.contains("ace_indent-guide")&&R.classList.add("ace_indent-guide-active")}}},r.prototype.$renderHighlightIndentGuide=function(){if(this.$lines){var n=this.$lines.cells;this.$clearActiveIndentGuide();var i=this.$highlightIndentGuideMarker.indentLevel;if(i!==0)if(this.$highlightIndentGuideMarker.dir===1)for(var h=0;h<n.length;h++){var m=n[h];if(this.$highlightIndentGuideMarker.end&&m.row>=this.$highlightIndentGuideMarker.start+1){if(m.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(m,i)}}else for(var h=n.length-1;h>=0;h--){var m=n[h];if(this.$highlightIndentGuideMarker.end&&m.row<this.$highlightIndentGuideMarker.start){if(m.row<this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(m,i)}}}},r.prototype.$createLineElement=function(n){var i=this.dom.createElement("div");return i.className="ace_line",i.style.height=this.config.lineHeight+"px",i},r.prototype.$renderWrappedLine=function(n,i,h){var m=0,y=0,R=h[0],T=0,k=this.$createLineElement();n.appendChild(k);for(var w=0;w<i.length;w++){var I=i[w],D=I.value;if(w==0&&this.displayIndentGuides){if(m=D.length,D=this.renderIndentGuide(k,D,R),!D)continue;m-=D.length}if(m+D.length<R)T=this.$renderToken(k,T,I,D),m+=D.length;else{for(;m+D.length>=R;){T=this.$renderToken(k,T,I,D.substring(0,R-m)),D=D.substring(R-m),m=R,k=this.$createLineElement(),n.appendChild(k);var E=this.dom.createTextNode(x.stringRepeat(" ",h.indent),this.element);E.charCount=0,k.appendChild(E),y++,T=0,R=h[y]||Number.MAX_VALUE}D.length!=0&&(m+=D.length,T=this.$renderToken(k,T,I,D))}}h[h.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(k,T,null,"",!0)},r.prototype.$renderSimpleLine=function(n,i){for(var h=0,m=0;m<i.length;m++){var y=i[m],R=y.value;if(!(m==0&&this.displayIndentGuides&&(R=this.renderIndentGuide(n,R),!R))){if(h+R.length>this.MAX_LINE_LENGTH)return this.$renderOverflowMessage(n,h,y,R);h=this.$renderToken(n,h,y,R)}}},r.prototype.$renderOverflowMessage=function(n,i,h,m,y){h&&this.$renderToken(n,i,h,m.slice(0,this.MAX_LINE_LENGTH-i));var R=this.dom.createElement("span");R.className="ace_inline_button ace_keyword ace_toggle_wrap",R.textContent=y?"<hide>":"<click to see more...>",n.appendChild(R)},r.prototype.$renderLine=function(n,i,h){if(!h&&h!=!1&&(h=this.session.getFoldLine(i)),h)var m=this.$getFoldLineTokens(i,h);else var m=this.session.getTokens(i);var y=n;if(m.length){var R=this.session.getRowSplitData(i);if(R&&R.length){this.$renderWrappedLine(n,m,R);var y=n.lastChild}else{var y=n;this.$useLineGroups()&&(y=this.$createLineElement(),n.appendChild(y)),this.$renderSimpleLine(y,m)}}else this.$useLineGroups()&&(y=this.$createLineElement(),n.appendChild(y));if(this.showEOL&&y){h&&(i=h.end.row);var T=this.dom.createElement("span");T.className="ace_invisible ace_invisible_eol",T.textContent=i==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,y.appendChild(T)}},r.prototype.$getFoldLineTokens=function(n,i){var h=this.session,m=[];function y(T,k,w){for(var I=0,D=0;D+T[I].value.length<k;)if(D+=T[I].value.length,I++,I==T.length)return;if(D!=k){var E=T[I].value.substring(k-D);E.length>w-k&&(E=E.substring(0,w-k)),m.push({type:T[I].type,value:E}),D=k+E.length,I+=1}for(;D<w&&I<T.length;){var E=T[I].value;E.length+D>w?m.push({type:T[I].type,value:E.substring(0,w-D)}):m.push(T[I]),D+=E.length,I+=1}}var R=h.getTokens(n);return i.walk(function(T,k,w,I,D){T!=null?m.push({type:"fold",value:T}):(D&&(R=h.getTokens(k)),R.length&&y(R,I,w))},i.end.row,this.session.getLine(i.end.row).length),m},r.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},r})();o.prototype.EOF_CHAR="¶",o.prototype.EOL_CHAR_LF="¬",o.prototype.EOL_CHAR_CRLF="¤",o.prototype.EOL_CHAR=o.prototype.EOL_CHAR_LF,o.prototype.TAB_CHAR="—",o.prototype.SPACE_CHAR="·",o.prototype.$padding=0,o.prototype.MAX_LINE_LENGTH=1e4,o.prototype.showInvisibles=!1,o.prototype.showSpaces=!1,o.prototype.showTabs=!1,o.prototype.showEOL=!1,o.prototype.displayIndentGuides=!0,o.prototype.$highlightIndentGuides=!0,o.prototype.$tabStrings=[],o.prototype.destroy={},o.prototype.onChangeTabSize=o.prototype.$computeTabString,b.implement(o.prototype,f),u.Text=o}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(e,u,M){var b=e("../lib/dom"),v=(function(){function x(p){this.element=b.createElement("div"),this.element.className="ace_layer ace_cursor-layer",p.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),b.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return x.prototype.$updateOpacity=function(p){for(var f=this.cursors,a=f.length;a--;)b.setStyle(f[a].style,"opacity",p?"":"0")},x.prototype.$startCssAnimation=function(){for(var p=this.cursors,f=p.length;f--;)p[f].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout((function(){this.$isAnimating&&b.addCssClass(this.element,"ace_animate-blinking")}).bind(this))},x.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,b.removeCssClass(this.element,"ace_animate-blinking")},x.prototype.setPadding=function(p){this.$padding=p},x.prototype.setSession=function(p){this.session=p},x.prototype.setBlinking=function(p){p!=this.isBlinking&&(this.isBlinking=p,this.restartTimer())},x.prototype.setBlinkInterval=function(p){p!=this.blinkInterval&&(this.blinkInterval=p,this.restartTimer())},x.prototype.setSmoothBlinking=function(p){p!=this.smoothBlinking&&(this.smoothBlinking=p,b.setCssClass(this.element,"ace_smooth-blinking",p),this.$updateCursors(!0),this.restartTimer())},x.prototype.addCursor=function(){var p=b.createElement("div");return p.className="ace_cursor",this.element.appendChild(p),this.cursors.push(p),p},x.prototype.removeCursor=function(){if(this.cursors.length>1){var p=this.cursors.pop();return p.parentNode.removeChild(p),p}},x.prototype.hideCursor=function(){this.isVisible=!1,b.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},x.prototype.showCursor=function(){this.isVisible=!0,b.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},x.prototype.restartTimer=function(){var p=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,b.removeCssClass(this.element,"ace_smooth-blinking")),p(!0),!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout((function(){this.$isSmoothBlinking&&b.addCssClass(this.element,"ace_smooth-blinking")}).bind(this))),b.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var f=(function(){this.timeoutId=setTimeout(function(){p(!1)},.6*this.blinkInterval)}).bind(this);this.intervalId=setInterval(function(){p(!0),f()},this.blinkInterval),f()}},x.prototype.getPixelPosition=function(p,f){if(!this.config||!this.session)return{left:0,top:0};p||(p=this.session.selection.getCursor());var a=this.session.documentToScreenPosition(p),s=this.$padding+(this.session.$bidiHandler.isBidiRow(a.row,p.row)?this.session.$bidiHandler.getPosLeft(a.column):a.column*this.config.characterWidth),o=(a.row-(f?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:s,top:o}},x.prototype.isCursorInView=function(p,f){return p.top>=0&&p.top<f.maxHeight},x.prototype.update=function(p){this.config=p;var f=this.session.$selectionMarkers,a=0,s=0;(f===void 0||f.length===0)&&(f=[{cursor:null}]);for(var a=0,o=f.length;a<o;a++){var r=this.getPixelPosition(f[a].cursor,!0);if(!((r.top>p.height+p.offset||r.top<0)&&a>1)){var n=this.cursors[s++]||this.addCursor(),i=n.style;this.drawCursor?this.drawCursor(n,r,p,f[a],this.session):this.isCursorInView(r,p)?(b.setStyle(i,"display","block"),b.translate(n,r.left,r.top),b.setStyle(i,"width",Math.round(p.characterWidth)+"px"),b.setStyle(i,"height",p.lineHeight+"px")):b.setStyle(i,"display","none")}}for(;this.cursors.length>s;)this.removeCursor();var h=this.session.getOverwrite();this.$setOverwrite(h),this.$pixelPos=r,this.restartTimer()},x.prototype.$setOverwrite=function(p){p!=this.overwrite&&(this.overwrite=p,p?b.addCssClass(this.element,"ace_overwrite-cursors"):b.removeCssClass(this.element,"ace_overwrite-cursors"))},x.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},x})();v.prototype.$padding=0,v.prototype.drawCursor=null,u.Cursor=v}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,u,M){var b=this&&this.__extends||(function(){var n=function(i,h){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,y){m.__proto__=y}||function(m,y){for(var R in y)Object.prototype.hasOwnProperty.call(y,R)&&(m[R]=y[R])},n(i,h)};return function(i,h){if(typeof h!="function"&&h!==null)throw new TypeError("Class extends value "+String(h)+" is not a constructor or null");n(i,h);function m(){this.constructor=i}i.prototype=h===null?Object.create(h):(m.prototype=h.prototype,new m)}})(),v=e("./lib/oop"),x=e("./lib/dom"),p=e("./lib/event"),f=e("./lib/event_emitter").EventEmitter,a=32768,s=(function(){function n(i,h){this.element=x.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+h,this.inner=x.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent=" ",this.element.appendChild(this.inner),i.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,p.addListener(this.element,"scroll",this.onScroll.bind(this)),p.addListener(this.element,"mousedown",p.preventDefault)}return n.prototype.setVisible=function(i){this.element.style.display=i?"":"none",this.isVisible=i,this.coeff=1},n})();v.implement(s.prototype,f);var o=(function(n){b(i,n);function i(h,m){var y=n.call(this,h,"-v")||this;return y.scrollTop=0,y.scrollHeight=0,m.$scrollbarWidth=y.width=x.scrollbarWidth(h.ownerDocument),y.inner.style.width=y.element.style.width=(y.width||15)+5+"px",y.$minWidth=0,y}return i.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,this.coeff!=1){var h=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-h)/(this.coeff-h)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},i.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},i.prototype.setHeight=function(h){this.element.style.height=h+"px"},i.prototype.setScrollHeight=function(h){this.scrollHeight=h,h>a?(this.coeff=a/h,h=a):this.coeff!=1&&(this.coeff=1),this.inner.style.height=h+"px"},i.prototype.setScrollTop=function(h){this.scrollTop!=h&&(this.skipEvent=!0,this.scrollTop=h,this.element.scrollTop=h*this.coeff)},i})(s);o.prototype.setInnerHeight=o.prototype.setScrollHeight;var r=(function(n){b(i,n);function i(h,m){var y=n.call(this,h,"-h")||this;return y.scrollLeft=0,y.height=m.$scrollbarWidth,y.inner.style.height=y.element.style.height=(y.height||15)+5+"px",y}return i.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},i.prototype.getHeight=function(){return this.isVisible?this.height:0},i.prototype.setWidth=function(h){this.element.style.width=h+"px"},i.prototype.setInnerWidth=function(h){this.inner.style.width=h+"px"},i.prototype.setScrollWidth=function(h){this.inner.style.width=h+"px"},i.prototype.setScrollLeft=function(h){this.scrollLeft!=h&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=h)},i})(s);u.ScrollBar=o,u.ScrollBarV=o,u.ScrollBarH=r,u.VScrollBar=o,u.HScrollBar=r}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(e,u,M){var b=this&&this.__extends||(function(){var r=function(n,i){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(h,m){h.__proto__=m}||function(h,m){for(var y in m)Object.prototype.hasOwnProperty.call(m,y)&&(h[y]=m[y])},r(n,i)};return function(n,i){if(typeof i!="function"&&i!==null)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");r(n,i);function h(){this.constructor=n}n.prototype=i===null?Object.create(i):(h.prototype=i.prototype,new h)}})(),v=e("./lib/oop"),x=e("./lib/dom"),p=e("./lib/event"),f=e("./lib/event_emitter").EventEmitter;x.importCssString(`.ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{
211
+ position: absolute;
212
+ background: rgba(128, 128, 128, 0.6);
213
+ -moz-box-sizing: border-box;
214
+ box-sizing: border-box;
215
+ border: 1px solid #bbb;
216
+ border-radius: 2px;
217
+ z-index: 8;
218
+ }
219
+ .ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h {
220
+ position: absolute;
221
+ z-index: 6;
222
+ background: none;
223
+ overflow: hidden!important;
224
+ }
225
+ .ace_editor>.ace_sb-v {
226
+ z-index: 6;
227
+ right: 0;
228
+ top: 0;
229
+ width: 12px;
230
+ }
231
+ .ace_editor>.ace_sb-v div {
232
+ z-index: 8;
233
+ right: 0;
234
+ width: 100%;
235
+ }
236
+ .ace_editor>.ace_sb-h {
237
+ bottom: 0;
238
+ left: 0;
239
+ height: 12px;
240
+ }
241
+ .ace_editor>.ace_sb-h div {
242
+ bottom: 0;
243
+ height: 100%;
244
+ }
245
+ .ace_editor>.ace_sb_grabbed {
246
+ z-index: 8;
247
+ background: #000;
248
+ }`,"ace_scrollbar.css",!1);var a=(function(){function r(n,i){this.element=x.createElement("div"),this.element.className="ace_sb"+i,this.inner=x.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,n.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,p.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return r.prototype.setVisible=function(n){this.element.style.display=n?"":"none",this.isVisible=n,this.coeff=1},r})();v.implement(a.prototype,f);var s=(function(r){b(n,r);function n(i,h){var m=r.call(this,i,"-v")||this;return m.scrollTop=0,m.scrollHeight=0,m.parent=i,m.width=m.VScrollWidth,m.renderer=h,m.inner.style.width=m.element.style.width=(m.width||15)+"px",m.$minWidth=0,m}return n.prototype.onMouseDown=function(i,h){if(i==="mousedown"&&!(p.getButton(h)!==0||h.detail===2)){if(h.target===this.inner){var m=this,y=h.clientY,R=function(L){y=L.clientY},T=function(){clearInterval(D)},k=h.clientY,w=this.thumbTop,I=function(){if(y!==void 0){var L=m.scrollTopFromThumbTop(w+y-k);L!==m.scrollTop&&m._emit("scroll",{data:L})}};p.capture(this.inner,R,T);var D=setInterval(I,20);return p.preventDefault(h)}var E=h.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(E)}),p.preventDefault(h)}},n.prototype.getHeight=function(){return this.height},n.prototype.scrollTopFromThumbTop=function(i){var h=i*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return h=h>>0,h<0?h=0:h>this.pageHeight-this.viewHeight&&(h=this.pageHeight-this.viewHeight),h},n.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},n.prototype.setHeight=function(i){this.height=Math.max(0,i),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},n.prototype.setScrollHeight=function(i,h){this.pageHeight===i&&!h||(this.pageHeight=i,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},n.prototype.setScrollTop=function(i){this.scrollTop=i,i<0&&(i=0),this.thumbTop=i*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},n})(a);s.prototype.setInnerHeight=s.prototype.setScrollHeight;var o=(function(r){b(n,r);function n(i,h){var m=r.call(this,i,"-h")||this;return m.scrollLeft=0,m.scrollWidth=0,m.height=m.HScrollHeight,m.inner.style.height=m.element.style.height=(m.height||12)+"px",m.renderer=h,m}return n.prototype.onMouseDown=function(i,h){if(i==="mousedown"&&!(p.getButton(h)!==0||h.detail===2)){if(h.target===this.inner){var m=this,y=h.clientX,R=function(L){y=L.clientX},T=function(){clearInterval(D)},k=h.clientX,w=this.thumbLeft,I=function(){if(y!==void 0){var L=m.scrollLeftFromThumbLeft(w+y-k);L!==m.scrollLeft&&m._emit("scroll",{data:L})}};p.capture(this.inner,R,T);var D=setInterval(I,20);return p.preventDefault(h)}var E=h.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(E)}),p.preventDefault(h)}},n.prototype.getHeight=function(){return this.isVisible?this.height:0},n.prototype.scrollLeftFromThumbLeft=function(i){var h=i*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return h=h>>0,h<0?h=0:h>this.pageWidth-this.viewWidth&&(h=this.pageWidth-this.viewWidth),h},n.prototype.setWidth=function(i){this.width=Math.max(0,i),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},n.prototype.setScrollWidth=function(i,h){this.pageWidth===i&&!h||(this.pageWidth=i,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft})))},n.prototype.setScrollLeft=function(i){this.scrollLeft=i,i<0&&(i=0),this.thumbLeft=i*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},n})(a);o.prototype.setInnerWidth=o.prototype.setScrollWidth,u.ScrollBar=s,u.ScrollBarV=s,u.ScrollBarH=o,u.VScrollBar=s,u.HScrollBar=o}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(e,u,M){var b=e("./lib/event"),v=(function(){function x(p,f){this.onRender=p,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=f||window;var a=this;this._flush=function(s){a.pending=!1;var o=a.changes;if(o&&(b.blockIdle(100),a.changes=0,a.onRender(o)),a.changes){if(a.$recursionLimit--<0)return;a.schedule()}else a.$recursionLimit=2}}return x.prototype.schedule=function(p){this.changes=this.changes|p,this.changes&&!this.pending&&(b.nextFrame(this._flush),this.pending=!0)},x.prototype.clear=function(p){var f=this.changes;return this.changes=0,f},x})();u.RenderLoop=v}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(e,u,M){var b=e("../lib/oop"),v=e("../lib/dom"),x=e("../lib/lang"),p=e("../lib/event"),f=e("../lib/useragent"),a=e("../lib/event_emitter").EventEmitter,s=512,o=typeof ResizeObserver=="function",r=200,n=(function(){function i(h){this.el=v.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=v.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=v.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),h.appendChild(this.el),this.$measureNode.textContent=x.stringRepeat("X",s),this.$characterSize={width:0,height:0},o?this.$addObserver():this.checkForSizeChanges()}return i.prototype.$setMeasureNodeStyles=function(h,m){h.width=h.height="auto",h.left=h.top="0px",h.visibility="hidden",h.position="absolute",h.whiteSpace="pre",f.isIE<8?h["font-family"]="inherit":h.font="inherit",h.overflow=m?"hidden":"visible"},i.prototype.checkForSizeChanges=function(h){if(h===void 0&&(h=this.$measureSizes()),h&&(this.$characterSize.width!==h.width||this.$characterSize.height!==h.height)){this.$measureNode.style.fontWeight="bold";var m=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=h,this.charSizes=Object.create(null),this.allowBoldFonts=m&&m.width===h.width&&m.height===h.height,this._emit("changeCharacterSize",{data:h})}},i.prototype.$addObserver=function(){var h=this;this.$observer=new window.ResizeObserver(function(m){h.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},i.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var h=this;return this.$pollSizeChangesTimer=p.onIdle(function m(){h.checkForSizeChanges(),p.onIdle(m,500)},500)},i.prototype.setPolling=function(h){h?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},i.prototype.$measureSizes=function(h){var m={height:(h||this.$measureNode).clientHeight,width:(h||this.$measureNode).clientWidth/s};return m.width===0||m.height===0?null:m},i.prototype.$measureCharWidth=function(h){this.$main.textContent=x.stringRepeat(h,s);var m=this.$main.getBoundingClientRect();return m.width/s},i.prototype.getCharacterWidth=function(h){var m=this.charSizes[h];return m===void 0&&(m=this.charSizes[h]=this.$measureCharWidth(h)/this.$characterSize.width),m},i.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},i.prototype.$getZoom=function(h){return!h||!h.parentElement?1:(Number(window.getComputedStyle(h).zoom)||1)*this.$getZoom(h.parentElement)},i.prototype.$initTransformMeasureNodes=function(){var h=function(m,y){return["div",{style:"position: absolute;top:"+m+"px;left:"+y+"px;"}]};this.els=v.buildDom([h(0,0),h(r,0),h(0,r),h(r,r)],this.el)},i.prototype.transformCoordinates=function(h,m){if(h){var y=this.$getZoom(this.el);h=w(1/y,h)}function R(Q,te,le){var ne=Q[1]*te[0]-Q[0]*te[1];return[(-te[1]*le[0]+te[0]*le[1])/ne,(+Q[1]*le[0]-Q[0]*le[1])/ne]}function T(Q,te){return[Q[0]-te[0],Q[1]-te[1]]}function k(Q,te){return[Q[0]+te[0],Q[1]+te[1]]}function w(Q,te){return[Q*te[0],Q*te[1]]}this.els||this.$initTransformMeasureNodes();function I(Q){var te=Q.getBoundingClientRect();return[te.left,te.top]}var D=I(this.els[0]),E=I(this.els[1]),L=I(this.els[2]),z=I(this.els[3]),F=R(T(z,E),T(z,L),T(k(E,L),k(z,D))),O=w(1+F[0],T(E,D)),A=w(1+F[1],T(L,D));if(m){var S=m,N=F[0]*S[0]/r+F[1]*S[1]/r+1,W=k(w(S[0],O),w(S[1],A));return k(w(1/N/r,W),D)}var V=T(h,D),G=R(T(O,w(F[0],V)),T(A,w(F[1],V)),V);return w(r,G)},i})();n.prototype.$characterSize={width:0,height:0},b.implement(n.prototype,a),u.FontMetrics=n}),ace.define("ace/css/editor-css",["require","exports","module"],function(e,u,M){M.exports=`
249
+ .ace_br1 {border-top-left-radius : 3px;}
250
+ .ace_br2 {border-top-right-radius : 3px;}
251
+ .ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;}
252
+ .ace_br4 {border-bottom-right-radius: 3px;}
253
+ .ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;}
254
+ .ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;}
255
+ .ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;}
256
+ .ace_br8 {border-bottom-left-radius : 3px;}
257
+ .ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;}
258
+ .ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;}
259
+ .ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;}
260
+ .ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
261
+ .ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
262
+ .ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
263
+ .ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;}
264
+
265
+
266
+ .ace_editor {
267
+ position: relative;
268
+ overflow: hidden;
269
+ padding: 0;
270
+ font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace;
271
+ direction: ltr;
272
+ text-align: left;
273
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
274
+ forced-color-adjust: none;
275
+ }
276
+
277
+ .ace_scroller {
278
+ position: absolute;
279
+ overflow: hidden;
280
+ top: 0;
281
+ bottom: 0;
282
+ background-color: inherit;
283
+ -ms-user-select: none;
284
+ -moz-user-select: none;
285
+ -webkit-user-select: none;
286
+ user-select: none;
287
+ cursor: text;
288
+ }
289
+
290
+ .ace_content {
291
+ position: absolute;
292
+ box-sizing: border-box;
293
+ min-width: 100%;
294
+ contain: style size layout;
295
+ font-variant-ligatures: no-common-ligatures;
296
+ }
297
+ .ace_invisible {
298
+ font-variant-ligatures: none;
299
+ }
300
+
301
+ .ace_keyboard-focus:focus {
302
+ box-shadow: inset 0 0 0 2px #5E9ED6;
303
+ outline: none;
304
+ }
305
+
306
+ .ace_dragging .ace_scroller:before{
307
+ position: absolute;
308
+ top: 0;
309
+ left: 0;
310
+ right: 0;
311
+ bottom: 0;
312
+ content: '';
313
+ background: rgba(250, 250, 250, 0.01);
314
+ z-index: 1000;
315
+ }
316
+ .ace_dragging.ace_dark .ace_scroller:before{
317
+ background: rgba(0, 0, 0, 0.01);
318
+ }
319
+
320
+ .ace_gutter {
321
+ position: absolute;
322
+ overflow : hidden;
323
+ width: auto;
324
+ top: 0;
325
+ bottom: 0;
326
+ left: 0;
327
+ cursor: default;
328
+ z-index: 4;
329
+ -ms-user-select: none;
330
+ -moz-user-select: none;
331
+ -webkit-user-select: none;
332
+ user-select: none;
333
+ contain: style size layout;
334
+ }
335
+
336
+ .ace_gutter-active-line {
337
+ position: absolute;
338
+ left: 0;
339
+ right: 0;
340
+ }
341
+
342
+ .ace_scroller.ace_scroll-left:after {
343
+ content: "";
344
+ position: absolute;
345
+ top: 0;
346
+ right: 0;
347
+ bottom: 0;
348
+ left: 0;
349
+ box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset;
350
+ pointer-events: none;
351
+ }
352
+
353
+ .ace_gutter-cell, .ace_gutter-cell_svg-icons {
354
+ position: absolute;
355
+ top: 0;
356
+ left: 0;
357
+ right: 0;
358
+ padding-left: 19px;
359
+ padding-right: 6px;
360
+ background-repeat: no-repeat;
361
+ }
362
+
363
+ .ace_gutter-cell_svg-icons .ace_gutter_annotation {
364
+ margin-left: -14px;
365
+ float: left;
366
+ }
367
+
368
+ .ace_gutter-cell .ace_gutter_annotation {
369
+ margin-left: -19px;
370
+ float: left;
371
+ }
372
+
373
+ .ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold, .ace_gutter-cell.ace_security, .ace_icon.ace_security, .ace_icon.ace_security_fold {
374
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==");
375
+ background-repeat: no-repeat;
376
+ background-position: 2px center;
377
+ }
378
+
379
+ .ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold {
380
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==");
381
+ background-repeat: no-repeat;
382
+ background-position: 2px center;
383
+ }
384
+
385
+ .ace_gutter-cell.ace_info, .ace_icon.ace_info, .ace_gutter-cell.ace_hint, .ace_icon.ace_hint {
386
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=");
387
+ background-repeat: no-repeat;
388
+ background-position: 2px center;
389
+ }
390
+
391
+ .ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info, .ace_dark .ace_gutter-cell.ace_hint, .ace_dark .ace_icon.ace_hint {
392
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC");
393
+ }
394
+
395
+ .ace_icon_svg.ace_error {
396
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+");
397
+ background-color: crimson;
398
+ }
399
+ .ace_icon_svg.ace_security {
400
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0iZGFya29yYW5nZSIgZmlsbD0ibm9uZSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgogICAgICAgIDxwYXRoIGNsYXNzPSJzdHJva2UtbGluZWpvaW4tcm91bmQiIGQ9Ik04IDE0LjgzMDdDOCAxNC44MzA3IDIgMTIuOTA0NyAyIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOEM3Ljk4OTk5IDEuMzQ5MTggMTAuNjkgMy4yNjU0OCAxNCAzLjI2NTQ4VjguMDg5OTJDMTQgMTIuOTA0NyA4IDE0LjgzMDcgOCAxNC44MzA3WiIvPgogICAgICAgIDxwYXRoIGQ9Ik0yIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMy45OSA4LjA4OTkyVjMuMjY1NDhDMTAuNjggMy4yNjU0OCA4IDEuMzQ5MTggOCAxLjM0OTE4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggNFY5Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggMTBWMTIiLz4KICAgIDwvZz4KPC9zdmc+");
401
+ background-color: crimson;
402
+ }
403
+ .ace_icon_svg.ace_warning {
404
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==");
405
+ background-color: darkorange;
406
+ }
407
+ .ace_icon_svg.ace_info {
408
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==");
409
+ background-color: royalblue;
410
+ }
411
+ .ace_icon_svg.ace_hint {
412
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0ic2lsdmVyIiBmaWxsPSJub25lIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTYgMTRIMTAiLz4KICAgICAgICA8cGF0aCBkPSJNOCAxMUg5QzkgOS40NzAwMiAxMiA4LjU0MDAyIDEyIDUuNzYwMDJDMTIuMDIgNC40MDAwMiAxMS4zOSAzLjM2MDAyIDEwLjQzIDIuNjcwMDJDOSAxLjY0MDAyIDcuMDAwMDEgMS42NDAwMiA1LjU3MDAxIDIuNjcwMDJDNC42MTAwMSAzLjM2MDAyIDMuOTggNC40MDAwMiA0IDUuNzYwMDJDNCA4LjU0MDAyIDcuMDAwMDEgOS40NzAwMiA3LjAwMDAxIDExSDhaIi8+CiAgICA8L2c+Cjwvc3ZnPg==");
413
+ background-color: silver;
414
+ }
415
+
416
+ .ace_icon_svg.ace_error_fold {
417
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
418
+ background-color: crimson;
419
+ }
420
+ .ace_icon_svg.ace_security_fold {
421
+ -webkit-mask-image: url("data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTcgMTQiIGZpbGw9Im5vbmUiPgogICAgPHBhdGggZD0iTTEwLjAwMDEgMTMuNjk5MkMxMC4wMDAxIDEzLjY5OTIgMTEuOTI0MSAxMy40NzYzIDEzIDEyLjY5OTJDMTQuNDEzOSAxMS42NzgxIDE2IDEwLjUgMTYuMTI1MSA2LjgxMTI2VjIuNTg5ODdDMTYuMTI1MSAyLjU0NzY4IDE2LjEyMjEgMi41MDYxOSAxNi4xMTY0IDIuNDY1NTlWMS43MTQ4NUgxNS4yNDE0TDE1LjIzMDcgMS43MTQ4NEwxNC42MjUxIDEuNjk5MjJWNi44MTEyM0MxNC42MjUxIDguNTEwNjEgMTQuNjI1MSA5LjQ2NDYxIDEyLjc4MjQgMTEuNzIxQzEyLjE1ODYgMTIuNDg0OCAxMC4wMDAxIDEzLjY5OTIgMTAuMDAwMSAxMy42OTkyWiIgZmlsbD0iY3JpbXNvbiIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuMzM2MDkgMC4zNjc0NzVDNy4wMzIxNCAwLjE1MjY1MiA2LjYyNTQ4IDAuMTUzNjE0IDYuMzIyNTMgMC4zNjk5OTdMNi4zMDg2OSAwLjM3OTU1NEM2LjI5NTUzIDAuMzg4NTg4IDYuMjczODggMC40MDMyNjYgNi4yNDQxNyAwLjQyMjc4OUM2LjE4NDcxIDAuNDYxODYgNi4wOTMyMSAwLjUyMDE3MSA1Ljk3MzEzIDAuNTkxMzczQzUuNzMyNTEgMC43MzQwNTkgNS4zNzk5IDAuOTI2ODY0IDQuOTQyNzkgMS4xMjAwOUM0LjA2MTQ0IDEuNTA5NyAyLjg3NTQxIDEuODgzNzcgMS41ODk4NCAxLjg4Mzc3SDAuNzE0ODQ0VjIuNzU4NzdWNi45ODAxNUMwLjcxNDg0NCA5LjQ5Mzc0IDIuMjg4NjYgMTEuMTk3MyAzLjcwMjU0IDEyLjIxODVDNC40MTg0NSAxMi43MzU1IDUuMTI4NzQgMTMuMTA1MyA1LjY1NzMzIDEzLjM0NTdDNS45MjI4NCAxMy40NjY0IDYuMTQ1NjYgMTMuNTU1OSA2LjMwNDY1IDEzLjYxNjFDNi4zODQyMyAxMy42NDYyIDYuNDQ4MDUgMTMuNjY5IDYuNDkzNDkgMTMuNjg0OEM2LjUxNjIyIDEzLjY5MjcgNi41MzQzOCAxMy42OTg5IDYuNTQ3NjQgMTMuNzAzM0w2LjU2MzgyIDEzLjcwODdMNi41NjkwOCAxMy43MTA0TDYuNTcwOTkgMTMuNzExTDYuODM5ODQgMTMuNzUzM0w2LjU3MjQyIDEzLjcxMTVDNi43NDYzMyAxMy43NjczIDYuOTMzMzUgMTMuNzY3MyA3LjEwNzI3IDEzLjcxMTVMNy4xMDg3IDEzLjcxMUw3LjExMDYxIDEzLjcxMDRMNy4xMTU4NyAxMy43MDg3TDcuMTMyMDUgMTMuNzAzM0M3LjE0NTMxIDEzLjY5ODkgNy4xNjM0NiAxMy42OTI3IDcuMTg2MTkgMTMuNjg0OEM3LjIzMTY0IDEzLjY2OSA3LjI5NTQ2IDEzLjY0NjIgNy4zNzUwMyAxMy42MTYxQzcuNTM0MDMgMTMuNTU1OSA3Ljc1Njg1IDEzLjQ2NjQgOC4wMjIzNiAxMy4zNDU3QzguNTUwOTUgMTMuMTA1MyA5LjI2MTIzIDEyLjczNTUgOS45NzcxNSAxMi4yMTg1QzExLjM5MSAxMS4xOTczIDEyLjk2NDggOS40OTM3NyAxMi45NjQ4IDYuOTgwMThWMi43NTg4QzEyLjk2NDggMi43MTY2IDEyLjk2MTkgMi42NzUxMSAxMi45NTYxIDIuNjM0NTFWMS44ODM3N0gxMi4wODExQzEyLjA3NzUgMS44ODM3NyAxMi4wNzQgMS44ODM3NyAxMi4wNzA0IDEuODgzNzdDMTAuNzk3OSAxLjg4MDA0IDkuNjE5NjIgMS41MTEwMiA4LjczODk0IDEuMTI0ODZDOC43MzUzNCAxLjEyMzI3IDguNzMxNzQgMS4xMjE2OCA4LjcyODE0IDEuMTIwMDlDOC4yOTEwMyAwLjkyNjg2NCA3LjkzODQyIDAuNzM0MDU5IDcuNjk3NzkgMC41OTEzNzNDNy41Nzc3MiAwLjUyMDE3MSA3LjQ4NjIyIDAuNDYxODYgNy40MjY3NiAwLjQyMjc4OUM3LjM5NzA1IDAuNDAzMjY2IDcuMzc1MzkgMC4zODg1ODggNy4zNjIyNCAwLjM3OTU1NEw3LjM0ODk2IDAuMzcwMzVDNy4zNDg5NiAwLjM3MDM1IDcuMzQ4NDcgMC4zNzAwMiA3LjM0NTYzIDAuMzc0MDU0TDcuMzM3NzkgMC4zNjg2NTlMNy4zMzYwOSAwLjM2NzQ3NVpNOC4wMzQ3MSAyLjcyNjkxQzguODYwNCAzLjA5MDYzIDkuOTYwNjYgMy40NjMwOSAxMS4yMDYxIDMuNTg5MDdWNi45ODAxNUgxMS4yMTQ4QzExLjIxNDggOC42Nzk1MyAxMC4xNjM3IDkuOTI1MDcgOC45NTI1NCAxMC43OTk4QzguMzU1OTUgMTEuMjMwNiA3Ljc1Mzc0IDExLjU0NTQgNy4yOTc5NiAxMS43NTI3QzcuMTE2NzEgMTEuODM1MSA2Ljk2MDYyIDExLjg5OTYgNi44Mzk4NCAxMS45NDY5QzYuNzE5MDYgMTEuODk5NiA2LjU2Mjk3IDExLjgzNTEgNi4zODE3MyAxMS43NTI3QzUuOTI1OTUgMTEuNTQ1NCA1LjMyMzczIDExLjIzMDYgNC43MjcxNSAxMC43OTk4QzMuNTE2MDMgOS45MjUwNyAyLjQ2NDg0IDguNjc5NTUgMi40NjQ4NCA2Ljk4MDE4VjMuNTg5MDlDMy43MTczOCAzLjQ2MjM5IDQuODIzMDggMy4wODYzOSA1LjY1MDMzIDIuNzIwNzFDNi4xNDIyOCAyLjUwMzI0IDYuNTQ0ODUgMi4yODUzNyA2LjgzMjU0IDIuMTE2MjRDNy4xMjE4MSAyLjI4NTM1IDcuNTI3IDIuNTAzNTIgOC4wMjE5NiAyLjcyMTMxQzguMDI2MiAyLjcyMzE3IDguMDMwNDUgMi43MjUwNCA4LjAzNDcxIDIuNzI2OTFaTTUuOTY0ODQgMy40MDE0N1Y3Ljc3NjQ3SDcuNzE0ODRWMy40MDE0N0g1Ljk2NDg0Wk01Ljk2NDg0IDEwLjQwMTVWOC42NTE0N0g3LjcxNDg0VjEwLjQwMTVINS45NjQ4NFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=");
422
+ background-color: crimson;
423
+ }
424
+ .ace_icon_svg.ace_warning_fold {
425
+ -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=");
426
+ background-color: darkorange;
427
+ }
428
+
429
+ .ace_scrollbar {
430
+ contain: strict;
431
+ position: absolute;
432
+ right: 0;
433
+ bottom: 0;
434
+ z-index: 6;
435
+ }
436
+
437
+ .ace_scrollbar-inner {
438
+ position: absolute;
439
+ cursor: text;
440
+ left: 0;
441
+ top: 0;
442
+ }
443
+
444
+ .ace_scrollbar-v{
445
+ overflow-x: hidden;
446
+ overflow-y: scroll;
447
+ top: 0;
448
+ }
449
+
450
+ .ace_scrollbar-h {
451
+ overflow-x: scroll;
452
+ overflow-y: hidden;
453
+ left: 0;
454
+ }
455
+
456
+ .ace_print-margin {
457
+ position: absolute;
458
+ height: 100%;
459
+ }
460
+
461
+ .ace_text-input {
462
+ position: absolute;
463
+ z-index: 0;
464
+ width: 0.5em;
465
+ height: 1em;
466
+ opacity: 0;
467
+ background: transparent;
468
+ -moz-appearance: none;
469
+ appearance: none;
470
+ border: none;
471
+ resize: none;
472
+ outline: none;
473
+ overflow: hidden;
474
+ font: inherit;
475
+ padding: 0 1px;
476
+ margin: 0 -1px;
477
+ contain: strict;
478
+ -ms-user-select: text;
479
+ -moz-user-select: text;
480
+ -webkit-user-select: text;
481
+ user-select: text;
482
+ /*with \`pre-line\` chrome inserts &nbsp; instead of space*/
483
+ white-space: pre!important;
484
+ }
485
+ .ace_text-input.ace_composition {
486
+ background: transparent;
487
+ color: inherit;
488
+ z-index: 1000;
489
+ opacity: 1;
490
+ }
491
+ .ace_composition_placeholder { color: transparent }
492
+ .ace_composition_marker {
493
+ border-bottom: 1px solid;
494
+ position: absolute;
495
+ border-radius: 0;
496
+ margin-top: 1px;
497
+ }
498
+
499
+ [ace_nocontext=true] {
500
+ transform: none!important;
501
+ filter: none!important;
502
+ clip-path: none!important;
503
+ mask : none!important;
504
+ contain: none!important;
505
+ perspective: none!important;
506
+ mix-blend-mode: initial!important;
507
+ z-index: auto;
508
+ }
509
+
510
+ .ace_layer {
511
+ z-index: 1;
512
+ position: absolute;
513
+ overflow: hidden;
514
+ /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/
515
+ word-wrap: normal;
516
+ white-space: pre;
517
+ height: 100%;
518
+ width: 100%;
519
+ box-sizing: border-box;
520
+ /* setting pointer-events: auto; on node under the mouse, which changes
521
+ during scroll, will break mouse wheel scrolling in Safari */
522
+ pointer-events: none;
523
+ }
524
+
525
+ .ace_gutter-layer {
526
+ position: relative;
527
+ width: auto;
528
+ text-align: right;
529
+ pointer-events: auto;
530
+ height: 1000000px;
531
+ contain: style size layout;
532
+ }
533
+
534
+ .ace_text-layer {
535
+ font: inherit !important;
536
+ position: absolute;
537
+ height: 1000000px;
538
+ width: 1000000px;
539
+ contain: style size layout;
540
+ }
541
+
542
+ .ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group {
543
+ contain: style size layout;
544
+ position: absolute;
545
+ top: 0;
546
+ left: 0;
547
+ right: 0;
548
+ }
549
+
550
+ .ace_hidpi .ace_text-layer,
551
+ .ace_hidpi .ace_gutter-layer,
552
+ .ace_hidpi .ace_content,
553
+ .ace_hidpi .ace_gutter {
554
+ contain: strict;
555
+ }
556
+ .ace_hidpi .ace_text-layer > .ace_line,
557
+ .ace_hidpi .ace_text-layer > .ace_line_group {
558
+ contain: strict;
559
+ }
560
+
561
+ .ace_cjk {
562
+ display: inline-block;
563
+ text-align: center;
564
+ }
565
+
566
+ .ace_cursor-layer {
567
+ z-index: 4;
568
+ }
569
+
570
+ .ace_cursor {
571
+ z-index: 4;
572
+ position: absolute;
573
+ box-sizing: border-box;
574
+ border-left: 2px solid;
575
+ /* workaround for smooth cursor repaintng whole screen in chrome */
576
+ transform: translatez(0);
577
+ }
578
+
579
+ .ace_multiselect .ace_cursor {
580
+ border-left-width: 1px;
581
+ }
582
+
583
+ .ace_slim-cursors .ace_cursor {
584
+ border-left-width: 1px;
585
+ }
586
+
587
+ .ace_overwrite-cursors .ace_cursor {
588
+ border-left-width: 0;
589
+ border-bottom: 1px solid;
590
+ }
591
+
592
+ .ace_hidden-cursors .ace_cursor {
593
+ opacity: 0.2;
594
+ }
595
+
596
+ .ace_hasPlaceholder .ace_hidden-cursors .ace_cursor {
597
+ opacity: 0;
598
+ }
599
+
600
+ .ace_smooth-blinking .ace_cursor {
601
+ transition: opacity 0.18s;
602
+ }
603
+
604
+ .ace_animate-blinking .ace_cursor {
605
+ animation-duration: 1000ms;
606
+ animation-timing-function: step-end;
607
+ animation-name: blink-ace-animate;
608
+ animation-iteration-count: infinite;
609
+ }
610
+
611
+ .ace_animate-blinking.ace_smooth-blinking .ace_cursor {
612
+ animation-duration: 1000ms;
613
+ animation-timing-function: ease-in-out;
614
+ animation-name: blink-ace-animate-smooth;
615
+ }
616
+
617
+ @keyframes blink-ace-animate {
618
+ from, to { opacity: 1; }
619
+ 60% { opacity: 0; }
620
+ }
621
+
622
+ @keyframes blink-ace-animate-smooth {
623
+ from, to { opacity: 1; }
624
+ 45% { opacity: 1; }
625
+ 60% { opacity: 0; }
626
+ 85% { opacity: 0; }
627
+ }
628
+
629
+ .ace_marker-layer .ace_step, .ace_marker-layer .ace_stack {
630
+ position: absolute;
631
+ z-index: 3;
632
+ }
633
+
634
+ .ace_marker-layer .ace_selection {
635
+ position: absolute;
636
+ z-index: 5;
637
+ }
638
+
639
+ .ace_marker-layer .ace_bracket {
640
+ position: absolute;
641
+ z-index: 6;
642
+ }
643
+
644
+ .ace_marker-layer .ace_error_bracket {
645
+ position: absolute;
646
+ border-bottom: 1px solid #DE5555;
647
+ border-radius: 0;
648
+ }
649
+
650
+ .ace_marker-layer .ace_active-line {
651
+ position: absolute;
652
+ z-index: 2;
653
+ }
654
+
655
+ .ace_marker-layer .ace_selected-word {
656
+ position: absolute;
657
+ z-index: 4;
658
+ box-sizing: border-box;
659
+ }
660
+
661
+ .ace_line .ace_fold {
662
+ box-sizing: border-box;
663
+
664
+ display: inline-block;
665
+ height: 11px;
666
+ margin-top: -2px;
667
+ vertical-align: middle;
668
+
669
+ background-image:
670
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
671
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=");
672
+ background-repeat: no-repeat, repeat-x;
673
+ background-position: center center, top left;
674
+ color: transparent;
675
+
676
+ border: 1px solid black;
677
+ border-radius: 2px;
678
+
679
+ cursor: pointer;
680
+ pointer-events: auto;
681
+ }
682
+
683
+ .ace_dark .ace_fold {
684
+ }
685
+
686
+ .ace_fold:hover{
687
+ background-image:
688
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="),
689
+ url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC");
690
+ }
691
+
692
+ .ace_tooltip {
693
+ background-color: #f5f5f5;
694
+ border: 1px solid gray;
695
+ border-radius: 1px;
696
+ box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
697
+ color: black;
698
+ padding: 3px 4px;
699
+ position: fixed;
700
+ z-index: 999999;
701
+ box-sizing: border-box;
702
+ cursor: default;
703
+ white-space: pre-wrap;
704
+ word-wrap: break-word;
705
+ line-height: normal;
706
+ font-style: normal;
707
+ font-weight: normal;
708
+ letter-spacing: normal;
709
+ pointer-events: none;
710
+ overflow: auto;
711
+ max-width: min(33em, 66vw);
712
+ overscroll-behavior: contain;
713
+ }
714
+ .ace_tooltip pre {
715
+ white-space: pre-wrap;
716
+ }
717
+
718
+ .ace_tooltip.ace_dark {
719
+ background-color: #636363;
720
+ color: #fff;
721
+ }
722
+
723
+ .ace_tooltip:focus {
724
+ outline: 1px solid #5E9ED6;
725
+ }
726
+
727
+ .ace_icon {
728
+ display: inline-block;
729
+ width: 18px;
730
+ vertical-align: top;
731
+ }
732
+
733
+ .ace_icon_svg {
734
+ display: inline-block;
735
+ width: 12px;
736
+ vertical-align: top;
737
+ -webkit-mask-repeat: no-repeat;
738
+ -webkit-mask-size: 12px;
739
+ -webkit-mask-position: center;
740
+ }
741
+
742
+ .ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons {
743
+ padding-right: 13px;
744
+ }
745
+
746
+ .ace_fold-widget, .ace_custom-widget {
747
+ box-sizing: border-box;
748
+
749
+ margin: 0 -12px 0 1px;
750
+ display: none;
751
+ width: 11px;
752
+ vertical-align: top;
753
+
754
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==");
755
+ background-repeat: no-repeat;
756
+ background-position: center;
757
+
758
+ border-radius: 3px;
759
+
760
+ border: 1px solid transparent;
761
+ cursor: pointer;
762
+ pointer-events: auto;
763
+ }
764
+
765
+ .ace_custom-widget {
766
+ background: none;
767
+ }
768
+
769
+ .ace_folding-enabled .ace_fold-widget {
770
+ display: inline-block;
771
+ }
772
+
773
+ .ace_fold-widget.ace_end {
774
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==");
775
+ }
776
+
777
+ .ace_fold-widget.ace_closed {
778
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==");
779
+ }
780
+
781
+ .ace_fold-widget:hover {
782
+ border: 1px solid rgba(0, 0, 0, 0.3);
783
+ background-color: rgba(255, 255, 255, 0.2);
784
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7);
785
+ }
786
+
787
+ .ace_fold-widget:active {
788
+ border: 1px solid rgba(0, 0, 0, 0.4);
789
+ background-color: rgba(0, 0, 0, 0.05);
790
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8);
791
+ }
792
+ /**
793
+ * Dark version for fold widgets
794
+ */
795
+ .ace_dark .ace_fold-widget {
796
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC");
797
+ }
798
+ .ace_dark .ace_fold-widget.ace_end {
799
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==");
800
+ }
801
+ .ace_dark .ace_fold-widget.ace_closed {
802
+ background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==");
803
+ }
804
+ .ace_dark .ace_fold-widget:hover {
805
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
806
+ background-color: rgba(255, 255, 255, 0.1);
807
+ }
808
+ .ace_dark .ace_fold-widget:active {
809
+ box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2);
810
+ }
811
+
812
+ .ace_inline_button {
813
+ border: 1px solid lightgray;
814
+ display: inline-block;
815
+ margin: -1px 8px;
816
+ padding: 0 5px;
817
+ pointer-events: auto;
818
+ cursor: pointer;
819
+ }
820
+ .ace_inline_button:hover {
821
+ border-color: gray;
822
+ background: rgba(200,200,200,0.2);
823
+ display: inline-block;
824
+ pointer-events: auto;
825
+ }
826
+
827
+ .ace_fold-widget.ace_invalid {
828
+ background-color: #FFB4B4;
829
+ border-color: #DE5555;
830
+ }
831
+
832
+ .ace_fade-fold-widgets .ace_fold-widget {
833
+ transition: opacity 0.4s ease 0.05s;
834
+ opacity: 0;
835
+ }
836
+
837
+ .ace_fade-fold-widgets:hover .ace_fold-widget {
838
+ transition: opacity 0.05s ease 0.05s;
839
+ opacity:1;
840
+ }
841
+
842
+ .ace_underline {
843
+ text-decoration: underline;
844
+ }
845
+
846
+ .ace_bold {
847
+ font-weight: bold;
848
+ }
849
+
850
+ .ace_nobold .ace_bold {
851
+ font-weight: normal;
852
+ }
853
+
854
+ .ace_italic {
855
+ font-style: italic;
856
+ }
857
+
858
+
859
+ .ace_error-marker {
860
+ background-color: rgba(255, 0, 0,0.2);
861
+ position: absolute;
862
+ z-index: 9;
863
+ }
864
+
865
+ .ace_highlight-marker {
866
+ background-color: rgba(255, 255, 0,0.2);
867
+ position: absolute;
868
+ z-index: 8;
869
+ }
870
+
871
+ .ace_mobile-menu {
872
+ position: absolute;
873
+ line-height: 1.5;
874
+ border-radius: 4px;
875
+ -ms-user-select: none;
876
+ -moz-user-select: none;
877
+ -webkit-user-select: none;
878
+ user-select: none;
879
+ background: white;
880
+ box-shadow: 1px 3px 2px grey;
881
+ border: 1px solid #dcdcdc;
882
+ color: black;
883
+ }
884
+ .ace_dark > .ace_mobile-menu {
885
+ background: #333;
886
+ color: #ccc;
887
+ box-shadow: 1px 3px 2px grey;
888
+ border: 1px solid #444;
889
+
890
+ }
891
+ .ace_mobile-button {
892
+ padding: 2px;
893
+ cursor: pointer;
894
+ overflow: hidden;
895
+ }
896
+ .ace_mobile-button:hover {
897
+ background-color: #eee;
898
+ opacity:1;
899
+ }
900
+ .ace_mobile-button:active {
901
+ background-color: #ddd;
902
+ }
903
+
904
+ .ace_placeholder {
905
+ position: relative;
906
+ font-family: arial;
907
+ transform: scale(0.9);
908
+ transform-origin: left;
909
+ white-space: pre;
910
+ opacity: 0.7;
911
+ margin: 0 10px;
912
+ z-index: 1;
913
+ }
914
+
915
+ .ace_ghost_text {
916
+ opacity: 0.5;
917
+ font-style: italic;
918
+ }
919
+
920
+ .ace_ghost_text_container > div {
921
+ white-space: pre;
922
+ }
923
+
924
+ .ghost_text_line_wrapped::after {
925
+ content: "↩";
926
+ position: absolute;
927
+ }
928
+
929
+ .ace_lineWidgetContainer.ace_ghost_text {
930
+ margin: 0px 4px
931
+ }
932
+
933
+ .ace_screenreader-only {
934
+ position:absolute;
935
+ left:-10000px;
936
+ top:auto;
937
+ width:1px;
938
+ height:1px;
939
+ overflow:hidden;
940
+ }
941
+
942
+ .ace_hidden_token {
943
+ display: none;
944
+ }`}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(e,u,M){var b=e("../lib/dom"),v=e("../lib/oop"),x=e("../lib/event_emitter").EventEmitter,p=(function(){function f(a,s){this.renderer=s,this.pixelRatio=1,this.maxHeight=s.layerConfig.maxHeight,this.lineHeight=s.layerConfig.lineHeight,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},this.setScrollBarV(a)}return f.prototype.$createCanvas=function(){this.canvas=b.createElement("canvas"),this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7",this.canvas.style.position="absolute"},f.prototype.setScrollBarV=function(a){this.$createCanvas(),this.scrollbarV=a,a.element.appendChild(this.canvas),this.setDimensions()},f.prototype.$updateDecorators=function(a){if(typeof this.canvas.getContext!="function")return;var s=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;this.setDimensions(a);var o=this.canvas.getContext("2d");function r(O,A){return O.priority<A.priority?-1:O.priority>A.priority?1:0}var n=this.renderer.session.$annotations;if(o.clearRect(0,0,this.canvas.width,this.canvas.height),n){var i={info:1,warning:2,error:3};n.forEach(function(O){O.priority=i[O.type]||null}),n=n.sort(r);for(var h=0;h<n.length;h++){var m=n[h].row,y=this.getVerticalOffsetForRow(m),R=y+this.lineHeight,T=Math.round(this.heightRatio*y),k=Math.round(this.heightRatio*R),w=Math.round((T+k)/2),I=k-w;I<this.halfMinDecorationHeight&&(I=this.halfMinDecorationHeight),w-I<0&&(w=I),w+I>this.canvasHeight&&(w=this.canvasHeight-I);var D=w-I,E=w+I,L=E-D;o.fillStyle=s[n[h].type]||null,o.fillRect(0,D,Math.round(this.oneZoneWidth-1),L)}}var z=this.renderer.session.selection.getCursor();if(z){var F=Math.round(this.getVerticalOffsetForRow(z.row)*this.heightRatio);o.fillStyle="rgba(0, 0, 0, 0.5)",o.fillRect(0,F,this.canvasWidth,2)}},f.prototype.getVerticalOffsetForRow=function(a){a=a|0;var s=this.renderer.session.documentToScreenRow(a,0)*this.lineHeight;return s},f.prototype.setDimensions=function(a){a=a||this.renderer.layerConfig,this.maxHeight=a.maxHeight,this.lineHeight=a.lineHeight,this.canvasHeight=a.height,this.canvasWidth=this.scrollbarV.width||this.canvasWidth,this.setZoneWidth(),this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.maxHeight<this.canvasHeight?this.heightRatio=1:this.heightRatio=this.canvasHeight/this.maxHeight},f.prototype.setZoneWidth=function(){this.oneZoneWidth=this.canvasWidth},f.prototype.destroy=function(){this.canvas.parentNode.removeChild(this.canvas)},f})();v.implement(p.prototype,x),u.Decorator=p}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor-css","ace/layer/decorators","ace/lib/useragent","ace/layer/text_util"],function(e,u,M){var b=e("./lib/oop"),v=e("./lib/dom"),x=e("./lib/lang"),p=e("./config"),f=e("./layer/gutter").Gutter,a=e("./layer/marker").Marker,s=e("./layer/text").Text,o=e("./layer/cursor").Cursor,r=e("./scrollbar").HScrollBar,n=e("./scrollbar").VScrollBar,i=e("./scrollbar_custom").HScrollBar,h=e("./scrollbar_custom").VScrollBar,m=e("./renderloop").RenderLoop,y=e("./layer/font_metrics").FontMetrics,R=e("./lib/event_emitter").EventEmitter,T=e("./css/editor-css"),k=e("./layer/decorators").Decorator,w=e("./lib/useragent"),I=e("./layer/text_util").isTextToken;v.importCssString(T,"ace_editor.css",!1);var D=(function(){function E(L,z){var F=this;this.container=L||v.createElement("div"),v.addCssClass(this.container,"ace_editor"),v.HI_DPI&&v.addCssClass(this.container,"ace_hidpi"),this.setTheme(z),p.get("useStrictCSP")==null&&p.set("useStrictCSP",!1),this.$gutter=v.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden","true"),this.scroller=v.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=v.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new f(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new a(this.content);var O=this.$textLayer=new s(this.content);this.canvas=O.element,this.$markerFront=new a(this.content),this.$cursorLayer=new o(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new n(this.container,this),this.scrollBarH=new r(this.container,this),this.scrollBarV.on("scroll",function(A){F.$scrollAnimation||F.session.setScrollTop(A.data-F.scrollMargin.top)}),this.scrollBarH.on("scroll",function(A){F.$scrollAnimation||F.session.setScrollLeft(A.data-F.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new y(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(A){F.updateCharacterSize(),F.onResize(!0,F.gutterWidth,F.$size.width,F.$size.height),F._signal("changeCharacterSize",A)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!w.isIOS,this.$loop=new m(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),p.resetOptions(this),p._signal("renderer",this)}return E.prototype.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),v.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},E.prototype.setSession=function(L){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=L,L&&this.scrollMargin.top&&L.getScrollTop()<=0&&L.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(L),this.$markerBack.setSession(L),this.$markerFront.setSession(L),this.$gutterLayer.setSession(L),this.$textLayer.setSession(L),L&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},E.prototype.updateLines=function(L,z,F){if(z===void 0&&(z=1/0),this.$changedLines?(this.$changedLines.firstRow>L&&(this.$changedLines.firstRow=L),this.$changedLines.lastRow<z&&(this.$changedLines.lastRow=z)):this.$changedLines={firstRow:L,lastRow:z},this.$changedLines.lastRow<this.layerConfig.firstRow)if(F)this.$changedLines.lastRow=this.layerConfig.lastRow;else return;this.$changedLines.firstRow>this.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},E.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},E.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},E.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},E.prototype.updateFull=function(L){L?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},E.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},E.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},E.prototype.onResize=function(L,z,F,O){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=L?1:0;var A=this.container;O||(O=A.clientHeight||A.scrollHeight),!O&&this.$maxLines&&this.lineHeight>1&&(!A.style.height||A.style.height=="0px")&&(A.style.height="1px",O=A.clientHeight||A.scrollHeight),F||(F=A.clientWidth||A.scrollWidth);var S=this.$updateCachedSize(L,z,F,O);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!F&&!O)return this.resizing=0;L&&(this.$gutterLayer.$padding=null),L?this.$renderChanges(S|this.$changes,!0):this.$loop.schedule(S|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},E.prototype.$updateCachedSize=function(L,z,F,O){O-=this.$extraHeight||0;var A=0,S=this.$size,N={width:S.width,height:S.height,scrollerHeight:S.scrollerHeight,scrollerWidth:S.scrollerWidth};if(O&&(L||S.height!=O)&&(S.height=O,A|=this.CHANGE_SIZE,S.scrollerHeight=S.height,this.$horizScroll&&(S.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(S.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",A=A|this.CHANGE_SCROLL),F&&(L||S.width!=F)){A|=this.CHANGE_SIZE,S.width=F,z==null&&(z=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=z,v.setStyle(this.scrollBarH.element.style,"left",z+"px"),v.setStyle(this.scroller.style,"left",z+this.margin.left+"px"),S.scrollerWidth=Math.max(0,F-z-this.scrollBarV.getWidth()-this.margin.h),v.setStyle(this.$gutter.style,"left",this.margin.left+"px");var W=this.scrollBarV.getWidth()+"px";v.setStyle(this.scrollBarH.element.style,"right",W),v.setStyle(this.scroller.style,"right",W),v.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(S.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||L)&&(A|=this.CHANGE_FULL)}return S.$dirty=!F||!O,A&&this._signal("resize",N),A},E.prototype.onGutterResize=function(L){var z=this.$showGutter?L:0;z!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,z,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},E.prototype.adjustWrapLimit=function(){var L=this.$size.scrollerWidth-this.$padding*2,z=Math.floor(L/this.characterWidth);return this.session.adjustWrapLimit(z,this.$showPrintMargin&&this.$printMarginColumn)},E.prototype.setAnimatedScroll=function(L){this.setOption("animatedScroll",L)},E.prototype.getAnimatedScroll=function(){return this.$animatedScroll},E.prototype.setShowInvisibles=function(L){this.setOption("showInvisibles",L),this.session.$bidiHandler.setShowInvisibles(L)},E.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},E.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},E.prototype.setDisplayIndentGuides=function(L){this.setOption("displayIndentGuides",L)},E.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},E.prototype.setHighlightIndentGuides=function(L){this.setOption("highlightIndentGuides",L)},E.prototype.setShowPrintMargin=function(L){this.setOption("showPrintMargin",L)},E.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},E.prototype.setPrintMarginColumn=function(L){this.setOption("printMarginColumn",L)},E.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},E.prototype.getShowGutter=function(){return this.getOption("showGutter")},E.prototype.setShowGutter=function(L){return this.setOption("showGutter",L)},E.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},E.prototype.setFadeFoldWidgets=function(L){this.setOption("fadeFoldWidgets",L)},E.prototype.setHighlightGutterLine=function(L){this.setOption("highlightGutterLine",L)},E.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},E.prototype.$updatePrintMargin=function(){if(!(!this.$showPrintMargin&&!this.$printMarginEl)){if(!this.$printMarginEl){var L=v.createElement("div");L.className="ace_layer ace_print-margin-layer",this.$printMarginEl=v.createElement("div"),this.$printMarginEl.className="ace_print-margin",L.appendChild(this.$printMarginEl),this.content.insertBefore(L,this.content.firstChild)}var z=this.$printMarginEl.style;z.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",z.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()}},E.prototype.getContainerElement=function(){return this.container},E.prototype.getMouseEventTarget=function(){return this.scroller},E.prototype.getTextAreaContainer=function(){return this.container},E.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var L=this.textarea.style,z=this.$composition;if(!this.$keepTextAreaAtCursor&&!z){v.translate(this.textarea,-100,0);return}var F=this.$cursorLayer.$pixelPos;if(F){z&&z.markerRange&&(F=this.$cursorLayer.getPixelPosition(z.markerRange.start,!0));var O=this.layerConfig,A=F.top,S=F.left;A-=O.offset;var N=z&&z.useTextareaForIME||w.isMobile?this.lineHeight:1;if(A<0||A>O.height-N){v.translate(this.textarea,0,0);return}var W=1,V=this.$size.height-N;if(!z)A+=this.lineHeight;else if(z.useTextareaForIME){var G=this.textarea.value;W=this.characterWidth*this.session.$getStringScreenWidth(G)[0]}else A+=this.lineHeight+2;S-=this.scrollLeft,S>this.$size.scrollerWidth-W&&(S=this.$size.scrollerWidth-W),S+=this.gutterWidth+this.margin.left,v.setStyle(L,"height",N+"px"),v.setStyle(L,"width",W+"px"),v.translate(this.textarea,Math.min(S,this.$size.scrollerWidth-W),Math.min(A,V))}}},E.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},E.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},E.prototype.getLastFullyVisibleRow=function(){var L=this.layerConfig,z=L.lastRow,F=this.session.documentToScreenRow(z,0)*L.lineHeight;return F-this.session.getScrollTop()>L.height-L.lineHeight?z-1:z},E.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},E.prototype.setPadding=function(L){this.$padding=L,this.$textLayer.setPadding(L),this.$cursorLayer.setPadding(L),this.$markerFront.setPadding(L),this.$markerBack.setPadding(L),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},E.prototype.setScrollMargin=function(L,z,F,O){var A=this.scrollMargin;A.top=L|0,A.bottom=z|0,A.right=O|0,A.left=F|0,A.v=A.top+A.bottom,A.h=A.left+A.right,A.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-A.top),this.updateFull()},E.prototype.setMargin=function(L,z,F,O){var A=this.margin;A.top=L|0,A.bottom=z|0,A.right=O|0,A.left=F|0,A.v=A.top+A.bottom,A.h=A.left+A.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},E.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},E.prototype.setHScrollBarAlwaysVisible=function(L){this.setOption("hScrollBarAlwaysVisible",L)},E.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},E.prototype.setVScrollBarAlwaysVisible=function(L){this.setOption("vScrollBarAlwaysVisible",L)},E.prototype.$updateScrollBarV=function(){var L=this.layerConfig.maxHeight,z=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(L-=(z-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>L-z&&(L=this.scrollTop+z,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(L+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},E.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},E.prototype.freeze=function(){this.$frozen=!0},E.prototype.unfreeze=function(){this.$frozen=!1},E.prototype.$renderChanges=function(L,z){if(this.$changes&&(L|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!L&&!z){this.$changes|=L;return}if(this.$size.$dirty)return this.$changes|=L,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",L),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var F=this.layerConfig;if(L&this.CHANGE_FULL||L&this.CHANGE_SIZE||L&this.CHANGE_TEXT||L&this.CHANGE_LINES||L&this.CHANGE_SCROLL||L&this.CHANGE_H_SCROLL){if(L|=this.$computeLayerConfig()|this.$loop.clear(),F.firstRow!=this.layerConfig.firstRow&&F.firstRowScreen==this.layerConfig.firstRowScreen){var O=this.scrollTop+(F.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;O>0&&(this.scrollTop=O,L=L|this.CHANGE_SCROLL,L|=this.$computeLayerConfig()|this.$loop.clear())}F=this.layerConfig,this.$updateScrollBarV(),L&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),v.translate(this.content,-this.scrollLeft,-F.offset);var A=F.width+2*this.$padding+"px",S=F.minHeight+"px";v.setStyle(this.content.style,"width",A),v.setStyle(this.content.style,"height",S)}if(L&this.CHANGE_H_SCROLL&&(v.translate(this.content,-this.scrollLeft,-F.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),L&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(F),this.$showGutter&&this.$gutterLayer.update(F),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(F),this.$markerBack.update(F),this.$markerFront.update(F),this.$cursorLayer.update(F),this.$moveTextAreaToCursor(),this._signal("afterRender",L);return}if(L&this.CHANGE_SCROLL){this.$changedLines=null,L&this.CHANGE_TEXT||L&this.CHANGE_LINES?this.$textLayer.update(F):this.$textLayer.scrollLines(F),this.$showGutter&&(L&this.CHANGE_GUTTER||L&this.CHANGE_LINES?this.$gutterLayer.update(F):this.$gutterLayer.scrollLines(F)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(F),this.$markerBack.update(F),this.$markerFront.update(F),this.$cursorLayer.update(F),this.$moveTextAreaToCursor(),this._signal("afterRender",L);return}L&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(F),this.$showGutter&&this.$gutterLayer.update(F),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(F)):L&this.CHANGE_LINES?((this.$updateLines()||L&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(F),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(F)):L&this.CHANGE_TEXT||L&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(F),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(F)):L&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(F),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(F)),L&this.CHANGE_CURSOR&&(this.$cursorLayer.update(F),this.$moveTextAreaToCursor()),L&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(F),L&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(F),this._signal("afterRender",L)},E.prototype.$autosize=function(){var L=this.session.getScreenLength()*this.lineHeight,z=this.$maxLines*this.lineHeight,F=Math.min(z,Math.max((this.$minLines||1)*this.lineHeight,L))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(F+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&F>this.$maxPixelHeight&&(F=this.$maxPixelHeight);var O=F<=2*this.lineHeight,A=!O&&L>z;if(F!=this.desiredHeight||this.$size.height!=this.desiredHeight||A!=this.$vScroll){A!=this.$vScroll&&(this.$vScroll=A,this.scrollBarV.setVisible(A));var S=this.container.clientWidth;this.container.style.height=F+"px",this.$updateCachedSize(!0,this.$gutterWidth,S,F),this.desiredHeight=F,this._signal("autosize")}},E.prototype.$computeLayerConfig=function(){var L=this.session,z=this.$size,F=z.height<=2*this.lineHeight,O=this.session.getScreenLength(),A=O*this.lineHeight,S=this.$getLongestLine(),N=!F&&(this.$hScrollBarAlwaysVisible||z.scrollerWidth-S-2*this.$padding<0),W=this.$horizScroll!==N;W&&(this.$horizScroll=N,this.scrollBarH.setVisible(N));var V=this.$vScroll;this.$maxLines&&this.lineHeight>1&&(this.$autosize(),F=z.height<=2*this.lineHeight);var G=z.scrollerHeight+this.lineHeight,Q=!this.$maxLines&&this.$scrollPastEnd?(z.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;A+=Q;var te=this.scrollMargin;this.session.setScrollTop(Math.max(-te.top,Math.min(this.scrollTop,A-z.scrollerHeight+te.bottom))),this.session.setScrollLeft(Math.max(-te.left,Math.min(this.scrollLeft,S+2*this.$padding-z.scrollerWidth+te.right)));var le=!F&&(this.$vScrollBarAlwaysVisible||z.scrollerHeight-A+Q<0||this.scrollTop>te.top),ne=V!==le;ne&&(this.$vScroll=le,this.scrollBarV.setVisible(le));var ue=this.scrollTop%this.lineHeight,he=Math.ceil(G/this.lineHeight)-1,ce=Math.max(0,Math.round((this.scrollTop-ue)/this.lineHeight)),me=ce+he,_e,Ae,Me=this.lineHeight;ce=L.screenToDocumentRow(ce,0);var Ye=L.getFoldLine(ce);Ye&&(ce=Ye.start.row),_e=L.documentToScreenRow(ce,0),Ae=L.getRowLength(ce)*Me,me=Math.min(L.screenToDocumentRow(me,0),L.getLength()-1),G=z.scrollerHeight+L.getRowLength(me)*Me+Ae,ue=this.scrollTop-_e*Me,ue<0&&_e>0&&(_e=Math.max(0,_e+Math.floor(ue/Me)),ue=this.scrollTop-_e*Me);var Ve=0;return(this.layerConfig.width!=S||W)&&(Ve=this.CHANGE_H_SCROLL),(W||ne)&&(Ve|=this.$updateCachedSize(!0,this.gutterWidth,z.width,z.height),this._signal("scrollbarVisibilityChanged"),ne&&(S=this.$getLongestLine())),this.layerConfig={width:S,padding:this.$padding,firstRow:ce,firstRowScreen:_e,lastRow:me,lineHeight:Me,characterWidth:this.characterWidth,minHeight:G,maxHeight:A,offset:ue,gutterOffset:Me?Math.max(0,Math.ceil((ue+z.height-z.scrollerHeight)/Me)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(S-this.$padding),Ve},E.prototype.$updateLines=function(){if(this.$changedLines){var L=this.$changedLines.firstRow,z=this.$changedLines.lastRow;this.$changedLines=null;var F=this.layerConfig;if(!(L>F.lastRow+1)&&!(z<F.firstRow)){if(z===1/0){this.$showGutter&&this.$gutterLayer.update(F),this.$textLayer.update(F);return}return this.$textLayer.updateLines(F,L,z),!0}}},E.prototype.$getLongestLine=function(){var L=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(L+=1),this.$textLayer&&L>this.$textLayer.MAX_LINE_LENGTH&&(L=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(L*this.characterWidth))},E.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},E.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},E.prototype.addGutterDecoration=function(L,z){this.$gutterLayer.addGutterDecoration(L,z)},E.prototype.removeGutterDecoration=function(L,z){this.$gutterLayer.removeGutterDecoration(L,z)},E.prototype.updateBreakpoints=function(L){this._rows=L,this.$loop.schedule(this.CHANGE_GUTTER)},E.prototype.setAnnotations=function(L){this.$gutterLayer.setAnnotations(L),this.$loop.schedule(this.CHANGE_GUTTER)},E.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},E.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},E.prototype.showCursor=function(){this.$cursorLayer.showCursor()},E.prototype.scrollSelectionIntoView=function(L,z,F){this.scrollCursorIntoView(L,F),this.scrollCursorIntoView(z,F)},E.prototype.scrollCursorIntoView=function(L,z,F){if(this.$size.scrollerHeight!==0){var O=this.$cursorLayer.getPixelPosition(L),A=O.left,S=O.top,N=F&&F.top||0,W=F&&F.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var V=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;V+N>S?(z&&V+N>S+this.lineHeight&&(S-=z*this.$size.scrollerHeight),S===0&&(S=-this.scrollMargin.top),this.session.setScrollTop(S)):V+this.$size.scrollerHeight-W<S+this.lineHeight&&(z&&V+this.$size.scrollerHeight-W<S-this.lineHeight&&(S+=z*this.$size.scrollerHeight),this.session.setScrollTop(S+this.lineHeight+W-this.$size.scrollerHeight));var G=this.scrollLeft,Q=2*this.layerConfig.characterWidth;A-Q<G?(A-=Q,A<this.$padding+Q&&(A=-this.scrollMargin.left),this.session.setScrollLeft(A)):(A+=Q,G+this.$size.scrollerWidth<A+this.characterWidth?this.session.setScrollLeft(Math.round(A+this.characterWidth-this.$size.scrollerWidth)):G<=this.$padding&&A-G<this.characterWidth&&this.session.setScrollLeft(0))}},E.prototype.getScrollTop=function(){return this.session.getScrollTop()},E.prototype.getScrollLeft=function(){return this.session.getScrollLeft()},E.prototype.getScrollTopRow=function(){return this.scrollTop/this.lineHeight},E.prototype.getScrollBottomRow=function(){return Math.max(0,Math.floor((this.scrollTop+this.$size.scrollerHeight)/this.lineHeight)-1)},E.prototype.scrollToRow=function(L){this.session.setScrollTop(L*this.lineHeight)},E.prototype.alignCursor=function(L,z){typeof L=="number"&&(L={row:L,column:0});var F=this.$cursorLayer.getPixelPosition(L),O=this.$size.scrollerHeight-this.lineHeight,A=F.top-O*(z||0);return this.session.setScrollTop(A),A},E.prototype.$calcSteps=function(L,z){var F=0,O=this.STEPS,A=[],S=function(N,W,V){return V*(Math.pow(N-1,3)+1)+W};for(F=0;F<O;++F)A.push(S(F/this.STEPS,L,z-L));return A},E.prototype.scrollToLine=function(L,z,F,O){var A=this.$cursorLayer.getPixelPosition({row:L,column:0}),S=A.top;z&&(S-=this.$size.scrollerHeight/2);var N=this.scrollTop;this.session.setScrollTop(S),F!==!1&&this.animateScrolling(N,O)},E.prototype.animateScrolling=function(L,z){var F=this.scrollTop;if(!this.$animatedScroll)return;var O=this;if(L==F)return;if(this.$scrollAnimation){var A=this.$scrollAnimation.steps;if(A.length&&(L=A[0],L==F))return}var S=O.$calcSteps(L,F);this.$scrollAnimation={from:L,to:F,steps:S},clearInterval(this.$timer),O.session.setScrollTop(S.shift()),O.session.$scrollTop=F;function N(){O.$timer=clearInterval(O.$timer),O.$scrollAnimation=null,O.$stopAnimation=!1,z&&z()}this.$timer=setInterval(function(){if(O.$stopAnimation){N();return}if(!O.session)return clearInterval(O.$timer);S.length?(O.session.setScrollTop(S.shift()),O.session.$scrollTop=F):F!=null?(O.session.$scrollTop=-1,O.session.setScrollTop(F),F=null):N()},10)},E.prototype.scrollToY=function(L){this.scrollTop!==L&&(this.$loop.schedule(this.CHANGE_SCROLL),this.scrollTop=L)},E.prototype.scrollToX=function(L){this.scrollLeft!==L&&(this.scrollLeft=L),this.$loop.schedule(this.CHANGE_H_SCROLL)},E.prototype.scrollTo=function(L,z){this.session.setScrollTop(z),this.session.setScrollLeft(L)},E.prototype.scrollBy=function(L,z){z&&this.session.setScrollTop(this.session.getScrollTop()+z),L&&this.session.setScrollLeft(this.session.getScrollLeft()+L)},E.prototype.isScrollableBy=function(L,z){if(z<0&&this.session.getScrollTop()>=1-this.scrollMargin.top||z>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||L<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||L>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},E.prototype.pixelToScreenCoordinates=function(L,z){var F;if(this.$hasCssTransforms){F={top:0,left:0};var O=this.$fontMetrics.transformCoordinates([L,z]);L=O[1]-this.gutterWidth-this.margin.left,z=O[0]}else F=this.scroller.getBoundingClientRect();var A=L+this.scrollLeft-F.left-this.$padding,S=A/this.characterWidth,N=Math.floor((z+this.scrollTop-F.top)/this.lineHeight),W=this.$blockCursor?Math.floor(S):Math.round(S);return{row:N,column:W,side:S-W>0?1:-1,offsetX:A}},E.prototype.screenToTextCoordinates=function(L,z){var F;if(this.$hasCssTransforms){F={top:0,left:0};var O=this.$fontMetrics.transformCoordinates([L,z]);L=O[1]-this.gutterWidth-this.margin.left,z=O[0]}else F=this.scroller.getBoundingClientRect();var A=L+this.scrollLeft-F.left-this.$padding,S=A/this.characterWidth,N=this.$blockCursor?Math.floor(S):Math.round(S),W=Math.floor((z+this.scrollTop-F.top)/this.lineHeight);return this.session.screenToDocumentPosition(W,Math.max(N,0),A)},E.prototype.textToScreenCoordinates=function(L,z){var F=this.scroller.getBoundingClientRect(),O=this.session.documentToScreenPosition(L,z),A=this.$padding+(this.session.$bidiHandler.isBidiRow(O.row,L)?this.session.$bidiHandler.getPosLeft(O.column):Math.round(O.column*this.characterWidth)),S=O.row*this.lineHeight;return{pageX:F.left+A-this.scrollLeft,pageY:F.top+S-this.scrollTop}},E.prototype.visualizeFocus=function(){v.addCssClass(this.container,"ace_focus")},E.prototype.visualizeBlur=function(){v.removeCssClass(this.container,"ace_focus")},E.prototype.showComposition=function(L){this.$composition=L,L.cssText||(L.cssText=this.textarea.style.cssText),L.useTextareaForIME==null&&(L.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(v.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):L.markerId=this.session.addMarker(L.markerRange,"ace_composition_marker","text")},E.prototype.setCompositionText=function(L){var z=this.session.selection.cursor;this.addToken(L,"composition_placeholder",z.row,z.column),this.$moveTextAreaToCursor()},E.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),v.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var L=this.session.selection.cursor;this.removeExtraToken(L.row,L.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},E.prototype.setGhostText=function(L,z){var F=this.session.selection.cursor,O=z||{row:F.row,column:F.column};this.removeGhostText();var A=this.$calculateWrappedTextChunks(L,O);this.addToken(A[0].text,"ghost_text",O.row,O.column),this.$ghostText={text:L,position:{row:O.row,column:O.column}};var S=v.createElement("div");if(A.length>1){var N=this.hideTokensAfterPosition(O.row,O.column),W;A.slice(1).forEach(function(ne){var ue=v.createElement("div"),he=v.createElement("span");he.className="ace_ghost_text",ne.wrapped&&(ue.className="ghost_text_line_wrapped"),ne.text.length===0&&(ne.text=" "),he.appendChild(v.createTextNode(ne.text)),ue.appendChild(he),S.appendChild(ue),W=ue}),N.forEach(function(ne){var ue=v.createElement("span");I(ne.type)||(ue.className="ace_"+ne.type.replace(/\./g," ace_")),ue.appendChild(v.createTextNode(ne.value)),W.appendChild(ue)}),this.$ghostTextWidget={el:S,row:O.row,column:O.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var V=this.$cursorLayer.getPixelPosition(O,!0),G=this.container,Q=G.getBoundingClientRect().height,te=A.length*this.lineHeight,le=te<Q-V.top;if(le)return;te<Q?this.scrollBy(0,(A.length-1)*this.lineHeight):this.scrollToRow(O.row)}},E.prototype.$calculateWrappedTextChunks=function(L,z){var F=this.$size.scrollerWidth-this.$padding*2,O=Math.floor(F/this.characterWidth)-2;O=O<=0?60:O;for(var A=L.split(/\r?\n/),S=[],N=0;N<A.length;N++){var W=this.session.$getDisplayTokens(A[N],z.column),V=this.session.$computeWrapSplits(W,O,this.session.$tabSize);if(V.length>0){var G=0;V.push(A[N].length);for(var Q=0;Q<V.length;Q++){var te=A[N].slice(G,V[Q]);S.push({text:te,wrapped:!0}),G=V[Q]}}else S.push({text:A[N],wrapped:!1})}return S},E.prototype.removeGhostText=function(){if(this.$ghostText){var L=this.$ghostText.position;this.removeExtraToken(L.row,L.column),this.$ghostTextWidget&&(this.session.widgetManager.removeLineWidget(this.$ghostTextWidget),this.$ghostTextWidget=null),this.$ghostText=null}},E.prototype.addToken=function(L,z,F,O){var A=this.session;A.bgTokenizer.lines[F]=null;var S={type:z,value:L},N=A.getTokens(F);if(O==null||!N.length)N.push(S);else for(var W=0,V=0;V<N.length;V++){var G=N[V];if(W+=G.value.length,O<=W){var Q=G.value.length-(W-O),te=G.value.slice(0,Q),le=G.value.slice(Q);N.splice(V,1,{type:G.type,value:te},S,{type:G.type,value:le});break}}this.updateLines(F,F)},E.prototype.hideTokensAfterPosition=function(L,z){for(var F=this.session.getTokens(L),O=0,A=!1,S=[],N=0;N<F.length;N++){var W=F[N];if(O+=W.value.length,W.type!=="ghost_text"){if(A){S.push({type:W.type,value:W.value}),W.type="hidden_token";continue}O===z&&(A=!0)}}return this.updateLines(L,L),S},E.prototype.removeExtraToken=function(L,z){this.session.bgTokenizer.lines[L]=null,this.updateLines(L,L)},E.prototype.setTheme=function(L,z){var F=this;if(this.$themeId=L,F._dispatchEvent("themeChange",{theme:L}),!L||typeof L=="string"){var O=L||this.$options.theme.initialValue;p.loadModule(["theme",O],A)}else A(L);function A(S){if(F.$themeId!=L)return z&&z();if(!S||!S.cssClass)throw new Error("couldn't load module "+L+" or it didn't call define");S.$id&&(F.$themeId=S.$id),v.importCssString(S.cssText,S.cssClass,F.container),F.theme&&v.removeCssClass(F.container,F.theme.cssClass);var N="padding"in S?S.padding:"padding"in(F.theme||{})?4:F.$padding;if(F.$padding&&N!=F.$padding&&F.setPadding(N),F.$gutterLayer){var W=S.$showGutterCursorMarker;W&&!F.$gutterLayer.$showCursorMarker?F.$gutterLayer.$showCursorMarker="theme":!W&&F.$gutterLayer.$showCursorMarker=="theme"&&(F.$gutterLayer.$showCursorMarker=null)}F.$theme=S.cssClass,F.theme=S,v.addCssClass(F.container,S.cssClass),v.setCssClass(F.container,"ace_dark",S.isDark),F.$size&&(F.$size.width=0,F.$updateSizeAsync()),F._dispatchEvent("themeLoaded",{theme:S}),z&&z(),w.isSafari&&F.scroller&&(F.scroller.style.background="red",F.scroller.style.background="")}},E.prototype.getTheme=function(){return this.$themeId},E.prototype.setStyle=function(L,z){v.setCssClass(this.container,L,z!==!1)},E.prototype.unsetStyle=function(L){v.removeCssClass(this.container,L)},E.prototype.setCursorStyle=function(L){v.setStyle(this.scroller.style,"cursor",L)},E.prototype.setMouseCursor=function(L){v.setStyle(this.scroller.style,"cursor",L)},E.prototype.attachToShadowRoot=function(){v.importCssString(T,"ace_editor.css",this.container)},E.prototype.destroy=function(){this.freeze(),this.$fontMetrics.destroy(),this.$cursorLayer.destroy(),this.removeAllListeners(),this.container.textContent="",this.setOption("useResizeObserver",!1)},E.prototype.$updateCustomScrollbar=function(L){var z=this;this.$horizScroll=this.$vScroll=null,this.scrollBarV.element.remove(),this.scrollBarH.element.remove(),L===!0?(this.scrollBarV=new h(this.container,this),this.scrollBarH=new i(this.container,this),this.scrollBarV.setHeight(this.$size.scrollerHeight),this.scrollBarH.setWidth(this.$size.scrollerWidth),this.scrollBarV.addEventListener("scroll",function(F){z.$scrollAnimation||z.session.setScrollTop(F.data-z.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(F){z.$scrollAnimation||z.session.setScrollLeft(F.data-z.scrollMargin.left)}),this.$scrollDecorator?(this.$scrollDecorator.setScrollBarV(this.scrollBarV),this.$scrollDecorator.$updateDecorators()):(this.$scrollDecorator=new k(this.scrollBarV,this),this.$scrollDecorator.$updateDecorators())):(this.scrollBarV=new n(this.container,this),this.scrollBarH=new r(this.container,this),this.scrollBarV.addEventListener("scroll",function(F){z.$scrollAnimation||z.session.setScrollTop(F.data-z.scrollMargin.top)}),this.scrollBarH.addEventListener("scroll",function(F){z.$scrollAnimation||z.session.setScrollLeft(F.data-z.scrollMargin.left)}))},E.prototype.$addResizeObserver=function(){if(!(!window.ResizeObserver||this.$resizeObserver)){var L=this;this.$resizeTimer=x.delayedCall(function(){L.destroyed||L.onResize()},50),this.$resizeObserver=new window.ResizeObserver(function(z){var F=z[0].contentRect.width,O=z[0].contentRect.height;Math.abs(L.$size.width-F)>1||Math.abs(L.$size.height-O)>1?L.$resizeTimer.delay():L.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},E})();D.prototype.CHANGE_CURSOR=1,D.prototype.CHANGE_MARKER=2,D.prototype.CHANGE_GUTTER=4,D.prototype.CHANGE_SCROLL=8,D.prototype.CHANGE_LINES=16,D.prototype.CHANGE_TEXT=32,D.prototype.CHANGE_SIZE=64,D.prototype.CHANGE_MARKER_BACK=128,D.prototype.CHANGE_MARKER_FRONT=256,D.prototype.CHANGE_FULL=512,D.prototype.CHANGE_H_SCROLL=1024,D.prototype.$changes=0,D.prototype.$padding=null,D.prototype.$frozen=!1,D.prototype.STEPS=8,b.implement(D.prototype,R),p.defineOptions(D.prototype,"renderer",{useResizeObserver:{set:function(E){!E&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):E&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(E){this.$textLayer.setShowInvisibles(E)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(E){typeof E=="number"&&(this.$printMarginColumn=E),this.$showPrintMargin=!!E,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(E){this.$gutter.style.display=E?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(E){this.$gutterLayer.$useSvgGutterIcons=E},initialValue:!1},showFoldedAnnotations:{set:function(E){this.$gutterLayer.$showFoldedAnnotations=E},initialValue:!1},fadeFoldWidgets:{set:function(E){v.setCssClass(this.$gutter,"ace_fade-fold-widgets",E)},initialValue:!1},showFoldWidgets:{set:function(E){this.$gutterLayer.setShowFoldWidgets(E),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(E){this.$textLayer.setDisplayIndentGuides(E)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(E){this.$textLayer.setHighlightIndentGuides(E)==!0?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(E){this.$gutterLayer.setHighlightGutterLine(E),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(E){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(E){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(E){typeof E=="number"&&(E=E+"px"),this.container.style.fontSize=E,this.updateFontSize()},initialValue:12},fontFamily:{set:function(E){this.container.style.fontFamily=E,this.updateFontSize()}},maxLines:{set:function(E){this.updateFull()}},minLines:{set:function(E){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(E){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(E){E=+E||0,this.$scrollPastEnd!=E&&(this.$scrollPastEnd=E,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(E){this.$gutterLayer.$fixedWidth=!!E,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(E){this.$updateCustomScrollbar(E)},initialValue:!1},theme:{set:function(E){this.setTheme(E)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!w.isMobile&&!w.isIE}}),u.VirtualRenderer=D}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(e,u,M){var b=e("../lib/oop"),v=e("../lib/net"),x=e("../lib/event_emitter").EventEmitter,p=e("../config");function f(r){var n="importScripts('"+v.qualifyURL(r)+"');";try{return new Blob([n],{type:"application/javascript"})}catch{var i=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,h=new i;return h.append(n),h.getBlob("application/javascript")}}function a(r){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(p.get("loadWorkerFromBlob")){var n=f(r),i=window.URL||window.webkitURL,h=i.createObjectURL(n);return new Worker(h)}return new Worker(r)}var s=function(r){r.postMessage||(r=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=r,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){b.implement(this,x),this.$createWorkerFromOldConfig=function(r,n,i,h,m){if(e.nameToUrl&&!e.toUrl&&(e.toUrl=e.nameToUrl),p.get("packaged")||!e.toUrl)h=h||p.moduleUrl(n,"worker");else{var y=this.$normalizePath;h=h||y(e.toUrl("ace/worker/worker.js",null,"_"));var R={};r.forEach(function(T){R[T]=y(e.toUrl(T,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=a(h),m&&this.send("importScripts",m),this.$worker.postMessage({init:!0,tlns:R,module:n,classname:i}),this.$worker},this.onMessage=function(r){var n=r.data;switch(n.type){case"event":this._signal(n.name,{data:n.data});break;case"call":var i=this.callbacks[n.id];i&&(i(n.data),delete this.callbacks[n.id]);break;case"error":this.reportError(n.data);break;case"log":window.console&&console.log&&console.log.apply(console,n.data);break}},this.reportError=function(r){window.console&&console.error&&console.error(r)},this.$normalizePath=function(r){return v.qualifyURL(r)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(r){r.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(r,n){this.$worker.postMessage({command:r,args:n})},this.call=function(r,n,i){if(i){var h=this.callbackId++;this.callbacks[h]=i,n.push(h)}this.send(r,n)},this.emit=function(r,n){try{n.data&&n.data.err&&(n.data.err={message:n.data.err.message,stack:n.data.err.stack,code:n.data.err.code}),this.$worker&&this.$worker.postMessage({event:r,data:{data:n.data}})}catch(i){console.error(i.stack)}},this.attachToDocument=function(r){this.$doc&&this.terminate(),this.$doc=r,this.call("setValue",[r.getValue()]),r.on("change",this.changeListener,!0)},this.changeListener=function(r){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),r.action=="insert"?this.deltaQueue.push(r.start,r.lines):this.deltaQueue.push(r.start,r.end)},this.$sendDeltaQueue=function(){var r=this.deltaQueue;r&&(this.deltaQueue=null,r.length>50&&r.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:r}))}}).call(s.prototype);var o=function(r,n,i){var h=null,m=!1,y=Object.create(x),R=[],T=new s({messageBuffer:R,terminate:function(){},postMessage:function(w){R.push(w),h&&(m?setTimeout(k):k())}});T.setEmitSync=function(w){m=w};var k=function(){var w=R.shift();w.command?h[w.command].apply(h,w.args):w.event&&y._signal(w.event,w.data)};return y.postMessage=function(w){T.onMessage({data:w})},y.callback=function(w,I){this.postMessage({type:"call",id:I,data:w})},y.emit=function(w,I){this.postMessage({type:"event",name:w,data:I})},p.loadModule(["worker",n],function(w){for(h=new w[i](y);R.length;)k()}),T};u.UIWorkerClient=o,u.WorkerClient=s,u.createWorker=a}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(e,u,M){var b=e("./range").Range,v=e("./lib/event_emitter").EventEmitter,x=e("./lib/oop"),p=(function(){function f(a,s,o,r,n,i){var h=this;this.length=s,this.session=a,this.doc=a.getDocument(),this.mainClass=n,this.othersClass=i,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=r,this.$onCursorChange=function(){setTimeout(function(){h.onCursorChange()})},this.$pos=o;var m=a.getUndoManager().$undoStack||a.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=m.length,this.setup(),a.selection.on("changeCursor",this.$onCursorChange)}return f.prototype.setup=function(){var a=this,s=this.doc,o=this.session;this.selectionBefore=o.selection.toJSON(),o.selection.inMultiSelectMode&&o.selection.toSingleRange(),this.pos=s.createAnchor(this.$pos.row,this.$pos.column);var r=this.pos;r.$insertRight=!0,r.detach(),r.markerId=o.addMarker(new b(r.row,r.column,r.row,r.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(n){var i=s.createAnchor(n.row,n.column);i.$insertRight=!0,i.detach(),a.others.push(i)}),o.setUndoSelect(!1)},f.prototype.showOtherMarkers=function(){if(!this.othersActive){var a=this.session,s=this;this.othersActive=!0,this.others.forEach(function(o){o.markerId=a.addMarker(new b(o.row,o.column,o.row,o.column+s.length),s.othersClass,null,!1)})}},f.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var a=0;a<this.others.length;a++)this.session.removeMarker(this.others[a].markerId)}},f.prototype.onUpdate=function(a){if(this.$updating)return this.updateAnchors(a);var s=a;if(s.start.row===s.end.row&&s.start.row===this.pos.row){this.$updating=!0;var o=a.action==="insert"?s.end.column-s.start.column:s.start.column-s.end.column,r=s.start.column>=this.pos.column&&s.start.column<=this.pos.column+this.length+1,n=s.start.column-this.pos.column;if(this.updateAnchors(a),r&&(this.length+=o),r&&!this.session.$fromUndo){if(a.action==="insert")for(var i=this.others.length-1;i>=0;i--){var h=this.others[i],m={row:h.row,column:h.column+n};this.doc.insertMergedLines(m,a.lines)}else if(a.action==="remove")for(var i=this.others.length-1;i>=0;i--){var h=this.others[i],m={row:h.row,column:h.column+n};this.doc.remove(new b(m.row,m.column,m.row,m.column-o))}}this.$updating=!1,this.updateMarkers()}},f.prototype.updateAnchors=function(a){this.pos.onChange(a);for(var s=this.others.length;s--;)this.others[s].onChange(a);this.updateMarkers()},f.prototype.updateMarkers=function(){if(!this.$updating){var a=this,s=this.session,o=function(n,i){s.removeMarker(n.markerId),n.markerId=s.addMarker(new b(n.row,n.column,n.row,n.column+a.length),i,null,!1)};o(this.pos,this.mainClass);for(var r=this.others.length;r--;)o(this.others[r],this.othersClass)}},f.prototype.onCursorChange=function(a){if(!(this.$updating||!this.session)){var s=this.session.selection.getCursor();s.row===this.pos.row&&s.column>=this.pos.column&&s.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",a)):(this.hideOtherMarkers(),this._emit("cursorLeave",a))}},f.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},f.prototype.cancel=function(){if(this.$undoStackDepth!==-1){for(var a=this.session.getUndoManager(),s=(a.$undoStack||a.$undostack).length-this.$undoStackDepth,o=0;o<s;o++)a.undo(this.session,!0);this.selectionBefore&&this.session.selection.fromJSON(this.selectionBefore)}},f})();x.implement(p.prototype,v),u.PlaceHolder=p}),ace.define("ace/mouse/multi_select_handler",["require","exports","module","ace/lib/event","ace/lib/useragent"],function(e,u,M){var b=e("../lib/event"),v=e("../lib/useragent");function x(f,a){return f.row==a.row&&f.column==a.column}function p(f){var a=f.domEvent,s=a.altKey,o=a.shiftKey,r=a.ctrlKey,n=f.getAccelKey(),i=f.getButton();if(r&&v.isMac&&(i=a.button),f.editor.inMultiSelectMode&&i==2){f.editor.textInput.onContextMenu(f.domEvent);return}if(!r&&!s&&!n){i===0&&f.editor.inMultiSelectMode&&f.editor.exitMultiSelectMode();return}if(i===0){var h=f.editor,m=h.selection,y=h.inMultiSelectMode,R=f.getDocumentPosition(),T=m.getCursor(),k=f.inSelection()||m.isEmpty()&&x(R,T),w=f.x,I=f.y,D=function(te){w=te.clientX,I=te.clientY},E=h.session,L=h.renderer.pixelToScreenCoordinates(w,I),z=L,F;if(h.$mouseHandler.$enableJumpToDef)r&&s||n&&s?F=o?"block":"add":s&&h.$blockSelectEnabled&&(F="block");else if(n&&!s){if(F="add",!y&&o)return}else s&&h.$blockSelectEnabled&&(F="block");if(F&&v.isMac&&a.ctrlKey&&h.$mouseHandler.cancelContextMenu(),F=="add"){if(!y&&k)return;if(!y){var O=m.toOrientedRange();h.addSelectionMarker(O)}var A=m.rangeList.rangeAtPoint(R);h.inVirtualSelectionMode=!0,o&&(A=null,O=m.ranges[0]||O,h.removeSelectionMarker(O)),h.once("mouseup",function(){var te=m.toOrientedRange();A&&te.isEmpty()&&x(A.cursor,te.cursor)?m.substractPoint(te.cursor):(o?m.substractPoint(O.cursor):O&&(h.removeSelectionMarker(O),m.addRange(O)),m.addRange(te)),h.inVirtualSelectionMode=!1})}else if(F=="block"){f.stop(),h.inVirtualSelectionMode=!0;var S,N=[],W=function(){var te=h.renderer.pixelToScreenCoordinates(w,I),le=E.screenToDocumentPosition(te.row,te.column,te.offsetX);x(z,te)&&x(le,m.lead)||(z=te,h.selection.moveToPosition(le),h.renderer.scrollCursorIntoView(),h.removeSelectionMarkers(N),N=m.rectangularRangeBlock(z,L),h.$mouseHandler.$clickSelection&&N.length==1&&N[0].isEmpty()&&(N[0]=h.$mouseHandler.$clickSelection.clone()),N.forEach(h.addSelectionMarker,h),h.updateSelectionMarkers())};y&&!n?m.toSingleRange():!y&&n&&(S=m.toOrientedRange(),h.addSelectionMarker(S)),o?L=E.documentToScreenPosition(m.lead):m.moveToPosition(R),z={row:-1,column:-1};var V=function(te){W(),clearInterval(Q),h.removeSelectionMarkers(N),N.length||(N=[m.toOrientedRange()]),S&&(h.removeSelectionMarker(S),m.toSingleRange(S));for(var le=0;le<N.length;le++)m.addRange(N[le]);h.inVirtualSelectionMode=!1,h.$mouseHandler.$clickSelection=null},G=W;b.capture(h.container,D,V);var Q=setInterval(function(){G()},20);return f.preventDefault()}}}u.onMouseDown=p}),ace.define("ace/commands/multi_select_commands",["require","exports","module","ace/keyboard/hash_handler"],function(e,u,M){u.defaultCommands=[{name:"addCursorAbove",description:"Add cursor above",exec:function(v){v.selectMoreLines(-1)},bindKey:{win:"Ctrl-Alt-Up",mac:"Ctrl-Alt-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelow",description:"Add cursor below",exec:function(v){v.selectMoreLines(1)},bindKey:{win:"Ctrl-Alt-Down",mac:"Ctrl-Alt-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorAboveSkipCurrent",description:"Add cursor above (skip current)",exec:function(v){v.selectMoreLines(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Up",mac:"Ctrl-Alt-Shift-Up"},scrollIntoView:"cursor",readOnly:!0},{name:"addCursorBelowSkipCurrent",description:"Add cursor below (skip current)",exec:function(v){v.selectMoreLines(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Down",mac:"Ctrl-Alt-Shift-Down"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreBefore",description:"Select more before",exec:function(v){v.selectMore(-1)},bindKey:{win:"Ctrl-Alt-Left",mac:"Ctrl-Alt-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectMoreAfter",description:"Select more after",exec:function(v){v.selectMore(1)},bindKey:{win:"Ctrl-Alt-Right",mac:"Ctrl-Alt-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextBefore",description:"Select next before",exec:function(v){v.selectMore(-1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Left",mac:"Ctrl-Alt-Shift-Left"},scrollIntoView:"cursor",readOnly:!0},{name:"selectNextAfter",description:"Select next after",exec:function(v){v.selectMore(1,!0)},bindKey:{win:"Ctrl-Alt-Shift-Right",mac:"Ctrl-Alt-Shift-Right"},scrollIntoView:"cursor",readOnly:!0},{name:"toggleSplitSelectionIntoLines",description:"Split selection into lines",exec:function(v){v.multiSelect.rangeCount>1?v.multiSelect.joinSelections():v.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(v){v.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(v){v.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(v){v.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],u.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(v){v.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(v){return v&&v.inMultiSelectMode}}];var b=e("../keyboard/hash_handler").HashHandler;u.keyboardHandler=new b(u.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(e,u,M){var b=e("./range_list").RangeList,v=e("./range").Range,x=e("./selection").Selection,p=e("./mouse/multi_select_handler").onMouseDown,f=e("./lib/event"),a=e("./lib/lang"),s=e("./commands/multi_select_commands");u.commands=s.defaultCommands.concat(s.multiSelectCommands);var o=e("./search").Search,r=new o;function n(T,k,w){return r.$options.wrap=!0,r.$options.needle=k,r.$options.backwards=w==-1,r.find(T)}var i=e("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(i.prototype),(function(){this.ranges=null,this.rangeList=null,this.addRange=function(T,k){if(T){if(!this.inMultiSelectMode&&this.rangeCount===0){var w=this.toOrientedRange();if(this.rangeList.add(w),this.rangeList.add(T),this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),k||this.fromOrientedRange(T);this.rangeList.removeAll(),this.rangeList.add(w),this.$onAddRange(w)}T.cursor||(T.cursor=T.end);var I=this.rangeList.add(T);return this.$onAddRange(T),I.length&&this.$onRemoveRange(I),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),k||this.fromOrientedRange(T)}},this.toSingleRange=function(T){T=T||this.ranges[0];var k=this.rangeList.removeAll();k.length&&this.$onRemoveRange(k),T&&this.fromOrientedRange(T)},this.substractPoint=function(T){var k=this.rangeList.substractPoint(T);if(k)return this.$onRemoveRange(k),k[0]},this.mergeOverlappingRanges=function(){var T=this.rangeList.merge();T.length&&this.$onRemoveRange(T)},this.$onAddRange=function(T){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(T),this._signal("addRange",{range:T})},this.$onRemoveRange=function(T){if(this.rangeCount=this.rangeList.ranges.length,this.rangeCount==1&&this.inMultiSelectMode){var k=this.rangeList.ranges.pop();T.push(k),this.rangeCount=0}for(var w=T.length;w--;){var I=this.ranges.indexOf(T[w]);this.ranges.splice(I,1)}this._signal("removeRange",{ranges:T}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),k=k||this.ranges[0],k&&!k.isEqual(this.getRange())&&this.fromOrientedRange(k)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new b,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var T=this.ranges.length?this.ranges:[this.getRange()],k=[],w=0;w<T.length;w++){var I=T[w],D=I.start.row,E=I.end.row;if(D===E)k.push(I.clone());else{for(k.push(new v(D,I.start.column,D,this.session.getLine(D).length));++D<E;)k.push(this.getLineRange(D,!0));k.push(new v(E,0,E,I.end.column))}w==0&&!this.isBackwards()&&(k=k.reverse())}this.toSingleRange();for(var w=k.length;w--;)this.addRange(k[w])},this.joinSelections=function(){var T=this.rangeList.ranges,k=T[T.length-1],w=v.fromPoints(T[0].start,k.end);this.toSingleRange(),this.setSelectionRange(w,k.cursor==k.start)},this.toggleBlockSelection=function(){if(this.rangeCount>1){var T=this.rangeList.ranges,k=T[T.length-1],w=v.fromPoints(T[0].start,k.end);this.toSingleRange(),this.setSelectionRange(w,k.cursor==k.start)}else{var I=this.session.documentToScreenPosition(this.cursor),D=this.session.documentToScreenPosition(this.anchor),E=this.rectangularRangeBlock(I,D);E.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(T,k,w){var I=[],D=T.column<k.column;if(D)var E=T.column,L=k.column,z=T.offsetX,F=k.offsetX;else var E=k.column,L=T.column,z=k.offsetX,F=T.offsetX;var O=T.row<k.row;if(O)var A=T.row,S=k.row;else var A=k.row,S=T.row;E<0&&(E=0),A<0&&(A=0),A==S&&(w=!0);for(var N,W=A;W<=S;W++){var V=v.fromPoints(this.session.screenToDocumentPosition(W,E,z),this.session.screenToDocumentPosition(W,L,F));if(V.isEmpty()){if(N&&m(V.end,N))break;N=V.end}V.cursor=D?V.start:V.end,I.push(V)}if(O&&I.reverse(),!w){for(var G=I.length-1;I[G].isEmpty()&&G>0;)G--;if(G>0)for(var Q=0;I[Q].isEmpty();)Q++;for(var te=G;te>=Q;te--)I[te].isEmpty()&&I.splice(te,1)}return I}}).call(x.prototype);var h=e("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(T){T.cursor||(T.cursor=T.end);var k=this.getSelectionStyle();return T.marker=this.session.addMarker(T,"ace_selection",k),this.session.$selectionMarkers.push(T),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,T},this.removeSelectionMarker=function(T){if(T.marker){this.session.removeMarker(T.marker);var k=this.session.$selectionMarkers.indexOf(T);k!=-1&&this.session.$selectionMarkers.splice(k,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(T){for(var k=this.session.$selectionMarkers,w=T.length;w--;){var I=T[w];if(I.marker){this.session.removeMarker(I.marker);var D=k.indexOf(I);D!=-1&&k.splice(D,1)}}this.session.selectionMarkerCount=k.length},this.$onAddRange=function(T){this.addSelectionMarker(T.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(T){this.removeSelectionMarkers(T.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(T){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(s.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(T){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(s.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(T){var k=T.command,w=T.editor;if(w.multiSelect){if(k.multiSelectAction)k.multiSelectAction=="forEach"?I=w.forEachSelection(k,T.args):k.multiSelectAction=="forEachLine"?I=w.forEachSelection(k,T.args,!0):k.multiSelectAction=="single"?(w.exitMultiSelectMode(),I=k.exec(w,T.args||{})):I=k.multiSelectAction(w,T.args||{});else{var I=k.exec(w,T.args||{});w.multiSelect.addRange(w.multiSelect.toOrientedRange()),w.multiSelect.mergeOverlappingRanges()}return I}},this.forEachSelection=function(T,k,w){if(!this.inVirtualSelectionMode){var I=w&&w.keepOrder,D=w==!0||w&&w.$byLines,E=this.session,L=this.selection,z=L.rangeList,F=(I?L:z).ranges,O;if(!F.length)return T.exec?T.exec(this,k||{}):T(this,k||{});var A=L._eventRegistry;L._eventRegistry={};var S=new x(E);this.inVirtualSelectionMode=!0;for(var N=F.length;N--;){if(D)for(;N>0&&F[N].start.row==F[N-1].end.row;)N--;S.fromOrientedRange(F[N]),S.index=N,this.selection=E.selection=S;var W=T.exec?T.exec(this,k||{}):T(this,k||{});!O&&W!==void 0&&(O=W),S.toOrientedRange(F[N])}S.detach(),this.selection=E.selection=L,this.inVirtualSelectionMode=!1,L._eventRegistry=A,L.mergeOverlappingRanges(),L.ranges[0]&&L.fromOrientedRange(L.ranges[0]);var V=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),V&&V.from==V.to&&this.renderer.animateScrolling(V.from),O}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var T="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var k=this.multiSelect.rangeList.ranges,w=[],I=0;I<k.length;I++)w.push(this.session.getTextRange(k[I]));var D=this.session.getDocument().getNewLineCharacter();T=w.join(D),T.length==(w.length-1)*D.length&&(T="")}else this.selection.isEmpty()||(T=this.session.getTextRange(this.getSelectionRange()));return T},this.$checkMultiselectChange=function(T,k){if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){var w=this.multiSelect.ranges[0];if(this.multiSelect.isEmpty()&&k==this.multiSelect.anchor)return;var I=k==this.multiSelect.anchor?w.cursor==w.start?w.end:w.start:w.cursor;I.row!=k.row||this.session.$clipPositionToDocument(I.row,I.column).column!=k.column?this.multiSelect.toSingleRange(this.multiSelect.toOrientedRange()):this.multiSelect.mergeOverlappingRanges()}},this.findAll=function(T,k,w){if(k=k||{},k.needle=T||k.needle,k.needle==null){var I=this.selection.isEmpty()?this.selection.getWordRange():this.selection.getRange();k.needle=this.session.getTextRange(I)}this.$search.set(k);var D=this.$search.findAll(this.session);if(!D.length)return 0;var E=this.multiSelect;w||E.toSingleRange(D[0]);for(var L=D.length;L--;)E.addRange(D[L],!0);return I&&E.rangeList.rangeAtPoint(I.start)&&E.addRange(I,!0),D.length},this.selectMoreLines=function(T,k){var w=this.selection.toOrientedRange(),I=w.cursor==w.end,D=this.session.documentToScreenPosition(w.cursor);this.selection.$desiredColumn&&(D.column=this.selection.$desiredColumn);var E=this.session.screenToDocumentPosition(D.row+T,D.column);if(w.isEmpty())var z=E;else var L=this.session.documentToScreenPosition(I?w.end:w.start),z=this.session.screenToDocumentPosition(L.row+T,L.column);if(I){var F=v.fromPoints(E,z);F.cursor=F.start}else{var F=v.fromPoints(z,E);F.cursor=F.end}if(F.desiredColumn=D.column,!this.selection.inMultiSelectMode)this.selection.addRange(w);else if(k)var O=w.cursor;this.selection.addRange(F),O&&this.selection.substractPoint(O)},this.transposeSelections=function(T){for(var k=this.session,w=k.multiSelect,I=w.ranges,D=I.length;D--;){var E=I[D];if(E.isEmpty()){var L=k.getWordRange(E.start.row,E.start.column);E.start.row=L.start.row,E.start.column=L.start.column,E.end.row=L.end.row,E.end.column=L.end.column}}w.mergeOverlappingRanges();for(var z=[],D=I.length;D--;){var E=I[D];z.unshift(k.getTextRange(E))}T<0?z.unshift(z.pop()):z.push(z.shift());for(var D=I.length;D--;){var E=I[D],F=E.clone();k.replace(E,z[D]),E.start.row=F.start.row,E.start.column=F.start.column}w.fromOrientedRange(w.ranges[0])},this.selectMore=function(T,k,w){var I=this.session,D=I.multiSelect,E=D.toOrientedRange();if(!(E.isEmpty()&&(E=I.getWordRange(E.start.row,E.start.column),E.cursor=T==-1?E.start:E.end,this.multiSelect.addRange(E),w))){var L=I.getTextRange(E),z=n(I,L,T);z&&(z.cursor=T==-1?z.start:z.end,this.session.unfold(z),this.multiSelect.addRange(z),this.renderer.scrollCursorIntoView(null,.5)),k&&this.multiSelect.substractPoint(E.cursor)}},this.alignCursors=function(){var T=this.session,k=T.multiSelect,w=k.ranges,I=-1,D=w.filter(function(G){if(G.cursor.row==I)return!0;I=G.cursor.row});if(!w.length||D.length==w.length-1){var E=this.selection.getRange(),L=E.start.row,z=E.end.row,F=L==z;if(F){var O=this.session.getLength(),A;do A=this.session.getLine(z);while(/[=:]/.test(A)&&++z<O);do A=this.session.getLine(L);while(/[=:]/.test(A)&&--L>0);L<0&&(L=0),z>=O&&(z=O-1)}var S=this.session.removeFullLines(L,z);S=this.$reAlignText(S,F),this.session.insert({row:L,column:0},S.join(`
945
+ `)+`
946
+ `),F||(E.start.column=0,E.end.column=S[S.length-1].length),this.selection.setRange(E)}else{D.forEach(function(G){k.substractPoint(G.cursor)});var N=0,W=1/0,V=w.map(function(G){var Q=G.cursor,te=T.getLine(Q.row),le=te.substr(Q.column).search(/\S/g);return le==-1&&(le=0),Q.column>N&&(N=Q.column),le<W&&(W=le),le});w.forEach(function(G,Q){var te=G.cursor,le=N-te.column,ne=V[Q]-W;le>ne?T.insert(te,a.stringRepeat(" ",le-ne)):T.remove(new v(te.row,te.column,te.row,te.column-le+ne)),G.start.column=G.end.column=N,G.start.row=G.end.row=te.row,G.cursor=G.end}),k.fromOrientedRange(w[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(T,k){var w=!0,I=!0,D,E,L;return T.map(function(S){var N=S.match(/(\s*)(.*?)(\s*)([=:].*)/);return N?D==null?(D=N[1].length,E=N[2].length,L=N[3].length,N):(D+E+L!=N[1].length+N[2].length+N[3].length&&(I=!1),D!=N[1].length&&(w=!1),D>N[1].length&&(D=N[1].length),E<N[2].length&&(E=N[2].length),L>N[3].length&&(L=N[3].length),N):[S]}).map(k?F:w?I?O:F:A);function z(S){return a.stringRepeat(" ",S)}function F(S){return S[2]?z(D)+S[2]+z(E-S[2].length+L)+S[4].replace(/^([=:])\s+/,"$1 "):S[0]}function O(S){return S[2]?z(D+E-S[2].length)+S[2]+z(L)+S[4].replace(/^([=:])\s+/,"$1 "):S[0]}function A(S){return S[2]?z(D)+S[2]+z(L)+S[4].replace(/^([=:])\s+/,"$1 "):S[0]}}}).call(h.prototype);function m(T,k){return T.row==k.row&&T.column==k.column}u.onSessionChange=function(T){var k=T.session;k&&!k.multiSelect&&(k.$selectionMarkers=[],k.selection.$initRangeList(),k.multiSelect=k.selection),this.multiSelect=k&&k.multiSelect;var w=T.oldSession;w&&(w.multiSelect.off("addRange",this.$onAddRange),w.multiSelect.off("removeRange",this.$onRemoveRange),w.multiSelect.off("multiSelect",this.$onMultiSelect),w.multiSelect.off("singleSelect",this.$onSingleSelect),w.multiSelect.lead.off("change",this.$checkMultiselectChange),w.multiSelect.anchor.off("change",this.$checkMultiselectChange)),k&&(k.multiSelect.on("addRange",this.$onAddRange),k.multiSelect.on("removeRange",this.$onRemoveRange),k.multiSelect.on("multiSelect",this.$onMultiSelect),k.multiSelect.on("singleSelect",this.$onSingleSelect),k.multiSelect.lead.on("change",this.$checkMultiselectChange),k.multiSelect.anchor.on("change",this.$checkMultiselectChange)),k&&this.inMultiSelectMode!=k.selection.inMultiSelectMode&&(k.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};function y(T){T.$multiselectOnSessionChange||(T.$onAddRange=T.$onAddRange.bind(T),T.$onRemoveRange=T.$onRemoveRange.bind(T),T.$onMultiSelect=T.$onMultiSelect.bind(T),T.$onSingleSelect=T.$onSingleSelect.bind(T),T.$multiselectOnSessionChange=u.onSessionChange.bind(T),T.$checkMultiselectChange=T.$checkMultiselectChange.bind(T),T.$multiselectOnSessionChange(T),T.on("changeSession",T.$multiselectOnSessionChange),T.on("mousedown",p),T.commands.addCommands(s.defaultCommands),R(T))}function R(T){if(!T.textInput)return;var k=T.textInput.getElement(),w=!1;f.addListener(k,"keydown",function(D){var E=D.keyCode==18&&!(D.ctrlKey||D.shiftKey||D.metaKey);T.$blockSelectEnabled&&E?w||(T.renderer.setMouseCursor("crosshair"),w=!0):w&&I()},T),f.addListener(k,"keyup",I,T),f.addListener(k,"blur",I,T);function I(D){w&&(T.renderer.setMouseCursor(""),w=!1)}}u.MultiSelect=y,e("./config").defineOptions(h.prototype,"editor",{enableMultiselect:{set:function(T){y(this),T?this.on("mousedown",p):this.off("mousedown",p)},value:!0},enableBlockSelect:{set:function(T){this.$blockSelectEnabled=T},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(e,u,M){var b=e("../../range").Range,v=u.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(x,p,f){var a=x.getLine(f);return this.foldingStartMarker.test(a)?"start":p=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(a)?"end":""},this.getFoldWidgetRange=function(x,p,f){return null},this.indentationBlock=function(x,p,f){var a=/\S/,s=x.getLine(p),o=s.search(a);if(o!=-1){for(var r=f||s.length,n=x.getLength(),i=p,h=p;++p<n;){var m=x.getLine(p).search(a);if(m!=-1){if(m<=o){var y=x.getTokenAt(p,0);if(!y||y.type!=="string")break}h=p}}if(h>i){var R=x.getLine(h).length;return new b(i,r,h,R)}}},this.openingBracketBlock=function(x,p,f,a,s){var o={row:f,column:a+1},r=x.$findClosingBracket(p,o,s);if(r){var n=x.foldWidgets[r.row];return n==null&&(n=x.getFoldWidget(r.row)),n=="start"&&r.row>o.row&&(r.row--,r.column=x.getLine(r.row).length),b.fromPoints(o,r)}},this.closingBracketBlock=function(x,p,f,a,s){var o={row:f,column:a},r=x.$findOpeningBracket(p,o);if(r)return r.column++,o.column--,b.fromPoints(r,o)}}).call(v.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/lib/dom","ace/range","ace/config"],function(e,u,M){var b=e("../lib/dom"),v=e("../range").Range,x=e("../config").nls;function p(a,s,o){for(var r=0,n=a.length-1;r<=n;){var i=r+n>>1,h=o(s,a[i]);if(h>0)r=i+1;else if(h<0)n=i-1;else return i}return-(r+1)}function f(a,s,o){var r=a.getAnnotations().sort(v.comparePoints);if(r.length){var n=p(r,{row:s,column:-1},v.comparePoints);n<0&&(n=-n-1),n>=r.length?n=o>0?0:r.length-1:n===0&&o<0&&(n=r.length-1);var i=r[n];if(!(!i||!o)){if(i.row===s){do i=r[n+=o];while(i&&i.row===s);if(!i)return r.slice()}var h=[];s=i.row;do h[o<0?"unshift":"push"](i),i=r[n+=o];while(i&&i.row==s);return h.length&&h}}}u.showErrorMarker=function(a,s){var o=a.session,r=a.getCursorPosition(),n=r.row,i=o.widgetManager.getWidgetsAtRow(n).filter(function(D){return D.type=="errorMarker"})[0];i?i.destroy():n-=s;var h=f(o,n,s),m;if(h){var y=h[0];r.column=(y.pos&&typeof y.column!="number"?y.pos.sc:y.column)||0,r.row=y.row,m=a.renderer.$gutterLayer.$annotations[r.row]}else{if(i)return;m={displayText:[x("error-marker.good-state","Looks good!")],className:"ace_ok"}}a.session.unfold(r.row),a.selection.moveToPosition(r);var R={row:r.row,fixedWidth:!0,coverGutter:!0,el:b.createElement("div"),type:"errorMarker"},T=R.el.appendChild(b.createElement("div")),k=R.el.appendChild(b.createElement("div"));k.className="error_widget_arrow "+m.className;var w=a.renderer.$cursorLayer.getPixelPosition(r).left;k.style.left=w+a.renderer.gutterWidth-5+"px",R.el.className="error_widget_wrapper",T.className="error_widget "+m.className,m.displayText.forEach(function(D,E){T.appendChild(b.createTextNode(D)),E<m.displayText.length-1&&T.appendChild(b.createElement("br"))}),T.appendChild(b.createElement("div"));var I=function(D,E,L){if(E===0&&(L==="esc"||L==="return"))return R.destroy(),{command:"null"}};R.destroy=function(){a.$mouseHandler.isMousePressed||(a.keyBinding.removeKeyboardHandler(I),o.widgetManager.removeLineWidget(R),a.off("changeSelection",R.destroy),a.off("changeSession",R.destroy),a.off("mouseup",R.destroy),a.off("change",R.destroy))},a.keyBinding.addKeyboardHandler(I),a.on("changeSelection",R.destroy),a.on("changeSession",R.destroy),a.on("mouseup",R.destroy),a.on("change",R.destroy),a.session.widgetManager.addLineWidget(R),R.el.onmousedown=a.focus.bind(a),a.renderer.scrollCursorIntoView(null,.5,{bottom:R.el.offsetHeight})},b.importCssString(`
947
+ .error_widget_wrapper {
948
+ background: inherit;
949
+ color: inherit;
950
+ border:none
951
+ }
952
+ .error_widget {
953
+ border-top: solid 2px;
954
+ border-bottom: solid 2px;
955
+ margin: 5px 0;
956
+ padding: 10px 40px;
957
+ white-space: pre-wrap;
958
+ }
959
+ .error_widget.ace_error, .error_widget_arrow.ace_error{
960
+ border-color: #ff5a5a
961
+ }
962
+ .error_widget.ace_warning, .error_widget_arrow.ace_warning{
963
+ border-color: #F1D817
964
+ }
965
+ .error_widget.ace_info, .error_widget_arrow.ace_info{
966
+ border-color: #5a5a5a
967
+ }
968
+ .error_widget.ace_ok, .error_widget_arrow.ace_ok{
969
+ border-color: #5aaa5a
970
+ }
971
+ .error_widget_arrow {
972
+ position: absolute;
973
+ border: solid 5px;
974
+ border-top-color: transparent!important;
975
+ border-right-color: transparent!important;
976
+ border-left-color: transparent!important;
977
+ top: -5px;
978
+ }
979
+ `,"error_marker.css",!1)}),ace.define("ace/ace",["require","exports","module","ace/lib/dom","ace/range","ace/editor","ace/edit_session","ace/undomanager","ace/virtual_renderer","ace/worker/worker_client","ace/keyboard/hash_handler","ace/placeholder","ace/multi_select","ace/mode/folding/fold_mode","ace/theme/textmate","ace/ext/error_marker","ace/config","ace/loader_build"],function(e,u,M){e("./loader_build")(u);var b=e("./lib/dom"),v=e("./range").Range,x=e("./editor").Editor,p=e("./edit_session").EditSession,f=e("./undomanager").UndoManager,a=e("./virtual_renderer").VirtualRenderer;e("./worker/worker_client"),e("./keyboard/hash_handler"),e("./placeholder"),e("./multi_select"),e("./mode/folding/fold_mode"),e("./theme/textmate"),e("./ext/error_marker"),u.config=e("./config"),u.edit=function(o,r){if(typeof o=="string"){var n=o;if(o=document.getElementById(n),!o)throw new Error("ace.edit can't find div #"+n)}if(o&&o.env&&o.env.editor instanceof x)return o.env.editor;var i="";if(o&&/input|textarea/i.test(o.tagName)){var h=o;i=h.value,o=b.createElement("pre"),h.parentNode.replaceChild(o,h)}else o&&(i=o.textContent,o.innerHTML="");var m=u.createEditSession(i),y=new x(new a(o),m,r),R={document:m,editor:y,onResize:y.resize.bind(y,null)};return h&&(R.textarea=h),y.on("destroy",function(){R.editor.container.env=null}),y.container.env=y.env=R,y},u.createEditSession=function(o,r){var n=new p(o,r);return n.setUndoManager(new f),n},u.Range=v,u.Editor=x,u.EditSession=p,u.UndoManager=f,u.VirtualRenderer=a;var s=u.config.version;u.version=s}),(function(){ace.require(["ace/ace"],function(e){e&&(e.config.init(!0),e.define=ace.define);var u=(function(){return this})();!u&&typeof window<"u"&&(u=window),!u&&typeof self<"u"&&(u=self),u.ace||(u.ace=e);for(var M in e)e.hasOwnProperty(M)&&(u.ace[M]=e[M]);u.ace.default=u.ace,l&&(l.exports=u.ace)})})()})(hc)),hc.exports}var Ax=_x(),dc={exports:{}},jd;function Mx(){return jd||(jd=1,(function(l,c){ace.define("ace/mode/ruby_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("./text_highlight_rules").TextHighlightRules,x=u.constantOtherSymbol={token:"constant.other.symbol.ruby",regex:"[:](?:[A-Za-z_]|[@$](?=[a-zA-Z0-9_]))[a-zA-Z0-9_]*[!=?]?"};u.qString={token:"string",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},u.qqString={token:"string",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]'},u.tString={token:"string",regex:"[`](?:(?:\\\\.)|(?:[^'\\\\]))*?[`]"};var p=u.constantNumericHex={token:"constant.numeric",regex:"0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_(?=[0-9a-fA-F]))*\\b"},f=u.constantNumericBinary={token:"constant.numeric",regex:/\b(0[bB][01](?:[01]|_(?=[01]))*)\b/},a=u.constantNumericDecimal={token:"constant.numeric",regex:/\b(0[dD](?:[1-9](?:[\d]|_(?=[\d]))*|0))\b/},s=u.constantNumericOctal={token:"constant.numeric",regex:/\b(0[oO]?(?:[1-7](?:[0-7]|_(?=[0-7]))*|0))\b/},o=u.constantNumericRational={token:"constant.numeric",regex:/\b([\d]+(?:[./][\d]+)?ri?)\b/},r=u.constantNumericComplex={token:"constant.numeric",regex:/\b([\d]i)\b/},n=u.constantNumericFloat={token:"constant.numeric",regex:"[+-]?\\d(?:\\d|_(?=\\d))*(?:(?:\\.\\d(?:\\d|_(?=\\d))*)?(?:[eE][+-]?\\d+)?)?i?\\b"},i=u.instanceVariable={token:"variable.instance",regex:"@{1,2}[a-zA-Z_\\d]+"},h=function(){var m="abort|Array|assert|assert_equal|assert_not_equal|assert_same|assert_not_same|assert_nil|assert_not_nil|assert_match|assert_no_match|assert_in_delta|assert_throws|assert_raise|assert_nothing_raised|assert_instance_of|assert_kind_of|assert_respond_to|assert_operator|assert_send|assert_difference|assert_no_difference|assert_recognizes|assert_generates|assert_response|assert_redirected_to|assert_template|assert_select|assert_select_email|assert_select_rjs|assert_select_encoded|css_select|at_exit|attr|attr_writer|attr_reader|attr_accessor|attr_accessible|autoload|binding|block_given?|callcc|caller|catch|chomp|chomp!|chop|chop!|defined?|delete_via_redirect|eval|exec|exit|exit!|fail|Float|flunk|follow_redirect!|fork|form_for|form_tag|format|gets|global_variables|gsub|gsub!|get_via_redirect|host!|https?|https!|include|Integer|lambda|link_to|link_to_unless_current|link_to_function|link_to_remote|load|local_variables|loop|open|open_session|p|print|printf|proc|putc|puts|post_via_redirect|put_via_redirect|raise|rand|raw|readline|readlines|redirect?|request_via_redirect|require|scan|select|set_trace_func|sleep|split|sprintf|srand|String|stylesheet_link_tag|syscall|system|sub|sub!|test|throw|trace_var|trap|untrace_var|atan2|cos|exp|frexp|ldexp|log|log10|sin|sqrt|tan|render|javascript_include_tag|csrf_meta_tag|label_tag|text_field_tag|submit_tag|check_box_tag|content_tag|radio_button_tag|text_area_tag|password_field_tag|hidden_field_tag|fields_for|select_tag|options_for_select|options_from_collection_for_select|collection_select|time_zone_select|select_date|select_time|select_datetime|date_select|time_select|datetime_select|select_year|select_month|select_day|select_hour|select_minute|select_second|file_field_tag|file_field|respond_to|skip_before_filter|around_filter|after_filter|verify|protect_from_forgery|rescue_from|helper_method|redirect_to|before_filter|send_data|send_file|validates_presence_of|validates_uniqueness_of|validates_length_of|validates_format_of|validates_acceptance_of|validates_associated|validates_exclusion_of|validates_inclusion_of|validates_numericality_of|validates_with|validates_each|authenticate_or_request_with_http_basic|authenticate_or_request_with_http_digest|filter_parameter_logging|match|get|post|resources|redirect|scope|assert_routing|translate|localize|extract_locale_from_tld|caches_page|expire_page|caches_action|expire_action|cache|expire_fragment|expire_cache_for|observe|cache_sweeper|has_many|has_one|belongs_to|has_and_belongs_to_many|p|warn|refine|using|module_function|extend|alias_method|private_class_method|remove_method|undef_method",y="alias|and|BEGIN|begin|break|case|class|def|defined|do|else|elsif|END|end|ensure|__FILE__|finally|for|gem|if|in|__LINE__|module|next|not|or|private|protected|public|redo|rescue|retry|return|super|then|undef|unless|until|when|while|yield|__ENCODING__|prepend",R="true|TRUE|false|FALSE|nil|NIL|ARGF|ARGV|DATA|ENV|RUBY_PLATFORM|RUBY_RELEASE_DATE|RUBY_VERSION|STDERR|STDIN|STDOUT|TOPLEVEL_BINDING|RUBY_PATCHLEVEL|RUBY_REVISION|RUBY_COPYRIGHT|RUBY_ENGINE|RUBY_ENGINE_VERSION|RUBY_DESCRIPTION",T="$DEBUG|$defout|$FILENAME|$LOAD_PATH|$SAFE|$stdin|$stdout|$stderr|$VERBOSE|$!|root_url|flash|session|cookies|params|request|response|logger|self",k=this.$keywords=this.createKeywordMapper({keyword:y,"constant.language":R,"variable.language":T,"support.function":m,"invalid.deprecated":"debugger"},"identifier"),w=`\\\\(?:n(?:[1-7][0-7]{0,2}|0)|[nsrtvfbae'"\\\\]|c(?:\\\\M-)?.|M-(?:\\\\C-|\\\\c)?.|C-(?:\\\\M-)?.|[0-7]{3}|x[\\da-fA-F]{2}|u[\\da-fA-F]{4}|u{[\\da-fA-F]{1,6}(?:\\s[\\da-fA-F]{1,6})*})`,I={"(":")","[":"]","{":"}","<":">","^":"^","|":"|","%":"%"};this.$rules={start:[{token:"comment",regex:"#.*$"},{token:"comment.multiline",regex:"^=begin(?=$|\\s.*$)",next:"comment"},{token:"string.regexp",regex:/[/](?=.*\/)/,next:"regex"},[{token:["constant.other.symbol.ruby","string.start"],regex:/(:)?(")/,push:[{token:"constant.language.escape",regex:w},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.end",regex:/"/,next:"pop"},{defaultToken:"string"}]},{token:"string.start",regex:/`/,push:[{token:"constant.language.escape",regex:w},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.end",regex:/`/,next:"pop"},{defaultToken:"string"}]},{token:["constant.other.symbol.ruby","string.start"],regex:/(:)?(')/,push:[{token:"constant.language.escape",regex:/\\['\\]/},{token:"string.end",regex:/'/,next:"pop"},{defaultToken:"string"}]},{token:"string.start",regex:/%[qwx]([(\[<{^|%])/,onMatch:function(D,E,L){L.length&&(L=[]);var z=D[D.length-1];return L.unshift(z,E),this.next="qStateWithoutInterpolation",this.token}},{token:"string.start",regex:/%[QWX]?([(\[<{^|%])/,onMatch:function(D,E,L){L.length&&(L=[]);var z=D[D.length-1];return L.unshift(z,E),this.next="qStateWithInterpolation",this.token}},{token:"constant.other.symbol.ruby",regex:/%[si]([(\[<{^|%])/,onMatch:function(D,E,L){L.length&&(L=[]);var z=D[D.length-1];return L.unshift(z,E),this.next="sStateWithoutInterpolation",this.token}},{token:"constant.other.symbol.ruby",regex:/%[SI]([(\[<{^|%])/,onMatch:function(D,E,L){L.length&&(L=[]);var z=D[D.length-1];return L.unshift(z,E),this.next="sStateWithInterpolation",this.token}},{token:"string.regexp",regex:/%[r]([(\[<{^|%])/,onMatch:function(D,E,L){L.length&&(L=[]);var z=D[D.length-1];return L.unshift(z,E),this.next="rState",this.token}}],{token:"punctuation",regex:"::"},i,{token:"variable.global",regex:"[$][a-zA-Z_\\d]+"},{token:"support.class",regex:"[A-Z][a-zA-Z_\\d]*"},{token:["punctuation.operator","support.function"],regex:/(\.)([a-zA-Z_\d]+)(?=\()/},{token:["punctuation.operator","identifier"],regex:/(\.)([a-zA-Z_][a-zA-Z_\d]*)/},{token:"string.character",regex:"\\B\\?(?:"+w+"|\\S)"},{token:"punctuation.operator",regex:/\?(?=.+:)/},o,r,x,p,n,f,a,s,{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:k,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"},{token:"punctuation.separator.key-value",regex:"=>"},{stateName:"heredoc",onMatch:function(D,E,L){var z=D[2]=="-"||D[2]=="~"?"indentedHeredoc":"heredoc",F=D.split(this.splitRegex);return L.push(z,F[3]),[{type:"constant",value:F[1]},{type:"string",value:F[2]},{type:"support.class",value:F[3]},{type:"string",value:F[4]}]},regex:"(<<[-~]?)(['\"`]?)([\\w]+)(['\"`]?)",rules:{heredoc:[{onMatch:function(D,E,L){return D===L[1]?(L.shift(),L.shift(),this.next=L[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}],indentedHeredoc:[{token:"string",regex:"^ +"},{onMatch:function(D,E,L){return D===L[1]?(L.shift(),L.shift(),this.next=L[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}]}},{regex:"$",token:"empty",next:function(D,E){return E[0]==="heredoc"||E[0]==="indentedHeredoc"?E[0]:D}},{token:"keyword.operator",regex:"!|\\$|%|&|\\*|/|\\-\\-|\\-|\\+\\+|\\+|~|===|==|=|!=|!==|<=|>=|<<=|>>=|>>>=|<>|<|>|!|&&|\\|\\||\\?\\:|\\*=|%=|\\+=|\\-=|&=|\\^=|\\||\\b(?:in|instanceof|new|delete|typeof|void)"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]",onMatch:function(D,E,L){return this.next="",D=="}"&&L.length>1&&L[1]!="start"&&(L.shift(),this.next=L.shift()),this.token}},{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:/[?:,;.]/}],comment:[{token:"comment.multiline",regex:"^=end(?=$|\\s.*$)",next:"start"},{token:"comment",regex:".+"}],qStateWithInterpolation:[{token:"string.start",regex:/[(\[<{]/,onMatch:function(D,E,L){return L.length&&D===L[0]?(L.unshift(D,E),this.token):"string"}},{token:"constant.language.escape",regex:w},{token:"constant.language.escape",regex:/\\./},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.end",regex:/[)\]>}^|%]/,onMatch:function(D,E,L){return L.length&&D===I[L[0]]?(L.shift(),this.next=L.shift(),this.token):(this.next="","string")}},{defaultToken:"string"}],qStateWithoutInterpolation:[{token:"string.start",regex:/[(\[<{]/,onMatch:function(D,E,L){return L.length&&D===L[0]?(L.unshift(D,E),this.token):"string"}},{token:"constant.language.escape",regex:/\\['\\]/},{token:"constant.language.escape",regex:/\\./},{token:"string.end",regex:/[)\]>}^|%]/,onMatch:function(D,E,L){return L.length&&D===I[L[0]]?(L.shift(),this.next=L.shift(),this.token):(this.next="","string")}},{defaultToken:"string"}],sStateWithoutInterpolation:[{token:"constant.other.symbol.ruby",regex:/[(\[<{]/,onMatch:function(D,E,L){return L.length&&D===L[0]?(L.unshift(D,E),this.token):"constant.other.symbol.ruby"}},{token:"constant.other.symbol.ruby",regex:/[)\]>}^|%]/,onMatch:function(D,E,L){return L.length&&D===I[L[0]]?(L.shift(),this.next=L.shift(),this.token):(this.next="","constant.other.symbol.ruby")}},{defaultToken:"constant.other.symbol.ruby"}],sStateWithInterpolation:[{token:"constant.other.symbol.ruby",regex:/[(\[<{]/,onMatch:function(D,E,L){return L.length&&D===L[0]?(L.unshift(D,E),this.token):"constant.other.symbol.ruby"}},{token:"constant.language.escape",regex:w},{token:"constant.language.escape",regex:/\\./},{token:"paren.start",regex:/#{/,push:"start"},{token:"constant.other.symbol.ruby",regex:/[)\]>}^|%]/,onMatch:function(D,E,L){return L.length&&D===I[L[0]]?(L.shift(),this.next=L.shift(),this.token):(this.next="","constant.other.symbol.ruby")}},{defaultToken:"constant.other.symbol.ruby"}],rState:[{token:"string.regexp",regex:/[(\[<{]/,onMatch:function(D,E,L){return L.length&&D===L[0]?(L.unshift(D,E),this.token):"constant.language.escape"}},{token:"paren.start",regex:/#{/,push:"start"},{token:"string.regexp",regex:/\//},{token:"string.regexp",regex:/[)\]>}^|%][imxouesn]*/,onMatch:function(D,E,L){return L.length&&D[0]===I[L[0]]?(L.shift(),this.next=L.shift(),this.token):(this.next="","constant.language.escape")}},{include:"regex"},{defaultToken:"string.regexp"}],regex:[{token:"regexp.keyword",regex:/\\[wWdDhHsS]/},{token:"constant.language.escape",regex:/\\[AGbBzZ]/},{token:"constant.language.escape",regex:/\\g<[a-zA-Z0-9]*>/},{token:["constant.language.escape","regexp.keyword","constant.language.escape"],regex:/(\\p{\^?)(Alnum|Alpha|Blank|Cntrl|Digit|Graph|Lower|Print|Punct|Space|Upper|XDigit|Word|ASCII|Any|Assigned|Arabic|Armenian|Balinese|Bengali|Bopomofo|Braille|Buginese|Buhid|Canadian_Aboriginal|Carian|Cham|Cherokee|Common|Coptic|Cuneiform|Cypriot|Cyrillic|Deseret|Devanagari|Ethiopic|Georgian|Glagolitic|Gothic|Greek|Gujarati|Gurmukhi|Han|Hangul|Hanunoo|Hebrew|Hiragana|Inherited|Kannada|Katakana|Kayah_Li|Kharoshthi|Khmer|Lao|Latin|Lepcha|Limbu|Linear_B|Lycian|Lydian|Malayalam|Mongolian|Myanmar|New_Tai_Lue|Nko|Ogham|Ol_Chiki|Old_Italic|Old_Persian|Oriya|Osmanya|Phags_Pa|Phoenician|Rejang|Runic|Saurashtra|Shavian|Sinhala|Sundanese|Syloti_Nagri|Syriac|Tagalog|Tagbanwa|Tai_Le|Tamil|Telugu|Thaana|Thai|Tibetan|Tifinagh|Ugaritic|Vai|Yi|Ll|Lm|Lt|Lu|Lo|Mn|Mc|Me|Nd|Nl|Pc|Pd|Ps|Pe|Pi|Pf|Po|No|Sm|Sc|Sk|So|Zs|Zl|Zp|Cc|Cf|Cn|Co|Cs|N|L|M|P|S|Z|C)(})/},{token:["constant.language.escape","invalid","constant.language.escape"],regex:/(\\p{\^?)([^/]*)(})/},{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:/[/][imxouesn]*/,next:"start"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?(?:[:=!>]|<'?[a-zA-Z]*'?>|<[=!])|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"regexp.keyword",regex:/\[\[:(?:alnum|alpha|blank|cntrl|digit|graph|lower|print|punct|space|upper|xdigit|word|ascii):\]\]/},{token:"constant.language.escape",regex:/\[\^?/,push:"regex_character_class"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.keyword",regex:/\\[wWdDhHsS]/},{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:/&?&?\[\^?/,push:"regex_character_class"},{token:"constant.language.escape",regex:"]",next:"pop"},{token:"constant.language.escape",regex:"-"},{defaultToken:"string.regexp.characterclass"}]},this.normalizeRules()};b.inherits(h,v),u.RubyHighlightRules=h}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,u,M){var b=e("../range").Range,v=function(){};(function(){this.checkOutdent=function(x,p){return/^\s+$/.test(x)?/^\s*\}/.test(p):!1},this.autoOutdent=function(x,p){var f=x.getLine(p),a=f.match(/^(\s*\})/);if(!a)return 0;var s=a[1].length,o=x.findMatchingBracket({row:p,column:s});if(!o||o.row==p)return 0;var r=this.$getIndent(x.getLine(o.row));x.replace(new b(p,0,p,s-1),r)},this.$getIndent=function(x){return x.match(/^\s*/)[0]}}).call(v.prototype),u.MatchingBraceOutdent=v}),ace.define("ace/mode/folding/ruby",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range","ace/token_iterator"],function(e,u,M){var b=e("../../lib/oop"),v=e("./fold_mode").FoldMode,x=e("../../range").Range,p=e("../../token_iterator").TokenIterator,f=u.FoldMode=function(){};b.inherits(f,v),(function(){this.indentKeywords={class:1,def:1,module:1,do:1,unless:1,if:1,while:1,for:1,until:1,begin:1,else:0,elsif:0,rescue:0,ensure:0,when:0,end:-1,case:1,"=begin":1,"=end":-1},this.foldingStartMarker=/(?:\s|^)(def|do|while|class|unless|module|if|for|until|begin|else|elsif|case|rescue|ensure|when)\b|({\s*$)|(=begin)/,this.foldingStopMarker=/(=end(?=$|\s.*$))|(^\s*})|\b(end)\b/,this.getFoldWidget=function(a,s,o){var r=a.getLine(o),n=this.foldingStartMarker.test(r),i=this.foldingStopMarker.test(r);if(n&&!i){var h=r.match(this.foldingStartMarker);if(h[1]){if((h[1]=="if"||h[1]=="else"||h[1]=="while"||h[1]=="until"||h[1]=="unless")&&(h[1]=="else"&&/^\s*else\s*$/.test(r)===!1||/^\s*(?:if|else|while|until|unless)\s*/.test(r)===!1)||h[1]=="when"&&/\sthen\s/.test(r)===!0)return;if(a.getTokenAt(o,h.index+2).type==="keyword")return"start"}else if(!h[3]||a.getTokenAt(o,h.index+1).type==="comment.multiline")return"start"}if(s!="markbeginend"||!i||n&&i)return"";var h=r.match(this.foldingStopMarker);if(h[3]==="end"){if(a.getTokenAt(o,h.index+1).type==="keyword")return"end"}else if(!h[1]||a.getTokenAt(o,h.index+1).type==="comment.multiline")return"end"},this.getFoldWidgetRange=function(a,s,o){var r=a.doc.getLine(o),n=this.foldingStartMarker.exec(r);if(n)return n[1]||n[3]?this.rubyBlock(a,o,n.index+2):this.openingBracketBlock(a,"{",o,n.index);var n=this.foldingStopMarker.exec(r);if(n)return n[3]==="end"&&a.getTokenAt(o,n.index+1).type==="keyword"?this.rubyBlock(a,o,n.index+1):n[1]==="=end"&&a.getTokenAt(o,n.index+1).type==="comment.multiline"?this.rubyBlock(a,o,n.index+1):this.closingBracketBlock(a,"}",o,n.index+n[0].length)},this.rubyBlock=function(a,F,o,r){var n=new p(a,F,o),i=n.getCurrentToken();if(!(!i||i.type!="keyword"&&i.type!="comment.multiline")){var h=i.value,m=a.getLine(F);switch(i.value){case"if":case"unless":case"while":case"until":var y=new RegExp("^\\s*"+i.value);if(!y.test(m))return;var R=this.indentKeywords[h];break;case"when":if(/\sthen\s/.test(m))return;case"elsif":case"rescue":case"ensure":var R=1;break;case"else":var y=new RegExp("^\\s*"+i.value+"\\s*$");if(!y.test(m))return;var R=1;break;default:var R=this.indentKeywords[h]}var T=[h];if(R){var k=R===-1?a.getLine(F-1).length:a.getLine(F).length,w=F,I=[];if(I.push(n.getCurrentTokenRange()),n.step=R===-1?n.stepBackward:n.stepForward,i.type=="comment.multiline"){for(;i=n.step();)if(i.type==="comment.multiline"){if(R==1){if(k=6,i.value=="=end")break}else if(i.value=="=begin")break}}else for(;i=n.step();){var D=!1;if(i.type==="keyword"){var E=R*this.indentKeywords[i.value];switch(m=a.getLine(n.getCurrentTokenRow()),i.value){case"do":for(var L=n.$tokenIndex-1;L>=0;L--){var z=n.$rowTokens[L];if(z&&(z.value=="while"||z.value=="until"||z.value=="for")){E=0;break}}break;case"else":var y=new RegExp("^\\s*"+i.value+"\\s*$");(!y.test(m)||h=="case")&&(E=0,D=!0);break;case"if":case"unless":case"while":case"until":var y=new RegExp("^\\s*"+i.value);y.test(m)||(E=0,D=!0);break;case"when":(/\sthen\s/.test(m)||h=="case")&&(E=0,D=!0)}if(E>0)T.unshift(i.value);else if(E<=0&&D===!1){if(T.shift(),!T.length&&((h=="while"||h=="until"||h=="for")&&i.value!="do"||i.value=="do"&&R==-1&&E!=0||i.value!="do"))break;E===0&&T.unshift(i.value)}}}if(!i)return null;if(r)return I.push(n.getCurrentTokenRange()),I;var F=n.getCurrentTokenRow();if(R===-1){if(i.type==="comment.multiline")var O=6;else var O=a.getLine(F).length;return new x(F,O,w-1,k)}return new x(w,k,F-1,a.getLine(F-1).length)}}}}).call(f.prototype)}),ace.define("ace/mode/ruby",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/ruby_highlight_rules","ace/mode/matching_brace_outdent","ace/range","ace/mode/folding/ruby"],function(e,u,M){var b=e("../lib/oop"),v=e("./text").Mode,x=e("./ruby_highlight_rules").RubyHighlightRules,p=e("./matching_brace_outdent").MatchingBraceOutdent,f=e("../range").Range,a=e("./folding/ruby").FoldMode,s=function(){this.HighlightRules=x,this.$outdent=new p,this.$behaviour=this.$defaultBehaviour,this.foldingRules=new a,this.indentKeywords=this.foldingRules.indentKeywords};b.inherits(s,v),(function(){this.lineCommentStart="#",this.getNextLineIndent=function(o,r,n){var i=this.$getIndent(r),h=this.getTokenizer().getLineTokens(r,o),m=h.tokens;if(m.length&&m[m.length-1].type=="comment")return i;if(o=="start"){var y=r.match(/^.*[\{\(\[]\s*$/),R=r.match(/^\s*(class|def|module)\s.*$/),T=r.match(/.*do(\s*|\s+\|.*\|\s*)$/),k=r.match(/^\s*(if|else|when|elsif|unless|while|for|begin|rescue|ensure)\s*/);(y||R||T||k)&&(i+=n)}return i},this.checkOutdent=function(o,r,n){return/^\s+(end|else|rescue|ensure)$/.test(r+n)||this.$outdent.checkOutdent(r,n)},this.autoOutdent=function(o,r,n){var i=r.getLine(n);if(/}/.test(i))return this.$outdent.autoOutdent(r,n);var h=this.$getIndent(i),m=r.getLine(n-1),y=this.$getIndent(m),R=r.getTabString();y.length<=h.length&&h.slice(-R.length)==R&&r.remove(new f(n,h.length-R.length,n,h.length))},this.getMatching=function(o,r,n){if(r==null){var i=o.selection.lead;n=i.column,r=i.row}var h=o.getTokenAt(r,n);if(h&&h.value in this.indentKeywords)return this.foldingRules.rubyBlock(o,r,n,!0)},this.$id="ace/mode/ruby",this.snippetFileId="ace/snippets/ruby"}).call(s.prototype),u.Mode=s}),(function(){ace.require(["ace/mode/ruby"],function(e){l&&(l.exports=e)})})()})(dc)),dc.exports}Mx();var fc={exports:{}},Kd;function $x(){return Kd||(Kd=1,(function(l,c){ace.define("ace/mode/python_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("./text_highlight_rules").TextHighlightRules,x=function(){var p="and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|not|or|pass|print|raise|return|try|while|with|yield|async|await|nonlocal",f="True|False|None|NotImplemented|Ellipsis|__debug__",a="abs|divmod|input|open|staticmethod|all|enumerate|int|ord|str|any|eval|isinstance|pow|sum|basestring|execfile|issubclass|print|super|binfile|bin|iter|property|tuple|bool|filter|len|range|type|bytearray|float|list|raw_input|unichr|callable|format|locals|reduce|unicode|chr|frozenset|long|reload|vars|classmethod|getattr|map|repr|xrange|cmp|globals|max|reversed|zip|compile|hasattr|memoryview|round|__import__|complex|hash|min|apply|delattr|help|next|setattr|set|buffer|dict|hex|object|slice|coerce|dir|id|oct|sorted|intern|ascii|breakpoint|bytes",s=this.createKeywordMapper({"invalid.deprecated":"debugger","support.function":a,"variable.language":"self|cls","constant.language":f,keyword:p},"identifier"),o="[uU]?",r="[rR]",n="[fF]",i="(?:[rR][fF]|[fF][rR])",h="(?:(?:[1-9]\\d*)|(?:0))",m="(?:0[oO]?[0-7]+)",y="(?:0[xX][\\dA-Fa-f]+)",R="(?:0[bB][01]+)",T="(?:"+h+"|"+m+"|"+y+"|"+R+")",k="(?:[eE][+-]?\\d+)",w="(?:\\.\\d+)",I="(?:\\d+)",D="(?:(?:"+I+"?"+w+")|(?:"+I+"\\.))",E="(?:(?:"+D+"|"+I+")"+k+")",L="(?:"+E+"|"+D+")",z=`\\\\(x[0-9A-Fa-f]{2}|[0-7]{3}|[\\\\abfnrtv'"]|U[0-9A-Fa-f]{8}|u[0-9A-Fa-f]{4})`;this.$rules={start:[{token:"comment",regex:"#.*$"},{token:"string",regex:o+'"{3}',next:"qqstring3"},{token:"string",regex:o+'"(?=.)',next:"qqstring"},{token:"string",regex:o+"'{3}",next:"qstring3"},{token:"string",regex:o+"'(?=.)",next:"qstring"},{token:"string",regex:r+'"{3}',next:"rawqqstring3"},{token:"string",regex:r+'"(?=.)',next:"rawqqstring"},{token:"string",regex:r+"'{3}",next:"rawqstring3"},{token:"string",regex:r+"'(?=.)",next:"rawqstring"},{token:"string",regex:n+'"{3}',next:"fqqstring3"},{token:"string",regex:n+'"(?=.)',next:"fqqstring"},{token:"string",regex:n+"'{3}",next:"fqstring3"},{token:"string",regex:n+"'(?=.)",next:"fqstring"},{token:"string",regex:i+'"{3}',next:"rfqqstring3"},{token:"string",regex:i+'"(?=.)',next:"rfqqstring"},{token:"string",regex:i+"'{3}",next:"rfqstring3"},{token:"string",regex:i+"'(?=.)",next:"rfqstring"},{token:"keyword.operator",regex:"\\+|\\-|\\*|\\*\\*|\\/|\\/\\/|%|@|<<|>>|&|\\||\\^|~|<|>|<=|=>|==|!=|<>|="},{token:"punctuation",regex:",|:|;|\\->|\\+=|\\-=|\\*=|\\/=|\\/\\/=|%=|@=|&=|\\|=|^=|>>=|<<=|\\*\\*="},{token:"paren.lparen",regex:"[\\[\\(\\{]"},{token:"paren.rparen",regex:"[\\]\\)\\}]"},{token:["keyword","text","entity.name.function"],regex:"(def|class)(\\s+)([\\u00BF-\\u1FFF\\u2C00-\\uD7FF\\w]+)"},{token:"text",regex:"\\s+"},{include:"constants"}],qqstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:'"{3}',next:"start"},{defaultToken:"string"}],qstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:"'{3}",next:"start"},{defaultToken:"string"}],qqstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"\\\\$",next:"qqstring"},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"\\\\$",next:"qstring"},{token:"string",regex:"'|$",next:"start"},{defaultToken:"string"}],rawqqstring3:[{token:"string",regex:'"{3}',next:"start"},{defaultToken:"string"}],rawqstring3:[{token:"string",regex:"'{3}",next:"start"},{defaultToken:"string"}],rawqqstring:[{token:"string",regex:"\\\\$",next:"rawqqstring"},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],rawqstring:[{token:"string",regex:"\\\\$",next:"rawqstring"},{token:"string",regex:"'|$",next:"start"},{defaultToken:"string"}],fqqstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:'"{3}',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqstring3:[{token:"constant.language.escape",regex:z},{token:"string",regex:"'{3}",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqqstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"\\\\$",next:"fqqstring"},{token:"string",regex:'"|$',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqstring:[{token:"constant.language.escape",regex:z},{token:"string",regex:"'|$",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqqstring3:[{token:"string",regex:'"{3}',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqstring3:[{token:"string",regex:"'{3}",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqqstring:[{token:"string",regex:"\\\\$",next:"rfqqstring"},{token:"string",regex:'"|$',next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],rfqstring:[{token:"string",regex:"'|$",next:"start"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"},{defaultToken:"string"}],fqstringParRules:[{token:"paren.lparen",regex:"[\\[\\(]"},{token:"paren.rparen",regex:"[\\]\\)]"},{token:"string",regex:"\\s+"},{token:"string",regex:"'[^']*'"},{token:"string",regex:'"[^"]*"'},{token:"function.support",regex:"(!s|!r|!a)"},{include:"constants"},{token:"paren.rparen",regex:"}",next:"pop"},{token:"paren.lparen",regex:"{",push:"fqstringParRules"}],constants:[{token:"constant.numeric",regex:"(?:"+L+"|\\d+)[jJ]\\b"},{token:"constant.numeric",regex:L},{token:"constant.numeric",regex:T+"[lL]\\b"},{token:"constant.numeric",regex:T+"\\b"},{token:["punctuation","function.support"],regex:"(\\.)([a-zA-Z_]+)\\b"},{token:s,regex:"[a-zA-Z_$][a-zA-Z0-9_$]*\\b"}]},this.normalizeRules()};b.inherits(x,v),u.PythonHighlightRules=x}),ace.define("ace/mode/folding/pythonic",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"],function(e,u,M){var b=e("../../lib/oop"),v=e("./fold_mode").FoldMode,x=u.FoldMode=function(p){this.foldingStartMarker=new RegExp("([\\[{])(?:\\s*)$|("+p+")(?:\\s*)(?:#.*)?$")};b.inherits(x,v),(function(){this.getFoldWidgetRange=function(p,f,a){var s=p.getLine(a),o=s.match(this.foldingStartMarker);if(o)return o[1]?this.openingBracketBlock(p,o[1],a,o.index):o[2]?this.indentationBlock(p,a,o.index+o[2].length):this.indentationBlock(p,a)}}).call(x.prototype)}),ace.define("ace/mode/python",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/python_highlight_rules","ace/mode/folding/pythonic","ace/range"],function(e,u,M){var b=e("../lib/oop"),v=e("./text").Mode,x=e("./python_highlight_rules").PythonHighlightRules,p=e("./folding/pythonic").FoldMode,f=e("../range").Range,a=function(){this.HighlightRules=x,this.foldingRules=new p("\\:"),this.$behaviour=this.$defaultBehaviour};b.inherits(a,v),(function(){this.lineCommentStart="#",this.$pairQuotesAfter={"'":/[ruf]/i,'"':/[ruf]/i},this.getNextLineIndent=function(o,r,n){var i=this.$getIndent(r),h=this.getTokenizer().getLineTokens(r,o),m=h.tokens;if(m.length&&m[m.length-1].type=="comment")return i;if(o=="start"){var y=r.match(/^.*[\{\(\[:]\s*$/);y&&(i+=n)}return i};var s={pass:1,return:1,raise:1,break:1,continue:1};this.checkOutdent=function(o,r,n){if(n!==`\r
980
+ `&&n!=="\r"&&n!==`
981
+ `)return!1;var i=this.getTokenizer().getLineTokens(r.trim(),o).tokens;if(!i)return!1;do var h=i.pop();while(h&&(h.type=="comment"||h.type=="text"&&h.value.match(/^\s+$/)));return h?h.type=="keyword"&&s[h.value]:!1},this.autoOutdent=function(o,r,n){n+=1;var i=this.$getIndent(r.getLine(n)),h=r.getTabString();i.slice(-h.length)==h&&r.remove(new f(n,i.length-h.length,n,i.length))},this.$id="ace/mode/python",this.snippetFileId="ace/snippets/python"}).call(a.prototype),u.Mode=a}),(function(){ace.require(["ace/mode/python"],function(e){l&&(l.exports=e)})})()})(fc)),fc.exports}$x();var pc={exports:{}},Gd;function Tx(){return Gd||(Gd=1,(function(l,c){ace.define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("./text_highlight_rules").TextHighlightRules,x=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"punctuation.operator",regex:/[,]/},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};b.inherits(x,v),u.JsonHighlightRules=x}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,u,M){var b=e("../range").Range,v=function(){};(function(){this.checkOutdent=function(x,p){return/^\s+$/.test(x)?/^\s*\}/.test(p):!1},this.autoOutdent=function(x,p){var f=x.getLine(p),a=f.match(/^(\s*\})/);if(!a)return 0;var s=a[1].length,o=x.findMatchingBracket({row:p,column:s});if(!o||o.row==p)return 0;var r=this.$getIndent(x.getLine(o.row));x.replace(new b(p,0,p,s-1),r)},this.$getIndent=function(x){return x.match(/^\s*/)[0]}}).call(v.prototype),u.MatchingBraceOutdent=v}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,u,M){var b=e("../../lib/oop"),v=e("../../range").Range,x=e("./fold_mode").FoldMode,p=u.FoldMode=function(f){f&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+f.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+f.end)))};b.inherits(p,x),(function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(f,a,s){var o=f.getLine(s);if(this.singleLineBlockCommentRe.test(o)&&!this.startRegionRe.test(o)&&!this.tripleStarBlockCommentRe.test(o))return"";var r=this._getFoldWidgetBase(f,a,s);return!r&&this.startRegionRe.test(o)?"start":r},this.getFoldWidgetRange=function(f,a,s,o){var r=f.getLine(s);if(this.startRegionRe.test(r))return this.getCommentRegionBlock(f,r,s);var h=r.match(this.foldingStartMarker);if(h){var n=h.index;if(h[1])return this.openingBracketBlock(f,h[1],s,n);var i=f.getCommentFoldRange(s,n+h[0].length,1);return i&&!i.isMultiLine()&&(o?i=this.getSectionRange(f,s):a!="all"&&(i=null)),i}if(a!=="markbegin"){var h=r.match(this.foldingStopMarker);if(h){var n=h.index+h[0].length;return h[1]?this.closingBracketBlock(f,h[1],s,n):f.getCommentFoldRange(s,n,-1)}}},this.getSectionRange=function(f,a){var s=f.getLine(a),o=s.search(/\S/),r=a,n=s.length;a+=1;for(var i=a,h=f.getLength();++a<h;){s=f.getLine(a);var m=s.search(/\S/);if(m!==-1){if(o>m)break;var y=this.getFoldWidgetRange(f,"all",a);if(y){if(y.start.row<=r)break;if(y.isMultiLine())a=y.end.row;else if(o==m)break}i=a}}return new v(r,n,i,f.getLine(i).length)},this.getCommentRegionBlock=function(f,a,s){for(var o=a.search(/\s*$/),r=f.getLength(),n=s,i=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,h=1;++s<r;){a=f.getLine(s);var m=i.exec(a);if(m&&(m[1]?h--:h++,!h))break}var y=s;if(y>n)return new v(n,o,y,a.length)}}).call(p.prototype)}),ace.define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,u,M){var b=e("../lib/oop"),v=e("./text").Mode,x=e("./json_highlight_rules").JsonHighlightRules,p=e("./matching_brace_outdent").MatchingBraceOutdent,f=e("./folding/cstyle").FoldMode,a=e("../worker/worker_client").WorkerClient,s=function(){this.HighlightRules=x,this.$outdent=new p,this.$behaviour=this.$defaultBehaviour,this.foldingRules=new f};b.inherits(s,v),(function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(o,r,n){var i=this.$getIndent(r);if(o=="start"){var h=r.match(/^.*[\{\(\[]\s*$/);h&&(i+=n)}return i},this.checkOutdent=function(o,r,n){return this.$outdent.checkOutdent(r,n)},this.autoOutdent=function(o,r,n){this.$outdent.autoOutdent(r,n)},this.createWorker=function(o){var r=new a(["ace"],"ace/mode/json_worker","JsonWorker");return r.attachToDocument(o.getDocument()),r.on("annotate",function(n){o.setAnnotations(n.data)}),r.on("terminate",function(){o.clearAnnotations()}),r},this.$id="ace/mode/json"}).call(s.prototype),u.Mode=s}),(function(){ace.require(["ace/mode/json"],function(e){l&&(l.exports=e)})})()})(pc)),pc.exports}Tx();var gc={exports:{}},qd;function Lx(){return qd||(qd=1,(function(l,c){ace.define("ace/mode/css_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop");e("../lib/lang");var v=e("./text_highlight_rules").TextHighlightRules,x=u.supportType="align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-repeat|background-size|border|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-shadow|box-sizing|caption-side|clear|clip|color|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|font|font-family|font-size|font-size-adjust|font-stretch|font-style|font-variant|font-weight|hanging-punctuation|height|justify-content|left|letter-spacing|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-bottom|margin-left|margin-right|margin-top|max-height|max-width|max-zoom|min-height|min-width|min-zoom|nav-down|nav-index|nav-left|nav-right|nav-up|opacity|order|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-x|overflow-y|padding|padding-bottom|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|perspective|perspective-origin|position|quotes|resize|right|tab-size|table-layout|text-align|text-align-last|text-decoration|text-decoration-color|text-decoration-line|text-decoration-style|text-indent|text-justify|text-overflow|text-shadow|text-transform|top|transform|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|unicode-bidi|user-select|user-zoom|vertical-align|visibility|white-space|width|word-break|word-spacing|word-wrap|z-index",p=u.supportFunction="rgb|rgba|url|attr|counter|counters",f=u.supportConstant="absolute|after-edge|after|all-scroll|all|alphabetic|always|antialiased|armenian|auto|avoid-column|avoid-page|avoid|balance|baseline|before-edge|before|below|bidi-override|block-line-height|block|bold|bolder|border-box|both|bottom|box|break-all|break-word|capitalize|caps-height|caption|center|central|char|circle|cjk-ideographic|clone|close-quote|col-resize|collapse|column|consider-shifts|contain|content-box|cover|crosshair|cubic-bezier|dashed|decimal-leading-zero|decimal|default|disabled|disc|disregard-shifts|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ease-in|ease-in-out|ease-out|ease|ellipsis|end|exclude-ruby|flex-end|flex-start|fill|fixed|georgian|glyphs|grid-height|groove|hand|hanging|hebrew|help|hidden|hiragana-iroha|hiragana|horizontal|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|include-ruby|inherit|initial|inline-block|inline-box|inline-line-height|inline-table|inline|inset|inside|inter-ideograph|inter-word|invert|italic|justify|katakana-iroha|katakana|keep-all|last|left|lighter|line-edge|line-through|line|linear|list-item|local|loose|lower-alpha|lower-greek|lower-latin|lower-roman|lowercase|lr-tb|ltr|mathematical|max-height|max-size|medium|menu|message-box|middle|move|n-resize|ne-resize|newspaper|no-change|no-close-quote|no-drop|no-open-quote|no-repeat|none|normal|not-allowed|nowrap|nw-resize|oblique|open-quote|outset|outside|overline|padding-box|page|pointer|pre-line|pre-wrap|pre|preserve-3d|progress|relative|repeat-x|repeat-y|repeat|replaced|reset-size|ridge|right|round|row-resize|rtl|s-resize|scroll|se-resize|separate|slice|small-caps|small-caption|solid|space|square|start|static|status-bar|step-end|step-start|steps|stretch|strict|sub|super|sw-resize|table-caption|table-cell|table-column-group|table-column|table-footer-group|table-header-group|table-row-group|table-row|table|tb-rl|text-after-edge|text-before-edge|text-bottom|text-size|text-top|text|thick|thin|transparent|underline|upper-alpha|upper-latin|upper-roman|uppercase|use-script|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace|z-index|zero|zoom",a=u.supportConstantColor="aliceblue|antiquewhite|aqua|aquamarine|azure|beige|bisque|black|blanchedalmond|blue|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|fuchsia|gainsboro|ghostwhite|gold|goldenrod|gray|green|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|lime|limegreen|linen|magenta|maroon|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|navy|oldlace|olive|olivedrab|orange|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|purple|rebeccapurple|red|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|silver|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|teal|thistle|tomato|turquoise|violet|wheat|white|whitesmoke|yellow|yellowgreen",s=u.supportConstantFonts="arial|century|comic|courier|cursive|fantasy|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace",o=u.numRe="\\-?(?:(?:[0-9]+(?:\\.[0-9]+)?)|(?:\\.[0-9]+))",r=u.pseudoElements="(\\:+)\\b(after|before|first-letter|first-line|moz-selection|selection)\\b",n=u.pseudoClasses="(:)\\b(active|checked|disabled|empty|enabled|first-child|first-of-type|focus|hover|indeterminate|invalid|last-child|last-of-type|link|not|nth-child|nth-last-child|nth-last-of-type|nth-of-type|only-child|only-of-type|required|root|target|valid|visited)\\b",i=function(){var h=this.createKeywordMapper({"support.function":p,"support.constant":f,"support.type":x,"support.constant.color":a,"support.constant.fonts":s},"text",!0);this.$rules={start:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"ruleset"},{token:"paren.rparen",regex:"\\}"},{token:"string",regex:"@(?!viewport)",next:"media"},{token:"keyword",regex:"#[a-z0-9-_]+"},{token:"keyword",regex:"%"},{token:"variable",regex:"\\.[a-z0-9-_]+"},{token:"string",regex:":[a-z0-9-_]+"},{token:"constant.numeric",regex:o},{token:"constant",regex:"[a-z0-9-_]+"},{caseInsensitive:!0}],media:[{include:["strings","url","comments"]},{token:"paren.lparen",regex:"\\{",next:"start"},{token:"paren.rparen",regex:"\\}",next:"start"},{token:"string",regex:";",next:"start"},{token:"keyword",regex:"(?:media|supports|document|charset|import|namespace|media|supports|document|page|font|keyframes|viewport|counter-style|font-feature-values|swash|ornaments|annotation|stylistic|styleset|character-variant)"}],comments:[{token:"comment",regex:"\\/\\*",push:[{token:"comment",regex:"\\*\\/",next:"pop"},{defaultToken:"comment"}]}],ruleset:[{regex:"-(webkit|ms|moz|o)-",token:"text"},{token:"punctuation.operator",regex:"[:;]"},{token:"paren.rparen",regex:"\\}",next:"start"},{include:["strings","url","comments"]},{token:["constant.numeric","keyword"],regex:"("+o+")(ch|cm|deg|em|ex|fr|gd|grad|Hz|in|kHz|mm|ms|pc|pt|px|rad|rem|s|turn|vh|vmax|vmin|vm|vw|%)"},{token:"constant.numeric",regex:o},{token:"constant.numeric",regex:"#[a-f0-9]{6}"},{token:"constant.numeric",regex:"#[a-f0-9]{3}"},{token:["punctuation","entity.other.attribute-name.pseudo-element.css"],regex:r},{token:["punctuation","entity.other.attribute-name.pseudo-class.css"],regex:n},{include:"url"},{token:h,regex:"\\-?[a-zA-Z_][a-zA-Z0-9_\\-]*"},{token:"paren.lparen",regex:"\\{"},{caseInsensitive:!0}],url:[{token:"support.function",regex:"(?:url(:?-prefix)?|domain|regexp)\\(",push:[{token:"support.function",regex:"\\)",next:"pop"},{defaultToken:"string"}]}],strings:[{token:"string.start",regex:"'",push:[{token:"string.end",regex:"'|$",next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]},{token:"string.start",regex:'"',push:[{token:"string.end",regex:'"|$',next:"pop"},{include:"escapes"},{token:"constant.language.escape",regex:/\\$/,consumeLineEnd:!0},{defaultToken:"string"}]}],escapes:[{token:"constant.language.escape",regex:/\\([a-fA-F\d]{1,6}|[^a-fA-F\d])/}]},this.normalizeRules()};b.inherits(i,v),u.CssHighlightRules=i}),ace.define("ace/mode/jsdoc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("./text_highlight_rules").TextHighlightRules,x=function(){this.$rules={start:[{token:["comment.doc.tag","comment.doc.text","lparen.doc"],regex:"(@(?:param|member|typedef|property|namespace|var|const|callback))(\\s*)({)",push:[{token:"lparen.doc",regex:"{",push:[{include:"doc-syntax"},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"}]},{token:["rparen.doc","text.doc","variable.parameter.doc","lparen.doc","variable.parameter.doc","rparen.doc"],regex:/(})(\s*)(?:([\w=:\/\.]+)|(?:(\[)([\w=:\/\.\-\'\" ]+)(\])))/,next:"pop"},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"},{include:"doc-syntax"},{defaultToken:"text.doc"}]},{token:["comment.doc.tag","text.doc","lparen.doc"],regex:"(@(?:returns?|yields|type|this|suppress|public|protected|private|package|modifies|implements|external|exception|throws|enum|define|extends))(\\s*)({)",push:[{token:"lparen.doc",regex:"{",push:[{include:"doc-syntax"},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"}]},{token:"rparen.doc",regex:"}|(?=$)",next:"pop"},{include:"doc-syntax"},{defaultToken:"text.doc"}]},{token:["comment.doc.tag","text.doc","variable.parameter.doc"],regex:'(@(?:alias|memberof|instance|module|name|lends|namespace|external|this|template|requires|param|implements|function|extends|typedef|mixes|constructor|var|memberof\\!|event|listens|exports|class|constructs|interface|emits|fires|throws|const|callback|borrows|augments))(\\s+)(\\w[\\w#.:/~"\\-]*)?'},{token:["comment.doc.tag","text.doc","variable.parameter.doc"],regex:"(@method)(\\s+)(\\w[\\w.\\(\\)]*)"},{token:"comment.doc.tag",regex:"@access\\s+(?:private|public|protected)"},{token:"comment.doc.tag",regex:"@kind\\s+(?:class|constant|event|external|file|function|member|mixin|module|namespace|typedef)"},{token:"comment.doc.tag",regex:"@\\w+(?=\\s|$)"},x.getTagRule(),{defaultToken:"comment.doc.body",caseInsensitive:!0}],"doc-syntax":[{token:"operator.doc",regex:/[|:]/},{token:"paren.doc",regex:/[\[\]]/}]},this.normalizeRules()};b.inherits(x,v),x.getTagRule=function(p){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},x.getStartRule=function(p){return{token:"comment.doc",regex:/\/\*\*(?!\/)/,next:p}},x.getEndRule=function(p){return{token:"comment.doc",regex:"\\*\\/",next:p}},u.JsDocCommentHighlightRules=x}),ace.define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/jsdoc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,u,M){function b(){var o=a.replace("\\d","\\d\\-"),r={onMatch:function(i,h,m){var y=i.charAt(1)=="/"?2:1;return y==1?(h!=this.nextState?m.unshift(this.next,this.nextState,0):m.unshift(this.next),m[2]++):y==2&&h==this.nextState&&(m[1]--,(!m[1]||m[1]<0)&&(m.shift(),m.shift())),[{type:"meta.tag.punctuation."+(y==1?"":"end-")+"tag-open.xml",value:i.slice(0,y)},{type:"meta.tag.tag-name.xml",value:i.substr(y)}]},regex:"</?(?:"+o+"|(?=>))",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(r);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,r,{include:"reference"},{defaultToken:"string.xml"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(i,h,m){return h==m[0]&&m.shift(),i.length==2&&(m[0]==this.nextState&&m[1]--,(!m[1]||m[1]<0)&&m.splice(0,2)),this.next=m[0]||"start",[{type:this.token,value:i}]},nextState:"jsx"},n,v("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:o},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},r],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function v(o){return[{token:"comment",regex:/\/\*/,next:[p.getTagRule(),{token:"comment",regex:"\\*\\/",next:o||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[p.getTagRule(),{token:"comment",regex:"$|^",next:o||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var x=e("../lib/oop"),p=e("./jsdoc_comment_highlight_rules").JsDocCommentHighlightRules,f=e("./text_highlight_rules").TextHighlightRules,a="[a-zA-Z\\$_¡-￿][a-zA-Z\\d\\$_¡-￿]*",s=function(o){var r={"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Symbol|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static|constructor","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},n=this.createKeywordMapper(r,"identifier"),i="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",h="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)",m="(function)(\\s*)(\\*?)",y={token:["identifier","text","paren.lparen"],regex:"(\\b(?!"+Object.values(r).join("|")+"\\b)"+a+")(\\s*)(\\()"};this.$rules={no_regex:[p.getStartRule("doc-start"),v("no_regex"),y,{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","storage.type","text","paren.lparen"],regex:"("+a+")(\\s*)(=)(\\s*)"+m+"(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","storage.type","text","text","entity.name.function","text","paren.lparen"],regex:"(function)(?:(?:(\\s*)(\\*)(\\s*))|(\\s+))("+a+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","storage.type","text","paren.lparen"],regex:"("+a+")(\\s*)(:)(\\s*)"+m+"(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)"+m+"(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:`from(?=\\s*('|"))`},{token:"keyword",regex:"(?:"+i+")\\b",next:"start"},{token:"support.constant",regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|debug|time|trace|timeEnd|assert)\b/},{token:n,regex:a},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/},{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:"keyword.operator",regex:/=/},{token:["storage.type","text","storage.type","text","paren.lparen"],regex:m+"(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","storage.type","text","text","entity.name.function","text","paren.lparen"],regex:"(function)(?:(?:(\\s*)(\\*)(\\s*))|(\\s+))(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:"prototype"},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|lter|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward|rEach)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:a},{regex:"",token:"empty",next:"no_regex"}],start:[p.getStartRule("doc-start"),v("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],default_parameter:[{token:"string",regex:"'(?=.)",push:[{token:"string",regex:"'|$",next:"pop"},{include:"qstring"}]},{token:"string",regex:'"(?=.)',push:[{token:"string",regex:'"|$',next:"pop"},{include:"qqstring"}]},{token:"constant.language",regex:"null|Infinity|NaN|undefined"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:"punctuation.operator",regex:",",next:"function_arguments"},{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],function_arguments:[v("function_arguments"),{token:"variable.parameter",regex:a},{token:"punctuation.operator",regex:","},{token:"text",regex:"\\s+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:h},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:h},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]},(!o||!o.noES6)&&(this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(R,T,k){if(this.next=R=="{"?this.nextState:"",R=="{"&&k.length)k.unshift("start",T);else if(R=="}"&&k.length&&(k.shift(),this.next=k.shift(),this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1))return"paren.quasi.end";return R=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:h},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]},{token:["variable.parameter","text"],regex:"("+a+")(\\s*)(?=\\=>)"},{token:"paren.lparen",regex:"(\\()(?=[^\\(]+\\s*=>)",next:"function_arguments"},{token:"variable.language",regex:"(?:(?:(?:Weak)?(?:Set|Map))|Promise)\\b"}),this.$rules.function_arguments.unshift({token:"keyword.operator",regex:"=",next:"default_parameter"},{token:"keyword.operator",regex:"\\.{3}"}),this.$rules.property.unshift({token:"support.function",regex:"(findIndex|repeat|startsWith|endsWith|includes|isSafeInteger|trunc|cbrt|log2|log10|sign|then|catch|finally|resolve|reject|race|any|all|allSettled|keys|entries|isInteger)\\b(?=\\()"},{token:"constant.language",regex:"(?:MAX_SAFE_INTEGER|MIN_SAFE_INTEGER|EPSILON)\\b"}),(!o||o.jsx!=0)&&b.call(this)),this.embedRules(p,"doc-",[p.getEndRule("no_regex")]),this.normalizeRules()};x.inherits(s,f),u.JavaScriptHighlightRules=s}),ace.define("ace/mode/xml_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("./text_highlight_rules").TextHighlightRules,x=function(p){var f="[_:a-zA-ZÀ-￿][-_:.a-zA-Z0-9À-￿]*";this.$rules={start:[{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\[",next:"cdata"},{token:["punctuation.instruction.xml","keyword.instruction.xml"],regex:"(<\\?)("+f+")",next:"processing_instruction"},{token:"comment.start.xml",regex:"<\\!--",next:"comment"},{token:["xml-pe.doctype.xml","xml-pe.doctype.xml"],regex:"(<\\!)(DOCTYPE)(?=[\\s])",next:"doctype",caseInsensitive:!0},{include:"tag"},{token:"text.end-tag-open.xml",regex:"</"},{token:"text.tag-open.xml",regex:"<"},{include:"reference"},{defaultToken:"text.xml"}],processing_instruction:[{token:"entity.other.attribute-name.decl-attribute-name.xml",regex:f},{token:"keyword.operator.decl-attribute-equals.xml",regex:"="},{include:"whitespace"},{include:"string"},{token:"punctuation.xml-decl.xml",regex:"\\?>",next:"start"}],doctype:[{include:"whitespace"},{include:"string"},{token:"xml-pe.doctype.xml",regex:">",next:"start"},{token:"xml-pe.xml",regex:"[-_a-zA-Z0-9:]+"},{token:"punctuation.int-subset",regex:"\\[",push:"int_subset"}],int_subset:[{token:"text.xml",regex:"\\s+"},{token:"punctuation.int-subset.xml",regex:"]",next:"pop"},{token:["punctuation.markup-decl.xml","keyword.markup-decl.xml"],regex:"(<\\!)("+f+")",push:[{token:"text",regex:"\\s+"},{token:"punctuation.markup-decl.xml",regex:">",next:"pop"},{include:"string"}]}],cdata:[{token:"string.cdata.xml",regex:"\\]\\]>",next:"start"},{token:"text.xml",regex:"\\s+"},{token:"text.xml",regex:"(?:[^\\]]|\\](?!\\]>))+"}],comment:[{token:"comment.end.xml",regex:"-->",next:"start"},{defaultToken:"comment.xml"}],reference:[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],attr_reference:[{token:"constant.language.escape.reference.attribute-value.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}],tag:[{token:["meta.tag.punctuation.tag-open.xml","meta.tag.punctuation.end-tag-open.xml","meta.tag.tag-name.xml"],regex:"(?:(<)|(</))((?:"+f+":)?"+f+")",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}],tag_whitespace:[{token:"text.tag-whitespace.xml",regex:"\\s+"}],whitespace:[{token:"text.whitespace.xml",regex:"\\s+"}],string:[{token:"string.xml",regex:"'",push:[{token:"string.xml",regex:"'",next:"pop"},{defaultToken:"string.xml"}]},{token:"string.xml",regex:'"',push:[{token:"string.xml",regex:'"',next:"pop"},{defaultToken:"string.xml"}]}],attributes:[{token:"entity.other.attribute-name.xml",regex:f},{token:"keyword.operator.attribute-equals.xml",regex:"="},{include:"tag_whitespace"},{include:"attribute_value"}],attribute_value:[{token:"string.attribute-value.xml",regex:"'",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"attr_reference"},{defaultToken:"string.attribute-value.xml"}]}]},this.constructor===x&&this.normalizeRules()};(function(){this.embedTagRules=function(p,f,a){this.$rules.tag.unshift({token:["meta.tag.punctuation.tag-open.xml","meta.tag."+a+".tag-name.xml"],regex:"(<)("+a+"(?=\\s|>|$))",next:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:f+"start"}]}),this.$rules[a+"-end"]=[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start",onMatch:function(s,o,r){return r.splice(0),this.token}}],this.embedRules(p,f,[{token:["meta.tag.punctuation.end-tag-open.xml","meta.tag."+a+".tag-name.xml"],regex:"(</)("+a+"(?=\\s|>|$))",next:a+"-end"},{token:"string.cdata.xml",regex:"<\\!\\[CDATA\\["},{token:"string.cdata.xml",regex:"\\]\\]>"}])}}).call(v.prototype),b.inherits(x,v),u.XmlHighlightRules=x}),ace.define("ace/mode/html_highlight_rules",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/css_highlight_rules","ace/mode/javascript_highlight_rules","ace/mode/xml_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("../lib/lang"),x=e("./css_highlight_rules").CssHighlightRules,p=e("./javascript_highlight_rules").JavaScriptHighlightRules,f=e("./xml_highlight_rules").XmlHighlightRules,a=v.createMap({a:"anchor",button:"form",form:"form",img:"image",input:"form",label:"form",option:"form",script:"script",select:"form",textarea:"form",style:"style",table:"table",tbody:"table",td:"table",tfoot:"table",th:"table",tr:"table"}),s=function(){f.call(this),this.addRules({attributes:[{include:"tag_whitespace"},{token:"entity.other.attribute-name.xml",regex:"[-_a-zA-Z0-9:.]+"},{token:"keyword.operator.attribute-equals.xml",regex:"=",push:[{include:"tag_whitespace"},{token:"string.unquoted.attribute-value.html",regex:"[^<>='\"`\\s]+",next:"pop"},{token:"empty",regex:"",next:"pop"}]},{include:"attribute_value"}],tag:[{token:function(o,r){var n=a[r];return["meta.tag.punctuation."+(o=="<"?"":"end-")+"tag-open.xml","meta.tag"+(n?"."+n:"")+".tag-name.xml"]},regex:"(</?)([-_a-zA-Z0-9:.]+)",next:"tag_stuff"}],tag_stuff:[{include:"attributes"},{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",next:"start"}]}),this.embedTagRules(x,"css-","style"),this.embedTagRules(new p({jsx:!1}).getRules(),"js-","script"),this.constructor===s&&this.normalizeRules()};b.inherits(s,f),u.HtmlHighlightRules=s}),ace.define("ace/mode/markdown_highlight_rules",["require","exports","module","ace/config","ace/lib/oop","ace/lib/lang","ace/mode/text_highlight_rules","ace/mode/html_highlight_rules"],function(e,u,M){var b=e("../config").$modes,v=e("../lib/oop"),x=e("../lib/lang"),p=e("./text_highlight_rules").TextHighlightRules,f=e("./html_highlight_rules").HtmlHighlightRules,a=function(o){return"(?:[^"+x.escapeRegExp(o)+"\\\\]|\\\\.)*"},s=function(){f.call(this);var o={token:"support.function",regex:/^\s*(```+[^`]*|~~~+[^~]*)$/,onMatch:function(n,i,h,m){var y=n.match(/^(\s*)([`~]+)(.*)/),R=/[\w-]+|$/.exec(y[3])[0];return b[R]||(R=""),h.unshift("githubblock",[],[y[1],y[2],R],i),this.token},next:"githubblock"},r=[{token:"support.function",regex:".*",onMatch:function(n,i,h,m){var y=h[1],R=h[2][0],T=h[2][1],k=h[2][2],w=/^(\s*)(`+|~+)\s*$/.exec(n);if(w&&w[1].length<R.length+3&&w[2].length>=T.length&&w[2][0]==T[0])return h.splice(0,3),this.next=h.shift(),this.token;if(this.next="",k&&b[k]){var I=b[k].getTokenizer().getLineTokens(n,y.slice(0));return h[1]=I.state,I.tokens}return this.token}}];this.$rules.start.unshift({token:"empty_line",regex:"^$",next:"allowBlock"},{token:"markup.heading.1",regex:"^=+(?=\\s*$)"},{token:"markup.heading.2",regex:"^\\-+(?=\\s*$)"},{token:function(n){return"markup.heading."+n.length},regex:/^#{1,6}(?=\s|$)/,next:"header"},o,{token:"string.blockquote",regex:"^\\s*>\\s*(?:[*+-]|\\d+\\.)?\\s+",next:"blockquote"},{token:"constant",regex:"^ {0,3}(?:(?:\\* ?){3,}|(?:\\- ?){3,}|(?:\\_ ?){3,})\\s*$",next:"allowBlock"},{token:"markup.list",regex:"^\\s{0,3}(?:[*+-]|\\d+\\.)\\s+",next:"listblock-start"},{include:"basic"}),this.addRules({basic:[{token:"constant.language.escape",regex:/\\[\\`*_{}\[\]()#+\-.!]/},{token:"support.function",regex:"(`+)(.*?[^`])(\\1)"},{token:["text","constant","text","url","string","text"],regex:'^([ ]{0,3}\\[)([^\\]]+)(\\]:\\s*)([^ ]+)(\\s*(?:["][^"]+["])?(\\s*))$'},{token:["text","string","text","constant","text"],regex:"(\\[)("+a("]")+")(\\]\\s*\\[)("+a("]")+")(\\])"},{token:["text","string","text","markup.underline","string","text"],regex:"(\\!?\\[)("+a("]")+')(\\]\\()((?:[^\\)\\s\\\\]|\\\\.|\\s(?=[^"]))*)(\\s*"'+a('"')+'"\\s*)?(\\))'},{token:"string.strong",regex:"([*]{2}|[_]{2}(?=\\S))(.*?\\S[*_]*)(\\1)"},{token:"string.emphasis",regex:"([*]|[_](?=\\S))(.*?\\S[*_]*)(\\1)"},{token:["text","url","text"],regex:`(<)((?:https?|ftp|dict):[^'">\\s]+|(?:mailto:)?[-.\\w]+\\@[-a-z0-9]+(?:\\.[-a-z0-9]+)*\\.[a-z]+)(>)`}],allowBlock:[{token:"support.function",regex:"^ {4}.+",next:"allowBlock"},{token:"empty_line",regex:"^$",next:"allowBlock"},{token:"empty",regex:"",next:"start"}],header:[{regex:"$",next:"start"},{include:"basic"},{defaultToken:"heading"}],"listblock-start":[{token:"support.variable",regex:/(?:\[[ x]\])?/,next:"listblock"}],listblock:[{token:"empty_line",regex:"^$",next:"start"},{token:"markup.list",regex:"^\\s{0,3}(?:[*+-]|\\d+\\.)\\s+",next:"listblock-start"},{include:"basic",noEscape:!0},o,{defaultToken:"list"}],blockquote:[{token:"empty_line",regex:"^\\s*$",next:"start"},{token:"string.blockquote",regex:"^\\s*>\\s*(?:[*+-]|\\d+\\.)?\\s+",next:"blockquote"},{include:"basic",noEscape:!0},{defaultToken:"string.blockquote"}],githubblock:r}),this.normalizeRules()};v.inherits(s,p),u.MarkdownHighlightRules=s}),ace.define("ace/mode/folding/markdown",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode","ace/range"],function(e,u,M){var b=e("../../lib/oop"),v=e("./fold_mode").FoldMode,x=e("../../range").Range,p=u.FoldMode=function(){};b.inherits(p,v),(function(){this.foldingStartMarker=/^(?:[=-]+\s*$|#{1,6} |`{3})/,this.getFoldWidget=function(f,a,s){var o=f.getLine(s);return this.foldingStartMarker.test(o)?o[0]=="`"&&f.bgTokenizer.getState(s)=="start"?"end":"start":""},this.getFoldWidgetRange=function(f,a,s){function o(D){return R=f.getTokens(D)[0],R&&R.type.lastIndexOf(T,0)===0}function r(){var D=R.value[0];return D=="="?6:D=="-"?5:7-R.value.search(/[^#]|$/)}var n=f.getLine(s),i=n.length,h=f.getLength(),m=s,y=s;if(n.match(this.foldingStartMarker)){if(n[0]=="`"){if(f.bgTokenizer.getState(s)!=="start"){for(;++s<h&&(n=f.getLine(s),!(n[0]=="`"&n.substring(0,3)=="```")););return new x(m,i,s,0)}for(;s-- >0&&(n=f.getLine(s),!(n[0]=="`"&n.substring(0,3)=="```")););return new x(s,n.length,m,0)}var R,T="markup.heading";if(o(s)){for(var k=r();++s<h;)if(o(s)){var w=r();if(w>=k)break}if(y=s-(!R||["=","-"].indexOf(R.value[0])==-1?1:2),y>m)for(;y>m&&/^\s*$/.test(f.getLine(y));)y--;if(y>m){var I=f.getLine(y).length;return new x(m,i,y,I)}}}}}).call(p.prototype)}),ace.define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,u,M){var b=e("../range").Range,v=function(){};(function(){this.checkOutdent=function(x,p){return/^\s+$/.test(x)?/^\s*\}/.test(p):!1},this.autoOutdent=function(x,p){var f=x.getLine(p),a=f.match(/^(\s*\})/);if(!a)return 0;var s=a[1].length,o=x.findMatchingBracket({row:p,column:s});if(!o||o.row==p)return 0;var r=this.$getIndent(x.getLine(o.row));x.replace(new b(p,0,p,s-1),r)},this.$getIndent=function(x){return x.match(/^\s*/)[0]}}).call(v.prototype),u.MatchingBraceOutdent=v}),ace.define("ace/mode/behaviour/xml",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator"],function(e,u,M){function b(a,s){return a&&a.type.lastIndexOf(s+".xml")>-1}var v=e("../../lib/oop"),x=e("../behaviour").Behaviour,p=e("../../token_iterator").TokenIterator,f=function(){this.add("string_dquotes","insertion",function(a,s,o,r,n){if(n=='"'||n=="'"){var i=n,h=r.doc.getTextRange(o.getSelectionRange());if(h!==""&&h!=="'"&&h!='"'&&o.getWrapBehavioursEnabled())return{text:i+h+i,selection:!1};var m=o.getCursorPosition(),y=r.doc.getLine(m.row),R=y.substring(m.column,m.column+1),T=new p(r,m.row,m.column),k=T.getCurrentToken();if(R==i&&(b(k,"attribute-value")||b(k,"string")))return{text:"",selection:[1,1]};if(k||(k=T.stepBackward()),!k)return;for(;b(k,"tag-whitespace")||b(k,"whitespace");)k=T.stepBackward();var w=!R||R.match(/\s/);if(b(k,"attribute-equals")&&(w||R==">")||b(k,"decl-attribute-equals")&&(w||R=="?"))return{text:i+i,selection:[1,1]}}}),this.add("string_dquotes","deletion",function(a,s,o,r,n){var i=r.doc.getTextRange(n);if(!n.isMultiLine()&&(i=='"'||i=="'")){var h=r.doc.getLine(n.start.row),m=h.substring(n.start.column+1,n.start.column+2);if(m==i)return n.end.column++,n}}),this.add("autoclosing","insertion",function(a,s,o,r,n){if(n==">"){var i=o.getSelectionRange().start,h=new p(r,i.row,i.column),m=h.getCurrentToken()||h.stepBackward();if(!m||!(b(m,"tag-name")||b(m,"tag-whitespace")||b(m,"attribute-name")||b(m,"attribute-equals")||b(m,"attribute-value"))||b(m,"reference.attribute-value"))return;if(b(m,"attribute-value")){var y=h.getCurrentTokenColumn()+m.value.length;if(i.column<y)return;if(i.column==y){var R=h.stepForward();if(R&&b(R,"attribute-value"))return;h.stepBackward()}}if(/^\s*>/.test(r.getLine(i.row).slice(i.column)))return;for(;!b(m,"tag-name");)if(m=h.stepBackward(),m.value=="<"){m=h.stepForward();break}var T=h.getCurrentTokenRow(),k=h.getCurrentTokenColumn();if(b(h.stepBackward(),"end-tag-open"))return;var w=m.value;return T==i.row&&(w=w.substring(0,i.column-k)),this.voidElements&&this.voidElements.hasOwnProperty(w.toLowerCase())?void 0:{text:"></"+w+">",selection:[1,1]}}}),this.add("autoindent","insertion",function(a,s,o,r,n){if(n==`
982
+ `){var i=o.getCursorPosition(),h=r.getLine(i.row),m=new p(r,i.row,i.column),y=m.getCurrentToken();if(b(y,"")&&y.type.indexOf("tag-close")!==-1){if(y.value=="/>")return;for(;y&&y.type.indexOf("tag-name")===-1;)y=m.stepBackward();if(!y)return;var R=y.value,T=m.getCurrentTokenRow();if(y=m.stepBackward(),!y||y.type.indexOf("end-tag")!==-1)return;if(this.voidElements&&!this.voidElements[R]||!this.voidElements){var k=r.getTokenAt(i.row,i.column+1),h=r.getLine(T),w=this.$getIndent(h),I=w+r.getTabString();return k&&k.value==="</"?{text:`
983
+ `+I+`
984
+ `+w,selection:[1,I.length,1,I.length]}:{text:`
985
+ `+I}}}}})};v.inherits(f,x),u.XmlBehaviour=f}),ace.define("ace/mode/behaviour/javascript",["require","exports","module","ace/lib/oop","ace/token_iterator","ace/mode/behaviour/cstyle","ace/mode/behaviour/xml"],function(e,u,M){var b=e("../../lib/oop"),v=e("../../token_iterator").TokenIterator,x=e("../behaviour/cstyle").CstyleBehaviour,p=e("../behaviour/xml").XmlBehaviour,f=function(){var a=new p({closeCurlyBraces:!0}).getBehaviours();this.addBehaviours(a),this.inherit(x),this.add("autoclosing-fragment","insertion",function(s,o,r,n,i){if(i==">"){var h=r.getSelectionRange().start,m=new v(n,h.row,h.column),y=m.getCurrentToken()||m.stepBackward();if(!y)return;if(y.value=="<")return{text:"></>",selection:[1,1]}}})};b.inherits(f,x),u.JavaScriptBehaviour=f}),ace.define("ace/mode/folding/xml",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,u,M){function b(s,o){return s&&s.type&&s.type.lastIndexOf(o+".xml")>-1}var v=e("../../lib/oop"),x=e("../../range").Range,p=e("./fold_mode").FoldMode,f=u.FoldMode=function(s,o){p.call(this),this.voidElements=s||{},this.optionalEndTags=v.mixin({},this.voidElements),o&&v.mixin(this.optionalEndTags,o)};v.inherits(f,p);var a=function(){this.tagName="",this.closing=!1,this.selfClosing=!1,this.start={row:0,column:0},this.end={row:0,column:0}};(function(){this.getFoldWidget=function(s,o,r){var n=this._getFirstTagInLine(s,r);return n?n.closing||!n.tagName&&n.selfClosing?o==="markbeginend"?"end":"":!n.tagName||n.selfClosing||this.voidElements.hasOwnProperty(n.tagName.toLowerCase())||this._findEndTagInLine(s,r,n.tagName,n.end.column)?"":"start":this.getCommentFoldWidget(s,r)},this.getCommentFoldWidget=function(s,o){return/comment/.test(s.getState(o))&&/<!-/.test(s.getLine(o))?"start":""},this._getFirstTagInLine=function(s,o){for(var r=s.getTokens(o),n=new a,i=0;i<r.length;i++){var h=r[i];if(b(h,"tag-open")){if(n.end.column=n.start.column+h.value.length,n.closing=b(h,"end-tag-open"),h=r[++i],!h)return null;if(n.tagName=h.value,h.value===""){if(h=r[++i],!h)return null;n.tagName=h.value}for(n.end.column+=h.value.length,i++;i<r.length;i++)if(h=r[i],n.end.column+=h.value.length,b(h,"tag-close")){n.selfClosing=h.value=="/>";break}return n}if(b(h,"tag-close"))return n.selfClosing=h.value=="/>",n;n.start.column+=h.value.length}return null},this._findEndTagInLine=function(s,o,r,n){for(var i=s.getTokens(o),h=0,m=0;m<i.length;m++){var y=i[m];if(h+=y.value.length,!(h<n-1)&&b(y,"end-tag-open")&&(y=i[m+1],b(y,"tag-name")&&y.value===""&&(y=i[m+2]),y&&y.value==r))return!0}return!1},this.getFoldWidgetRange=function(s,o,r){var n=this._getFirstTagInLine(s,r);if(!n)return this.getCommentFoldWidget(s,r)&&s.getCommentFoldRange(r,s.getLine(r).length);var i=s.getMatchingTags({row:r,column:0});if(i)return new x(i.openTag.end.row,i.openTag.end.column,i.closeTag.start.row,i.closeTag.start.column)}}).call(f.prototype)}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,u,M){var b=e("../../lib/oop"),v=e("../../range").Range,x=e("./fold_mode").FoldMode,p=u.FoldMode=function(f){f&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+f.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+f.end)))};b.inherits(p,x),(function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(f,a,s){var o=f.getLine(s);if(this.singleLineBlockCommentRe.test(o)&&!this.startRegionRe.test(o)&&!this.tripleStarBlockCommentRe.test(o))return"";var r=this._getFoldWidgetBase(f,a,s);return!r&&this.startRegionRe.test(o)?"start":r},this.getFoldWidgetRange=function(f,a,s,o){var r=f.getLine(s);if(this.startRegionRe.test(r))return this.getCommentRegionBlock(f,r,s);var h=r.match(this.foldingStartMarker);if(h){var n=h.index;if(h[1])return this.openingBracketBlock(f,h[1],s,n);var i=f.getCommentFoldRange(s,n+h[0].length,1);return i&&!i.isMultiLine()&&(o?i=this.getSectionRange(f,s):a!="all"&&(i=null)),i}if(a!=="markbegin"){var h=r.match(this.foldingStopMarker);if(h){var n=h.index+h[0].length;return h[1]?this.closingBracketBlock(f,h[1],s,n):f.getCommentFoldRange(s,n,-1)}}},this.getSectionRange=function(f,a){var s=f.getLine(a),o=s.search(/\S/),r=a,n=s.length;a+=1;for(var i=a,h=f.getLength();++a<h;){s=f.getLine(a);var m=s.search(/\S/);if(m!==-1){if(o>m)break;var y=this.getFoldWidgetRange(f,"all",a);if(y){if(y.start.row<=r)break;if(y.isMultiLine())a=y.end.row;else if(o==m)break}i=a}}return new v(r,n,i,f.getLine(i).length)},this.getCommentRegionBlock=function(f,a,s){for(var o=a.search(/\s*$/),r=f.getLength(),n=s,i=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,h=1;++s<r;){a=f.getLine(s);var m=i.exec(a);if(m&&(m[1]?h--:h++,!h))break}var y=s;if(y>n)return new v(n,o,y,a.length)}}).call(p.prototype)}),ace.define("ace/mode/folding/javascript",["require","exports","module","ace/lib/oop","ace/mode/folding/xml","ace/mode/folding/cstyle"],function(e,u,M){var b=e("../../lib/oop"),v=e("./xml").FoldMode,x=e("./cstyle").FoldMode,p=u.FoldMode=function(f){f&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+f.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+f.end))),this.xmlFoldMode=new v};b.inherits(p,x),(function(){this.getFoldWidgetRangeBase=this.getFoldWidgetRange,this.getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(f,a,s){var o=this.getFoldWidgetBase(f,a,s);return o||this.xmlFoldMode.getFoldWidget(f,a,s)},this.getFoldWidgetRange=function(f,a,s,o){var r=this.getFoldWidgetRangeBase(f,a,s,o);return r||this.xmlFoldMode.getFoldWidgetRange(f,a,s)}}).call(p.prototype)}),ace.define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/javascript","ace/mode/folding/javascript"],function(e,u,M){var b=e("../lib/oop"),v=e("./text").Mode,x=e("./javascript_highlight_rules").JavaScriptHighlightRules,p=e("./matching_brace_outdent").MatchingBraceOutdent,f=e("../worker/worker_client").WorkerClient,a=e("./behaviour/javascript").JavaScriptBehaviour,s=e("./folding/javascript").FoldMode,o=function(){this.HighlightRules=x,this.$outdent=new p,this.$behaviour=new a,this.foldingRules=new s};b.inherits(o,v),(function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.$pairQuotesAfter={"`":/\w/},this.getNextLineIndent=function(r,n,i){var h=this.$getIndent(n),m=this.getTokenizer().getLineTokens(n,r),y=m.tokens,R=m.state;if(y.length&&y[y.length-1].type=="comment")return h;if(r=="start"||r=="no_regex"){var T=n.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);T&&(h+=i)}else if(r=="doc-start"&&(R=="start"||R=="no_regex"))return"";return h},this.checkOutdent=function(r,n,i){return this.$outdent.checkOutdent(n,i)},this.autoOutdent=function(r,n,i){this.$outdent.autoOutdent(n,i)},this.createWorker=function(r){var n=new f(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return n.attachToDocument(r.getDocument()),n.on("annotate",function(i){r.setAnnotations(i.data)}),n.on("terminate",function(){r.clearAnnotations()}),n},this.$id="ace/mode/javascript",this.snippetFileId="ace/snippets/javascript"}).call(o.prototype),u.Mode=o}),ace.define("ace/mode/css_completions",["require","exports","module"],function(e,u,M){var b={background:{"#$0":1},"background-color":{"#$0":1,transparent:1,fixed:1},"background-image":{"url('/$0')":1},"background-repeat":{repeat:1,"repeat-x":1,"repeat-y":1,"no-repeat":1,inherit:1},"background-position":{bottom:2,center:2,left:2,right:2,top:2,inherit:2},"background-attachment":{scroll:1,fixed:1},"background-size":{cover:1,contain:1},"background-clip":{"border-box":1,"padding-box":1,"content-box":1},"background-origin":{"border-box":1,"padding-box":1,"content-box":1},border:{"solid $0":1,"dashed $0":1,"dotted $0":1,"#$0":1},"border-color":{"#$0":1},"border-style":{solid:2,dashed:2,dotted:2,double:2,groove:2,hidden:2,inherit:2,inset:2,none:2,outset:2,ridged:2},"border-collapse":{collapse:1,separate:1},bottom:{px:1,em:1,"%":1},clear:{left:1,right:1,both:1,none:1},color:{"#$0":1,"rgb(#$00,0,0)":1},cursor:{default:1,pointer:1,move:1,text:1,wait:1,help:1,progress:1,"n-resize":1,"ne-resize":1,"e-resize":1,"se-resize":1,"s-resize":1,"sw-resize":1,"w-resize":1,"nw-resize":1},display:{none:1,block:1,inline:1,"inline-block":1,"table-cell":1},"empty-cells":{show:1,hide:1},float:{left:1,right:1,none:1},"font-family":{Arial:2,"Comic Sans MS":2,Consolas:2,"Courier New":2,Courier:2,Georgia:2,Monospace:2,"Sans-Serif":2,"Segoe UI":2,Tahoma:2,"Times New Roman":2,"Trebuchet MS":2,Verdana:1},"font-size":{px:1,em:1,"%":1},"font-weight":{bold:1,normal:1},"font-style":{italic:1,normal:1},"font-variant":{normal:1,"small-caps":1},height:{px:1,em:1,"%":1},left:{px:1,em:1,"%":1},"letter-spacing":{normal:1},"line-height":{normal:1},"list-style-type":{none:1,disc:1,circle:1,square:1,decimal:1,"decimal-leading-zero":1,"lower-roman":1,"upper-roman":1,"lower-greek":1,"lower-latin":1,"upper-latin":1,georgian:1,"lower-alpha":1,"upper-alpha":1},margin:{px:1,em:1,"%":1},"margin-right":{px:1,em:1,"%":1},"margin-left":{px:1,em:1,"%":1},"margin-top":{px:1,em:1,"%":1},"margin-bottom":{px:1,em:1,"%":1},"max-height":{px:1,em:1,"%":1},"max-width":{px:1,em:1,"%":1},"min-height":{px:1,em:1,"%":1},"min-width":{px:1,em:1,"%":1},overflow:{hidden:1,visible:1,auto:1,scroll:1},"overflow-x":{hidden:1,visible:1,auto:1,scroll:1},"overflow-y":{hidden:1,visible:1,auto:1,scroll:1},padding:{px:1,em:1,"%":1},"padding-top":{px:1,em:1,"%":1},"padding-right":{px:1,em:1,"%":1},"padding-bottom":{px:1,em:1,"%":1},"padding-left":{px:1,em:1,"%":1},"page-break-after":{auto:1,always:1,avoid:1,left:1,right:1},"page-break-before":{auto:1,always:1,avoid:1,left:1,right:1},position:{absolute:1,relative:1,fixed:1,static:1},right:{px:1,em:1,"%":1},"table-layout":{fixed:1,auto:1},"text-decoration":{none:1,underline:1,"line-through":1,blink:1},"text-align":{left:1,right:1,center:1,justify:1},"text-transform":{capitalize:1,uppercase:1,lowercase:1,none:1},top:{px:1,em:1,"%":1},"vertical-align":{top:1,bottom:1},visibility:{hidden:1,visible:1},"white-space":{nowrap:1,normal:1,pre:1,"pre-line":1,"pre-wrap":1},width:{px:1,em:1,"%":1},"word-spacing":{normal:1},filter:{"alpha(opacity=$0100)":1},"text-shadow":{"$02px 2px 2px #777":1},"text-overflow":{"ellipsis-word":1,clip:1,ellipsis:1},"-moz-border-radius":1,"-moz-border-radius-topright":1,"-moz-border-radius-bottomright":1,"-moz-border-radius-topleft":1,"-moz-border-radius-bottomleft":1,"-webkit-border-radius":1,"-webkit-border-top-right-radius":1,"-webkit-border-top-left-radius":1,"-webkit-border-bottom-right-radius":1,"-webkit-border-bottom-left-radius":1,"-moz-box-shadow":1,"-webkit-box-shadow":1,transform:{"rotate($00deg)":1,"skew($00deg)":1},"-moz-transform":{"rotate($00deg)":1,"skew($00deg)":1},"-webkit-transform":{"rotate($00deg)":1,"skew($00deg)":1}},v=function(){};(function(){this.completionsDefined=!1,this.defineCompletions=function(){if(document){var x=document.createElement("c").style;for(var p in x)if(typeof x[p]=="string"){var f=p.replace(/[A-Z]/g,function(a){return"-"+a.toLowerCase()});b.hasOwnProperty(f)||(b[f]=1)}}this.completionsDefined=!0},this.getCompletions=function(x,p,f,a){if(this.completionsDefined||this.defineCompletions(),x==="ruleset"||p.$mode.$id=="ace/mode/scss"){var s=p.getLine(f.row).substr(0,f.column),o=/\([^)]*$/.test(s);return o&&(s=s.substr(s.lastIndexOf("(")+1)),/:[^;]+$/.test(s)?this.getPropertyValueCompletions(x,p,f,a):this.getPropertyCompletions(x,p,f,a,o)}return[]},this.getPropertyCompletions=function(x,p,f,a,s){s=s||!1;var o=Object.keys(b);return o.map(function(r){return{caption:r,snippet:r+": $0"+(s?"":";"),meta:"property",score:1e6}})},this.getPropertyValueCompletions=function(x,p,f,a){var s=p.getLine(f.row).substr(0,f.column),o=(/([\w\-]+):[^:]*$/.exec(s)||{})[1];if(!o)return[];var r=[];return o in b&&typeof b[o]=="object"&&(r=Object.keys(b[o])),r.map(function(n){return{caption:n,snippet:n,meta:"property value",score:1e6}})}}).call(v.prototype),u.CssCompletions=v}),ace.define("ace/mode/behaviour/css",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/mode/behaviour/cstyle","ace/token_iterator"],function(e,u,M){var b=e("../../lib/oop");e("../behaviour").Behaviour;var v=e("./cstyle").CstyleBehaviour,x=e("../../token_iterator").TokenIterator,p=function(){this.inherit(v),this.add("colon","insertion",function(f,a,s,o,r){if(r===":"&&s.selection.isEmpty()){var n=s.getCursorPosition(),i=new x(o,n.row,n.column),h=i.getCurrentToken();if(h&&h.value.match(/\s+/)&&(h=i.stepBackward()),h&&h.type==="support.type"){var m=o.doc.getLine(n.row),y=m.substring(n.column,n.column+1);if(y===":")return{text:"",selection:[1,1]};if(/^(\s+[^;]|\s*$)/.test(m.substring(n.column)))return{text:":;",selection:[1,1]}}}}),this.add("colon","deletion",function(f,a,s,o,r){var n=o.doc.getTextRange(r);if(!r.isMultiLine()&&n===":"){var i=s.getCursorPosition(),h=new x(o,i.row,i.column),m=h.getCurrentToken();if(m&&m.value.match(/\s+/)&&(m=h.stepBackward()),m&&m.type==="support.type"){var y=o.doc.getLine(r.start.row),R=y.substring(r.end.column,r.end.column+1);if(R===";")return r.end.column++,r}}}),this.add("semicolon","insertion",function(f,a,s,o,r){if(r===";"&&s.selection.isEmpty()){var n=s.getCursorPosition(),i=o.doc.getLine(n.row),h=i.substring(n.column,n.column+1);if(h===";")return{text:"",selection:[1,1]}}}),this.add("!important","insertion",function(f,a,s,o,r){if(r==="!"&&s.selection.isEmpty()){var n=s.getCursorPosition(),i=o.doc.getLine(n.row);if(/^\s*(;|}|$)/.test(i.substring(n.column)))return{text:"!important",selection:[10,10]}}})};b.inherits(p,v),u.CssBehaviour=p}),ace.define("ace/mode/css",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/css_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/css_completions","ace/mode/behaviour/css","ace/mode/folding/cstyle"],function(e,u,M){var b=e("../lib/oop"),v=e("./text").Mode,x=e("./css_highlight_rules").CssHighlightRules,p=e("./matching_brace_outdent").MatchingBraceOutdent,f=e("../worker/worker_client").WorkerClient,a=e("./css_completions").CssCompletions,s=e("./behaviour/css").CssBehaviour,o=e("./folding/cstyle").FoldMode,r=function(){this.HighlightRules=x,this.$outdent=new p,this.$behaviour=new s,this.$completer=new a,this.foldingRules=new o};b.inherits(r,v),(function(){this.foldingRules="cStyle",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(n,i,h){var m=this.$getIndent(i),y=this.getTokenizer().getLineTokens(i,n).tokens;if(y.length&&y[y.length-1].type=="comment")return m;var R=i.match(/^.*\{\s*$/);return R&&(m+=h),m},this.checkOutdent=function(n,i,h){return this.$outdent.checkOutdent(i,h)},this.autoOutdent=function(n,i,h){this.$outdent.autoOutdent(i,h)},this.getCompletions=function(n,i,h,m){return this.$completer.getCompletions(n,i,h,m)},this.createWorker=function(n){var i=new f(["ace"],"ace/mode/css_worker","Worker");return i.attachToDocument(n.getDocument()),i.on("annotate",function(h){n.setAnnotations(h.data)}),i.on("terminate",function(){n.clearAnnotations()}),i},this.$id="ace/mode/css",this.snippetFileId="ace/snippets/css"}).call(r.prototype),u.Mode=r}),ace.define("ace/mode/folding/mixed",["require","exports","module","ace/lib/oop","ace/mode/folding/fold_mode"],function(e,u,M){var b=e("../../lib/oop"),v=e("./fold_mode").FoldMode,x=u.FoldMode=function(p,f){this.defaultMode=p,this.subModes=f};b.inherits(x,v),(function(){this.$getMode=function(p){typeof p!="string"&&(p=p[0]);for(var f in this.subModes)if(p.indexOf(f)===0)return this.subModes[f];return null},this.$tryMode=function(p,f,a,s){var o=this.$getMode(p);return o?o.getFoldWidget(f,a,s):""},this.getFoldWidget=function(p,f,a){return this.$tryMode(p.getState(a-1),p,f,a)||this.$tryMode(p.getState(a),p,f,a)||this.defaultMode.getFoldWidget(p,f,a)},this.getFoldWidgetRange=function(p,f,a){var s=this.$getMode(p.getState(a-1));return(!s||!s.getFoldWidget(p,f,a))&&(s=this.$getMode(p.getState(a))),(!s||!s.getFoldWidget(p,f,a))&&(s=this.defaultMode),s.getFoldWidgetRange(p,f,a)}}).call(x.prototype)}),ace.define("ace/mode/folding/html",["require","exports","module","ace/lib/oop","ace/mode/folding/mixed","ace/mode/folding/xml","ace/mode/folding/cstyle"],function(e,u,M){var b=e("../../lib/oop"),v=e("./mixed").FoldMode,x=e("./xml").FoldMode,p=e("./cstyle").FoldMode,f=u.FoldMode=function(a,s){v.call(this,new x(a,s),{"js-":new p,"css-":new p})};b.inherits(f,v)}),ace.define("ace/mode/html_completions",["require","exports","module","ace/token_iterator"],function(e,u,M){function b(i,h){return i.type.lastIndexOf(h+".xml")>-1}function v(i,h){for(var m=new p(i,h.row,h.column),y=m.getCurrentToken();y&&!b(y,"tag-name");)y=m.stepBackward();if(y)return y.value}function x(i,h){for(var m=new p(i,h.row,h.column),y=m.getCurrentToken();y&&!b(y,"attribute-name");)y=m.stepBackward();if(y)return y.value}var p=e("../token_iterator").TokenIterator,f=["accesskey","class","contenteditable","contextmenu","dir","draggable","dropzone","hidden","id","inert","itemid","itemprop","itemref","itemscope","itemtype","lang","spellcheck","style","tabindex","title","translate"],a=["onabort","onblur","oncancel","oncanplay","oncanplaythrough","onchange","onclick","onclose","oncontextmenu","oncuechange","ondblclick","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onended","onerror","onfocus","oninput","oninvalid","onkeydown","onkeypress","onkeyup","onload","onloadeddata","onloadedmetadata","onloadstart","onmousedown","onmousemove","onmouseout","onmouseover","onmouseup","onmousewheel","onpause","onplay","onplaying","onprogress","onratechange","onreset","onscroll","onseeked","onseeking","onselect","onshow","onstalled","onsubmit","onsuspend","ontimeupdate","onvolumechange","onwaiting"],s=f.concat(a),o={a:{href:1,target:{_blank:1,top:1},ping:1,rel:{nofollow:1,alternate:1,author:1,bookmark:1,help:1,license:1,next:1,noreferrer:1,prefetch:1,prev:1,search:1,tag:1},media:1,hreflang:1,type:1},abbr:{},address:{},area:{shape:1,coords:1,href:1,hreflang:1,alt:1,target:1,media:1,rel:1,ping:1,type:1},article:{pubdate:1},aside:{},audio:{src:1,autobuffer:1,autoplay:{autoplay:1},loop:{loop:1},controls:{controls:1},muted:{muted:1},preload:{auto:1,metadata:1,none:1}},b:{},base:{href:1,target:1},bdi:{},bdo:{},blockquote:{cite:1},body:{onafterprint:1,onbeforeprint:1,onbeforeunload:1,onhashchange:1,onmessage:1,onoffline:1,onpopstate:1,onredo:1,onresize:1,onstorage:1,onundo:1,onunload:1},br:{},button:{autofocus:1,disabled:{disabled:1},form:1,formaction:1,formenctype:1,formmethod:1,formnovalidate:1,formtarget:1,name:1,value:1,type:{button:1,submit:1}},canvas:{width:1,height:1},caption:{},cite:{},code:{},col:{span:1},colgroup:{span:1},command:{type:1,label:1,icon:1,disabled:1,checked:1,radiogroup:1,command:1},data:{},datalist:{},dd:{},del:{cite:1,datetime:1},details:{open:1},dfn:{},dialog:{open:1},div:{},dl:{},dt:{},em:{},embed:{src:1,height:1,width:1,type:1},fieldset:{disabled:1,form:1,name:1},figcaption:{},figure:{},footer:{},form:{"accept-charset":1,action:1,autocomplete:1,enctype:{"multipart/form-data":1,"application/x-www-form-urlencoded":1},method:{get:1,post:1},name:1,novalidate:1,target:{_blank:1,top:1}},h1:{},h2:{},h3:{},h4:{},h5:{},h6:{},head:{},header:{},hr:{},html:{manifest:1},i:{},iframe:{name:1,src:1,height:1,width:1,sandbox:{"allow-same-origin":1,"allow-top-navigation":1,"allow-forms":1,"allow-scripts":1},seamless:{seamless:1}},img:{alt:1,src:1,height:1,width:1,usemap:1,ismap:1},input:{type:{text:1,password:1,hidden:1,checkbox:1,submit:1,radio:1,file:1,button:1,reset:1,image:31,color:1,date:1,datetime:1,"datetime-local":1,email:1,month:1,number:1,range:1,search:1,tel:1,time:1,url:1,week:1},accept:1,alt:1,autocomplete:{on:1,off:1},autofocus:{autofocus:1},checked:{checked:1},disabled:{disabled:1},form:1,formaction:1,formenctype:{"application/x-www-form-urlencoded":1,"multipart/form-data":1,"text/plain":1},formmethod:{get:1,post:1},formnovalidate:{formnovalidate:1},formtarget:{_blank:1,_self:1,_parent:1,_top:1},height:1,list:1,max:1,maxlength:1,min:1,multiple:{multiple:1},name:1,pattern:1,placeholder:1,readonly:{readonly:1},required:{required:1},size:1,src:1,step:1,width:1,files:1,value:1},ins:{cite:1,datetime:1},kbd:{},keygen:{autofocus:1,challenge:{challenge:1},disabled:{disabled:1},form:1,keytype:{rsa:1,dsa:1,ec:1},name:1},label:{form:1,for:1},legend:{},li:{value:1},link:{href:1,hreflang:1,rel:{stylesheet:1,icon:1},media:{all:1,screen:1,print:1},type:{"text/css":1,"image/png":1,"image/jpeg":1,"image/gif":1},sizes:1},main:{},map:{name:1},mark:{},math:{},menu:{type:1,label:1},meta:{"http-equiv":{"content-type":1},name:{description:1,keywords:1},content:{"text/html; charset=UTF-8":1},charset:1},meter:{value:1,min:1,max:1,low:1,high:1,optimum:1},nav:{},noscript:{href:1},object:{param:1,data:1,type:1,height:1,width:1,usemap:1,name:1,form:1,classid:1},ol:{start:1,reversed:1},optgroup:{disabled:1,label:1},option:{disabled:1,selected:1,label:1,value:1},output:{for:1,form:1,name:1},p:{},param:{name:1,value:1},pre:{},progress:{value:1,max:1},q:{cite:1},rp:{},rt:{},ruby:{},s:{},samp:{},script:{charset:1,type:{"text/javascript":1},src:1,defer:1,async:1},select:{autofocus:1,disabled:1,form:1,multiple:{multiple:1},name:1,size:1,readonly:{readonly:1}},small:{},source:{src:1,type:1,media:1},span:{},strong:{},style:{type:1,media:{all:1,screen:1,print:1},scoped:1},sub:{},sup:{},svg:{},table:{summary:1},tbody:{},td:{headers:1,rowspan:1,colspan:1},textarea:{autofocus:{autofocus:1},disabled:{disabled:1},form:1,maxlength:1,name:1,placeholder:1,readonly:{readonly:1},required:{required:1},rows:1,cols:1,wrap:{on:1,off:1,hard:1,soft:1}},tfoot:{},th:{headers:1,rowspan:1,colspan:1,scope:1},thead:{},time:{datetime:1},title:{},tr:{},track:{kind:1,src:1,srclang:1,label:1,default:1},section:{},summary:{},u:{},ul:{},var:{},video:{src:1,autobuffer:1,autoplay:{autoplay:1},loop:{loop:1},controls:{controls:1},width:1,height:1,poster:1,muted:{muted:1},preload:{auto:1,metadata:1,none:1}},wbr:{}},r=Object.keys(o),n=function(){};(function(){this.getCompletions=function(i,h,m,y){var R=h.getTokenAt(m.row,m.column);if(!R)return[];if(b(R,"tag-name")||b(R,"tag-open")||b(R,"end-tag-open"))return this.getTagCompletions(i,h,m,y);if(b(R,"tag-whitespace")||b(R,"attribute-name"))return this.getAttributeCompletions(i,h,m,y);if(b(R,"attribute-value"))return this.getAttributeValueCompletions(i,h,m,y);var T=h.getLine(m.row).substr(0,m.column);return/&[a-z]*$/i.test(T)?this.getHTMLEntityCompletions(i,h,m,y):[]},this.getTagCompletions=function(i,h,m,y){return r.map(function(R){return{value:R,meta:"tag",score:1e6}})},this.getAttributeCompletions=function(i,h,m,y){var R=v(h,m);if(!R)return[];var T=s;return R in o&&(T=T.concat(Object.keys(o[R]))),T.map(function(k){return{caption:k,snippet:k+'="$0"',meta:"attribute",score:1e6}})},this.getAttributeValueCompletions=function(i,h,m,y){var R=v(h,m),T=x(h,m);if(!R)return[];var k=[];return R in o&&T in o[R]&&typeof o[R][T]=="object"&&(k=Object.keys(o[R][T])),k.map(function(w){return{caption:w,snippet:w,meta:"attribute value",score:1e6}})},this.getHTMLEntityCompletions=function(i,h,m,y){var R=["Aacute;","aacute;","Acirc;","acirc;","acute;","AElig;","aelig;","Agrave;","agrave;","alefsym;","Alpha;","alpha;","amp;","and;","ang;","Aring;","aring;","asymp;","Atilde;","atilde;","Auml;","auml;","bdquo;","Beta;","beta;","brvbar;","bull;","cap;","Ccedil;","ccedil;","cedil;","cent;","Chi;","chi;","circ;","clubs;","cong;","copy;","crarr;","cup;","curren;","Dagger;","dagger;","dArr;","darr;","deg;","Delta;","delta;","diams;","divide;","Eacute;","eacute;","Ecirc;","ecirc;","Egrave;","egrave;","empty;","emsp;","ensp;","Epsilon;","epsilon;","equiv;","Eta;","eta;","ETH;","eth;","Euml;","euml;","euro;","exist;","fnof;","forall;","frac12;","frac14;","frac34;","frasl;","Gamma;","gamma;","ge;","gt;","hArr;","harr;","hearts;","hellip;","Iacute;","iacute;","Icirc;","icirc;","iexcl;","Igrave;","igrave;","image;","infin;","int;","Iota;","iota;","iquest;","isin;","Iuml;","iuml;","Kappa;","kappa;","Lambda;","lambda;","lang;","laquo;","lArr;","larr;","lceil;","ldquo;","le;","lfloor;","lowast;","loz;","lrm;","lsaquo;","lsquo;","lt;","macr;","mdash;","micro;","middot;","minus;","Mu;","mu;","nabla;","nbsp;","ndash;","ne;","ni;","not;","notin;","nsub;","Ntilde;","ntilde;","Nu;","nu;","Oacute;","oacute;","Ocirc;","ocirc;","OElig;","oelig;","Ograve;","ograve;","oline;","Omega;","omega;","Omicron;","omicron;","oplus;","or;","ordf;","ordm;","Oslash;","oslash;","Otilde;","otilde;","otimes;","Ouml;","ouml;","para;","part;","permil;","perp;","Phi;","phi;","Pi;","pi;","piv;","plusmn;","pound;","Prime;","prime;","prod;","prop;","Psi;","psi;","quot;","radic;","rang;","raquo;","rArr;","rarr;","rceil;","rdquo;","real;","reg;","rfloor;","Rho;","rho;","rlm;","rsaquo;","rsquo;","sbquo;","Scaron;","scaron;","sdot;","sect;","shy;","Sigma;","sigma;","sigmaf;","sim;","spades;","sub;","sube;","sum;","sup;","sup1;","sup2;","sup3;","supe;","szlig;","Tau;","tau;","there4;","Theta;","theta;","thetasym;","thinsp;","THORN;","thorn;","tilde;","times;","trade;","Uacute;","uacute;","uArr;","uarr;","Ucirc;","ucirc;","Ugrave;","ugrave;","uml;","upsih;","Upsilon;","upsilon;","Uuml;","uuml;","weierp;","Xi;","xi;","Yacute;","yacute;","yen;","Yuml;","yuml;","Zeta;","zeta;","zwj;","zwnj;"];return R.map(function(T){return{caption:T,snippet:T,meta:"html entity",score:1e6}})}}).call(n.prototype),u.HtmlCompletions=n}),ace.define("ace/mode/html",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/javascript","ace/mode/css","ace/mode/html_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/html","ace/mode/html_completions","ace/worker/worker_client"],function(e,u,M){var b=e("../lib/oop"),v=e("../lib/lang"),x=e("./text").Mode,p=e("./javascript").Mode,f=e("./css").Mode,a=e("./html_highlight_rules").HtmlHighlightRules,s=e("./behaviour/xml").XmlBehaviour,o=e("./folding/html").FoldMode,r=e("./html_completions").HtmlCompletions,n=e("../worker/worker_client").WorkerClient,i=["area","base","br","col","embed","hr","img","input","keygen","link","meta","menuitem","param","source","track","wbr"],h=["li","dt","dd","p","rt","rp","optgroup","option","colgroup","td","th"],m=function(y){this.fragmentContext=y&&y.fragmentContext,this.HighlightRules=a,this.$behaviour=new s,this.$completer=new r,this.createModeDelegates({"js-":p,"css-":f}),this.foldingRules=new o(this.voidElements,v.arrayToMap(h))};b.inherits(m,x),(function(){this.blockComment={start:"<!--",end:"-->"},this.voidElements=v.arrayToMap(i),this.getNextLineIndent=function(y,R,T){return this.$getIndent(R)},this.checkOutdent=function(y,R,T){return!1},this.getCompletions=function(y,R,T,k){return this.$completer.getCompletions(y,R,T,k)},this.createWorker=function(y){if(this.constructor==m){var R=new n(["ace"],"ace/mode/html_worker","Worker");return R.attachToDocument(y.getDocument()),this.fragmentContext&&R.call("setOptions",[{context:this.fragmentContext}]),R.on("error",function(T){y.setAnnotations(T.data)}),R.on("terminate",function(){y.clearAnnotations()}),R}},this.$id="ace/mode/html",this.snippetFileId="ace/snippets/html"}).call(m.prototype),u.Mode=m}),ace.define("ace/mode/sh_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,u,M){var b=e("../lib/oop"),v=e("./text_highlight_rules").TextHighlightRules,x=u.reservedKeywords="!|{|}|case|do|done|elif|else|esac|fi|for|if|in|then|until|while|&|;|export|local|read|typeset|unset|elif|select|set|function|declare|readonly",p=u.languageConstructs="[|]|alias|bg|bind|break|builtin|cd|command|compgen|complete|continue|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|return|set|shift|shopt|source|suspend|test|times|trap|type|ulimit|umask|unalias|wait",f=function(){var a=this.createKeywordMapper({keyword:x,"support.function.builtin":p,"invalid.deprecated":"debugger"},"identifier"),s="(?:(?:[1-9]\\d*)|(?:0))",o="(?:\\.\\d+)",r="(?:\\d+)",n="(?:(?:"+r+"?"+o+")|(?:"+r+"\\.))",i="(?:(?:"+n+"|"+r+"))",h="(?:"+i+"|"+n+")",m="(?:&"+r+")",y="[a-zA-Z_][a-zA-Z0-9_]*",R="(?:"+y+"(?==))",T="(?:\\$(?:SHLVL|\\$|\\!|\\?))",k="(?:"+y+"\\s*\\(\\))";this.$rules={start:[{token:"constant",regex:/\\./},{token:["text","comment"],regex:/(^|\s)(#.*)$/},{token:"string.start",regex:'"',push:[{token:"constant.language.escape",regex:/\\(?:[$`"\\]|$)/},{include:"variables"},{token:"keyword.operator",regex:/`/},{token:"string.end",regex:'"',next:"pop"},{defaultToken:"string"}]},{token:"string",regex:"\\$'",push:[{token:"constant.language.escape",regex:/\\(?:[abeEfnrtv\\'"]|x[a-fA-F\d]{1,2}|u[a-fA-F\d]{4}([a-fA-F\d]{4})?|c.|\d{1,3})/},{token:"string",regex:"'",next:"pop"},{defaultToken:"string"}]},{regex:"<<<",token:"keyword.operator"},{stateName:"heredoc",regex:"(<<-?)(\\s*)(['\"`]?)([\\w\\-]+)(['\"`]?)",onMatch:function(w,I,D){var E=w[2]=="-"?"indentedHeredoc":"heredoc",L=w.split(this.splitRegex);return D.push(E,L[4]),[{type:"constant",value:L[1]},{type:"text",value:L[2]},{type:"string",value:L[3]},{type:"support.class",value:L[4]},{type:"string",value:L[5]}]},rules:{heredoc:[{onMatch:function(w,I,D){return w===D[1]?(D.shift(),D.shift(),this.next=D[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}],indentedHeredoc:[{token:"string",regex:"^ +"},{onMatch:function(w,I,D){return w===D[1]?(D.shift(),D.shift(),this.next=D[0]||"start","support.class"):(this.next="","string")},regex:".*$",next:"start"}]}},{regex:"$",token:"empty",next:function(w,I){return I[0]==="heredoc"||I[0]==="indentedHeredoc"?I[0]:w}},{token:["keyword","text","text","text","variable"],regex:/(declare|local|readonly)(\s+)(?:(-[fixar]+)(\s+))?([a-zA-Z_][a-zA-Z0-9_]*\b)/},{token:"variable.language",regex:T},{token:"variable",regex:R},{include:"variables"},{token:"support.function",regex:k},{token:"support.function",regex:m},{token:"string",start:"'",end:"'"},{token:"constant.numeric",regex:h},{token:"constant.numeric",regex:s+"\\b"},{token:a,regex:"[a-zA-Z_][a-zA-Z0-9_]*\\b"},{token:"keyword.operator",regex:"\\+|\\-|\\*|\\*\\*|\\/|\\/\\/|~|<|>|<=|=>|=|!=|[%&|`]"},{token:"punctuation.operator",regex:";"},{token:"paren.lparen",regex:"[\\[\\(\\{]"},{token:"paren.rparen",regex:"[\\]]"},{token:"paren.rparen",regex:"[\\)\\}]",next:"pop"}],variables:[{token:"variable",regex:/(\$)(\w+)/},{token:["variable","paren.lparen"],regex:/(\$)(\()/,push:"start"},{token:["variable","paren.lparen","keyword.operator","variable","keyword.operator"],regex:/(\$)(\{)([#!]?)(\w+|[*@#?\-$!0_])(:[?+\-=]?|##?|%%?|,,?\/|\^\^?)?/,push:"start"},{token:"variable",regex:/\$[*@#?\-$!0_]/},{token:["variable","paren.lparen"],regex:/(\$)(\{)/,push:"start"}]},this.normalizeRules()};b.inherits(f,v),u.ShHighlightRules=f}),ace.define("ace/mode/sh",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/sh_highlight_rules","ace/range","ace/mode/folding/cstyle"],function(e,u,M){var b=e("../lib/oop"),v=e("./text").Mode,x=e("./sh_highlight_rules").ShHighlightRules,p=e("../range").Range,f=e("./folding/cstyle").FoldMode,a=function(){this.HighlightRules=x,this.foldingRules=new f,this.$behaviour=this.$defaultBehaviour};b.inherits(a,v),(function(){this.lineCommentStart="#",this.getNextLineIndent=function(o,r,n){var i=this.$getIndent(r),h=this.getTokenizer().getLineTokens(r,o),m=h.tokens;if(m.length&&m[m.length-1].type=="comment")return i;if(o=="start"){var y=r.match(/^.*[\{\(\[:]\s*$/);y&&(i+=n)}return i};var s={pass:1,return:1,raise:1,break:1,continue:1};this.checkOutdent=function(o,r,n){if(n!==`\r
986
+ `&&n!=="\r"&&n!==`
987
+ `)return!1;var i=this.getTokenizer().getLineTokens(r.trim(),o).tokens;if(!i)return!1;do var h=i.pop();while(h&&(h.type=="comment"||h.type=="text"&&h.value.match(/^\s+$/)));return h?h.type=="keyword"&&s[h.value]:!1},this.autoOutdent=function(o,r,n){n+=1;var i=this.$getIndent(r.getLine(n)),h=r.getTabString();i.slice(-h.length)==h&&r.remove(new p(n,i.length-h.length,n,i.length))},this.$id="ace/mode/sh",this.snippetFileId="ace/snippets/sh"}).call(a.prototype),u.Mode=a}),ace.define("ace/mode/xml",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/mode/text","ace/mode/xml_highlight_rules","ace/mode/behaviour/xml","ace/mode/folding/xml","ace/worker/worker_client"],function(e,u,M){var b=e("../lib/oop"),v=e("../lib/lang"),x=e("./text").Mode,p=e("./xml_highlight_rules").XmlHighlightRules,f=e("./behaviour/xml").XmlBehaviour,a=e("./folding/xml").FoldMode,s=e("../worker/worker_client").WorkerClient,o=function(){this.HighlightRules=p,this.$behaviour=new f,this.foldingRules=new a};b.inherits(o,x),(function(){this.voidElements=v.arrayToMap([]),this.blockComment={start:"<!--",end:"-->"},this.createWorker=function(r){var n=new s(["ace"],"ace/mode/xml_worker","Worker");return n.attachToDocument(r.getDocument()),n.on("error",function(i){r.setAnnotations(i.data)}),n.on("terminate",function(){r.clearAnnotations()}),n},this.$id="ace/mode/xml"}).call(o.prototype),u.Mode=o}),ace.define("ace/mode/markdown",["require","exports","module","ace/lib/oop","ace/mode/behaviour/cstyle","ace/mode/text","ace/mode/markdown_highlight_rules","ace/mode/folding/markdown","ace/mode/javascript","ace/mode/html","ace/mode/sh","ace/mode/sh","ace/mode/xml","ace/mode/css"],function(e,u,M){var b=e("../lib/oop"),v=e("./behaviour/cstyle").CstyleBehaviour,x=e("./text").Mode,p=e("./markdown_highlight_rules").MarkdownHighlightRules,f=e("./folding/markdown").FoldMode,a=function(){this.HighlightRules=p,this.createModeDelegates({javascript:e("./javascript").Mode,html:e("./html").Mode,bash:e("./sh").Mode,sh:e("./sh").Mode,xml:e("./xml").Mode,css:e("./css").Mode}),this.foldingRules=new f,this.$behaviour=new v({braces:!0})};b.inherits(a,x),(function(){this.type="text",this.blockComment={start:"<!--",end:"-->"},this.$quotes={'"':'"',"`":"`"},this.getNextLineIndent=function(s,o,r){if(s=="listblock"){var n=/^(\s*)(?:([-+*])|(\d+)\.)(\s+)/.exec(o);if(!n)return"";var i=n[2];return i||(i=parseInt(n[3],10)+1+"."),n[1]+i+n[4]}return this.$getIndent(o)},this.$id="ace/mode/markdown",this.snippetFileId="ace/snippets/markdown"}).call(a.prototype),u.Mode=a}),(function(){ace.require(["ace/mode/markdown"],function(e){l&&(l.exports=e)})})()})(gc)),gc.exports}Lx();var mc={exports:{}},Yd;function Ex(){return Yd||(Yd=1,(function(l,c){ace.define("ace/theme/twilight-css",["require","exports","module"],function(e,u,M){M.exports=`.ace-twilight .ace_gutter {
988
+ background: #232323;
989
+ color: #E2E2E2
990
+ }
991
+
992
+ .ace-twilight .ace_print-margin {
993
+ width: 1px;
994
+ background: #232323
995
+ }
996
+
997
+ .ace-twilight {
998
+ background-color: #141414;
999
+ color: #F8F8F8
1000
+ }
1001
+
1002
+ .ace-twilight .ace_cursor {
1003
+ color: #A7A7A7
1004
+ }
1005
+
1006
+ .ace-twilight .ace_marker-layer .ace_selection {
1007
+ background: rgba(221, 240, 255, 0.20)
1008
+ }
1009
+
1010
+ .ace-twilight.ace_multiselect .ace_selection.ace_start {
1011
+ box-shadow: 0 0 3px 0px #141414;
1012
+ }
1013
+
1014
+ .ace-twilight .ace_marker-layer .ace_step {
1015
+ background: rgb(102, 82, 0)
1016
+ }
1017
+
1018
+ .ace-twilight .ace_marker-layer .ace_bracket {
1019
+ margin: -1px 0 0 -1px;
1020
+ border: 1px solid rgba(255, 255, 255, 0.25)
1021
+ }
1022
+
1023
+ .ace-twilight .ace_marker-layer .ace_active-line {
1024
+ background: rgba(255, 255, 255, 0.031)
1025
+ }
1026
+
1027
+ .ace-twilight .ace_gutter-active-line {
1028
+ background-color: rgba(255, 255, 255, 0.031)
1029
+ }
1030
+
1031
+ .ace-twilight .ace_marker-layer .ace_selected-word {
1032
+ border: 1px solid rgba(221, 240, 255, 0.20)
1033
+ }
1034
+
1035
+ .ace-twilight .ace_invisible {
1036
+ color: rgba(255, 255, 255, 0.25)
1037
+ }
1038
+
1039
+ .ace-twilight .ace_keyword,
1040
+ .ace-twilight .ace_meta {
1041
+ color: #CDA869
1042
+ }
1043
+
1044
+ .ace-twilight .ace_constant,
1045
+ .ace-twilight .ace_constant.ace_character,
1046
+ .ace-twilight .ace_constant.ace_character.ace_escape,
1047
+ .ace-twilight .ace_constant.ace_other,
1048
+ .ace-twilight .ace_heading,
1049
+ .ace-twilight .ace_markup.ace_heading,
1050
+ .ace-twilight .ace_support.ace_constant {
1051
+ color: #CF6A4C
1052
+ }
1053
+
1054
+ .ace-twilight .ace_invalid.ace_illegal {
1055
+ color: #F8F8F8;
1056
+ background-color: rgba(86, 45, 86, 0.75)
1057
+ }
1058
+
1059
+ .ace-twilight .ace_invalid.ace_deprecated {
1060
+ text-decoration: underline;
1061
+ font-style: italic;
1062
+ color: #D2A8A1
1063
+ }
1064
+
1065
+ .ace-twilight .ace_support {
1066
+ color: #9B859D
1067
+ }
1068
+
1069
+ .ace-twilight .ace_fold {
1070
+ background-color: #AC885B;
1071
+ border-color: #F8F8F8
1072
+ }
1073
+
1074
+ .ace-twilight .ace_support.ace_function {
1075
+ color: #DAD085
1076
+ }
1077
+
1078
+ .ace-twilight .ace_list,
1079
+ .ace-twilight .ace_markup.ace_list,
1080
+ .ace-twilight .ace_storage {
1081
+ color: #F9EE98
1082
+ }
1083
+
1084
+ .ace-twilight .ace_entity.ace_name.ace_function,
1085
+ .ace-twilight .ace_meta.ace_tag {
1086
+ color: #AC885B
1087
+ }
1088
+
1089
+ .ace-twilight .ace_string {
1090
+ color: #8F9D6A
1091
+ }
1092
+
1093
+ .ace-twilight .ace_string.ace_regexp {
1094
+ color: #E9C062
1095
+ }
1096
+
1097
+ .ace-twilight .ace_comment {
1098
+ font-style: italic;
1099
+ color: #5F5A60
1100
+ }
1101
+
1102
+ .ace-twilight .ace_variable {
1103
+ color: #7587A6
1104
+ }
1105
+
1106
+ .ace-twilight .ace_xml-pe {
1107
+ color: #494949
1108
+ }
1109
+
1110
+ .ace-twilight .ace_indent-guide {
1111
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQERFpYLC1tf0PAAgOAnPnhxyiAAAAAElFTkSuQmCC) right repeat-y
1112
+ }
1113
+
1114
+ .ace-twilight .ace_indent-guide-active {
1115
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQIW2PQ1dX9zzBz5sz/ABCcBFFentLlAAAAAElFTkSuQmCC) right repeat-y;
1116
+ }
1117
+ `}),ace.define("ace/theme/twilight",["require","exports","module","ace/theme/twilight-css","ace/lib/dom"],function(e,u,M){u.isDark=!0,u.cssClass="ace-twilight",u.cssText=e("./twilight-css");var b=e("../lib/dom");b.importCssString(u.cssText,u.cssClass,!1)}),(function(){ace.require(["ace/theme/twilight"],function(e){l&&(l.exports=e)})})()})(mc)),mc.exports}Ex();var vc={exports:{}},Qd;function Rx(){return Qd||(Qd=1,(function(l,c){ace.define("ace/snippets",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter","ace/lib/lang","ace/range","ace/range_list","ace/keyboard/hash_handler","ace/tokenizer","ace/clipboard","ace/editor"],function(e,u,M){function b(w){var I=new Date().toLocaleString("en-us",w);return I.length==1?"0"+I:I}var v=e("./lib/dom"),x=e("./lib/oop"),p=e("./lib/event_emitter").EventEmitter,f=e("./lib/lang"),a=e("./range").Range,s=e("./range_list").RangeList,o=e("./keyboard/hash_handler").HashHandler,r=e("./tokenizer").Tokenizer,n=e("./clipboard"),i={CURRENT_WORD:function(w){return w.session.getTextRange(w.session.getWordRange())},SELECTION:function(w,I,D){var E=w.session.getTextRange();return D?E.replace(/\n\r?([ \t]*\S)/g,`
1118
+ `+D+"$1"):E},CURRENT_LINE:function(w){return w.session.getLine(w.getCursorPosition().row)},PREV_LINE:function(w){return w.session.getLine(w.getCursorPosition().row-1)},LINE_INDEX:function(w){return w.getCursorPosition().row},LINE_NUMBER:function(w){return w.getCursorPosition().row+1},SOFT_TABS:function(w){return w.session.getUseSoftTabs()?"YES":"NO"},TAB_SIZE:function(w){return w.session.getTabSize()},CLIPBOARD:function(w){return n.getText&&n.getText()},FILENAME:function(w){return/[^/\\]*$/.exec(this.FILEPATH(w))[0]},FILENAME_BASE:function(w){return/[^/\\]*$/.exec(this.FILEPATH(w))[0].replace(/\.[^.]*$/,"")},DIRECTORY:function(w){return this.FILEPATH(w).replace(/[^/\\]*$/,"")},FILEPATH:function(w){return"/not implemented.txt"},WORKSPACE_NAME:function(){return"Unknown"},FULLNAME:function(){return"Unknown"},BLOCK_COMMENT_START:function(w){var I=w.session.$mode||{};return I.blockComment&&I.blockComment.start||""},BLOCK_COMMENT_END:function(w){var I=w.session.$mode||{};return I.blockComment&&I.blockComment.end||""},LINE_COMMENT:function(w){var I=w.session.$mode||{};return I.lineCommentStart||""},CURRENT_YEAR:b.bind(null,{year:"numeric"}),CURRENT_YEAR_SHORT:b.bind(null,{year:"2-digit"}),CURRENT_MONTH:b.bind(null,{month:"numeric"}),CURRENT_MONTH_NAME:b.bind(null,{month:"long"}),CURRENT_MONTH_NAME_SHORT:b.bind(null,{month:"short"}),CURRENT_DATE:b.bind(null,{day:"2-digit"}),CURRENT_DAY_NAME:b.bind(null,{weekday:"long"}),CURRENT_DAY_NAME_SHORT:b.bind(null,{weekday:"short"}),CURRENT_HOUR:b.bind(null,{hour:"2-digit",hour12:!1}),CURRENT_MINUTE:b.bind(null,{minute:"2-digit"}),CURRENT_SECOND:b.bind(null,{second:"2-digit"})};i.SELECTED_TEXT=i.SELECTION;var h=(function(){function w(){this.snippetMap={},this.snippetNameMap={},this.variables=i}return w.prototype.getTokenizer=function(){return w.$tokenizer||this.createTokenizer()},w.prototype.createTokenizer=function(){function I(L){return L=L.substr(1),/^\d+$/.test(L)?[{tabstopId:parseInt(L,10)}]:[{text:L}]}function D(L){return"(?:[^\\\\"+L+"]|\\\\.)"}var E={regex:"/("+D("/")+"+)/",onMatch:function(L,z,F){var O=F[0];return O.fmtString=!0,O.guard=L.slice(1,-1),O.flag="",""},next:"formatString"};return w.$tokenizer=new r({start:[{regex:/\\./,onMatch:function(L,z,F){var O=L[1];return(O=="}"&&F.length||"`$\\".indexOf(O)!=-1)&&(L=O),[L]}},{regex:/}/,onMatch:function(L,z,F){return[F.length?F.shift():L]}},{regex:/\$(?:\d+|\w+)/,onMatch:I},{regex:/\$\{[\dA-Z_a-z]+/,onMatch:function(L,z,F){var O=I(L.substr(1));return F.unshift(O[0]),O},next:"snippetVar"},{regex:/\n/,token:"newline",merge:!1}],snippetVar:[{regex:"\\|"+D("\\|")+"*\\|",onMatch:function(L,z,F){var O=L.slice(1,-1).replace(/\\[,|\\]|,/g,function(A){return A.length==2?A[1]:"\0"}).split("\0").map(function(A){return{value:A}});return F[0].choices=O,[O[0]]},next:"start"},E,{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"start"}],formatString:[{regex:/:/,onMatch:function(L,z,F){return F.length&&F[0].expectElse?(F[0].expectElse=!1,F[0].ifEnd={elseEnd:F[0]},[F[0].ifEnd]):":"}},{regex:/\\./,onMatch:function(L,z,F){var O=L[1];return O=="}"&&F.length||"`$\\".indexOf(O)!=-1?L=O:O=="n"?L=`
1119
+ `:O=="t"?L=" ":"ulULE".indexOf(O)!=-1&&(L={changeCase:O,local:O>"a"}),[L]}},{regex:"/\\w*}",onMatch:function(L,z,F){var O=F.shift();return O&&(O.flag=L.slice(1,-1)),this.next=O&&O.tabstopId?"start":"",[O||L]},next:"start"},{regex:/\$(?:\d+|\w+)/,onMatch:function(L,z,F){return[{text:L.slice(1)}]}},{regex:/\${\w+/,onMatch:function(L,z,F){var O={text:L.slice(2)};return F.unshift(O),[O]},next:"formatStringVar"},{regex:/\n/,token:"newline",merge:!1},{regex:/}/,onMatch:function(L,z,F){var O=F.shift();return this.next=O&&O.tabstopId?"start":"",[O||L]},next:"start"}],formatStringVar:[{regex:/:\/\w+}/,onMatch:function(L,z,F){var O=F[0];return O.formatFunction=L.slice(2,-1),[F.shift()]},next:"formatString"},E,{regex:/:[\?\-+]?/,onMatch:function(L,z,F){L[1]=="+"&&(F[0].ifEnd=F[0]),L[1]=="?"&&(F[0].expectElse=!0)},next:"formatString"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"formatString"}]}),w.$tokenizer},w.prototype.tokenizeTmSnippet=function(I,D){return this.getTokenizer().getLineTokens(I,D).tokens.map(function(E){return E.value||E})},w.prototype.getVariableValue=function(I,D,E){if(/^\d+$/.test(D))return(this.variables.__||{})[D]||"";if(/^[A-Z]\d+$/.test(D))return(this.variables[D[0]+"__"]||{})[D.substr(1)]||"";if(D=D.replace(/^TM_/,""),!this.variables.hasOwnProperty(D))return"";var L=this.variables[D];return typeof L=="function"&&(L=this.variables[D](I,D,E)),L??""},w.prototype.tmStrFormat=function(I,D,E){if(!D.fmt)return I;var L=D.flag||"",z=D.guard;z=new RegExp(z,L.replace(/[^gim]/g,""));var F=typeof D.fmt=="string"?this.tokenizeTmSnippet(D.fmt,"formatString"):D.fmt,O=this,A=I.replace(z,function(){var S=O.variables.__;O.variables.__=[].slice.call(arguments);for(var N=O.resolveVariables(F,E),W="E",V=0;V<N.length;V++){var G=N[V];if(typeof G=="object")if(N[V]="",G.changeCase&&G.local){var Q=N[V+1];Q&&typeof Q=="string"&&(G.changeCase=="u"?N[V]=Q[0].toUpperCase():N[V]=Q[0].toLowerCase(),N[V+1]=Q.substr(1))}else G.changeCase&&(W=G.changeCase);else W=="U"?N[V]=G.toUpperCase():W=="L"&&(N[V]=G.toLowerCase())}return O.variables.__=S,N.join("")});return A},w.prototype.tmFormatFunction=function(I,D,E){return D.formatFunction=="upcase"?I.toUpperCase():D.formatFunction=="downcase"?I.toLowerCase():I},w.prototype.resolveVariables=function(I,D){function E(W){var V=I.indexOf(W,O+1);V!=-1&&(O=V)}for(var L=[],z="",F=!0,O=0;O<I.length;O++){var A=I[O];if(typeof A=="string"){L.push(A),A==`
1120
+ `?(F=!0,z=""):F&&(z=/^\t*/.exec(A)[0],F=/\S/.test(A));continue}if(A){if(F=!1,A.fmtString){var S=I.indexOf(A,O+1);S==-1&&(S=I.length),A.fmt=I.slice(O+1,S),O=S}if(A.text){var N=this.getVariableValue(D,A.text,z)+"";A.fmtString&&(N=this.tmStrFormat(N,A,D)),A.formatFunction&&(N=this.tmFormatFunction(N,A,D)),N&&!A.ifEnd?(L.push(N),E(A)):!N&&A.ifEnd&&E(A.ifEnd)}else A.elseEnd?E(A.elseEnd):(A.tabstopId!=null||A.changeCase!=null)&&L.push(A)}}return L},w.prototype.getDisplayTextForSnippet=function(I,D){var E=m.call(this,I,D);return E.text},w.prototype.insertSnippetForSelection=function(I,D,E){E===void 0&&(E={});var L=m.call(this,I,D,E),z=I.getSelectionRange(),F=I.session.replace(z,L.text),O=new y(I),A=I.inVirtualSelectionMode&&I.selection.index;O.addTabstops(L.tabstops,z.start,F,A)},w.prototype.insertSnippet=function(I,D,E){E===void 0&&(E={});var L=this;if(I.inVirtualSelectionMode)return L.insertSnippetForSelection(I,D,E);I.forEachSelection(function(){L.insertSnippetForSelection(I,D,E)},null,{keepOrder:!0}),I.tabstopManager&&I.tabstopManager.tabNext()},w.prototype.$getScope=function(I){var D=I.session.$mode.$id||"";if(D=D.split("/").pop(),D==="html"||D==="php"){D==="php"&&!I.session.$mode.inlinePhp&&(D="html");var E=I.getCursorPosition(),L=I.session.getState(E.row);typeof L=="object"&&(L=L[0]),L.substring&&(L.substring(0,3)=="js-"?D="javascript":L.substring(0,4)=="css-"?D="css":L.substring(0,4)=="php-"&&(D="php"))}return D},w.prototype.getActiveScopes=function(I){var D=this.$getScope(I),E=[D],L=this.snippetMap;return L[D]&&L[D].includeScopes&&E.push.apply(E,L[D].includeScopes),E.push("_"),E},w.prototype.expandWithTab=function(I,D){var E=this,L=I.forEachSelection(function(){return E.expandSnippetForSelection(I,D)},null,{keepOrder:!0});return L&&I.tabstopManager&&I.tabstopManager.tabNext(),L},w.prototype.expandSnippetForSelection=function(I,D){var E=I.getCursorPosition(),L=I.session.getLine(E.row),z=L.substring(0,E.column),F=L.substr(E.column),O=this.snippetMap,A;return this.getActiveScopes(I).some(function(S){var N=O[S];return N&&(A=this.findMatchingSnippet(N,z,F)),!!A},this),A?(D&&D.dryRun||(I.session.doc.removeInLine(E.row,E.column-A.replaceBefore.length,E.column+A.replaceAfter.length),this.variables.M__=A.matchBefore,this.variables.T__=A.matchAfter,this.insertSnippetForSelection(I,A.content),this.variables.M__=this.variables.T__=null),!0):!1},w.prototype.findMatchingSnippet=function(I,D,E){for(var L=I.length;L--;){var z=I[L];if(!(z.startRe&&!z.startRe.test(D))&&!(z.endRe&&!z.endRe.test(E))&&!(!z.startRe&&!z.endRe))return z.matchBefore=z.startRe?z.startRe.exec(D):[""],z.matchAfter=z.endRe?z.endRe.exec(E):[""],z.replaceBefore=z.triggerRe?z.triggerRe.exec(D)[0]:"",z.replaceAfter=z.endTriggerRe?z.endTriggerRe.exec(E)[0]:"",z}},w.prototype.register=function(I,D){function E(S){return S&&!/^\^?\(.*\)\$?$|^\\b$/.test(S)&&(S="(?:"+S+")"),S||""}function L(S,N,W){return S=E(S),N=E(N),S=N+S,S&&S[S.length-1]!="$"&&(S+="$"),new RegExp(S)}function z(S){S.scope||(S.scope=D||"_"),D=S.scope,F[D]||(F[D]=[],O[D]={});var N=O[D];if(S.name){var W=N[S.name];W&&A.unregister(W),N[S.name]=S}F[D].push(S),S.prefix&&(S.tabTrigger=S.prefix),!S.content&&S.body&&(S.content=Array.isArray(S.body)?S.body.join(`
1121
+ `):S.body),S.tabTrigger&&!S.trigger&&(!S.guard&&/^\w/.test(S.tabTrigger)&&(S.guard="\\b"),S.trigger=f.escapeRegExp(S.tabTrigger)),!(!S.trigger&&!S.guard&&!S.endTrigger&&!S.endGuard)&&(S.startRe=L(S.trigger,S.guard),S.triggerRe=new RegExp(S.trigger),S.endRe=L(S.endTrigger,S.endGuard),S.endTriggerRe=new RegExp(S.endTrigger))}var F=this.snippetMap,O=this.snippetNameMap,A=this;I||(I=[]),Array.isArray(I)?I.forEach(z):Object.keys(I).forEach(function(S){z(I[S])}),this._signal("registerSnippets",{scope:D})},w.prototype.unregister=function(I,D){function E(F){var O=z[F.scope||D];if(O&&O[F.name]){delete O[F.name];var A=L[F.scope||D],S=A&&A.indexOf(F);S>=0&&A.splice(S,1)}}var L=this.snippetMap,z=this.snippetNameMap;I.content?E(I):Array.isArray(I)&&I.forEach(E)},w.prototype.parseSnippetFile=function(I){I=I.replace(/\r/g,"");for(var D=[],E={},L=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,z;z=L.exec(I);){if(z[1])try{E=JSON.parse(z[1]),D.push(E)}catch{}if(z[4])E.content=z[4].replace(/^\t/gm,""),D.push(E),E={};else{var F=z[2],O=z[3];if(F=="regex"){var A=/\/((?:[^\/\\]|\\.)*)|$/g;E.guard=A.exec(O)[1],E.trigger=A.exec(O)[1],E.endTrigger=A.exec(O)[1],E.endGuard=A.exec(O)[1]}else F=="snippet"?(E.tabTrigger=O.match(/^\S*/)[0],E.name||(E.name=O)):F&&(E[F]=O)}}return D},w.prototype.getSnippetByName=function(I,D){var E=this.snippetNameMap,L;return this.getActiveScopes(D).some(function(z){var F=E[z];return F&&(L=F[I]),!!L},this),L},w})();x.implement(h.prototype,p);var m=function(w,I,D){function E(ce){for(var me=[],_e=0;_e<ce.length;_e++){var Ae=ce[_e];if(typeof Ae=="object"){if(N[Ae.tabstopId])continue;var Me=ce.lastIndexOf(Ae,_e-1);Ae=me[Me]||{tabstopId:Ae.tabstopId}}me[_e]=Ae}return me}D===void 0&&(D={});var L=w.getCursorPosition(),z=w.session.getLine(L.row),F=w.session.getTabString(),O=z.match(/^\s*/)[0];L.column<O.length&&(O=O.slice(0,L.column)),I=I.replace(/\r/g,"");var A=this.tokenizeTmSnippet(I);A=this.resolveVariables(A,w),A=A.map(function(ce){return ce==`
1122
+ `&&!D.excludeExtraIndent?ce+O:typeof ce=="string"?ce.replace(/\t/g,F):ce});var S=[];A.forEach(function(ce,me){if(typeof ce=="object"){var _e=ce.tabstopId,Ae=S[_e];if(Ae||(Ae=S[_e]=[],Ae.index=_e,Ae.value="",Ae.parents={}),Ae.indexOf(ce)===-1){ce.choices&&!Ae.choices&&(Ae.choices=ce.choices),Ae.push(ce);var Me=A.indexOf(ce,me+1);if(Me!==-1){var Ye=A.slice(me+1,Me),Ve=Ye.some(function(it){return typeof it=="object"});Ve&&!Ae.value?Ae.value=Ye:Ye.length&&(!Ae.value||typeof Ae.value!="string")&&(Ae.value=Ye.join(""))}}}}),S.forEach(function(ce){ce.length=0});for(var N={},W=0;W<A.length;W++){var V=A[W];if(typeof V=="object"){var G=V.tabstopId,Q=S[G],te=A.indexOf(V,W+1);if(N[G]){N[G]===V&&(delete N[G],Object.keys(N).forEach(function(ce){Q.parents[ce]=!0}));continue}N[G]=V;var le=Q.value;typeof le!="string"?le=E(le):V.fmt&&(le=this.tmStrFormat(le,V,w)),A.splice.apply(A,[W+1,Math.max(0,te-W)].concat(le,V)),Q.indexOf(V)===-1&&Q.push(V)}}var ne=0,ue=0,he="";return A.forEach(function(ce){if(typeof ce=="string"){var me=ce.split(`
1123
+ `);me.length>1?(ue=me[me.length-1].length,ne+=me.length-1):ue+=ce.length,he+=ce}else ce&&(ce.start?ce.end={row:ne,column:ue}:ce.start={row:ne,column:ue})}),{text:he,tabstops:S,tokens:A}},y=(function(){function w(I){if(this.index=0,this.ranges=[],this.tabstops=[],I.tabstopManager)return I.tabstopManager;I.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=f.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(I)}return w.prototype.attach=function(I){this.$openTabstops=null,this.selectedTabstop=null,this.editor=I,this.session=I.session,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},w.prototype.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges.length=0,this.tabstops.length=0,this.selectedTabstop=null,this.editor.off("change",this.$onChange),this.editor.off("changeSelection",this.$onChangeSelection),this.editor.off("changeSession",this.$onChangeSession),this.editor.commands.off("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.session=null,this.editor=null},w.prototype.onChange=function(I){for(var D=I.action[0]=="r",E=this.selectedTabstop||{},L=E.parents||{},z=this.tabstops.slice(),F=0;F<z.length;F++){var O=z[F],A=O==E||L[O.index];if(O.rangeList.$bias=A?0:1,I.action=="remove"&&O!==E){var S=O.parents&&O.parents[E.index],N=O.rangeList.pointIndex(I.start,S);N=N<0?-N-1:N+1;var W=O.rangeList.pointIndex(I.end,S);W=W<0?-W-1:W-1;for(var V=O.rangeList.ranges.slice(N,W),G=0;G<V.length;G++)this.removeRange(V[G])}O.rangeList.$onChange(I)}var Q=this.session;!this.$inChange&&D&&Q.getLength()==1&&!Q.getValue()&&this.detach()},w.prototype.updateLinkedFields=function(){var I=this.selectedTabstop;if(!(!I||!I.hasLinkedRanges||!I.firstNonLinked)){this.$inChange=!0;for(var D=this.session,E=D.getTextRange(I.firstNonLinked),L=0;L<I.length;L++){var z=I[L];if(z.linked){var F=z.original,O=u.snippetManager.tmStrFormat(E,F,this.editor);D.replace(z,O)}}this.$inChange=!1}},w.prototype.onAfterExec=function(I){I.command&&!I.command.readOnly&&this.updateLinkedFields()},w.prototype.onChangeSelection=function(){if(this.editor){for(var I=this.editor.selection.lead,D=this.editor.selection.anchor,E=this.editor.selection.isEmpty(),L=0;L<this.ranges.length;L++)if(!this.ranges[L].linked){var z=this.ranges[L].contains(I.row,I.column),F=E||this.ranges[L].contains(D.row,D.column);if(z&&F)return}this.detach()}},w.prototype.onChangeSession=function(){this.detach()},w.prototype.tabNext=function(I){var D=this.tabstops.length,E=this.index+(I||1);E=Math.min(Math.max(E,1),D),E==D&&(E=0),this.selectTabstop(E),this.updateTabstopMarkers(),E===0&&this.detach()},w.prototype.selectTabstop=function(I){this.$openTabstops=null;var D=this.tabstops[this.index];if(D&&this.addTabstopMarkers(D),this.index=I,D=this.tabstops[this.index],!(!D||!D.length)){this.selectedTabstop=D;var E=D.firstNonLinked||D;if(D.choices&&(E.cursor=E.start),this.editor.inVirtualSelectionMode)this.editor.selection.fromOrientedRange(E);else{var L=this.editor.multiSelect;L.toSingleRange(E);for(var z=0;z<D.length;z++)D.hasLinkedRanges&&D[z].linked||L.addRange(D[z].clone(),!0)}this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler),this.selectedTabstop&&this.selectedTabstop.choices&&this.editor.execCommand("startAutocomplete",{matches:this.selectedTabstop.choices})}},w.prototype.addTabstops=function(I,D,E){var L=this.useLink||!this.editor.getOption("enableMultiselect");if(this.$openTabstops||(this.$openTabstops=[]),!I[0]){var z=a.fromPoints(E,E);T(z.start,D),T(z.end,D),I[0]=[z],I[0].index=0}var F=this.index,O=[F+1,0],A=this.ranges,S=this.snippetId=(this.snippetId||0)+1;I.forEach(function(N,W){var V=this.$openTabstops[W]||N;V.snippetId=S;for(var G=0;G<N.length;G++){var Q=N[G],te=a.fromPoints(Q.start,Q.end||Q.start);R(te.start,D),R(te.end,D),te.original=Q,te.tabstop=V,A.push(te),V!=N?V.unshift(te):V[G]=te,Q.fmtString||V.firstNonLinked&&L?(te.linked=!0,V.hasLinkedRanges=!0):V.firstNonLinked||(V.firstNonLinked=te)}V.firstNonLinked||(V.hasLinkedRanges=!1),V===N&&(O.push(V),this.$openTabstops[W]=V),this.addTabstopMarkers(V),V.rangeList=V.rangeList||new s,V.rangeList.$bias=0,V.rangeList.addList(V)},this),O.length>2&&(this.tabstops.length&&O.push(O.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,O))},w.prototype.addTabstopMarkers=function(I){var D=this.session;I.forEach(function(E){E.markerId||(E.markerId=D.addMarker(E,"ace_snippet-marker","text"))})},w.prototype.removeTabstopMarkers=function(I){var D=this.session;I.forEach(function(E){D.removeMarker(E.markerId),E.markerId=null})},w.prototype.updateTabstopMarkers=function(){if(this.selectedTabstop){var I=this.selectedTabstop.snippetId;this.selectedTabstop.index===0&&I--,this.tabstops.forEach(function(D){D.snippetId===I?this.addTabstopMarkers(D):this.removeTabstopMarkers(D)},this)}},w.prototype.removeRange=function(I){var D=I.tabstop.indexOf(I);D!=-1&&I.tabstop.splice(D,1),D=this.ranges.indexOf(I),D!=-1&&this.ranges.splice(D,1),D=I.tabstop.rangeList.ranges.indexOf(I),D!=-1&&I.tabstop.splice(D,1),this.session.removeMarker(I.markerId),I.tabstop.length||(D=this.tabstops.indexOf(I.tabstop),D!=-1&&this.tabstops.splice(D,1),this.tabstops.length||this.detach())},w})();y.prototype.keyboardHandler=new o,y.prototype.keyboardHandler.bindKeys({Tab:function(w){u.snippetManager&&u.snippetManager.expandWithTab(w)||(w.tabstopManager.tabNext(1),w.renderer.scrollCursorIntoView())},"Shift-Tab":function(w){w.tabstopManager.tabNext(-1),w.renderer.scrollCursorIntoView()},Esc:function(w){w.tabstopManager.detach()}});var R=function(w,I){w.row==0&&(w.column+=I.column),w.row+=I.row},T=function(w,I){w.row==I.row&&(w.column-=I.column),w.row-=I.row};v.importCssString(`
1124
+ .ace_snippet-marker {
1125
+ -moz-box-sizing: border-box;
1126
+ box-sizing: border-box;
1127
+ background: rgba(194, 193, 208, 0.09);
1128
+ border: 1px dotted rgba(211, 208, 235, 0.62);
1129
+ position: absolute;
1130
+ }`,"snippets.css",!1),u.snippetManager=new h;var k=e("./editor").Editor;(function(){this.insertSnippet=function(w,I){return u.snippetManager.insertSnippet(this,w,I)},this.expandSnippet=function(w){return u.snippetManager.expandWithTab(this,w)}}).call(k.prototype)}),ace.define("ace/autocomplete/popup",["require","exports","module","ace/virtual_renderer","ace/editor","ace/range","ace/lib/event","ace/lib/lang","ace/lib/dom","ace/config","ace/lib/useragent"],function(e,u,M){var b=e("../virtual_renderer").VirtualRenderer,v=e("../editor").Editor,x=e("../range").Range,p=e("../lib/event"),f=e("../lib/lang"),a=e("../lib/dom"),s=e("../config").nls,o=e("./../lib/useragent"),r=function(R){return"suggest-aria-id:".concat(R)},n=o.isSafari?"menu":"listbox",i=o.isSafari?"menuitem":"option",h=o.isSafari?"aria-current":"aria-selected",m=function(R){var T=new b(R);T.$maxLines=4;var k=new v(T);return k.setHighlightActiveLine(!1),k.setShowPrintMargin(!1),k.renderer.setShowGutter(!1),k.renderer.setHighlightGutterLine(!1),k.$mouseHandler.$focusTimeout=0,k.$highlightTagPending=!0,k},y=(function(){function R(T){var k=a.createElement("div"),w=m(k);T&&T.appendChild(k),k.style.display="none",w.renderer.content.style.cursor="default",w.renderer.setStyle("ace_autocomplete"),w.renderer.$textLayer.element.setAttribute("role",n),w.renderer.$textLayer.element.setAttribute("aria-roledescription",s("autocomplete.popup.aria-roledescription","Autocomplete suggestions")),w.renderer.$textLayer.element.setAttribute("aria-label",s("autocomplete.popup.aria-label","Autocomplete suggestions")),w.renderer.textarea.setAttribute("aria-hidden","true"),w.setOption("displayIndentGuides",!1),w.setOption("dragDelay",150);var I=function(){};w.focus=I,w.$isFocused=!0,w.renderer.$cursorLayer.restartTimer=I,w.renderer.$cursorLayer.element.style.opacity="0",w.renderer.$maxLines=8,w.renderer.$keepTextAreaAtCursor=!1,w.setHighlightActiveLine(!1),w.session.highlight(""),w.session.$searchHighlight.clazz="ace_highlight-marker",w.on("mousedown",function(A){var S=A.getDocumentPosition();w.selection.moveToPosition(S),L.start.row=L.end.row=S.row,A.stop()});var D,E=new x(-1,0,-1,1/0),L=new x(-1,0,-1,1/0);L.id=w.session.addMarker(L,"ace_active-line","fullLine"),w.setSelectOnHover=function(A){A?E.id&&(w.session.removeMarker(E.id),E.id=null):E.id=w.session.addMarker(E,"ace_line-hover","fullLine")},w.setSelectOnHover(!1),w.on("mousemove",function(A){if(!D){D=A;return}if(!(D.x==A.x&&D.y==A.y)){D=A,D.scrollTop=w.renderer.scrollTop,w.isMouseOver=!0;var S=D.getDocumentPosition().row;E.start.row!=S&&(E.id||w.setRow(S),F(S))}}),w.renderer.on("beforeRender",function(){if(D&&E.start.row!=-1){D.$pos=null;var A=D.getDocumentPosition().row;E.id||w.setRow(A),F(A,!0)}}),w.renderer.on("afterRender",function(){for(var A=w.renderer.$textLayer,S=A.config.firstRow,N=A.config.lastRow;S<=N;S++){var W=A.element.childNodes[S-A.config.firstRow];W.setAttribute("role",i),W.setAttribute("aria-roledescription",s("autocomplete.popup.item.aria-roledescription","item")),W.setAttribute("aria-setsize",w.data.length),W.setAttribute("aria-describedby","doc-tooltip"),W.setAttribute("aria-posinset",S+1);var V=w.getData(S);if(V){var G="".concat(V.caption||V.value).concat(V.meta?", ".concat(V.meta):"");W.setAttribute("aria-label",G)}var Q=W.querySelectorAll(".ace_completion-highlight");Q.forEach(function(te){te.setAttribute("role","mark")})}}),w.renderer.on("afterRender",function(){var A=w.getRow(),S=w.renderer.$textLayer,N=S.element.childNodes[A-S.config.firstRow],W=document.activeElement;if(N!==w.selectedNode&&w.selectedNode&&(a.removeCssClass(w.selectedNode,"ace_selected"),w.selectedNode.removeAttribute(h),w.selectedNode.removeAttribute("id")),W.removeAttribute("aria-activedescendant"),w.selectedNode=N,N){var V=r(A);a.addCssClass(N,"ace_selected"),N.id=V,S.element.setAttribute("aria-activedescendant",V),W.setAttribute("aria-activedescendant",V),N.setAttribute(h,"true")}});var z=function(){F(-1)},F=function(A,S){A!==E.start.row&&(E.start.row=E.end.row=A,S||w.session._emit("changeBackMarker"),w._emit("changeHoverMarker"))};w.getHoveredRow=function(){return E.start.row},p.addListener(w.container,"mouseout",function(){w.isMouseOver=!1,z()}),w.on("hide",z),w.on("changeSelection",z),w.session.doc.getLength=function(){return w.data.length},w.session.doc.getLine=function(A){var S=w.data[A];return typeof S=="string"?S:S&&S.value||""};var O=w.session.bgTokenizer;return O.$tokenizeRow=function(A){function S(ce,me){ce&&W.push({type:(N.className||"")+(me||""),value:ce})}var N=w.data[A],W=[];if(!N)return W;typeof N=="string"&&(N={value:N});for(var V=N.caption||N.value||N.name,G=V.toLowerCase(),Q=(w.filterText||"").toLowerCase(),te=0,le=0,ne=0;ne<=Q.length;ne++)if(ne!=le&&(N.matchMask&1<<ne||ne==Q.length)){var ue=Q.slice(le,ne);le=ne;var he=G.indexOf(ue,te);if(he==-1)continue;S(V.slice(te,he),""),te=he+ue.length,S(V.slice(he,te),"completion-highlight")}return S(V.slice(te,V.length),""),W.push({type:"completion-spacer",value:" "}),N.meta&&W.push({type:"completion-meta",value:N.meta}),N.message&&W.push({type:"completion-message",value:N.message}),W},O.$updateOnChange=I,O.start=I,w.session.$computeWidth=function(){return this.screenWidth=0},w.isOpen=!1,w.isTopdown=!1,w.autoSelect=!0,w.filterText="",w.isMouseOver=!1,w.data=[],w.setData=function(A,S){w.filterText=S||"",w.setValue(f.stringRepeat(`
1131
+ `,A.length),-1),w.data=A||[],w.setRow(0)},w.getData=function(A){return w.data[A]},w.getRow=function(){return L.start.row},w.setRow=function(A){A=Math.max(this.autoSelect?0:-1,Math.min(this.data.length-1,A)),L.start.row!=A&&(w.selection.clearSelection(),L.start.row=L.end.row=A||0,w.session._emit("changeBackMarker"),w.moveCursorTo(A||0,0),w.isOpen&&w._signal("select"))},w.on("changeSelection",function(){w.isOpen&&w.setRow(w.selection.lead.row),w.renderer.scrollCursorIntoView()}),w.hide=function(){this.container.style.display="none",w.anchorPos=null,w.anchor=null,w.isOpen&&(w.isOpen=!1,this._signal("hide"))},w.tryShow=function(A,S,N,W){if(!W&&w.isOpen&&w.anchorPos&&w.anchor&&w.anchorPos.top===A.top&&w.anchorPos.left===A.left&&w.anchor===N)return!0;var V=this.container,G=this.renderer.scrollBar.width||10,Q=window.innerHeight-G,te=window.innerWidth-G,le=this.renderer,ne=le.$maxLines*S*1.4,ue={top:0,bottom:0},he=Q-A.top-3*this.$borderSize-S,ce=A.top-3*this.$borderSize;N||(ce<=he||he>=ne?N="bottom":N="top"),N==="top"?(ue.bottom=A.top-this.$borderSize,ue.top=ue.bottom-ne):N==="bottom"&&(ue.top=A.top+S+this.$borderSize,ue.bottom=ue.top+ne);var me=ue.top>=0&&ue.bottom<=Q;if(!W&&!me)return!1;me?le.$maxPixelHeight=null:N==="top"?le.$maxPixelHeight=ce:le.$maxPixelHeight=he,N==="top"?(V.style.top="",V.style.bottom=Q+G-ue.bottom+"px",w.isTopdown=!1):(V.style.top=ue.top+"px",V.style.bottom="",w.isTopdown=!0),V.style.display="";var _e=A.left;return _e+V.offsetWidth>te&&(_e=te-V.offsetWidth),V.style.left=_e+"px",V.style.right="",a.$fixPositionBug(V),w.isOpen||(w.isOpen=!0,this._signal("show"),D=null),w.anchorPos=A,w.anchor=N,!0},w.show=function(A,S,N){this.tryShow(A,S,N?"bottom":void 0,!0)},w.goTo=function(A){var S=this.getRow(),N=this.session.getLength()-1;switch(A){case"up":S=S<=0?N:S-1;break;case"down":S=S>=N?-1:S+1;break;case"start":S=0;break;case"end":S=N}this.setRow(S)},w.getTextLeftOffset=function(){return this.$borderSize+this.renderer.$padding+this.$imageSize},w.$imageSize=0,w.$borderSize=1,w}return R})();a.importCssString(`
1132
+ .ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {
1133
+ background-color: #CAD6FA;
1134
+ z-index: 1;
1135
+ }
1136
+ .ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line {
1137
+ background-color: #3a674e;
1138
+ }
1139
+ .ace_editor.ace_autocomplete .ace_line-hover {
1140
+ border: 1px solid #abbffe;
1141
+ margin-top: -1px;
1142
+ background: rgba(233,233,253,0.4);
1143
+ position: absolute;
1144
+ z-index: 2;
1145
+ }
1146
+ .ace_dark.ace_editor.ace_autocomplete .ace_line-hover {
1147
+ border: 1px solid rgba(109, 150, 13, 0.8);
1148
+ background: rgba(58, 103, 78, 0.62);
1149
+ }
1150
+ .ace_completion-meta {
1151
+ opacity: 0.5;
1152
+ margin-left: 0.9em;
1153
+ }
1154
+ .ace_completion-message {
1155
+ margin-left: 0.9em;
1156
+ color: blue;
1157
+ }
1158
+ .ace_editor.ace_autocomplete .ace_completion-highlight{
1159
+ color: #2d69c7;
1160
+ }
1161
+ .ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{
1162
+ color: #93ca12;
1163
+ }
1164
+ .ace_editor.ace_autocomplete {
1165
+ width: 300px;
1166
+ z-index: 200000;
1167
+ border: 1px lightgray solid;
1168
+ position: fixed;
1169
+ box-shadow: 2px 3px 5px rgba(0,0,0,.2);
1170
+ line-height: 1.4;
1171
+ background: #fefefe;
1172
+ color: #111;
1173
+ }
1174
+ .ace_dark.ace_editor.ace_autocomplete {
1175
+ border: 1px #484747 solid;
1176
+ box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.51);
1177
+ line-height: 1.4;
1178
+ background: #25282c;
1179
+ color: #c1c1c1;
1180
+ }
1181
+ .ace_autocomplete .ace_text-layer {
1182
+ width: calc(100% - 8px);
1183
+ }
1184
+ .ace_autocomplete .ace_line {
1185
+ display: flex;
1186
+ align-items: center;
1187
+ }
1188
+ .ace_autocomplete .ace_line > * {
1189
+ min-width: 0;
1190
+ flex: 0 0 auto;
1191
+ }
1192
+ .ace_autocomplete .ace_line .ace_ {
1193
+ flex: 0 1 auto;
1194
+ overflow: hidden;
1195
+ text-overflow: ellipsis;
1196
+ }
1197
+ .ace_autocomplete .ace_completion-spacer {
1198
+ flex: 1;
1199
+ }
1200
+ .ace_autocomplete.ace_loading:after {
1201
+ content: "";
1202
+ position: absolute;
1203
+ top: 0px;
1204
+ height: 2px;
1205
+ width: 8%;
1206
+ background: blue;
1207
+ z-index: 100;
1208
+ animation: ace_progress 3s infinite linear;
1209
+ animation-delay: 300ms;
1210
+ transform: translateX(-100%) scaleX(1);
1211
+ }
1212
+ @keyframes ace_progress {
1213
+ 0% { transform: translateX(-100%) scaleX(1) }
1214
+ 50% { transform: translateX(625%) scaleX(2) }
1215
+ 100% { transform: translateX(1500%) scaleX(3) }
1216
+ }
1217
+ @media (prefers-reduced-motion) {
1218
+ .ace_autocomplete.ace_loading:after {
1219
+ transform: translateX(625%) scaleX(2);
1220
+ animation: none;
1221
+ }
1222
+ }
1223
+ `,"autocompletion.css",!1),u.AcePopup=y,u.$singleLineEditor=m,u.getAriaId=r}),ace.define("ace/autocomplete/inline_screenreader",["require","exports","module"],function(e,u,M){var b=(function(){function v(x){this.editor=x,this.screenReaderDiv=document.createElement("div"),this.screenReaderDiv.classList.add("ace_screenreader-only"),this.editor.container.appendChild(this.screenReaderDiv)}return v.prototype.setScreenReaderContent=function(x){for(!this.popup&&this.editor.completer&&this.editor.completer.popup&&(this.popup=this.editor.completer.popup,this.popup.renderer.on("afterRender",(function(){var f=this.popup.getRow(),a=this.popup.renderer.$textLayer,s=a.element.childNodes[f-a.config.firstRow];if(s){for(var o="doc-tooltip ",r=0;r<this._lines.length;r++)o+="ace-inline-screenreader-line-".concat(r," ");s.setAttribute("aria-describedby",o)}}).bind(this)));this.screenReaderDiv.firstChild;)this.screenReaderDiv.removeChild(this.screenReaderDiv.firstChild);this._lines=x.split(/\r\n|\r|\n/);var p=this.createCodeBlock();this.screenReaderDiv.appendChild(p)},v.prototype.destroy=function(){this.screenReaderDiv.remove()},v.prototype.createCodeBlock=function(){var x=document.createElement("pre");x.setAttribute("id","ace-inline-screenreader");for(var p=0;p<this._lines.length;p++){var f=document.createElement("code");f.setAttribute("id","ace-inline-screenreader-line-".concat(p));var a=document.createTextNode(this._lines[p]);f.appendChild(a),x.appendChild(f)}return x},v})();u.AceInlineScreenReader=b}),ace.define("ace/autocomplete/inline",["require","exports","module","ace/snippets","ace/autocomplete/inline_screenreader"],function(e,u,M){var b=e("../snippets").snippetManager,v=e("./inline_screenreader").AceInlineScreenReader,x=(function(){function p(){this.editor=null}return p.prototype.show=function(f,a,s){if(s=s||"",f&&this.editor&&this.editor!==f&&(this.hide(),this.editor=null,this.inlineScreenReader=null),!f||!a)return!1;this.inlineScreenReader||(this.inlineScreenReader=new v(f));var o=a.snippet?b.getDisplayTextForSnippet(f,a.snippet):a.value;return a.hideInlinePreview||!o||!o.startsWith(s)?!1:(this.editor=f,this.inlineScreenReader.setScreenReaderContent(o),o=o.slice(s.length),o===""?f.removeGhostText():f.setGhostText(o),!0)},p.prototype.isOpen=function(){return this.editor?!!this.editor.renderer.$ghostText:!1},p.prototype.hide=function(){return this.editor?(this.editor.removeGhostText(),!0):!1},p.prototype.destroy=function(){this.hide(),this.editor=null,this.inlineScreenReader&&(this.inlineScreenReader.destroy(),this.inlineScreenReader=null)},p})();u.AceInline=x}),ace.define("ace/autocomplete/util",["require","exports","module"],function(e,u,M){u.parForEach=function(v,x,p){var f=0,a=v.length;a===0&&p();for(var s=0;s<a;s++)x(v[s],function(o,r){f++,f===a&&p(o,r)})};var b=/[a-zA-Z_0-9\$\-\u00A2-\u2000\u2070-\uFFFF]/;u.retrievePrecedingIdentifier=function(v,x,p){p=p||b;for(var f=[],a=x-1;a>=0&&p.test(v[a]);a--)f.push(v[a]);return f.reverse().join("")},u.retrieveFollowingIdentifier=function(v,x,p){p=p||b;for(var f=[],a=x;a<v.length&&p.test(v[a]);a++)f.push(v[a]);return f},u.getCompletionPrefix=function(v){var x=v.getCursorPosition(),p=v.session.getLine(x.row),f;return v.completers.forEach((function(a){a.identifierRegexps&&a.identifierRegexps.forEach((function(s){!f&&s&&(f=this.retrievePrecedingIdentifier(p,x.column,s))}).bind(this))}).bind(this)),f||this.retrievePrecedingIdentifier(p,x.column)},u.triggerAutocomplete=function(v,p){var p=p??v.session.getPrecedingCharacter();return v.completers.some(function(f){if(f.triggerCharacters&&Array.isArray(f.triggerCharacters))return f.triggerCharacters.includes(p)})}}),ace.define("ace/autocomplete",["require","exports","module","ace/keyboard/hash_handler","ace/autocomplete/popup","ace/autocomplete/inline","ace/autocomplete/popup","ace/autocomplete/util","ace/lib/lang","ace/lib/dom","ace/snippets","ace/config","ace/lib/event","ace/lib/scroll"],function(e,u,M){var b=e("./keyboard/hash_handler").HashHandler,v=e("./autocomplete/popup").AcePopup,x=e("./autocomplete/inline").AceInline,p=e("./autocomplete/popup").getAriaId,f=e("./autocomplete/util"),a=e("./lib/lang"),s=e("./lib/dom"),o=e("./snippets").snippetManager,r=e("./config"),n=e("./lib/event"),i=e("./lib/scroll").preventParentScroll,h=function(T,k){k.completer&&k.completer.destroy()},m=(function(){function T(){this.autoInsert=!1,this.autoSelect=!0,this.autoShown=!1,this.exactMatch=!1,this.inlineEnabled=!1,this.keyboardHandler=new b,this.keyboardHandler.bindKeys(this.commands),this.parentNode=null,this.setSelectOnHover=!1,this.hasSeen=new Set,this.showLoadingState=!1,this.stickySelectionDelay=500,this.blurListener=this.blurListener.bind(this),this.changeListener=this.changeListener.bind(this),this.mousedownListener=this.mousedownListener.bind(this),this.mousewheelListener=this.mousewheelListener.bind(this),this.onLayoutChange=this.onLayoutChange.bind(this),this.changeTimer=a.delayedCall((function(){this.updateCompletions(!0)}).bind(this)),this.tooltipTimer=a.delayedCall(this.updateDocTooltip.bind(this),50),this.popupTimer=a.delayedCall(this.$updatePopupPosition.bind(this),50),this.stickySelectionTimer=a.delayedCall((function(){this.stickySelection=!0}).bind(this),this.stickySelectionDelay),this.$firstOpenTimer=a.delayedCall((function(){var k=this.completionProvider&&this.completionProvider.initialPosition;this.autoShown||this.popup&&this.popup.isOpen||!k||this.editor.completers.length===0||(this.completions=new R(T.completionsForLoading),this.openPopup(this.editor,k.prefix,!1),this.popup.renderer.setStyle("ace_loading",!0))}).bind(this),this.stickySelectionDelay)}return Object.defineProperty(T,"completionsForLoading",{get:function(){return[{caption:r.nls("autocomplete.loading","Loading..."),value:""}]},enumerable:!1,configurable:!0}),T.prototype.$init=function(){return this.popup=new v(this.parentNode||document.body||document.documentElement),this.popup.on("click",(function(k){this.insertMatch(),k.stop()}).bind(this)),this.popup.focus=this.editor.focus.bind(this.editor),this.popup.on("show",this.$onPopupShow.bind(this)),this.popup.on("hide",this.$onHidePopup.bind(this)),this.popup.on("select",this.$onPopupChange.bind(this)),n.addListener(this.popup.container,"mouseout",this.mouseOutListener.bind(this)),this.popup.on("changeHoverMarker",this.tooltipTimer.bind(null,null)),this.popup.renderer.on("afterRender",this.$onPopupRender.bind(this)),this.popup},T.prototype.$initInline=function(){if(!(!this.inlineEnabled||this.inlineRenderer))return this.inlineRenderer=new x,this.inlineRenderer},T.prototype.getPopup=function(){return this.popup||this.$init()},T.prototype.$onHidePopup=function(){this.inlineRenderer&&this.inlineRenderer.hide(),this.hideDocTooltip(),this.stickySelectionTimer.cancel(),this.popupTimer.cancel(),this.stickySelection=!1},T.prototype.$seen=function(k){!this.hasSeen.has(k)&&k&&k.completer&&k.completer.onSeen&&typeof k.completer.onSeen=="function"&&(k.completer.onSeen(this.editor,k),this.hasSeen.add(k))},T.prototype.$onPopupChange=function(k){if(this.inlineRenderer&&this.inlineEnabled){var w=k?null:this.popup.getData(this.popup.getRow());if(this.$updateGhostText(w),this.popup.isMouseOver&&this.setSelectOnHover){this.tooltipTimer.call(null,null);return}this.popupTimer.schedule(),this.tooltipTimer.schedule()}else this.popupTimer.call(null,null),this.tooltipTimer.call(null,null)},T.prototype.$updateGhostText=function(k){var w=this.base.row,I=this.base.column,D=this.editor.getCursorPosition().column,E=this.editor.session.getLine(w).slice(I,D);this.inlineRenderer.show(this.editor,k,E)?this.$seen(k):this.inlineRenderer.hide()},T.prototype.$onPopupRender=function(){var k=this.inlineRenderer&&this.inlineEnabled;if(this.completions&&this.completions.filtered&&this.completions.filtered.length>0)for(var w=this.popup.getFirstVisibleRow();w<=this.popup.getLastVisibleRow();w++){var I=this.popup.getData(w);I&&(!k||I.hideInlinePreview)&&this.$seen(I)}},T.prototype.$onPopupShow=function(k){this.$onPopupChange(k),this.stickySelection=!1,this.stickySelectionDelay>=0&&this.stickySelectionTimer.schedule(this.stickySelectionDelay)},T.prototype.observeLayoutChanges=function(){if(!(this.$elements||!this.editor)){window.addEventListener("resize",this.onLayoutChange,{passive:!0}),window.addEventListener("wheel",this.mousewheelListener);for(var k=this.editor.container.parentNode,w=[];k;)w.push(k),k.addEventListener("scroll",this.onLayoutChange,{passive:!0}),k=k.parentNode;this.$elements=w}},T.prototype.unObserveLayoutChanges=function(){var k=this;window.removeEventListener("resize",this.onLayoutChange,{passive:!0}),window.removeEventListener("wheel",this.mousewheelListener),this.$elements&&this.$elements.forEach(function(w){w.removeEventListener("scroll",k.onLayoutChange,{passive:!0})}),this.$elements=null},T.prototype.onLayoutChange=function(){if(!this.popup.isOpen)return this.unObserveLayoutChanges();this.$updatePopupPosition(),this.updateDocTooltip()},T.prototype.$updatePopupPosition=function(){var k=this.editor,w=k.renderer,I=w.layerConfig.lineHeight,D=w.$cursorLayer.getPixelPosition(this.base,!0);D.left-=this.popup.getTextLeftOffset();var E=k.container.getBoundingClientRect();D.top+=E.top-w.layerConfig.offset,D.left+=E.left-k.renderer.scrollLeft,D.left+=w.gutterWidth;var L={top:D.top,left:D.left};w.$ghostText&&w.$ghostTextWidget&&this.base.row===w.$ghostText.position.row&&(L.top+=w.$ghostTextWidget.el.offsetHeight);var z=k.container.getBoundingClientRect().bottom-I,F=z<L.top?{top:z,left:L.left}:L;this.popup.tryShow(F,I,"bottom")||this.popup.tryShow(D,I,"top")||this.popup.show(D,I)},T.prototype.openPopup=function(k,w,I){this.$firstOpenTimer.cancel(),this.popup||this.$init(),this.inlineEnabled&&!this.inlineRenderer&&this.$initInline(),this.popup.autoSelect=this.autoSelect,this.popup.setSelectOnHover(this.setSelectOnHover);var D=this.popup.getRow(),E=this.popup.data[D];this.popup.setData(this.completions.filtered,this.completions.filterText),this.editor.textInput.setAriaOptions&&this.editor.textInput.setAriaOptions({activeDescendant:p(this.popup.getRow()),inline:this.inlineEnabled}),k.keyBinding.addKeyboardHandler(this.keyboardHandler);var L;this.stickySelection&&(L=this.popup.data.indexOf(E)),(!L||L===-1)&&(L=0),this.popup.setRow(this.autoSelect?L:-1),L===D&&E!==this.completions.filtered[L]&&this.$onPopupChange();var z=this.inlineRenderer&&this.inlineEnabled;if(L===D&&z){var F=this.popup.getData(this.popup.getRow());this.$updateGhostText(F)}I||(this.popup.setTheme(k.getTheme()),this.popup.setFontSize(k.getFontSize()),this.$updatePopupPosition(),this.tooltipNode&&this.updateDocTooltip()),this.changeTimer.cancel(),this.observeLayoutChanges()},T.prototype.detach=function(){this.editor&&(this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.off("changeSelection",this.changeListener),this.editor.off("blur",this.blurListener),this.editor.off("mousedown",this.mousedownListener),this.editor.off("mousewheel",this.mousewheelListener)),this.$firstOpenTimer.cancel(),this.changeTimer.cancel(),this.hideDocTooltip(),this.completionProvider&&this.completionProvider.detach(),this.popup&&this.popup.isOpen&&this.popup.hide(),this.popup&&this.popup.renderer&&this.popup.renderer.off("afterRender",this.$onPopupRender),this.base&&this.base.detach(),this.activated=!1,this.completionProvider=this.completions=this.base=null,this.unObserveLayoutChanges()},T.prototype.changeListener=function(k){var w=this.editor.selection.lead;(w.row!=this.base.row||w.column<this.base.column)&&this.detach(),this.activated?this.changeTimer.schedule():this.detach()},T.prototype.blurListener=function(k){var w=document.activeElement,I=this.editor.textInput.getElement(),D=k.relatedTarget&&this.tooltipNode&&this.tooltipNode.contains(k.relatedTarget),E=this.popup&&this.popup.container;w!=I&&w.parentNode!=E&&!D&&w!=this.tooltipNode&&k.relatedTarget!=I&&this.detach()},T.prototype.mousedownListener=function(k){this.detach()},T.prototype.mousewheelListener=function(k){this.popup&&!this.popup.isMouseOver&&this.detach()},T.prototype.mouseOutListener=function(k){this.popup.isOpen&&this.$updatePopupPosition()},T.prototype.goTo=function(k){this.popup.goTo(k)},T.prototype.insertMatch=function(k,w){if(k||(k=this.popup.getData(this.popup.getRow())),!k)return!1;if(k.value==="")return this.detach();var I=this.completions,D=this.getCompletionProvider().insertMatch(this.editor,k,I.filterText,w);return this.completions==I&&this.detach(),D},T.prototype.showPopup=function(k,w){this.editor&&this.detach(),this.activated=!0,this.editor=k,k.completer!=this&&(k.completer&&k.completer.detach(),k.completer=this),k.on("changeSelection",this.changeListener),k.on("blur",this.blurListener),k.on("mousedown",this.mousedownListener),k.on("mousewheel",this.mousewheelListener),this.updateCompletions(!1,w)},T.prototype.getCompletionProvider=function(k){return this.completionProvider||(this.completionProvider=new y(k)),this.completionProvider},T.prototype.gatherCompletions=function(k,w){return this.getCompletionProvider().gatherCompletions(k,w)},T.prototype.updateCompletions=function(k,w){if(k&&this.base&&this.completions){var D=this.editor.getCursorPosition(),E=this.editor.session.getTextRange({start:this.base,end:D});if(E==this.completions.filterText)return;if(this.completions.setFilter(E),!this.completions.filtered.length)return this.detach();if(this.completions.filtered.length==1&&this.completions.filtered[0].value==E&&!this.completions.filtered[0].snippet)return this.detach();this.openPopup(this.editor,E,k);return}if(w&&w.matches){var D=this.editor.getSelectionRange().start;return this.base=this.editor.session.doc.createAnchor(D.row,D.column),this.base.$insertRight=!0,this.completions=new R(w.matches),this.getCompletionProvider().completions=this.completions,this.openPopup(this.editor,"",k)}var I=this.editor.getSession(),D=this.editor.getCursorPosition(),E=f.getCompletionPrefix(this.editor);this.base=I.doc.createAnchor(D.row,D.column-E.length),this.base.$insertRight=!0;var L={exactMatch:this.exactMatch,ignoreCaption:this.ignoreCaption};this.getCompletionProvider({prefix:E,pos:D}).provideCompletions(this.editor,L,(function(z,F,O){var A=F.filtered,S=f.getCompletionPrefix(this.editor);if(this.$firstOpenTimer.cancel(),O){if(!A.length){var N=!this.autoShown&&this.emptyMessage;if(typeof N=="function"&&(N=this.emptyMessage(S)),N){var W=[{caption:N,value:""}];this.completions=new R(W),this.openPopup(this.editor,S,k),this.popup.renderer.setStyle("ace_loading",!1),this.popup.renderer.setStyle("ace_empty-message",!0);return}return this.detach()}if(A.length==1&&A[0].value==S&&!A[0].snippet)return this.detach();if(this.autoInsert&&!this.autoShown&&A.length==1)return this.insertMatch(A[0])}this.completions=!O&&this.showLoadingState?new R(T.completionsForLoading.concat(A),F.filterText):F,this.openPopup(this.editor,S,k),this.popup.renderer.setStyle("ace_empty-message",!1),this.popup.renderer.setStyle("ace_loading",!O)}).bind(this)),this.showLoadingState&&!this.autoShown&&(!this.popup||!this.popup.isOpen)&&this.$firstOpenTimer.delay(this.stickySelectionDelay/2)},T.prototype.cancelContextMenu=function(){this.editor.$mouseHandler.cancelContextMenu()},T.prototype.updateDocTooltip=function(){var k=this.popup,w=this.completions&&this.completions.filtered,I=w&&(w[k.getHoveredRow()]||w[k.getRow()]),D=null;if(!I||!this.editor||!this.popup.isOpen)return this.hideDocTooltip();for(var E=this.editor.completers.length,L=0;L<E;L++){var z=this.editor.completers[L];if(z.getDocTooltip&&I.completerId===z.id){D=z.getDocTooltip(I);break}}if(!D&&typeof I!="string"&&(D=I),typeof D=="string"&&(D={docText:D}),!D||!D.docHTML&&!D.docText)return this.hideDocTooltip();this.showDocTooltip(D)},T.prototype.showDocTooltip=function(k){this.tooltipNode||(this.tooltipNode=s.createElement("div"),this.tooltipNode.style.margin="0",this.tooltipNode.style.pointerEvents="auto",this.tooltipNode.style.overscrollBehavior="contain",this.tooltipNode.tabIndex=-1,this.tooltipNode.onblur=this.blurListener.bind(this),this.tooltipNode.onclick=this.onTooltipClick.bind(this),this.tooltipNode.id="doc-tooltip",this.tooltipNode.setAttribute("role","tooltip"),this.tooltipNode.addEventListener("wheel",i));var w=this.editor.renderer.theme;this.tooltipNode.className="ace_tooltip ace_doc-tooltip "+(w.isDark?"ace_dark ":"")+(w.cssClass||"");var I=this.tooltipNode;k.docHTML?I.innerHTML=k.docHTML:k.docText&&(I.textContent=k.docText),I.parentNode||this.popup.container.appendChild(this.tooltipNode);var D=this.popup,E=D.container.getBoundingClientRect(),L=400,z=300,F=D.renderer.scrollBar.width||10,O=E.left,A=window.innerWidth-E.right-F,S=D.isTopdown?window.innerHeight-F-E.bottom:E.top,N=[Math.min(A/L,1),Math.min(O/L,1),Math.min(S/z,1)*.9],W=Math.max.apply(Math,N),V=I.style;V.display="block",W==N[0]||N[0]>=1?(V.left=E.right+1+"px",V.right="",V.maxWidth=L*W+"px",V.top=E.top+"px",V.bottom="",V.maxHeight=Math.min(window.innerHeight-F-E.top,z)+"px"):W==N[1]||N[1]>=1?(V.right=window.innerWidth-E.left+"px",V.left="",V.maxWidth=L*W+"px",V.top=E.top+"px",V.bottom="",V.maxHeight=Math.min(window.innerHeight-F-E.top,z)+"px"):W==N[2]&&(V.left=E.left+"px",V.right="",V.maxWidth=Math.min(L,window.innerWidth-E.left)+"px",D.isTopdown?(V.top=E.bottom+"px",V.bottom="",V.maxHeight=Math.min(window.innerHeight-F-E.bottom,z)+"px"):(V.top="",V.bottom=window.innerHeight-E.top+"px",V.maxHeight=Math.min(E.top,z)+"px")),s.$fixPositionBug(I)},T.prototype.hideDocTooltip=function(){if(this.tooltipTimer.cancel(),!!this.tooltipNode){var k=this.tooltipNode;!this.editor.isFocused()&&document.activeElement==k&&this.editor.focus(),this.tooltipNode=null,k.parentNode&&k.parentNode.removeChild(k)}},T.prototype.onTooltipClick=function(k){for(var w=k.target;w&&w!=this.tooltipNode;){if(w.nodeName=="A"&&w.href){w.rel="noreferrer",w.target="_blank";break}w=w.parentNode}},T.prototype.destroy=function(){if(this.detach(),this.popup){this.popup.destroy();var k=this.popup.container;k&&k.parentNode&&k.parentNode.removeChild(k)}this.editor&&this.editor.completer==this&&(this.editor.off("destroy",h),this.editor.completer=null),this.inlineRenderer=this.popup=this.editor=null},T.for=function(k){return k.completer instanceof T||(k.completer&&(k.completer.destroy(),k.completer=null),r.get("sharedPopups")?(T.$sharedInstance||(T.$sharedInstance=new T),k.completer=T.$sharedInstance):(k.completer=new T,k.once("destroy",h))),k.completer},T})();m.prototype.commands={Up:function(T){T.completer.goTo("up")},Down:function(T){T.completer.goTo("down")},"Ctrl-Up|Ctrl-Home":function(T){T.completer.goTo("start")},"Ctrl-Down|Ctrl-End":function(T){T.completer.goTo("end")},Esc:function(T){T.completer.detach()},Return:function(T){return T.completer.insertMatch()},"Shift-Return":function(T){T.completer.insertMatch(null,{deleteSuffix:!0})},Tab:function(T){var k=T.completer.insertMatch();if(k||T.tabstopManager)return k;T.completer.goTo("down")},Backspace:function(T){T.execCommand("backspace");var k=f.getCompletionPrefix(T);!k&&T.completer&&T.completer.detach()},PageUp:function(T){T.completer.popup.gotoPageUp()},PageDown:function(T){T.completer.popup.gotoPageDown()}},m.startCommand={name:"startAutocomplete",exec:function(T,k){var w=m.for(T);w.autoInsert=!1,w.autoSelect=!0,w.autoShown=!1,w.showPopup(T,k),w.cancelContextMenu()},bindKey:"Ctrl-Space|Ctrl-Shift-Space|Alt-Space"};var y=(function(){function T(k){this.initialPosition=k,this.active=!0}return T.prototype.insertByIndex=function(k,w,I){return!this.completions||!this.completions.filtered?!1:this.insertMatch(k,this.completions.filtered[w],I)},T.prototype.insertMatch=function(k,w,I){if(!w)return!1;if(k.startOperation({command:{name:"insertMatch"}}),w.completer&&w.completer.insertMatch)w.completer.insertMatch(k,w);else{if(!this.completions)return!1;var D=this.completions.filterText.length,E=0;if(w.range&&w.range.start.row===w.range.end.row&&(D-=this.initialPosition.prefix.length,D+=this.initialPosition.pos.column-w.range.start.column,E+=w.range.end.column-this.initialPosition.pos.column),D||E){var L;k.selection.getAllRanges?L=k.selection.getAllRanges():L=[k.getSelectionRange()];for(var z=0,F;F=L[z];z++)F.start.column-=D,F.end.column+=E,k.session.remove(F)}w.snippet?o.insertSnippet(k,w.snippet):this.$insertString(k,w),w.completer&&w.completer.onInsert&&typeof w.completer.onInsert=="function"&&w.completer.onInsert(k,w),w.command&&w.command==="startAutocomplete"&&k.execCommand(w.command)}return k.endOperation(),!0},T.prototype.$insertString=function(k,w){var I=w.value||w;k.execCommand("insertstring",I)},T.prototype.gatherCompletions=function(k,w){var I=k.getSession(),D=k.getCursorPosition(),E=f.getCompletionPrefix(k),L=[];this.completers=k.completers;var z=k.completers.length;return k.completers.forEach(function(F,O){F.getCompletions(k,I,D,E,function(A,S){F.hideInlinePreview&&(S=S.map(function(N){return Object.assign(N,{hideInlinePreview:F.hideInlinePreview})})),!A&&S&&(L=L.concat(S)),w(null,{prefix:f.getCompletionPrefix(k),matches:L,finished:--z===0})})}),!0},T.prototype.provideCompletions=function(k,w,I){var D=(function(F){var O=F.prefix,A=F.matches;this.completions=new R(A),w.exactMatch&&(this.completions.exactMatch=!0),w.ignoreCaption&&(this.completions.ignoreCaption=!0),this.completions.setFilter(O),(F.finished||this.completions.filtered.length)&&I(null,this.completions,F.finished)}).bind(this),E=!0,L=null;if(this.gatherCompletions(k,(function(F,O){if(this.active){F&&(I(F,[],!0),this.detach());var A=O.prefix;if(A.indexOf(O.prefix)===0){if(E){L=O;return}D(O)}}}).bind(this)),E=!1,L){var z=L;L=null,D(z)}},T.prototype.detach=function(){this.active=!1,this.completers&&this.completers.forEach(function(k){typeof k.cancel=="function"&&k.cancel()})},T})(),R=(function(){function T(k,w){this.all=k,this.filtered=k,this.filterText=w||"",this.exactMatch=!1,this.ignoreCaption=!1}return T.prototype.setFilter=function(k){if(k.length>this.filterText&&k.lastIndexOf(this.filterText,0)===0)var w=this.filtered;else var w=this.all;this.filterText=k,w=this.filterCompletions(w,this.filterText),w=w.sort(function(D,E){return E.exactMatch-D.exactMatch||E.$score-D.$score||(D.caption||D.value).localeCompare(E.caption||E.value)});var I=null;w=w.filter(function(D){var E=D.snippet||D.caption||D.value;return E===I?!1:(I=E,!0)}),this.filtered=w},T.prototype.filterCompletions=function(k,w){var I=[],D=w.toUpperCase(),E=w.toLowerCase();e:for(var L=0,z;z=k[L];L++){if(z.skipFilter){z.$score=z.score,I.push(z);continue}var F=!this.ignoreCaption&&z.caption||z.value||z.snippet;if(F){var O=-1,A=0,S=0,N,W;if(this.exactMatch){if(w!==F.substr(0,w.length))continue e}else{var V=F.toLowerCase().indexOf(E);if(V>-1)S=V;else for(var G=0;G<w.length;G++){var Q=F.indexOf(E[G],O+1),te=F.indexOf(D[G],O+1);if(N=Q>=0&&(te<0||Q<te)?Q:te,N<0)continue e;W=N-O-1,W>0&&(O===-1&&(S+=10),S+=W,A|=1<<G),O=N}}z.matchMask=A,z.exactMatch=S?0:1,z.$score=(z.score||0)-S,I.push(z)}}return I},T})();u.Autocomplete=m,u.CompletionProvider=y,u.FilteredList=R}),ace.define("ace/marker_group",["require","exports","module"],function(e,u,M){var b=(function(){function v(x,p){p&&(this.markerType=p.markerType),this.markers=[],this.session=x,x.addDynamicMarker(this)}return v.prototype.getMarkerAtPosition=function(x){return this.markers.find(function(p){return p.range.contains(x.row,x.column)})},v.prototype.markersComparator=function(x,p){return x.range.start.row-p.range.start.row},v.prototype.setMarkers=function(x){this.markers=x.sort(this.markersComparator).slice(0,this.MAX_MARKERS),this.session._signal("changeBackMarker")},v.prototype.update=function(x,p,f,a){if(!(!this.markers||!this.markers.length))for(var s=a.firstRow,o=a.lastRow,r,n=0,i=0,h=0;h<this.markers.length;h++){var m=this.markers[h];if(!(m.range.end.row<s)&&!(m.range.start.row>o)&&(m.range.start.row===i?n++:(i=m.range.start.row,n=0),!(n>200))){var y=m.range.clipRows(s,o);if(!(y.start.row===y.end.row&&y.start.column===y.end.column)){var R=y.toScreenRange(f);if(R.isEmpty()){r=f.getNextFoldLine(y.end.row,r),r&&r.end.row>y.end.row&&(s=r.end.row);continue}this.markerType==="fullLine"?p.drawFullLineMarker(x,R,m.className,a):R.isMultiLine()?this.markerType==="line"?p.drawMultiLineMarker(x,R,m.className,a):p.drawTextMarker(x,R,m.className,a):p.drawSingleLineMarker(x,R,m.className+" ace_br15",a)}}}},v})();b.prototype.MAX_MARKERS=1e4,u.MarkerGroup=b}),ace.define("ace/autocomplete/text_completer",["require","exports","module","ace/range"],function(e,u,M){function b(f,a){var s=f.getTextRange(x.fromPoints({row:0,column:0},a));return s.split(p).length-1}function v(f,a){var s=b(f,a),o=f.getValue().split(p),r=Object.create(null),n=o[s];return o.forEach(function(i,h){if(!(!i||i===n)){var m=Math.abs(s-h),y=o.length-m;r[i]?r[i]=Math.max(y,r[i]):r[i]=y}}),r}var x=e("../range").Range,p=/[^a-zA-Z_0-9\$\-\u00C0-\u1FFF\u2C00-\uD7FF\w]+/;u.id="textCompleter",u.getCompletions=function(f,a,s,o,r){var n=v(a,s),i=Object.keys(n);r(null,i.map(function(h){return{caption:h,value:h,score:n[h],meta:"local"}}))}}),ace.define("ace/ext/language_tools",["require","exports","module","ace/snippets","ace/autocomplete","ace/config","ace/lib/lang","ace/autocomplete/util","ace/marker_group","ace/autocomplete/text_completer","ace/editor","ace/config"],function(e,u,M){var b=e("../snippets").snippetManager,v=e("../autocomplete").Autocomplete,x=e("../config"),p=e("../lib/lang"),f=e("../autocomplete/util"),a=e("../marker_group").MarkerGroup,s=e("../autocomplete/text_completer"),o={getCompletions:function(E,L,z,F,O){if(L.$mode.completer)return L.$mode.completer.getCompletions(E,L,z,F,O);var A=E.session.getState(z.row),S=L.$mode.getCompletions(A,L,z,F);S=S.map(function(N){return N.completerId=o.id,N}),O(null,S)},id:"keywordCompleter"},r=function(E){var L={};return E.replace(/\${(\d+)(:(.*?))?}/g,function(z,F,O,A){return L[F]=A||""}).replace(/\$(\d+?)/g,function(z,F){return L[F]})},n={getCompletions:function(E,L,z,F,O){var A=[],S=L.getTokenAt(z.row,z.column);S&&S.type.match(/(tag-name|tag-open|tag-whitespace|attribute-name|attribute-value)\.xml$/)?A.push("html-tag"):A=b.getActiveScopes(E);var N=b.snippetMap,W=[];A.forEach(function(V){for(var G=N[V]||[],Q=G.length;Q--;){var te=G[Q],le=te.name||te.tabTrigger;le&&W.push({caption:le,snippet:te.content,meta:te.tabTrigger&&!te.name?te.tabTrigger+"⇥ ":"snippet",completerId:n.id})}},this),O(null,W)},getDocTooltip:function(E){E.snippet&&!E.docHTML&&(E.docHTML=["<b>",p.escapeHTML(E.caption),"</b>","<hr></hr>",p.escapeHTML(r(E.snippet))].join(""))},id:"snippetCompleter"},i=[n,s,o];u.setCompleters=function(E){i.length=0,E&&i.push.apply(i,E)},u.addCompleter=function(E){i.push(E)},u.textCompleter=s,u.keyWordCompleter=o,u.snippetCompleter=n;var h={name:"expandSnippet",exec:function(E){return b.expandWithTab(E)},bindKey:"Tab"},m=function(E,L){y(L.session.$mode)},y=function(E){typeof E=="string"&&(E=x.$modes[E]),E&&(b.files||(b.files={}),R(E.$id,E.snippetFileId),E.modes&&E.modes.forEach(y))},R=function(E,L){!L||!E||b.files[E]||(b.files[E]={},x.loadModule(L,function(z){z&&(b.files[E]=z,!z.snippets&&z.snippetText&&(z.snippets=b.parseSnippetFile(z.snippetText)),b.register(z.snippets||[],z.scope),z.includeScopes&&(b.snippetMap[z.scope].includeScopes=z.includeScopes,z.includeScopes.forEach(function(F){y("ace/mode/"+F)})))}))},T=function(E){var L=E.editor,z=L.completer&&L.completer.activated;if(E.command.name==="backspace")z&&!f.getCompletionPrefix(L)&&L.completer.detach();else if(E.command.name==="insertstring"&&!z){k=E;var F=E.editor.$liveAutocompletionDelay;F?w.delay(F):I(E)}},k,w=p.delayedCall(function(){I(k)},0),I=function(E){var L=E.editor,z=f.getCompletionPrefix(L),F=E.args,O=f.triggerAutocomplete(L,F);if(z&&z.length>=L.$liveAutocompletionThreshold||O){var A=v.for(L);A.autoShown=!0,A.showPopup(L)}},D=e("../editor").Editor;e("../config").defineOptions(D.prototype,"editor",{enableBasicAutocompletion:{set:function(E){E?(v.for(this),this.completers||(this.completers=Array.isArray(E)?E:i),this.commands.addCommand(v.startCommand)):this.commands.removeCommand(v.startCommand)},value:!1},enableLiveAutocompletion:{set:function(E){E?(this.completers||(this.completers=Array.isArray(E)?E:i),this.commands.on("afterExec",T)):this.commands.off("afterExec",T)},value:!1},liveAutocompletionDelay:{initialValue:0},liveAutocompletionThreshold:{initialValue:0},enableSnippets:{set:function(E){E?(this.commands.addCommand(h),this.on("changeMode",m),m(null,this)):(this.commands.removeCommand(h),this.off("changeMode",m))},value:!1}}),u.MarkerGroup=a}),(function(){ace.require(["ace/ext/language_tools"],function(e){l&&(l.exports=e)})})()})(vc)),vc.exports}Rx();var yc={exports:{}},Zd;function Ix(){return Zd||(Zd=1,(function(l,c){ace.define("ace/ext/searchbox-css",["require","exports","module"],function(e,u,M){M.exports=`
1224
+
1225
+ /* ------------------------------------------------------------------------------------------
1226
+ * Editor Search Form
1227
+ * --------------------------------------------------------------------------------------- */
1228
+ .ace_search {
1229
+ background-color: #ddd;
1230
+ color: #666;
1231
+ border: 1px solid #cbcbcb;
1232
+ border-top: 0 none;
1233
+ overflow: hidden;
1234
+ margin: 0;
1235
+ padding: 4px 6px 0 4px;
1236
+ position: absolute;
1237
+ top: 0;
1238
+ z-index: 99;
1239
+ white-space: normal;
1240
+ }
1241
+ .ace_search.left {
1242
+ border-left: 0 none;
1243
+ border-radius: 0px 0px 5px 0px;
1244
+ left: 0;
1245
+ }
1246
+ .ace_search.right {
1247
+ border-radius: 0px 0px 0px 5px;
1248
+ border-right: 0 none;
1249
+ right: 0;
1250
+ }
1251
+
1252
+ .ace_search_form, .ace_replace_form {
1253
+ margin: 0 20px 4px 0;
1254
+ overflow: hidden;
1255
+ line-height: 1.9;
1256
+ }
1257
+ .ace_replace_form {
1258
+ margin-right: 0;
1259
+ }
1260
+ .ace_search_form.ace_nomatch {
1261
+ outline: 1px solid red;
1262
+ }
1263
+
1264
+ .ace_search_field {
1265
+ border-radius: 3px 0 0 3px;
1266
+ background-color: white;
1267
+ color: black;
1268
+ border: 1px solid #cbcbcb;
1269
+ border-right: 0 none;
1270
+ outline: 0;
1271
+ padding: 0;
1272
+ font-size: inherit;
1273
+ margin: 0;
1274
+ line-height: inherit;
1275
+ padding: 0 6px;
1276
+ min-width: 17em;
1277
+ vertical-align: top;
1278
+ min-height: 1.8em;
1279
+ box-sizing: content-box;
1280
+ }
1281
+ .ace_searchbtn {
1282
+ border: 1px solid #cbcbcb;
1283
+ line-height: inherit;
1284
+ display: inline-block;
1285
+ padding: 0 6px;
1286
+ background: #fff;
1287
+ border-right: 0 none;
1288
+ border-left: 1px solid #dcdcdc;
1289
+ cursor: pointer;
1290
+ margin: 0;
1291
+ position: relative;
1292
+ color: #666;
1293
+ }
1294
+ .ace_searchbtn:last-child {
1295
+ border-radius: 0 3px 3px 0;
1296
+ border-right: 1px solid #cbcbcb;
1297
+ }
1298
+ .ace_searchbtn:disabled {
1299
+ background: none;
1300
+ cursor: default;
1301
+ }
1302
+ .ace_searchbtn:hover {
1303
+ background-color: #eef1f6;
1304
+ }
1305
+ .ace_searchbtn.prev, .ace_searchbtn.next {
1306
+ padding: 0px 0.7em
1307
+ }
1308
+ .ace_searchbtn.prev:after, .ace_searchbtn.next:after {
1309
+ content: "";
1310
+ border: solid 2px #888;
1311
+ width: 0.5em;
1312
+ height: 0.5em;
1313
+ border-width: 2px 0 0 2px;
1314
+ display:inline-block;
1315
+ transform: rotate(-45deg);
1316
+ }
1317
+ .ace_searchbtn.next:after {
1318
+ border-width: 0 2px 2px 0 ;
1319
+ }
1320
+ .ace_searchbtn_close {
1321
+ background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAcCAYAAABRVo5BAAAAZ0lEQVR42u2SUQrAMAhDvazn8OjZBilCkYVVxiis8H4CT0VrAJb4WHT3C5xU2a2IQZXJjiQIRMdkEoJ5Q2yMqpfDIo+XY4k6h+YXOyKqTIj5REaxloNAd0xiKmAtsTHqW8sR2W5f7gCu5nWFUpVjZwAAAABJRU5ErkJggg==) no-repeat 50% 0;
1322
+ border-radius: 50%;
1323
+ border: 0 none;
1324
+ color: #656565;
1325
+ cursor: pointer;
1326
+ font: 16px/16px Arial;
1327
+ padding: 0;
1328
+ height: 14px;
1329
+ width: 14px;
1330
+ top: 9px;
1331
+ right: 7px;
1332
+ position: absolute;
1333
+ }
1334
+ .ace_searchbtn_close:hover {
1335
+ background-color: #656565;
1336
+ background-position: 50% 100%;
1337
+ color: white;
1338
+ }
1339
+
1340
+ .ace_button {
1341
+ margin-left: 2px;
1342
+ cursor: pointer;
1343
+ -webkit-user-select: none;
1344
+ -moz-user-select: none;
1345
+ -o-user-select: none;
1346
+ -ms-user-select: none;
1347
+ user-select: none;
1348
+ overflow: hidden;
1349
+ opacity: 0.7;
1350
+ border: 1px solid rgba(100,100,100,0.23);
1351
+ padding: 1px;
1352
+ box-sizing: border-box!important;
1353
+ color: black;
1354
+ }
1355
+
1356
+ .ace_button:hover {
1357
+ background-color: #eee;
1358
+ opacity:1;
1359
+ }
1360
+ .ace_button:active {
1361
+ background-color: #ddd;
1362
+ }
1363
+
1364
+ .ace_button.checked {
1365
+ border-color: #3399ff;
1366
+ opacity:1;
1367
+ }
1368
+
1369
+ .ace_search_options{
1370
+ margin-bottom: 3px;
1371
+ text-align: right;
1372
+ -webkit-user-select: none;
1373
+ -moz-user-select: none;
1374
+ -o-user-select: none;
1375
+ -ms-user-select: none;
1376
+ user-select: none;
1377
+ clear: both;
1378
+ }
1379
+
1380
+ .ace_search_counter {
1381
+ float: left;
1382
+ font-family: arial;
1383
+ padding: 0 8px;
1384
+ }`}),ace.define("ace/ext/searchbox",["require","exports","module","ace/ext/searchbox","ace/ext/searchbox","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/ext/searchbox-css","ace/keyboard/hash_handler","ace/lib/keys","ace/config"],function(e,u,M){var b=e("../lib/dom"),v=e("../lib/lang"),x=e("../lib/event"),p=e("./searchbox-css"),f=e("../keyboard/hash_handler").HashHandler,a=e("../lib/keys"),s=e("../config").nls,o=999;b.importCssString(p,"ace_searchbox",!1);var r=(function(){function h(m,y,R){this.activeInput,this.element=b.buildDom(["div",{class:"ace_search right"},["span",{action:"hide",class:"ace_searchbtn_close"}],["div",{class:"ace_search_form"},["input",{class:"ace_search_field",placeholder:s("search-box.find.placeholder","Search for"),spellcheck:"false"}],["span",{action:"findPrev",class:"ace_searchbtn prev"},"​"],["span",{action:"findNext",class:"ace_searchbtn next"},"​"],["span",{action:"findAll",class:"ace_searchbtn",title:"Alt-Enter"},s("search-box.find-all.text","All")]],["div",{class:"ace_replace_form"},["input",{class:"ace_search_field",placeholder:s("search-box.replace.placeholder","Replace with"),spellcheck:"false"}],["span",{action:"replaceAndFindNext",class:"ace_searchbtn"},s("search-box.replace-next.text","Replace")],["span",{action:"replaceAll",class:"ace_searchbtn"},s("search-box.replace-all.text","All")]],["div",{class:"ace_search_options"},["span",{action:"toggleReplace",class:"ace_button",title:s("search-box.toggle-replace.title","Toggle Replace mode"),style:"float:left;margin-top:-2px;padding:0 5px;"},"+"],["span",{class:"ace_search_counter"}],["span",{action:"toggleRegexpMode",class:"ace_button",title:s("search-box.toggle-regexp.title","RegExp Search")},".*"],["span",{action:"toggleCaseSensitive",class:"ace_button",title:s("search-box.toggle-case.title","CaseSensitive Search")},"Aa"],["span",{action:"toggleWholeWords",class:"ace_button",title:s("search-box.toggle-whole-word.title","Whole Word Search")},"\\b"],["span",{action:"searchInSelection",class:"ace_button",title:s("search-box.toggle-in-selection.title","Search In Selection")},"S"]]]),this.setSession=this.setSession.bind(this),this.$onEditorInput=this.onEditorInput.bind(this),this.$init(),this.setEditor(m),b.importCssString(p,"ace_searchbox",m.container),x.addListener(this.element,"touchstart",function(T){T.stopPropagation()},m)}return h.prototype.setEditor=function(m){m.searchBox=this,m.renderer.scroller.appendChild(this.element),this.editor=m},h.prototype.setSession=function(m){this.searchRange=null,this.$syncOptions(!0)},h.prototype.onEditorInput=function(){this.find(!1,!1,!0)},h.prototype.$initElements=function(m){this.searchBox=m.querySelector(".ace_search_form"),this.replaceBox=m.querySelector(".ace_replace_form"),this.searchOption=m.querySelector("[action=searchInSelection]"),this.replaceOption=m.querySelector("[action=toggleReplace]"),this.regExpOption=m.querySelector("[action=toggleRegexpMode]"),this.caseSensitiveOption=m.querySelector("[action=toggleCaseSensitive]"),this.wholeWordOption=m.querySelector("[action=toggleWholeWords]"),this.searchInput=this.searchBox.querySelector(".ace_search_field"),this.replaceInput=this.replaceBox.querySelector(".ace_search_field"),this.searchCounter=m.querySelector(".ace_search_counter")},h.prototype.$init=function(){var m=this.element;this.$initElements(m);var y=this;x.addListener(m,"mousedown",function(R){setTimeout(function(){y.activeInput.focus()},0),x.stopPropagation(R)}),x.addListener(m,"click",function(R){var T=R.target||R.srcElement,k=T.getAttribute("action");k&&y[k]?y[k]():y.$searchBarKb.commands[k]&&y.$searchBarKb.commands[k].exec(y),x.stopPropagation(R)}),x.addCommandKeyListener(m,function(R,T,k){var w=a.keyCodeToString(k),I=y.$searchBarKb.findKeyCommand(T,w);I&&I.exec&&(I.exec(y),x.stopEvent(R))}),this.$onChange=v.delayedCall(function(){y.find(!1,!1)}),x.addListener(this.searchInput,"input",function(){y.$onChange.schedule(20)}),x.addListener(this.searchInput,"focus",function(){y.activeInput=y.searchInput,y.searchInput.value&&y.highlight()}),x.addListener(this.replaceInput,"focus",function(){y.activeInput=y.replaceInput,y.searchInput.value&&y.highlight()})},h.prototype.setSearchRange=function(m){this.searchRange=m,m?this.searchRangeMarker=this.editor.session.addMarker(m,"ace_active-line"):this.searchRangeMarker&&(this.editor.session.removeMarker(this.searchRangeMarker),this.searchRangeMarker=null)},h.prototype.$syncOptions=function(m){b.setCssClass(this.replaceOption,"checked",this.searchRange),b.setCssClass(this.searchOption,"checked",this.searchOption.checked),this.replaceOption.textContent=this.replaceOption.checked?"-":"+",b.setCssClass(this.regExpOption,"checked",this.regExpOption.checked),b.setCssClass(this.wholeWordOption,"checked",this.wholeWordOption.checked),b.setCssClass(this.caseSensitiveOption,"checked",this.caseSensitiveOption.checked);var y=this.editor.getReadOnly();this.replaceOption.style.display=y?"none":"",this.replaceBox.style.display=this.replaceOption.checked&&!y?"":"none",this.find(!1,!1,m)},h.prototype.highlight=function(m){this.editor.session.highlight(m||this.editor.$search.$options.re),this.editor.renderer.updateBackMarkers()},h.prototype.find=function(m,y,R){if(this.editor.session){var T=this.editor.find(this.searchInput.value,{skipCurrent:m,backwards:y,wrap:!0,regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked,preventScroll:R,range:this.searchRange}),k=!T&&this.searchInput.value;b.setCssClass(this.searchBox,"ace_nomatch",k),this.editor._emit("findSearchBox",{match:!k}),this.highlight(),this.updateCounter()}},h.prototype.updateCounter=function(){var m=this.editor,y=m.$search.$options.re,R=y.unicode,T=0,k=0;if(y){var w=this.searchRange?m.session.getTextRange(this.searchRange):m.getValue();m.$search.$isMultilineSearch(m.getLastSearchOptions())&&(w=w.replace(/\r\n|\r|\n/g,`
1385
+ `),m.session.doc.$autoNewLine=`
1386
+ `);var I=m.session.doc.positionToIndex(m.selection.anchor);this.searchRange&&(I-=m.session.doc.positionToIndex(this.searchRange.start));for(var D=y.lastIndex=0,E;(E=y.exec(w))&&(T++,D=E.index,D<=I&&k++,!(T>o||!E[0]&&(y.lastIndex=D+=v.skipEmptyMatch(w,D,R),D>=w.length))););}this.searchCounter.textContent=s("search-box.search-counter","$0 of $1",[k,T>o?o+"+":T])},h.prototype.findNext=function(){this.find(!0,!1)},h.prototype.findPrev=function(){this.find(!0,!0)},h.prototype.findAll=function(){var m=this.editor.findAll(this.searchInput.value,{regExp:this.regExpOption.checked,caseSensitive:this.caseSensitiveOption.checked,wholeWord:this.wholeWordOption.checked}),y=!m&&this.searchInput.value;b.setCssClass(this.searchBox,"ace_nomatch",y),this.editor._emit("findSearchBox",{match:!y}),this.highlight(),this.hide()},h.prototype.replace=function(){this.editor.getReadOnly()||this.editor.replace(this.replaceInput.value)},h.prototype.replaceAndFindNext=function(){this.editor.getReadOnly()||(this.editor.replace(this.replaceInput.value),this.findNext())},h.prototype.replaceAll=function(){this.editor.getReadOnly()||this.editor.replaceAll(this.replaceInput.value)},h.prototype.hide=function(){this.active=!1,this.setSearchRange(null),this.editor.off("changeSession",this.setSession),this.editor.off("input",this.$onEditorInput),this.element.style.display="none",this.editor.keyBinding.removeKeyboardHandler(this.$closeSearchBarKb),this.editor.focus()},h.prototype.show=function(m,y){this.active=!0,this.editor.on("changeSession",this.setSession),this.editor.on("input",this.$onEditorInput),this.element.style.display="",this.replaceOption.checked=y,this.editor.$search.$options.regExp&&(m=v.escapeRegExp(m)),m!=null&&(this.searchInput.value=m),this.searchInput.focus(),this.searchInput.select(),this.editor.keyBinding.addKeyboardHandler(this.$closeSearchBarKb),this.$syncOptions(!0)},h.prototype.isFocused=function(){var m=document.activeElement;return m==this.searchInput||m==this.replaceInput},h})(),n=new f;n.bindKeys({"Ctrl-f|Command-f":function(h){var m=h.isReplace=!h.isReplace;h.replaceBox.style.display=m?"":"none",h.replaceOption.checked=!1,h.$syncOptions(),h.searchInput.focus()},"Ctrl-H|Command-Option-F":function(h){h.editor.getReadOnly()||(h.replaceOption.checked=!0,h.$syncOptions(),h.replaceInput.focus())},"Ctrl-G|Command-G":function(h){h.findNext()},"Ctrl-Shift-G|Command-Shift-G":function(h){h.findPrev()},esc:function(h){setTimeout(function(){h.hide()})},Return:function(h){h.activeInput==h.replaceInput&&h.replace(),h.findNext()},"Shift-Return":function(h){h.activeInput==h.replaceInput&&h.replace(),h.findPrev()},"Alt-Return":function(h){h.activeInput==h.replaceInput&&h.replaceAll(),h.findAll()},Tab:function(h){(h.activeInput==h.replaceInput?h.searchInput:h.replaceInput).focus()}}),n.addCommands([{name:"toggleRegexpMode",bindKey:{win:"Alt-R|Alt-/",mac:"Ctrl-Alt-R|Ctrl-Alt-/"},exec:function(h){h.regExpOption.checked=!h.regExpOption.checked,h.$syncOptions()}},{name:"toggleCaseSensitive",bindKey:{win:"Alt-C|Alt-I",mac:"Ctrl-Alt-R|Ctrl-Alt-I"},exec:function(h){h.caseSensitiveOption.checked=!h.caseSensitiveOption.checked,h.$syncOptions()}},{name:"toggleWholeWords",bindKey:{win:"Alt-B|Alt-W",mac:"Ctrl-Alt-B|Ctrl-Alt-W"},exec:function(h){h.wholeWordOption.checked=!h.wholeWordOption.checked,h.$syncOptions()}},{name:"toggleReplace",exec:function(h){h.replaceOption.checked=!h.replaceOption.checked,h.$syncOptions()}},{name:"searchInSelection",exec:function(h){h.searchOption.checked=!h.searchRange,h.setSearchRange(h.searchOption.checked&&h.editor.getSelectionRange()),h.$syncOptions()}}]);var i=new f([{bindKey:"Esc",name:"closeSearchBar",exec:function(h){h.searchBox.hide()}}]);r.prototype.$searchBarKb=n,r.prototype.$closeSearchBarKb=i,u.SearchBox=r,u.Search=function(h,m){var y=h.searchBox||new r(h),R=h.session.selection.getRange(),T=R.isMultiLine()?"":h.session.getTextRange(R);y.show(T,m)}}),(function(){ace.require(["ace/ext/searchbox"],function(e){l&&(l.exports=e)})})()})(yc)),yc.exports}Ix();function qp(l,c){return function(){return l.apply(c,arguments)}}const{toString:Ox}=Object.prototype,{getPrototypeOf:Tu}=Object,{iterator:tl,toStringTag:Yp}=Symbol,nl=(l=>c=>{const e=Ox.call(c);return l[e]||(l[e]=e.slice(8,-1).toLowerCase())})(Object.create(null)),fr=l=>(l=l.toLowerCase(),c=>nl(c)===l),il=l=>c=>typeof c===l,{isArray:ws}=Array,ps=il("undefined");function Js(l){return l!==null&&!ps(l)&&l.constructor!==null&&!ps(l.constructor)&&yi(l.constructor.isBuffer)&&l.constructor.isBuffer(l)}const Qp=fr("ArrayBuffer");function Nx(l){let c;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?c=ArrayBuffer.isView(l):c=l&&l.buffer&&Qp(l.buffer),c}const Dx=il("string"),yi=il("function"),Zp=il("number"),Xs=l=>l!==null&&typeof l=="object",Fx=l=>l===!0||l===!1,Ka=l=>{if(nl(l)!=="object")return!1;const c=Tu(l);return(c===null||c===Object.prototype||Object.getPrototypeOf(c)===null)&&!(Yp in l)&&!(tl in l)},Px=l=>{if(!Xs(l)||Js(l))return!1;try{return Object.keys(l).length===0&&Object.getPrototypeOf(l)===Object.prototype}catch{return!1}},Bx=fr("Date"),Wx=fr("File"),Hx=l=>!!(l&&typeof l.uri<"u"),zx=l=>l&&typeof l.getParts<"u",Ux=fr("Blob"),Vx=fr("FileList"),jx=l=>Xs(l)&&yi(l.pipe);function Kx(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Jd=Kx(),Xd=typeof Jd.FormData<"u"?Jd.FormData:void 0,Gx=l=>{let c;return l&&(Xd&&l instanceof Xd||yi(l.append)&&((c=nl(l))==="formdata"||c==="object"&&yi(l.toString)&&l.toString()==="[object FormData]"))},qx=fr("URLSearchParams"),[Yx,Qx,Zx,Jx]=["ReadableStream","Request","Response","Headers"].map(fr),Xx=l=>l.trim?l.trim():l.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ea(l,c,{allOwnKeys:e=!1}={}){if(l===null||typeof l>"u")return;let u,M;if(typeof l!="object"&&(l=[l]),ws(l))for(u=0,M=l.length;u<M;u++)c.call(null,l[u],u,l);else{if(Js(l))return;const b=e?Object.getOwnPropertyNames(l):Object.keys(l),v=b.length;let x;for(u=0;u<v;u++)x=b[u],c.call(null,l[x],x,l)}}function Jp(l,c){if(Js(l))return null;c=c.toLowerCase();const e=Object.keys(l);let u=e.length,M;for(;u-- >0;)if(M=e[u],c===M.toLowerCase())return M;return null}const Wo=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Xp=l=>!ps(l)&&l!==Wo;function du(){const{caseless:l,skipUndefined:c}=Xp(this)&&this||{},e={},u=(M,b)=>{if(b==="__proto__"||b==="constructor"||b==="prototype")return;const v=l&&Jp(e,b)||b;Ka(e[v])&&Ka(M)?e[v]=du(e[v],M):Ka(M)?e[v]=du({},M):ws(M)?e[v]=M.slice():(!c||!ps(M))&&(e[v]=M)};for(let M=0,b=arguments.length;M<b;M++)arguments[M]&&ea(arguments[M],u);return e}const e1=(l,c,e,{allOwnKeys:u}={})=>(ea(c,(M,b)=>{e&&yi(M)?Object.defineProperty(l,b,{value:qp(M,e),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(l,b,{value:M,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:u}),l),t1=l=>(l.charCodeAt(0)===65279&&(l=l.slice(1)),l),n1=(l,c,e,u)=>{l.prototype=Object.create(c.prototype,u),Object.defineProperty(l.prototype,"constructor",{value:l,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(l,"super",{value:c.prototype}),e&&Object.assign(l.prototype,e)},i1=(l,c,e,u)=>{let M,b,v;const x={};if(c=c||{},l==null)return c;do{for(M=Object.getOwnPropertyNames(l),b=M.length;b-- >0;)v=M[b],(!u||u(v,l,c))&&!x[v]&&(c[v]=l[v],x[v]=!0);l=e!==!1&&Tu(l)}while(l&&(!e||e(l,c))&&l!==Object.prototype);return c},r1=(l,c,e)=>{l=String(l),(e===void 0||e>l.length)&&(e=l.length),e-=c.length;const u=l.indexOf(c,e);return u!==-1&&u===e},o1=l=>{if(!l)return null;if(ws(l))return l;let c=l.length;if(!Zp(c))return null;const e=new Array(c);for(;c-- >0;)e[c]=l[c];return e},s1=(l=>c=>l&&c instanceof l)(typeof Uint8Array<"u"&&Tu(Uint8Array)),a1=(l,c)=>{const e=(l&&l[tl]).call(l);let u;for(;(u=e.next())&&!u.done;){const M=u.value;c.call(l,M[0],M[1])}},l1=(l,c)=>{let e;const u=[];for(;(e=l.exec(c))!==null;)u.push(e);return u},c1=fr("HTMLFormElement"),u1=l=>l.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(c,e,u){return e.toUpperCase()+u}),ef=(({hasOwnProperty:l})=>(c,e)=>l.call(c,e))(Object.prototype),h1=fr("RegExp"),eg=(l,c)=>{const e=Object.getOwnPropertyDescriptors(l),u={};ea(e,(M,b)=>{let v;(v=c(M,b,l))!==!1&&(u[b]=v||M)}),Object.defineProperties(l,u)},d1=l=>{eg(l,(c,e)=>{if(yi(l)&&["arguments","caller","callee"].indexOf(e)!==-1)return!1;const u=l[e];if(yi(u)){if(c.enumerable=!1,"writable"in c){c.writable=!1;return}c.set||(c.set=()=>{throw Error("Can not rewrite read-only method '"+e+"'")})}})},f1=(l,c)=>{const e={},u=M=>{M.forEach(b=>{e[b]=!0})};return ws(l)?u(l):u(String(l).split(c)),e},p1=()=>{},g1=(l,c)=>l!=null&&Number.isFinite(l=+l)?l:c;function m1(l){return!!(l&&yi(l.append)&&l[Yp]==="FormData"&&l[tl])}const v1=l=>{const c=new Array(10),e=(u,M)=>{if(Xs(u)){if(c.indexOf(u)>=0)return;if(Js(u))return u;if(!("toJSON"in u)){c[M]=u;const b=ws(u)?[]:{};return ea(u,(v,x)=>{const p=e(v,M+1);!ps(p)&&(b[x]=p)}),c[M]=void 0,b}}return u};return e(l,0)},y1=fr("AsyncFunction"),w1=l=>l&&(Xs(l)||yi(l))&&yi(l.then)&&yi(l.catch),tg=((l,c)=>l?setImmediate:c?((e,u)=>(Wo.addEventListener("message",({source:M,data:b})=>{M===Wo&&b===e&&u.length&&u.shift()()},!1),M=>{u.push(M),Wo.postMessage(e,"*")}))(`axios@${Math.random()}`,[]):e=>setTimeout(e))(typeof setImmediate=="function",yi(Wo.postMessage)),b1=typeof queueMicrotask<"u"?queueMicrotask.bind(Wo):typeof process<"u"&&process.nextTick||tg,x1=l=>l!=null&&yi(l[tl]),Ce={isArray:ws,isArrayBuffer:Qp,isBuffer:Js,isFormData:Gx,isArrayBufferView:Nx,isString:Dx,isNumber:Zp,isBoolean:Fx,isObject:Xs,isPlainObject:Ka,isEmptyObject:Px,isReadableStream:Yx,isRequest:Qx,isResponse:Zx,isHeaders:Jx,isUndefined:ps,isDate:Bx,isFile:Wx,isReactNativeBlob:Hx,isReactNative:zx,isBlob:Ux,isRegExp:h1,isFunction:yi,isStream:jx,isURLSearchParams:qx,isTypedArray:s1,isFileList:Vx,forEach:ea,merge:du,extend:e1,trim:Xx,stripBOM:t1,inherits:n1,toFlatObject:i1,kindOf:nl,kindOfTest:fr,endsWith:r1,toArray:o1,forEachEntry:a1,matchAll:l1,isHTMLForm:c1,hasOwnProperty:ef,hasOwnProp:ef,reduceDescriptors:eg,freezeMethods:d1,toObjectSet:f1,toCamelCase:u1,noop:p1,toFiniteNumber:g1,findKey:Jp,global:Wo,isContextDefined:Xp,isSpecCompliantForm:m1,toJSONObject:v1,isAsyncFn:y1,isThenable:w1,setImmediate:tg,asap:b1,isIterable:x1};let dt=class ng extends Error{static from(c,e,u,M,b,v){const x=new ng(c.message,e||c.code,u,M,b);return x.cause=c,x.name=c.name,c.status!=null&&x.status==null&&(x.status=c.status),v&&Object.assign(x,v),x}constructor(c,e,u,M,b){super(c),Object.defineProperty(this,"message",{value:c,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,e&&(this.code=e),u&&(this.config=u),M&&(this.request=M),b&&(this.response=b,this.status=b.status)}toJSON(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:Ce.toJSONObject(this.config),code:this.code,status:this.status}}};dt.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";dt.ERR_BAD_OPTION="ERR_BAD_OPTION";dt.ECONNABORTED="ECONNABORTED";dt.ETIMEDOUT="ETIMEDOUT";dt.ERR_NETWORK="ERR_NETWORK";dt.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";dt.ERR_DEPRECATED="ERR_DEPRECATED";dt.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";dt.ERR_BAD_REQUEST="ERR_BAD_REQUEST";dt.ERR_CANCELED="ERR_CANCELED";dt.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";dt.ERR_INVALID_URL="ERR_INVALID_URL";const S1=null;function fu(l){return Ce.isPlainObject(l)||Ce.isArray(l)}function ig(l){return Ce.endsWith(l,"[]")?l.slice(0,-2):l}function wc(l,c,e){return l?l.concat(c).map(function(u,M){return u=ig(u),!e&&M?"["+u+"]":u}).join(e?".":""):c}function C1(l){return Ce.isArray(l)&&!l.some(fu)}const k1=Ce.toFlatObject(Ce,{},null,function(l){return/^is[A-Z]/.test(l)});function rl(l,c,e){if(!Ce.isObject(l))throw new TypeError("target must be an object");c=c||new FormData,e=Ce.toFlatObject(e,{metaTokens:!0,dots:!1,indexes:!1},!1,function(r,n){return!Ce.isUndefined(n[r])});const u=e.metaTokens,M=e.visitor||f,b=e.dots,v=e.indexes,x=(e.Blob||typeof Blob<"u"&&Blob)&&Ce.isSpecCompliantForm(c);if(!Ce.isFunction(M))throw new TypeError("visitor must be a function");function p(r){if(r===null)return"";if(Ce.isDate(r))return r.toISOString();if(Ce.isBoolean(r))return r.toString();if(!x&&Ce.isBlob(r))throw new dt("Blob is not supported. Use a Buffer instead.");return Ce.isArrayBuffer(r)||Ce.isTypedArray(r)?x&&typeof Blob=="function"?new Blob([r]):Buffer.from(r):r}function f(r,n,i){let h=r;if(Ce.isReactNative(c)&&Ce.isReactNativeBlob(r))return c.append(wc(i,n,b),p(r)),!1;if(r&&!i&&typeof r=="object"){if(Ce.endsWith(n,"{}"))n=u?n:n.slice(0,-2),r=JSON.stringify(r);else if(Ce.isArray(r)&&C1(r)||(Ce.isFileList(r)||Ce.endsWith(n,"[]"))&&(h=Ce.toArray(r)))return n=ig(n),h.forEach(function(m,y){!(Ce.isUndefined(m)||m===null)&&c.append(v===!0?wc([n],y,b):v===null?n:n+"[]",p(m))}),!1}return fu(r)?!0:(c.append(wc(i,n,b),p(r)),!1)}const a=[],s=Object.assign(k1,{defaultVisitor:f,convertValue:p,isVisitable:fu});function o(r,n){if(!Ce.isUndefined(r)){if(a.indexOf(r)!==-1)throw Error("Circular reference detected in "+n.join("."));a.push(r),Ce.forEach(r,function(i,h){(!(Ce.isUndefined(i)||i===null)&&M.call(c,i,Ce.isString(h)?h.trim():h,n,s))===!0&&o(i,n?n.concat(h):[h])}),a.pop()}}if(!Ce.isObject(l))throw new TypeError("data must be an object");return o(l),c}function tf(l){const c={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(l).replace(/[!'()~]|%20|%00/g,function(e){return c[e]})}function Lu(l,c){this._pairs=[],l&&rl(l,this,c)}const rg=Lu.prototype;rg.append=function(l,c){this._pairs.push([l,c])};rg.toString=function(l){const c=l?function(e){return l.call(this,e,tf)}:tf;return this._pairs.map(function(e){return c(e[0])+"="+c(e[1])},"").join("&")};function _1(l){return encodeURIComponent(l).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function og(l,c,e){if(!c)return l;const u=e&&e.encode||_1,M=Ce.isFunction(e)?{serialize:e}:e,b=M&&M.serialize;let v;if(b?v=b(c,M):v=Ce.isURLSearchParams(c)?c.toString():new Lu(c,M).toString(u),v){const x=l.indexOf("#");x!==-1&&(l=l.slice(0,x)),l+=(l.indexOf("?")===-1?"?":"&")+v}return l}class nf{constructor(){this.handlers=[]}use(c,e,u){return this.handlers.push({fulfilled:c,rejected:e,synchronous:u?u.synchronous:!1,runWhen:u?u.runWhen:null}),this.handlers.length-1}eject(c){this.handlers[c]&&(this.handlers[c]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(c){Ce.forEach(this.handlers,function(e){e!==null&&c(e)})}}const Eu={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0},A1=typeof URLSearchParams<"u"?URLSearchParams:Lu,M1=typeof FormData<"u"?FormData:null,$1=typeof Blob<"u"?Blob:null,T1={isBrowser:!0,classes:{URLSearchParams:A1,FormData:M1,Blob:$1},protocols:["http","https","file","blob","url","data"]},Ru=typeof window<"u"&&typeof document<"u",pu=typeof navigator=="object"&&navigator||void 0,L1=Ru&&(!pu||["ReactNative","NativeScript","NS"].indexOf(pu.product)<0),E1=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",R1=Ru&&window.location.href||"http://localhost",I1=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ru,hasStandardBrowserEnv:L1,hasStandardBrowserWebWorkerEnv:E1,navigator:pu,origin:R1},Symbol.toStringTag,{value:"Module"})),ti={...I1,...T1};function O1(l,c){return rl(l,new ti.classes.URLSearchParams,{visitor:function(e,u,M,b){return ti.isNode&&Ce.isBuffer(e)?(this.append(u,e.toString("base64")),!1):b.defaultVisitor.apply(this,arguments)},...c})}function N1(l){return Ce.matchAll(/\w+|\[(\w*)]/g,l).map(c=>c[0]==="[]"?"":c[1]||c[0])}function D1(l){const c={},e=Object.keys(l);let u;const M=e.length;let b;for(u=0;u<M;u++)b=e[u],c[b]=l[b];return c}function sg(l){function c(e,u,M,b){let v=e[b++];if(v==="__proto__")return!0;const x=Number.isFinite(+v),p=b>=e.length;return v=!v&&Ce.isArray(M)?M.length:v,p?(Ce.hasOwnProp(M,v)?M[v]=[M[v],u]:M[v]=u,!x):((!M[v]||!Ce.isObject(M[v]))&&(M[v]=[]),c(e,u,M[v],b)&&Ce.isArray(M[v])&&(M[v]=D1(M[v])),!x)}if(Ce.isFormData(l)&&Ce.isFunction(l.entries)){const e={};return Ce.forEachEntry(l,(u,M)=>{c(N1(u),M,e,0)}),e}return null}function F1(l,c,e){if(Ce.isString(l))try{return(c||JSON.parse)(l),Ce.trim(l)}catch(u){if(u.name!=="SyntaxError")throw u}return(e||JSON.stringify)(l)}const ta={transitional:Eu,adapter:["xhr","http","fetch"],transformRequest:[function(l,c){const e=c.getContentType()||"",u=e.indexOf("application/json")>-1,M=Ce.isObject(l);if(M&&Ce.isHTMLForm(l)&&(l=new FormData(l)),Ce.isFormData(l))return u?JSON.stringify(sg(l)):l;if(Ce.isArrayBuffer(l)||Ce.isBuffer(l)||Ce.isStream(l)||Ce.isFile(l)||Ce.isBlob(l)||Ce.isReadableStream(l))return l;if(Ce.isArrayBufferView(l))return l.buffer;if(Ce.isURLSearchParams(l))return c.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),l.toString();let b;if(M){if(e.indexOf("application/x-www-form-urlencoded")>-1)return O1(l,this.formSerializer).toString();if((b=Ce.isFileList(l))||e.indexOf("multipart/form-data")>-1){const v=this.env&&this.env.FormData;return rl(b?{"files[]":l}:l,v&&new v,this.formSerializer)}}return M||u?(c.setContentType("application/json",!1),F1(l)):l}],transformResponse:[function(l){const c=this.transitional||ta.transitional,e=c&&c.forcedJSONParsing,u=this.responseType==="json";if(Ce.isResponse(l)||Ce.isReadableStream(l))return l;if(l&&Ce.isString(l)&&(e&&!this.responseType||u)){const M=!(c&&c.silentJSONParsing)&&u;try{return JSON.parse(l,this.parseReviver)}catch(b){if(M)throw b.name==="SyntaxError"?dt.from(b,dt.ERR_BAD_RESPONSE,this,null,this.response):b}}return l}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ti.classes.FormData,Blob:ti.classes.Blob},validateStatus:function(l){return l>=200&&l<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};Ce.forEach(["delete","get","head","post","put","patch"],l=>{ta.headers[l]={}});const P1=Ce.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),B1=l=>{const c={};let e,u,M;return l&&l.split(`
1387
+ `).forEach(function(b){M=b.indexOf(":"),e=b.substring(0,M).trim().toLowerCase(),u=b.substring(M+1).trim(),!(!e||c[e]&&P1[e])&&(e==="set-cookie"?c[e]?c[e].push(u):c[e]=[u]:c[e]=c[e]?c[e]+", "+u:u)}),c},rf=Symbol("internals");function Ws(l){return l&&String(l).trim().toLowerCase()}function Ga(l){return l===!1||l==null?l:Ce.isArray(l)?l.map(Ga):String(l).replace(/[\r\n]+$/,"")}function W1(l){const c=Object.create(null),e=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let u;for(;u=e.exec(l);)c[u[1]]=u[2];return c}const H1=l=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(l.trim());function bc(l,c,e,u,M){if(Ce.isFunction(u))return u.call(this,c,e);if(M&&(c=e),!!Ce.isString(c)){if(Ce.isString(u))return c.indexOf(u)!==-1;if(Ce.isRegExp(u))return u.test(c)}}function z1(l){return l.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(c,e,u)=>e.toUpperCase()+u)}function U1(l,c){const e=Ce.toCamelCase(" "+c);["get","set","has"].forEach(u=>{Object.defineProperty(l,u+e,{value:function(M,b,v){return this[u].call(this,c,M,b,v)},configurable:!0})})}let wi=class{constructor(l){l&&this.set(l)}set(l,c,e){const u=this;function M(v,x,p){const f=Ws(x);if(!f)throw new Error("header name must be a non-empty string");const a=Ce.findKey(u,f);(!a||u[a]===void 0||p===!0||p===void 0&&u[a]!==!1)&&(u[a||x]=Ga(v))}const b=(v,x)=>Ce.forEach(v,(p,f)=>M(p,f,x));if(Ce.isPlainObject(l)||l instanceof this.constructor)b(l,c);else if(Ce.isString(l)&&(l=l.trim())&&!H1(l))b(B1(l),c);else if(Ce.isObject(l)&&Ce.isIterable(l)){let v={},x,p;for(const f of l){if(!Ce.isArray(f))throw TypeError("Object iterator must return a key-value pair");v[p=f[0]]=(x=v[p])?Ce.isArray(x)?[...x,f[1]]:[x,f[1]]:f[1]}b(v,c)}else l!=null&&M(c,l,e);return this}get(l,c){if(l=Ws(l),l){const e=Ce.findKey(this,l);if(e){const u=this[e];if(!c)return u;if(c===!0)return W1(u);if(Ce.isFunction(c))return c.call(this,u,e);if(Ce.isRegExp(c))return c.exec(u);throw new TypeError("parser must be boolean|regexp|function")}}}has(l,c){if(l=Ws(l),l){const e=Ce.findKey(this,l);return!!(e&&this[e]!==void 0&&(!c||bc(this,this[e],e,c)))}return!1}delete(l,c){const e=this;let u=!1;function M(b){if(b=Ws(b),b){const v=Ce.findKey(e,b);v&&(!c||bc(e,e[v],v,c))&&(delete e[v],u=!0)}}return Ce.isArray(l)?l.forEach(M):M(l),u}clear(l){const c=Object.keys(this);let e=c.length,u=!1;for(;e--;){const M=c[e];(!l||bc(this,this[M],M,l,!0))&&(delete this[M],u=!0)}return u}normalize(l){const c=this,e={};return Ce.forEach(this,(u,M)=>{const b=Ce.findKey(e,M);if(b){c[b]=Ga(u),delete c[M];return}const v=l?z1(M):String(M).trim();v!==M&&delete c[M],c[v]=Ga(u),e[v]=!0}),this}concat(...l){return this.constructor.concat(this,...l)}toJSON(l){const c=Object.create(null);return Ce.forEach(this,(e,u)=>{e!=null&&e!==!1&&(c[u]=l&&Ce.isArray(e)?e.join(", "):e)}),c}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([l,c])=>l+": "+c).join(`
1388
+ `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(l){return l instanceof this?l:new this(l)}static concat(l,...c){const e=new this(l);return c.forEach(u=>e.set(u)),e}static accessor(l){const c=(this[rf]=this[rf]={accessors:{}}).accessors,e=this.prototype;function u(M){const b=Ws(M);c[b]||(U1(e,M),c[b]=!0)}return Ce.isArray(l)?l.forEach(u):u(l),this}};wi.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);Ce.reduceDescriptors(wi.prototype,({value:l},c)=>{let e=c[0].toUpperCase()+c.slice(1);return{get:()=>l,set(u){this[e]=u}}});Ce.freezeMethods(wi);function xc(l,c){const e=this||ta,u=c||e,M=wi.from(u.headers);let b=u.data;return Ce.forEach(l,function(v){b=v.call(e,b,M.normalize(),c?c.status:void 0)}),M.normalize(),b}function ag(l){return!!(l&&l.__CANCEL__)}let na=class extends dt{constructor(l,c,e){super(l??"canceled",dt.ERR_CANCELED,c,e),this.name="CanceledError",this.__CANCEL__=!0}};function lg(l,c,e){const u=e.config.validateStatus;!e.status||!u||u(e.status)?l(e):c(new dt("Request failed with status code "+e.status,[dt.ERR_BAD_REQUEST,dt.ERR_BAD_RESPONSE][Math.floor(e.status/100)-4],e.config,e.request,e))}function V1(l){const c=/^([-+\w]{1,25})(:?\/\/|:)/.exec(l);return c&&c[1]||""}function j1(l,c){l=l||10;const e=new Array(l),u=new Array(l);let M=0,b=0,v;return c=c!==void 0?c:1e3,function(x){const p=Date.now(),f=u[b];v||(v=p),e[M]=x,u[M]=p;let a=b,s=0;for(;a!==M;)s+=e[a++],a=a%l;if(M=(M+1)%l,M===b&&(b=(b+1)%l),p-v<c)return;const o=f&&p-f;return o?Math.round(s*1e3/o):void 0}}function K1(l,c){let e=0,u=1e3/c,M,b;const v=(x,p=Date.now())=>{e=p,M=null,b&&(clearTimeout(b),b=null),l(...x)};return[(...x)=>{const p=Date.now(),f=p-e;f>=u?v(x,p):(M=x,b||(b=setTimeout(()=>{b=null,v(M)},u-f)))},()=>M&&v(M)]}const Qa=(l,c,e=3)=>{let u=0;const M=j1(50,250);return K1(b=>{const v=b.loaded,x=b.lengthComputable?b.total:void 0,p=v-u,f=M(p),a=v<=x;u=v;const s={loaded:v,total:x,progress:x?v/x:void 0,bytes:p,rate:f||void 0,estimated:f&&x&&a?(x-v)/f:void 0,event:b,lengthComputable:x!=null,[c?"download":"upload"]:!0};l(s)},e)},of=(l,c)=>{const e=l!=null;return[u=>c[0]({lengthComputable:e,total:l,loaded:u}),c[1]]},sf=l=>(...c)=>Ce.asap(()=>l(...c)),G1=ti.hasStandardBrowserEnv?((l,c)=>e=>(e=new URL(e,ti.origin),l.protocol===e.protocol&&l.host===e.host&&(c||l.port===e.port)))(new URL(ti.origin),ti.navigator&&/(msie|trident)/i.test(ti.navigator.userAgent)):()=>!0,q1=ti.hasStandardBrowserEnv?{write(l,c,e,u,M,b,v){if(typeof document>"u")return;const x=[`${l}=${encodeURIComponent(c)}`];Ce.isNumber(e)&&x.push(`expires=${new Date(e).toUTCString()}`),Ce.isString(u)&&x.push(`path=${u}`),Ce.isString(M)&&x.push(`domain=${M}`),b===!0&&x.push("secure"),Ce.isString(v)&&x.push(`SameSite=${v}`),document.cookie=x.join("; ")},read(l){if(typeof document>"u")return null;const c=document.cookie.match(new RegExp("(?:^|; )"+l+"=([^;]*)"));return c?decodeURIComponent(c[1]):null},remove(l){this.write(l,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function Y1(l){return typeof l!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(l)}function Q1(l,c){return c?l.replace(/\/?\/$/,"")+"/"+c.replace(/^\/+/,""):l}function cg(l,c,e){let u=!Y1(c);return l&&(u||e==!1)?Q1(l,c):c}const af=l=>l instanceof wi?{...l}:l;function Uo(l,c){c=c||{};const e={};function u(f,a,s,o){return Ce.isPlainObject(f)&&Ce.isPlainObject(a)?Ce.merge.call({caseless:o},f,a):Ce.isPlainObject(a)?Ce.merge({},a):Ce.isArray(a)?a.slice():a}function M(f,a,s,o){if(Ce.isUndefined(a)){if(!Ce.isUndefined(f))return u(void 0,f,s,o)}else return u(f,a,s,o)}function b(f,a){if(!Ce.isUndefined(a))return u(void 0,a)}function v(f,a){if(Ce.isUndefined(a)){if(!Ce.isUndefined(f))return u(void 0,f)}else return u(void 0,a)}function x(f,a,s){if(s in c)return u(f,a);if(s in l)return u(void 0,f)}const p={url:b,method:b,data:b,baseURL:v,transformRequest:v,transformResponse:v,paramsSerializer:v,timeout:v,timeoutMessage:v,withCredentials:v,withXSRFToken:v,adapter:v,responseType:v,xsrfCookieName:v,xsrfHeaderName:v,onUploadProgress:v,onDownloadProgress:v,decompress:v,maxContentLength:v,maxBodyLength:v,beforeRedirect:v,transport:v,httpAgent:v,httpsAgent:v,cancelToken:v,socketPath:v,responseEncoding:v,validateStatus:x,headers:(f,a,s)=>M(af(f),af(a),s,!0)};return Ce.forEach(Object.keys({...l,...c}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const a=Ce.hasOwnProp(p,f)?p[f]:M,s=a(l[f],c[f],f);Ce.isUndefined(s)&&a!==x||(e[f]=s)}),e}const ug=l=>{const c=Uo({},l);let{data:e,withXSRFToken:u,xsrfHeaderName:M,xsrfCookieName:b,headers:v,auth:x}=c;if(c.headers=v=wi.from(v),c.url=og(cg(c.baseURL,c.url,c.allowAbsoluteUrls),l.params,l.paramsSerializer),x&&v.set("Authorization","Basic "+btoa((x.username||"")+":"+(x.password?unescape(encodeURIComponent(x.password)):""))),Ce.isFormData(e)){if(ti.hasStandardBrowserEnv||ti.hasStandardBrowserWebWorkerEnv)v.setContentType(void 0);else if(Ce.isFunction(e.getHeaders)){const p=e.getHeaders(),f=["content-type","content-length"];Object.entries(p).forEach(([a,s])=>{f.includes(a.toLowerCase())&&v.set(a,s)})}}if(ti.hasStandardBrowserEnv&&(u&&Ce.isFunction(u)&&(u=u(c)),u||u!==!1&&G1(c.url))){const p=M&&b&&q1.read(b);p&&v.set(M,p)}return c},Z1=typeof XMLHttpRequest<"u",J1=Z1&&function(l){return new Promise(function(c,e){const u=ug(l);let M=u.data;const b=wi.from(u.headers).normalize();let{responseType:v,onUploadProgress:x,onDownloadProgress:p}=u,f,a,s,o,r;function n(){o&&o(),r&&r(),u.cancelToken&&u.cancelToken.unsubscribe(f),u.signal&&u.signal.removeEventListener("abort",f)}let i=new XMLHttpRequest;i.open(u.method.toUpperCase(),u.url,!0),i.timeout=u.timeout;function h(){if(!i)return;const y=wi.from("getAllResponseHeaders"in i&&i.getAllResponseHeaders()),R={data:!v||v==="text"||v==="json"?i.responseText:i.response,status:i.status,statusText:i.statusText,headers:y,config:l,request:i};lg(function(T){c(T),n()},function(T){e(T),n()},R),i=null}"onloadend"in i?i.onloadend=h:i.onreadystatechange=function(){!i||i.readyState!==4||i.status===0&&!(i.responseURL&&i.responseURL.indexOf("file:")===0)||setTimeout(h)},i.onabort=function(){i&&(e(new dt("Request aborted",dt.ECONNABORTED,l,i)),i=null)},i.onerror=function(y){const R=y&&y.message?y.message:"Network Error",T=new dt(R,dt.ERR_NETWORK,l,i);T.event=y||null,e(T),i=null},i.ontimeout=function(){let y=u.timeout?"timeout of "+u.timeout+"ms exceeded":"timeout exceeded";const R=u.transitional||Eu;u.timeoutErrorMessage&&(y=u.timeoutErrorMessage),e(new dt(y,R.clarifyTimeoutError?dt.ETIMEDOUT:dt.ECONNABORTED,l,i)),i=null},M===void 0&&b.setContentType(null),"setRequestHeader"in i&&Ce.forEach(b.toJSON(),function(y,R){i.setRequestHeader(R,y)}),Ce.isUndefined(u.withCredentials)||(i.withCredentials=!!u.withCredentials),v&&v!=="json"&&(i.responseType=u.responseType),p&&([s,r]=Qa(p,!0),i.addEventListener("progress",s)),x&&i.upload&&([a,o]=Qa(x),i.upload.addEventListener("progress",a),i.upload.addEventListener("loadend",o)),(u.cancelToken||u.signal)&&(f=y=>{i&&(e(!y||y.type?new na(null,l,i):y),i.abort(),i=null)},u.cancelToken&&u.cancelToken.subscribe(f),u.signal&&(u.signal.aborted?f():u.signal.addEventListener("abort",f)));const m=V1(u.url);if(m&&ti.protocols.indexOf(m)===-1){e(new dt("Unsupported protocol "+m+":",dt.ERR_BAD_REQUEST,l));return}i.send(M||null)})},X1=(l,c)=>{const{length:e}=l=l?l.filter(Boolean):[];if(c||e){let u=new AbortController,M;const b=function(f){if(!M){M=!0,x();const a=f instanceof Error?f:this.reason;u.abort(a instanceof dt?a:new na(a instanceof Error?a.message:a))}};let v=c&&setTimeout(()=>{v=null,b(new dt(`timeout of ${c}ms exceeded`,dt.ETIMEDOUT))},c);const x=()=>{l&&(v&&clearTimeout(v),v=null,l.forEach(f=>{f.unsubscribe?f.unsubscribe(b):f.removeEventListener("abort",b)}),l=null)};l.forEach(f=>f.addEventListener("abort",b));const{signal:p}=u;return p.unsubscribe=()=>Ce.asap(x),p}},eS=function*(l,c){let e=l.byteLength;if(e<c){yield l;return}let u=0,M;for(;u<e;)M=u+c,yield l.slice(u,M),u=M},tS=async function*(l,c){for await(const e of nS(l))yield*eS(e,c)},nS=async function*(l){if(l[Symbol.asyncIterator]){yield*l;return}const c=l.getReader();try{for(;;){const{done:e,value:u}=await c.read();if(e)break;yield u}}finally{await c.cancel()}},lf=(l,c,e,u)=>{const M=tS(l,c);let b=0,v,x=p=>{v||(v=!0,u&&u(p))};return new ReadableStream({async pull(p){try{const{done:f,value:a}=await M.next();if(f){x(),p.close();return}let s=a.byteLength;if(e){let o=b+=s;e(o)}p.enqueue(new Uint8Array(a))}catch(f){throw x(f),f}},cancel(p){return x(p),M.return()}},{highWaterMark:2})},cf=64*1024,{isFunction:Ba}=Ce,iS=(({Request:l,Response:c})=>({Request:l,Response:c}))(Ce.global),{ReadableStream:uf,TextEncoder:hf}=Ce.global,df=(l,...c)=>{try{return!!l(...c)}catch{return!1}},rS=l=>{l=Ce.merge.call({skipUndefined:!0},iS,l);const{fetch:c,Request:e,Response:u}=l,M=c?Ba(c):typeof fetch=="function",b=Ba(e),v=Ba(u);if(!M)return!1;const x=M&&Ba(uf),p=M&&(typeof hf=="function"?(n=>i=>n.encode(i))(new hf):async n=>new Uint8Array(await new e(n).arrayBuffer())),f=b&&x&&df(()=>{let n=!1;const i=new uf,h=new e(ti.origin,{body:i,method:"POST",get duplex(){return n=!0,"half"}}).headers.has("Content-Type");return i.cancel(),n&&!h}),a=v&&x&&df(()=>Ce.isReadableStream(new u("").body)),s={stream:a&&(n=>n.body)};M&&["text","arrayBuffer","blob","formData","stream"].forEach(n=>{!s[n]&&(s[n]=(i,h)=>{let m=i&&i[n];if(m)return m.call(i);throw new dt(`Response type '${n}' is not supported`,dt.ERR_NOT_SUPPORT,h)})});const o=async n=>{if(n==null)return 0;if(Ce.isBlob(n))return n.size;if(Ce.isSpecCompliantForm(n))return(await new e(ti.origin,{method:"POST",body:n}).arrayBuffer()).byteLength;if(Ce.isArrayBufferView(n)||Ce.isArrayBuffer(n))return n.byteLength;if(Ce.isURLSearchParams(n)&&(n=n+""),Ce.isString(n))return(await p(n)).byteLength},r=async(n,i)=>Ce.toFiniteNumber(n.getContentLength())??o(i);return async n=>{let{url:i,method:h,data:m,signal:y,cancelToken:R,timeout:T,onDownloadProgress:k,onUploadProgress:w,responseType:I,headers:D,withCredentials:E="same-origin",fetchOptions:L}=ug(n),z=c||fetch;I=I?(I+"").toLowerCase():"text";let F=X1([y,R&&R.toAbortSignal()],T),O=null;const A=F&&F.unsubscribe&&(()=>{F.unsubscribe()});let S;try{if(w&&f&&h!=="get"&&h!=="head"&&(S=await r(D,m))!==0){let te=new e(i,{method:"POST",body:m,duplex:"half"}),le;if(Ce.isFormData(m)&&(le=te.headers.get("content-type"))&&D.setContentType(le),te.body){const[ne,ue]=of(S,Qa(sf(w)));m=lf(te.body,cf,ne,ue)}}Ce.isString(E)||(E=E?"include":"omit");const N=b&&"credentials"in e.prototype,W={...L,signal:F,method:h.toUpperCase(),headers:D.normalize().toJSON(),body:m,duplex:"half",credentials:N?E:void 0};O=b&&new e(i,W);let V=await(b?z(O,L):z(i,W));const G=a&&(I==="stream"||I==="response");if(a&&(k||G&&A)){const te={};["status","statusText","headers"].forEach(he=>{te[he]=V[he]});const le=Ce.toFiniteNumber(V.headers.get("content-length")),[ne,ue]=k&&of(le,Qa(sf(k),!0))||[];V=new u(lf(V.body,cf,ne,()=>{ue&&ue(),A&&A()}),te)}I=I||"text";let Q=await s[Ce.findKey(s,I)||"text"](V,n);return!G&&A&&A(),await new Promise((te,le)=>{lg(te,le,{data:Q,headers:wi.from(V.headers),status:V.status,statusText:V.statusText,config:n,request:O})})}catch(N){throw A&&A(),N&&N.name==="TypeError"&&/Load failed|fetch/i.test(N.message)?Object.assign(new dt("Network Error",dt.ERR_NETWORK,n,O,N&&N.response),{cause:N.cause||N}):dt.from(N,N&&N.code,n,O,N&&N.response)}}},oS=new Map,hg=l=>{let c=l&&l.env||{};const{fetch:e,Request:u,Response:M}=c,b=[u,M,e];let v=b.length,x=v,p,f,a=oS;for(;x--;)p=b[x],f=a.get(p),f===void 0&&a.set(p,f=x?new Map:rS(c)),a=f;return f};hg();const Iu={http:S1,xhr:J1,fetch:{get:hg}};Ce.forEach(Iu,(l,c)=>{if(l){try{Object.defineProperty(l,"name",{value:c})}catch{}Object.defineProperty(l,"adapterName",{value:c})}});const ff=l=>`- ${l}`,sS=l=>Ce.isFunction(l)||l===null||l===!1;function aS(l,c){l=Ce.isArray(l)?l:[l];const{length:e}=l;let u,M;const b={};for(let v=0;v<e;v++){u=l[v];let x;if(M=u,!sS(u)&&(M=Iu[(x=String(u)).toLowerCase()],M===void 0))throw new dt(`Unknown adapter '${x}'`);if(M&&(Ce.isFunction(M)||(M=M.get(c))))break;b[x||"#"+v]=M}if(!M){const v=Object.entries(b).map(([p,f])=>`adapter ${p} `+(f===!1?"is not supported by the environment":"is not available in the build"));let x=e?v.length>1?`since :
1389
+ `+v.map(ff).join(`
1390
+ `):" "+ff(v[0]):"as no adapter specified";throw new dt("There is no suitable adapter to dispatch the request "+x,"ERR_NOT_SUPPORT")}return M}const dg={getAdapter:aS,adapters:Iu};function Sc(l){if(l.cancelToken&&l.cancelToken.throwIfRequested(),l.signal&&l.signal.aborted)throw new na(null,l)}function pf(l){return Sc(l),l.headers=wi.from(l.headers),l.data=xc.call(l,l.transformRequest),["post","put","patch"].indexOf(l.method)!==-1&&l.headers.setContentType("application/x-www-form-urlencoded",!1),dg.getAdapter(l.adapter||ta.adapter,l)(l).then(function(c){return Sc(l),c.data=xc.call(l,l.transformResponse,c),c.headers=wi.from(c.headers),c},function(c){return ag(c)||(Sc(l),c&&c.response&&(c.response.data=xc.call(l,l.transformResponse,c.response),c.response.headers=wi.from(c.response.headers))),Promise.reject(c)})}const fg="1.14.0",ol={};["object","boolean","number","function","string","symbol"].forEach((l,c)=>{ol[l]=function(e){return typeof e===l||"a"+(c<1?"n ":" ")+l}});const gf={};ol.transitional=function(l,c,e){function u(M,b){return"[Axios v"+fg+"] Transitional option '"+M+"'"+b+(e?". "+e:"")}return(M,b,v)=>{if(l===!1)throw new dt(u(b," has been removed"+(c?" in "+c:"")),dt.ERR_DEPRECATED);return c&&!gf[b]&&(gf[b]=!0,console.warn(u(b," has been deprecated since v"+c+" and will be removed in the near future"))),l?l(M,b,v):!0}};ol.spelling=function(l){return(c,e)=>(console.warn(`${e} is likely a misspelling of ${l}`),!0)};function lS(l,c,e){if(typeof l!="object")throw new dt("options must be an object",dt.ERR_BAD_OPTION_VALUE);const u=Object.keys(l);let M=u.length;for(;M-- >0;){const b=u[M],v=c[b];if(v){const x=l[b],p=x===void 0||v(x,b,l);if(p!==!0)throw new dt("option "+b+" must be "+p,dt.ERR_BAD_OPTION_VALUE);continue}if(e!==!0)throw new dt("Unknown option "+b,dt.ERR_BAD_OPTION)}}const qa={assertOptions:lS,validators:ol},Ki=qa.validators;let Ho=class{constructor(l){this.defaults=l||{},this.interceptors={request:new nf,response:new nf}}async request(l,c){try{return await this._request(l,c)}catch(e){if(e instanceof Error){let u={};Error.captureStackTrace?Error.captureStackTrace(u):u=new Error;const M=u.stack?u.stack.replace(/^.+\n/,""):"";try{e.stack?M&&!String(e.stack).endsWith(M.replace(/^.+\n.+\n/,""))&&(e.stack+=`
1391
+ `+M):e.stack=M}catch{}}throw e}}_request(l,c){typeof l=="string"?(c=c||{},c.url=l):c=l||{},c=Uo(this.defaults,c);const{transitional:e,paramsSerializer:u,headers:M}=c;e!==void 0&&qa.assertOptions(e,{silentJSONParsing:Ki.transitional(Ki.boolean),forcedJSONParsing:Ki.transitional(Ki.boolean),clarifyTimeoutError:Ki.transitional(Ki.boolean),legacyInterceptorReqResOrdering:Ki.transitional(Ki.boolean)},!1),u!=null&&(Ce.isFunction(u)?c.paramsSerializer={serialize:u}:qa.assertOptions(u,{encode:Ki.function,serialize:Ki.function},!0)),c.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?c.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:c.allowAbsoluteUrls=!0),qa.assertOptions(c,{baseUrl:Ki.spelling("baseURL"),withXsrfToken:Ki.spelling("withXSRFToken")},!0),c.method=(c.method||this.defaults.method||"get").toLowerCase();let b=M&&Ce.merge(M.common,M[c.method]);M&&Ce.forEach(["delete","get","head","post","put","patch","common"],r=>{delete M[r]}),c.headers=wi.concat(b,M);const v=[];let x=!0;this.interceptors.request.forEach(function(r){if(typeof r.runWhen=="function"&&r.runWhen(c)===!1)return;x=x&&r.synchronous;const n=c.transitional||Eu;n&&n.legacyInterceptorReqResOrdering?v.unshift(r.fulfilled,r.rejected):v.push(r.fulfilled,r.rejected)});const p=[];this.interceptors.response.forEach(function(r){p.push(r.fulfilled,r.rejected)});let f,a=0,s;if(!x){const r=[pf.bind(this),void 0];for(r.unshift(...v),r.push(...p),s=r.length,f=Promise.resolve(c);a<s;)f=f.then(r[a++],r[a++]);return f}s=v.length;let o=c;for(;a<s;){const r=v[a++],n=v[a++];try{o=r(o)}catch(i){n.call(this,i);break}}try{f=pf.call(this,o)}catch(r){return Promise.reject(r)}for(a=0,s=p.length;a<s;)f=f.then(p[a++],p[a++]);return f}getUri(l){l=Uo(this.defaults,l);const c=cg(l.baseURL,l.url,l.allowAbsoluteUrls);return og(c,l.params,l.paramsSerializer)}};Ce.forEach(["delete","get","head","options"],function(l){Ho.prototype[l]=function(c,e){return this.request(Uo(e||{},{method:l,url:c,data:(e||{}).data}))}});Ce.forEach(["post","put","patch"],function(l){function c(e){return function(u,M,b){return this.request(Uo(b||{},{method:l,headers:e?{"Content-Type":"multipart/form-data"}:{},url:u,data:M}))}}Ho.prototype[l]=c(),Ho.prototype[l+"Form"]=c(!0)});let cS=class pg{constructor(c){if(typeof c!="function")throw new TypeError("executor must be a function.");let e;this.promise=new Promise(function(M){e=M});const u=this;this.promise.then(M=>{if(!u._listeners)return;let b=u._listeners.length;for(;b-- >0;)u._listeners[b](M);u._listeners=null}),this.promise.then=M=>{let b;const v=new Promise(x=>{u.subscribe(x),b=x}).then(M);return v.cancel=function(){u.unsubscribe(b)},v},c(function(M,b,v){u.reason||(u.reason=new na(M,b,v),e(u.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(c){if(this.reason){c(this.reason);return}this._listeners?this._listeners.push(c):this._listeners=[c]}unsubscribe(c){if(!this._listeners)return;const e=this._listeners.indexOf(c);e!==-1&&this._listeners.splice(e,1)}toAbortSignal(){const c=new AbortController,e=u=>{c.abort(u)};return this.subscribe(e),c.signal.unsubscribe=()=>this.unsubscribe(e),c.signal}static source(){let c;return{token:new pg(function(e){c=e}),cancel:c}}};function uS(l){return function(c){return l.apply(null,c)}}function hS(l){return Ce.isObject(l)&&l.isAxiosError===!0}const gu={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(gu).forEach(([l,c])=>{gu[c]=l});function gg(l){const c=new Ho(l),e=qp(Ho.prototype.request,c);return Ce.extend(e,Ho.prototype,c,{allOwnKeys:!0}),Ce.extend(e,c,null,{allOwnKeys:!0}),e.create=function(u){return gg(Uo(l,u))},e}const xn=gg(ta);xn.Axios=Ho;xn.CanceledError=na;xn.CancelToken=cS;xn.isCancel=ag;xn.VERSION=fg;xn.toFormData=rl;xn.AxiosError=dt;xn.Cancel=xn.CanceledError;xn.all=function(l){return Promise.all(l)};xn.spread=uS;xn.isAxiosError=hS;xn.mergeConfig=Uo;xn.AxiosHeaders=wi;xn.formToJSON=l=>sg(Ce.isHTMLForm(l)?new FormData(l):l);xn.getAdapter=dg.getAdapter;xn.HttpStatusCode=gu;xn.default=xn;const{Axios:mA,AxiosError:vA,CanceledError:yA,isCancel:wA,CancelToken:bA,VERSION:xA,all:SA,Cancel:CA,isAxiosError:kA,spread:_A,toFormData:AA,AxiosHeaders:MA,HttpStatusCode:$A,formToJSON:TA,getAdapter:LA,mergeConfig:EA}=xn,Ou=xn.create({baseURL:location.origin,timeout:6e4,params:{}});Ou.interceptors.response.use(l=>l,l=>{if(l.response){if(l.response.status===401&&OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity,!0).then(function(u){u&&OpenC3Auth.setTokens()}),l.response.config.headers["Ignore-Errors"]&&l.response.config.headers["Ignore-Errors"].includes(l.response.status.toString()))return Promise.reject(l);let c=`HTTP ${l.response.status} - `;l.response?.statusText&&(c+=`${l.response.statusText} `),l.response?.config?.data&&(c+=`${l.response.config.data} `),l.response?.data?.message?c+=`${l.response.data.message}`:l.response?.data?.exception?c+=`${l.response.data.exception}`:l.response?.data?.error?.message?(l.response.data.error.class&&(c+=`${l.response.data.error.class} `),c+=`${l.response.data.error.message}`):c+=`${l.response?.data}`;const{$cosmosNotify:e}=window;throw e&&e.serious({title:"Network error",body:c}),l}else throw l});const Wa=async function(l,c,{data:e,params:u={},headers:M,noAuth:b=!1,noScope:v=!1,onUploadProgress:x=!1}={}){if(!b){try{await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)&&OpenC3Auth.setTokens()}catch{OpenC3Auth.login()}M.Authorization=localStorage.openc3Token}return M.manual=!0,!v&&!u.scope&&(u.scope=window.openc3Scope),Ou({method:l,url:c,data:e,params:u,headers:M,onUploadProgress:x})},mu={Accept:"application/json"},mf={...mu,"Content-Type":"application/json"},mg={get:function(l,{params:c,headers:e=mu,noScope:u,noAuth:M,onUploadProgress:b}={}){return Wa("get",l,{params:c,headers:e,noScope:u,noAuth:M,onUploadProgress:b})},put:function(l,{data:c,params:e,headers:u=mf,noScope:M,noAuth:b,onUploadProgress:v}={}){return Wa("put",l,{data:c,params:e,headers:u,noScope:M,noAuth:b,onUploadProgress:v})},post:function(l,{data:c,params:e,headers:u=mf,noScope:M,noAuth:b,onUploadProgress:v}={}){return Wa("post",l,{data:c,params:e,headers:u,noScope:M,noAuth:b,onUploadProgress:v})},delete:function(l,{params:c,headers:e=mu,noScope:u,noAuth:M,onUploadProgress:b}={}){return Wa("delete",l,{params:c,headers:e,noScope:u,noAuth:M,onUploadProgress:b})}};let sl=()=>({emit(l,...c){for(let e=this.events[l]||[],u=0,M=e.length;u<M;u++)e[u](...c)},events:{},on(l,c){return(this.events[l]||=[]).push(c),()=>{this.events[l]=this.events[l]?.filter(e=>c!==e)}}});class ia extends Error{constructor(c,e){c instanceof Error?(super(c.message),this.cause=c):super(c),this.reason=e,this.name="ReasonError"}}class Nu extends ia{constructor(c){super("Rejected",c),this.name="SubscriptionRejectedError"}}class dS extends ia{constructor(c){super(c||"Timed out to receive subscription ack"),this.name="SubscriptionTimeoutError"}}class ur extends ia{constructor(c,e){e?super(c,e):super("Disconnected",c),this.name="DisconnectedError"}}class fS extends ur{constructor(c){super(c,"stale_connection"),this.name="StaleConnectionError"}}function vg(l){return l?`{${Object.keys(l).sort().filter(c=>l[c]!==void 0).map(c=>{let e=JSON.stringify(l[c]);return`${JSON.stringify(c)}:${e}`}).join(",")}}`:""}class pS{constructor(c){this.channel=c,this.listeners=[]}watch(){this.listeners.push(this.channel.on("presence",c=>{if(c.type==="info"){this._state||(this._state=this.stateFromInfo(c));return}this._state&&(c.type==="join"?this._state[c.id]=c.info:c.type==="leave"&&delete this._state[c.id])}))}reset(){delete this._state}dispose(){delete this._info,delete this._state,this.listeners.forEach(c=>c()),this.listeners.length=0}async join(c,e){if(!this._info)return this._info={id:String(c),info:e},this.channel.perform("$presence:join",this._info)}async leave(){if(!this._info)return;let c=await this.channel.perform("$presence:leave");return delete this._info,c}async info(){return this._state?this._state:(this._promise||(this._promise=this._sync()),await this._promise,this._state)}async _sync(){this.watch();try{let c=await this.channel.perform("$presence:info",{});return this._state=this.stateFromInfo(c),this._state}finally{delete this._promise}}stateFromInfo(c){return c.records.reduce((e,{id:u,info:M})=>(e[u]=M,e),{})}}const No=Symbol("state");class yg{constructor(c={}){this.emitter=sl(),this.params=Object.freeze(c),this.presence=new pS(this),this.initialConnect=!0,this[No]="idle"}get identifier(){return this._identifier?this._identifier:(this._identifier=vg({channel:this.channelId,...this.params}),this._identifier)}get channelId(){return this.constructor.identifier}get state(){return this[No]}attached(c){if(this.receiver){if(this.receiver!==c)throw Error("Already connected to a different receiver");return!1}return this.receiver=c,!0}connecting(){this[No]="connecting"}connected(){if(this.state==="connected"||this.state==="closed")return;this[No]="connected";let c=!1;this.initialConnect?(this.initialConnect=!1,this.emit("connect",{reconnect:!1,restored:c})):this.emit("connect",{reconnect:!0,restored:c})}restored(){if(this.state==="connected")throw Error("Already connected");this[No]="connected";let c=!0,e=!0;this.initialConnect=!1,this.emit("connect",{reconnect:e,restored:c})}disconnected(c){this.state==="disconnected"||this.state==="closed"||(this[No]="disconnected",this.presence.reset(),this.emit("disconnect",c))}closed(c){this.state!=="closed"&&(this[No]="closed",delete this.receiver,this.initialConnect=!0,this.presence.dispose(),this.emit("close",c))}disconnect(){this.state==="idle"||this.state==="closed"||this.receiver.unsubscribe(this)}async perform(c,e){if(this.state==="idle"||this.state==="closed")throw Error("Channel is not subscribed");return this.receiver.perform(this.identifier,c,e)}async send(c){return this.perform(void 0,c)}async whisper(c){try{await this.perform("$whisper",c)}catch(e){let u=this.receiver?this.receiver.logger:null;u&&u.warn("whisper failed: ",e)}}receive(c,e){this.emit("message",c,e)}on(c,e){return this.emitter.on(c,e)}once(c,e){let u=this.emitter.on(c,(...M)=>{u(),e(...M)});return u}emit(c,...e){return this.emitter.emit(c,...e)}ensureSubscribed(){return this.state==="connected"?Promise.resolve():this.state==="closed"?Promise.reject(Error("Channel is unsubscribed")):this.pendingSubscribe()}pendingSubscribe(){return this._pendingSubscribe?this._pendingSubscribe:(this._pendingSubscribe=new Promise((c,e)=>{let u=[()=>delete this._pendingSubscribe];u.push(this.on("connect",()=>{u.forEach(M=>M()),c()})),u.push(this.on("close",M=>{u.forEach(b=>b()),e(M||new ia("Channel was disconnected before subscribing","canceled"))}))}),this._pendingSubscribe)}}class gS{constructor(c){this.id=c,this.intent="unsubscribed",this.state="idle",this.channels=[],this.disposed=!1,this._pendings=[]}add(c){this.channels.includes(c)||this.channels.push(c)}remove(c){let e=this.channels.indexOf(c);e>-1&&this.channels.splice(e,1)}notify(c,...e){this.state=c==="restored"?"connected":c,e.length===1?this.channels.forEach(u=>u[c](e[0])):this.channels.forEach(u=>u[c]())}pending(c){this._checkIntent(c);let e=this._pendings[0];return!e||e.intent!==c?Promise.resolve():e.promise}ensureResubscribed(){this.disposed||(this.intent=void 0,this.ensureSubscribed())}ensureSubscribed(){if(this.intent!=="subscribed"){if(this.disposed)throw Error("Subscription is disposed");this.intent="subscribed",!this._mergeWithPending("unsubscribed")&&this.subscriber(this)}}maybeUnsubscribe(){this.disposed||this.intent==="unsubscribed"||this.channels.length>0||(this.intent="unsubscribed",this._mergeWithPending("subscribed"))||this.unsubscriber(this)}async acquire(c){this._checkIntent(c);let e,u={promise:new Promise(b=>{e=b}),intent:c,release:()=>{this._pendings.splice(this._pendings.indexOf(u),1),e(u)},canceled:!1,acquired:!1},M=this._pendingTop;return this._pendings.push(u),M&&await M.promise,this.gvl&&await this.gvl.acquire(u,c),u.acquired=!0,u}close(c){this.disposed=!0,this.intent=void 0,this.notify("closed",c)}_checkIntent(c){if(!(c==="unsubscribed"||c==="subscribed"))throw Error(`Unknown subscription intent: ${c}`)}get _pendingTop(){return this._pendings.length?this._pendings[this._pendings.length-1]:void 0}_mergeWithPending(c){let e=this._pendingTop;return!e||e.acquired||e.intent!==c?!1:(this._pendings.pop(),e.canceled=!0,!0)}}class mS{constructor(){this.queue=[]}async acquire(c,e){e==="subscribed"&&(this.queue.push(c.promise.then(()=>{this.queue.splice(this.queue.indexOf(c),1)})),this.queue.length>1&&await this.queue[this.queue.length-2])}}class vS{constructor(c){c.concurrentSubscribes===!1&&(this.glv=new mS),this._subscriptions={},this._localToRemote={}}all(){return Object.values(this._subscriptions)}get(c){return this._subscriptions[c]}create(c,{subscribe:e,unsubscribe:u}){let M=this._subscriptions[c]=new gS(c);return M.remoteId=this._localToRemote[c],M.subscriber=e,M.unsubscriber=u,M.gvl=this.glv,M}remove(c){delete this._subscriptions[c],delete this._localToRemote[c]}storeRemoteId(c,e){this._localToRemote[c]=e;let u=this.get(c);u&&(u.remoteId=e)}}class yS{constructor(c={}){this.subscriptions=new vS(c),this._pendingMessages=[],this._remoteToLocal={}}subscribe(c,e){this._remoteToLocal[e]=c,this.subscriptions.storeRemoteId(c,e),this.flush(e)}unsubscribe(c){let e=this.subscriptions.get(c);if(!e)return;let u=e.remoteId;u&&delete this._remoteToLocal[u],this.subscriptions.remove(c)}transmit(c,e,u){let M=this._remoteToLocal[c];if(!M){this._pendingMessages.push([c,e,u]);return}let b=this.subscriptions.get(M);b&&b.channels.forEach(v=>{v.receive(e,u)})}notify(c,e,u){let M=this._remoteToLocal[c];if(!M)return;let b=this.subscriptions.get(M);b&&b.channels.forEach(v=>v.emit(e,u))}close(){this._pendingMessages.length=0}get size(){return this.channels.length}get channels(){return this.subscriptions.all().flatMap(c=>c.channels)}flush(c){let e=[];for(let u of this._pendingMessages)u[0]===c?this.transmit(u[0],u[1],u[2]):e.push(u);this._pendingMessages=e}}const vf={debug:0,info:1,warn:2,error:3};class wg{constructor(c){this.level=c||"warn"}log(c,e,u){vf[c]<vf[this.level]||this.writeLogEntry(c,e,u)}writeLogEntry(){throw Error("Not implemented")}debug(c,e){this.log("debug",c,e)}info(c,e){this.log("info",c,e)}warn(c,e){this.log("warn",c,e)}error(c,e){this.log("error",c,e)}}class ra extends wg{writeLogEntry(){}}class wS{encode(c){return JSON.stringify(c)}decode(c){try{return JSON.parse(c)}catch{}}}let bS=0;class bg{constructor(c={}){let{logger:e}=c;this.logger=e||new ra,this.pendingSubscriptions={},this.pendingUnsubscriptions={},this.subscribeCooldownInterval=c.subscribeCooldownInterval||250,this.subscribeRetryInterval=c.subscribeRetryInterval||5e3}attached(c){this.cable=c}subscribe(c,e){let u={channel:c};e&&Object.assign(u,e);let M=vg(u);if(this.pendingUnsubscriptions[M]){let v=this.subscribeCooldownInterval*1.5;return this.logger.debug(`unsubscribed recently, cooldown for ${v}`,M),new Promise(x=>{setTimeout(()=>{x(this.subscribe(c,e))},v)})}if(this.pendingSubscriptions[M])return this.logger.warn("subscription is already pending, skipping",M),Promise.reject(Error("Already subscribing"));let b=this.subscribeRetryInterval;return new Promise((v,x)=>{let p=++bS;this.pendingSubscriptions[M]={resolve:v,reject:x,id:p},this.cable.send(this.buildSubscribeRequest(M)),this.maybeRetrySubscribe(p,M,b)})}buildSubscribeRequest(c){return{command:"subscribe",identifier:c}}maybeRetrySubscribe(c,e,u){setTimeout(()=>{let M=this.pendingSubscriptions[e];M&&M.id===c&&(this.logger.warn(`no subscription ack received in ${u}ms, retrying subscribe`,e),this.cable.send(this.buildSubscribeRequest(e)),this.maybeExpireSubscribe(c,e,u))},u)}maybeExpireSubscribe(c,e,u){setTimeout(()=>{let M=this.pendingSubscriptions[e];M&&M.id===c&&(delete this.pendingSubscriptions[e],M.reject(new dS(`Haven't received subscription ack in ${u*2}ms for ${e}`)))},u)}unsubscribe(c){return this.cable.send({command:"unsubscribe",identifier:c}),this.pendingUnsubscriptions[c]=!0,setTimeout(()=>{delete this.pendingUnsubscriptions[c]},this.subscribeCooldownInterval),Promise.resolve()}perform(c,e,u){return e==="$whisper"?this.whisper(c,u):(u||(u={}),u.action||=e,this.cable.send({command:"message",identifier:c,data:JSON.stringify(u)}),Promise.resolve())}whisper(c,e){return this.cable.send({command:"whisper",identifier:c,data:e}),Promise.resolve()}receive(c){if(typeof c!="object"){this.logger.error("unsupported message format",{message:c});return}let{type:e,identifier:u,message:M,reason:b,reconnect:v}=c;if(e==="ping")return this.cable.keepalive(c.message);if(this.cable.keepalive(),e==="welcome"){let x=c.sid;return x&&this.cable.setSessionId(x),this.cable.connected()}if(e==="disconnect"){let x=new ur(b);this.reset(x),v===!1?this.cable.closed(x):this.cable.disconnected(x);return}if(e==="confirm_subscription"){let x=this.pendingSubscriptions[u];if(!x){this.logger.error("subscription not found, unsubscribing",{type:e,identifier:u}),this.unsubscribe(u);return}return delete this.pendingSubscriptions[u],x.resolve(u)}if(e==="reject_subscription"){let x=this.pendingSubscriptions[u];return x?(delete this.pendingSubscriptions[u],x.reject(new Nu)):this.logger.error("subscription not found",{type:e,identifier:u})}if(M)return{identifier:u,message:M};this.logger.warn(`unknown message type: ${e}`,{message:c})}reset(c){for(let e in this.pendingSubscriptions)this.pendingSubscriptions[e].reject(c);this.pendingSubscriptions={}}recoverableClosure(){return!1}}const yf=()=>Date.now()/1e3|0;class xS extends bg{constructor(c={}){super(c),this.streamsPositions={},this.subscriptionStreams={},this.pendingHistory={},this.pendingPresence={},this.presenceInfo={},this.restoreSince=c.historyTimestamp,this.disableSessionRecovery=c.disableSessionRecovery,this.restoreSince===void 0&&(this.restoreSince=yf()),this.sessionId=void 0,this.sendPongs=c.pongs}reset(c){for(let e in this.pendingPresence)this.pendingPresence[e].reject(c);return this.pendingPresence={},super.reset()}receive(c){if(typeof c!="object"){this.logger.error("unsupported message format",{message:c});return}let{type:e,identifier:u,message:M}=c;if(e==="disconnect")return delete this.sessionId,this.cable.setSessionId(""),super.receive(c);if(e==="reject_subscription")return super.receive(c);if(e==="confirm_subscription")return this.subscriptionStreams[u]||(this.subscriptionStreams[u]=new Set),super.receive(c);if(e==="ping")return this.restoreSince&&(this.restoreSince=yf()),this.sendPongs&&this.sendPong(),this.cable.keepalive(c.message);if(this.cable.keepalive(),e==="confirm_history"){this.logger.debug("history result received",c),this.cable.notify("history_received",u);return}if(e==="reject_history"){this.logger.warn("failed to retrieve history",c),this.cable.notify("history_not_found",u);return}if(e==="welcome"){if(this.disableSessionRecovery||(this.sessionId=c.sid,this.sessionId&&this.cable.setSessionId(this.sessionId)),c.restored){let b=c.restored_ids||Object.keys(this.subscriptionStreams);for(let v of b)this.cable.send({identifier:v,command:"history",history:this.historyRequestFor(v)}),this.presenceInfo[v]&&this.cable.send({identifier:v,command:"join",presence:this.presenceInfo[v]});return this.cable.restored(b)}return this.cable.connected(this.sessionId)}if(e==="presence"){let b=M.type;if(b==="info"){let v=this.pendingPresence[u];v&&(delete this.pendingPresence[u],v.resolve(M))}else if(b==="error"){let v=this.pendingPresence[u];v&&(delete this.pendingPresence[u],v.reject(new Error("failed to retrieve presence")))}return{type:e,identifier:u,message:M}}if(M){let b=this.trackStreamPosition(u,c.stream_id,c.epoch,c.offset);return{identifier:u,message:M,meta:b}}this.logger.warn(`unknown message type: ${e}`,{message:c})}perform(c,e,u){switch(e){case"$presence:join":return this.join(c,u);case"$presence:leave":return this.leave(c,u);case"$presence:info":return this.presence(c,u)}return super.perform(c,e,u)}unsubscribe(c){return delete this.presenceInfo[c],super.unsubscribe(c)}buildSubscribeRequest(c){let e=super.buildSubscribeRequest(c),u=this.historyRequestFor(c);u&&(e.history=u,this.pendingHistory[c]=!0);let M=this.presenceInfo[c];return M&&(e.presence=M),e}recoverableClosure(){return!!this.sessionId}historyRequestFor(c){let e={},u=!1;if(this.subscriptionStreams[c])for(let M of this.subscriptionStreams[c]){let b=this.streamsPositions[M];b&&(u=!0,e[M]=b)}if(!(!u&&!this.restoreSince))return{since:this.restoreSince,streams:e}}trackStreamPosition(c,e,u,M){if(!(!e||!u))return this.subscriptionStreams[c]||(this.subscriptionStreams[c]=new Set),this.subscriptionStreams[c].add(e),this.streamsPositions[e]={epoch:u,offset:M},{stream:e,epoch:u,offset:M}}async sendPong(){await new Promise(c=>setTimeout(c,0)),this.cable.state==="connected"&&this.cable.send({command:"pong"})}async join(c,e){return this.presenceInfo[c]=e,this.cable.send({command:"join",identifier:c,presence:e}),Promise.resolve()}async leave(c,e){return delete this.presenceInfo[c],this.cable.send({command:"leave",identifier:c,presence:e}),Promise.resolve()}presence(c,e){return this.pendingPresence[c]?(this.logger.warn("presence is already pending, skipping",c),Promise.reject(Error("presence request is already pending"))):new Promise((u,M)=>{this.pendingPresence[c]={resolve:u,reject:M},this.cable.send({command:"presence",identifier:c,data:e})})}}class SS extends ia{constructor(){super("No connection","closed"),this.name="NoConnectionError"}}class xg extends yg{static identifier="__ghost__";constructor(c,e){super(e),this.channelId=c}set channelId(c){this._channelId=c}get channelId(){return this._channelId}}const CS="$pubsub";class wf extends yg{static identifier=CS;async perform(c,e){if(c.startsWith("$"))return super.perform(c,e);throw Error("not implemented")}}const Do=Symbol("state");let kS=class{constructor({transport:l,protocol:c,encoder:e,logger:u,lazy:M,hubOptions:b,performFailures:v,transportConfigurator:x}){this.emitter=sl(),this.transport=l,this.encoder=e,this.logger=u||new ra,this.protocol=c,this.performFailures=v||"throw",this.protocol.attached(this),this.hub=new yS(b||{}),this[Do]="idle",this.handleClose=this.handleClose.bind(this),this.handleIncoming=this.handleIncoming.bind(this),this.transportConfigurator=x,this.transport.on("close",this.handleClose),this.transport.on("data",this.handleIncoming),this.initialConnect=!0,this.recovering=!1,M===!1&&this.connect().catch(()=>{})}get state(){return this[Do]}async connect(){if(this.state==="connected")return Promise.resolve();if(this.state==="connecting")return this.pendingConnect();let l=this.state==="idle";this[Do]="connecting";let c=this.pendingConnect();this.logger.debug("connecting");try{this.transportConfigurator&&await this.transportConfigurator(this.transport,{initial:l}),await this.transport.open()}catch(e){this.handleClose(e)}return c}setSessionId(l){this.sessionId=l,this.transport.setParam("sid",l)}connected(){if(this.state==="connected")return;this.logger.info("connected"),this[Do]="connected",this.recovering&&this.hub.subscriptions.all().forEach(c=>c.notify("disconnected",new ur("recovery_failed"))),this.hub.subscriptions.all().forEach(c=>this._resubscribe(c));let l=!1;this.recovering=!1,this.initialConnect?(this.initialConnect=!1,this.emit("connect",{reconnect:!1,restored:l})):this.emit("connect",{reconnect:!0,restored:l})}restored(l){this.logger.info("connection recovered",{remoteIds:l}),this[Do]="connected",this.hub.subscriptions.all().forEach(u=>{l&&u.remoteId&&l.includes(u.remoteId)?u.notify("restored"):(u.notify("disconnected",new ur("recovery_failed")),this._resubscribe(u))});let c=!this.initialConnect,e=!0;this.recovering=!1,this.initialConnect=!1,this.emit("connect",{reconnect:c,restored:e})}notify(l,c,e){c&&typeof c!="string"&&(e=c,c=void 0),c?this.hub.notify(c,"info",{type:l,data:e}):this.emit("info",{type:l,data:e})}handleClose(l){this.logger.debug("transport closed",{error:l}),this.disconnected(new ur(l,"transport_closed"))}disconnected(l){(this.state==="connected"||this.state==="connecting")&&(this.logger.info("disconnected",{reason:l}),this[Do]="disconnected",this.recovering=this.protocol.recoverableClosure(l),this.recovering?this.hub.subscriptions.all().forEach(c=>c.notify("connecting")):this.hub.subscriptions.all().forEach(c=>{c.notify("disconnected",l)}),this.protocol.reset(l),this.hub.close(),this.transport.close(),this.emit("disconnect",l))}closed(l){if(this.state==="closed"||this.state==="idle")return;let c;l&&(c=l instanceof ur?l:new ur(l,void 0)),this.logger.info("closed",{reason:l||"user"}),this[Do]="closed";let e=c||new ur("cable_closed");this.hub.subscriptions.all().forEach(u=>u.notify("disconnected",e)),this.hub.close(),this.protocol.reset(),this.transport.close(),this.initialConnect=!0,this.emit("close",c)}disconnect(){this.closed()}handleIncoming(l){if(this.state==="closed"||this.state==="idle")return;let c=this.encoder.decode(l);if(c===void 0){this.logger.error("failed to decode message",{message:l});return}this.logger.debug("incoming data",c);let e=this.protocol.receive(c);if(e){this.logger.debug("processed incoming message",e);let{type:u,identifier:M,message:b,meta:v}=e;u?this.hub.notify(M,u,b):this.hub.transmit(M,b,v)}}send(l){if(this.state==="closed")throw Error("Cable is closed");let c=this.encoder.encode(l);if(c===void 0){this.logger.error("failed to encode message",{message:l});return}this.logger.debug("outgoing message",l),this.transport.send(c)}keepalive(l){this.emit("keepalive",l)}streamFrom(l){let c=new wf({stream_name:l});return this.subscribe(c)}streamFromSigned(l){let c=new wf({signed_stream_name:l});return this.subscribe(c)}subscribeTo(l,c){let e,u;return typeof l=="string"&&(u=l,l=xg),e=u?new l(u,c):new l(c),this.subscribe(e)}subscribe(l){if(!l.attached(this))return l;let c=l.identifier;l.connecting();let e=this.hub.subscriptions.get(c)||this.hub.subscriptions.create(c,{subscribe:u=>this._subscribe(u,l.channelId,l.params),unsubscribe:u=>this._unsubscribe(u)});return e.add(l),e.intent==="subscribed"&&e.state==="connected"&&l.connected(),e.ensureSubscribed(),l}async _resubscribe(l){l.intent!=="subscribed"||!l.channels[0]||(l.notify("connecting"),l.ensureResubscribed())}async _subscribe(l,c,e){let u=l.id;if(this.state==="idle"&&this.connect().catch(()=>{}),this.state!=="connected"){this.logger.debug("cancel subscribe, no connection",{identifier:u});return}this.logger.debug("acquiring subscribe lock",{identifier:u});let M=await l.acquire("subscribed");if(M.canceled){this.logger.debug("subscribe lock has been canceled",{identifier:u}),M.release();return}if(this.logger.debug("subscribe lock has been acquired",{identifier:u}),l.intent!=="subscribed"){this.logger.debug("cancel subscribe request, already unsubscribed"),M.release();return}if(this.state!=="connected"){this.logger.debug("cancel subscribe, no connection",{identifier:u}),M.release();return}if(l.state==="connected"){this.logger.debug("already connected, skip subscribe command",{identifier:u}),l.notify("connected"),M.release();return}let b={identifier:c,params:e};this.logger.debug("subscribing",b);try{let v=await this.protocol.subscribe(c,e);this.hub.subscribe(u,v),this.logger.debug("subscribed",{...b,remoteId:v}),l.notify("connected")}catch(v){if(v){if(v instanceof Nu&&this.logger.warn("rejected",b),v instanceof ur){this.logger.debug("disconnected during subscription; will retry on connect",b),M.release();return}this.logger.error("failed to subscribe",{error:v,...b})}l.close(v),this.hub.unsubscribe(u)}M.release()}unsubscribe(l){let c=l.identifier,e=this.hub.subscriptions.get(c);if(!e)throw Error(`Subscription not found: ${c}`);e.remove(l),l.closed(),e.maybeUnsubscribe()}async _unsubscribe(l){let c=l.id;this.logger.debug("acquiring unsubscribe lock",{identifier:c});let e=await l.acquire("unsubscribed");if(e.canceled){this.logger.debug("unsubscribe lock has been canceled",{identifier:c}),e.release();return}if(this.logger.debug("unsubscribe lock has been acquired",{identifier:c}),l.intent!=="unsubscribed"){this.logger.debug("cancel unsubscribe, no longer needed",{identifier:c,intent:l.intent}),e.release();return}if(l.state==="disconnected"||l.state==="closed"){this.logger.debug(`already ${l.state} connected, skip unsubscribe command`,{identifier:c}),e.release();return}let u=l.remoteId;if(this.logger.debug("unsubscribing...",{remoteId:u}),this.state!=="connected"){this.logger.debug("unsubscribe skipped (cable is not connected)",{id:c}),l.close(),this.hub.unsubscribe(c),e.release();return}try{await this.protocol.unsubscribe(u),this.logger.debug("unsubscribed remotely",{id:c})}catch(M){M&&(M instanceof ur?this.logger.debug("cable disconnected during the unsubscribe command execution",{id:c,error:M}):this.logger.error("unsubscribe failed",{id:c,error:M}))}l.intent==="unsubscribed"?(l.close(),this.hub.unsubscribe(c)):l.state="closed",e.release()}async perform(l,c,e){if(this.performFailures==="throw")return this._perform(l,c,e);try{return await this._perform(l,c,e)}catch(u){this.performFailures==="warn"&&this.logger.warn("perform failed",{error:u});return}}async _perform(l,c,e){if(this.state==="connecting"&&await this.pendingConnect(),this.state==="closed"||this.state==="disconnected")throw new SS;let u=this.hub.subscriptions.get(l);if(!u)throw Error(`Subscription not found: ${l}`);if(await u.pending("subscribed"),u.intent!=="subscribed")throw Error(`Subscription is closed: ${l}`);let M=u.remoteId,b={id:M,action:c,payload:e};this.logger.debug("perform",b);try{let v=await this.protocol.perform(M,c,e);return v&&this.logger.debug("perform result",{message:v,request:b}),v}catch(v){throw this.logger.error("perform failed",{error:v,request:b}),v}}on(l,c){return this.emitter.on(l,c)}once(l,c){let e=this.emitter.on(l,(...u)=>{e(),c(...u)});return e}emit(l,...c){return this.emitter.emit(l,...c)}pendingConnect(){return this._pendingConnect?this._pendingConnect:(this._pendingConnect=new Promise((l,c)=>{let e=[()=>delete this._pendingConnect];e.push(this.on("connect",()=>{e.forEach(u=>u()),l()})),e.push(this.on("close",u=>{e.forEach(M=>M()),c(u)})),e.push(this.on("disconnect",u=>{e.forEach(M=>M()),c(u)}))}),this._pendingConnect)}};const _S={maxMissingPings:2,maxReconnectAttempts:1/0},us=()=>Date.now(),Sg=(l,c)=>{c=c||{};let{backoffRate:e,jitterRatio:u,maxInterval:M}=c;return e=e||2,u===void 0&&(u=.5),b=>{let v=l*e**b,x=v*e,p=v+(x-v)*Math.random(),f=2*(Math.random()-.5)*u;return p=p*(1+f),M&&M<p&&(p=M),p}};let Cg=class{constructor({pingInterval:l,...c}){if(this.pingInterval=l,!this.pingInterval)throw Error(`Incorrect pingInterval is provided: ${l}`);if(c=Object.assign({},_S,c),this.strategy=c.reconnectStrategy,!this.strategy)throw Error("Reconnect strategy must be provided");this.maxMissingPings=c.maxMissingPings,this.maxReconnectAttempts=c.maxReconnectAttempts,this.logger=c.logger||new ra,this.state="pending_connect",this.attempts=0,this.disconnectedAt=us()}watch(l){this.target=l,this.initListeners()}reconnectNow(){return this.state==="connected"||this.state==="pending_connect"||this.state==="closed"?!1:(this.cancelReconnect(),this.state="pending_connect",this.target.connect().catch(l=>{this.logger.info("Failed at reconnecting: "+l)}),!0)}initListeners(){this.unbind=[],this.unbind.push(this.target.on("connect",()=>{this.attempts=0,this.pingedAt=us(),this.state="connected",this.cancelReconnect(),this.startPolling()})),this.unbind.push(this.target.on("disconnect",()=>{this.disconnectedAt=us(),this.state="disconnected",this.stopPolling(),this.scheduleReconnect()})),this.unbind.push(this.target.on("close",()=>{this.disconnectedAt=us(),this.state="closed",this.cancelReconnect(),this.stopPolling()})),this.unbind.push(this.target.on("keepalive",()=>{this.pingedAt=us()})),this.unbind.push(()=>{this.cancelReconnect(),this.stopPolling()})}dispose(){delete this.target,this.unbind&&this.unbind.forEach(l=>l()),delete this.unbind}startPolling(){this.pollId&&clearTimeout(this.pollId);let l=this.pingInterval+(Math.random()-.5)*this.pingInterval*.5;this.pollId=setTimeout(()=>{this.checkStale(),this.state==="connected"&&this.startPolling()},l)}stopPolling(){this.pollId&&clearTimeout(this.pollId)}checkStale(){let l=us()-this.pingedAt;l>this.maxMissingPings*this.pingInterval&&(this.logger.warn(`Stale connection: ${l}ms without pings`),this.state="pending_disconnect",this.target.disconnected(new fS))}scheduleReconnect(){if(this.attempts>=this.maxReconnectAttempts){this.target.close();return}let l=this.strategy(this.attempts);this.attempts++,this.logger.info(`Reconnecting in ${l}ms (${this.attempts} attempt)`),this.state="pending_reconnect",this.reconnnectId=setTimeout(()=>this.reconnectNow(),l)}cancelReconnect(){this.reconnnectId&&(clearTimeout(this.reconnnectId),delete this.reconnnectId)}};class AS{constructor(c,e={}){this.transports=c,this.transport=null,this.emitter=sl(),this.unbind=[],this.logger=e.logger||new ra}displayName(){return"fallbacked transport"}async open(){for(let c=0;c<this.transports.length;c++){let e=this.transports[c];try{this.transport=e,this.resetListeners(),this.logger.debug(`Trying to connect via ${e.displayName()}`),await e.open(),this.logger.debug(`Connected via ${e.displayName()}`);return}catch(u){this.logger.debug(`Failed to connect via ${e.displayName()}: ${u.message}`)}}throw this.transport=null,this.resetListeners(),new Error("Couldn't connect via any available transport")}send(c){if(!this.transport)throw new Error("No transport is open");this.transport.send(c)}async close(){if(!this.transport)throw new Error("No transport is open");await this.transport.close(),this.transport=null}setURL(){throw new Error("Not implemented. Set URL for each transport separately")}setParam(c,e){this.transports.forEach(u=>{u.setParam(c,e)})}setToken(c,e){this.transports.forEach(u=>{u.setToken(c,e)})}on(c,e){return this.emitter.on(c,e)}once(c,e){let u=this.emitter.on(c,(...M)=>{u(),e(...M)});return u}get url(){return this.transport?this.transport.url:""}resetListeners(){this.unbind.forEach(c=>c()),this.unbind.length=0,this.transport&&this.unbind.push(this.transport.on("open",()=>{this.emitter.emit("open")}),this.transport.on("data",c=>{this.emitter.emit("data",c)}),this.transport.on("close",c=>{this.emitter.emit("close",c)}),this.transport.on("error",c=>{this.emitter.emit("error",c)}))}}class MS{constructor(c,e={}){this.url=c;let u=e.websocketImplementation;if(u)this.Impl=u;else if(typeof WebSocket<"u")this.Impl=WebSocket;else throw new Error("No WebSocket support");this.connected=!1,this.emitter=sl();let{format:M,subprotocol:b,authStrategy:v}=e;this.format=M||"text",this.connectionOptions=e.websocketOptions,this.authStrategy=v||"param",this.authProtocol="",this.subprotocol=b}displayName(){return"WebSocket("+this.url+")"}open(){let c=this.subprotocol;return this.authStrategy==="sub-protocol"&&(c=[this.subprotocol,this.authProtocol]),this.connectionOptions?this.ws=new this.Impl(this.url,c,this.connectionOptions):this.ws=new this.Impl(this.url,c),this.ws.binaryType="arraybuffer",this.initListeners(),new Promise((e,u)=>{let M=[];M.push(this.once("open",()=>{M.forEach(b=>b()),e()})),M.push(this.once("close",()=>{M.forEach(b=>b()),u(Error("WS connection closed"))}))})}setURL(c){this.url=c}setParam(c,e){let u=new URL(this.url);u.searchParams.set(c,e);let M=`${u.protocol}//${u.host}${u.pathname}?${u.searchParams}`;this.setURL(M)}setToken(c,e="jid"){if(this.authStrategy==="param")this.setParam(e,c);else if(this.authStrategy==="header"){this.connectionOptions=this.connectionOptions||{},this.connectionOptions.headers=this.connectionOptions.headers||{};let u=`x-${e}`.toLowerCase();u=Object.keys(this.connectionOptions.headers).find(M=>M.toLowerCase()===u)||u,this.connectionOptions.headers[u]=c}else if(this.authStrategy==="sub-protocol")this.authProtocol=`anycable-token.${c}`;else throw new Error("Unknown auth strategy: "+this.authStrategy)}send(c){if(!this.ws||!this.connected)throw Error("WebSocket is not connected");this.ws.send(c)}close(){this.ws?this.onclose():this.connected=!1}on(c,e){return this.emitter.on(c,e)}once(c,e){let u=this.emitter.on(c,(...M)=>{u(),e(...M)});return u}initListeners(){this.ws.onerror=c=>{this.connected&&this.emitter.emit("error",c.error||new Error("WS Error"))},this.ws.onclose=()=>{this.onclose()},this.ws.onmessage=c=>{let e=c.data;this.format==="binary"&&(e=new Uint8Array(e)),this.emitter.emit("data",e)},this.ws.onopen=()=>{this.connected=!0,this.emitter.emit("open")}}onclose(){this.ws.onclose=void 0,this.ws.onmessage=void 0,this.ws.onopen=void 0,this.ws.close(),delete this.ws,this.connected=!1,this.emitter.emit("close")}}class $S{constructor(c){this.channel=c}notify(c,...e){typeof this[c]=="function"&&this[c](...e)}perform(c,e={}){this.channel.perform(c,e)}send(c){this.channel.send(c)}whisper(c){return this.channel.whisper(c)}get identifier(){return this.channel.identifier}unsubscribe(){return this.channel.disconnect()}}class TS extends xg{constructor(c,e,u){super(c,e),this.subscription=new $S(this),Object.assign(this.subscription,u),this.on("connect",({reconnect:M})=>this.subscription.notify("connected",{reconnected:M})),this.on("disconnect",()=>this.subscription.notify("disconnected",{allowReconnect:!0})),this.on("message",M=>this.subscription.notify("received",M)),this.on("close",M=>{M&&M instanceof Nu?this.subscription.notify("rejected"):this.subscription.notify("disconnected",{allowReconnect:!1})})}}class LS{constructor(c){this.cable=c}create(c,e){let u,M;typeof c=="object"?(u=c.channel,delete c.channel,M=c):(u=c,M={});let b=new TS(u,M,e);return b.subscription.notify("initialized"),this.cable.subscribe(b),b.subscription}findAll(c){return this.cable.hub.channels.filter(e=>e.identifier===c).map(e=>e.subscription)}}class ES{constructor(c){this.cable=c,this.subscriptions=new LS(c)}send(c){return this.cable.send(c)}connect(){return this.cable.connect()}disconnect(){return this.cable.disconnect()}ensureActiveConnection(){return this.cable.connect()}}const kg={protocol:"actioncable-v1-json",pingInterval:3e3,maxReconnectAttempts:1/0,maxMissingPings:2,logLevel:"warn",lazy:!0};function RS(l,c){if(typeof l=="object"&&typeof c>"u"&&(c=l,l=void 0),c=c||{},!l&&!c.transport)throw Error("URL or transport must be specified");c=Object.assign({},kg,c);let{protocol:e,websocketImplementation:u,websocketFormat:M,websocketOptions:b,websocketAuthStrategy:v,fallbacks:x,logLevel:p,logger:f,transport:a,encoder:s,lazy:o,monitor:r,pingInterval:n,reconnectStrategy:i,maxMissingPings:h,maxReconnectAttempts:m,subprotocol:y,tokenRefresher:R,historyTimestamp:T,protocolOptions:k,concurrentSubscribes:w,performFailures:I,transportConfigurator:D,auth:E}=c;if(f=f||new ra(p),typeof e=="string"){y=y||e;let F=e.substring(0,e.lastIndexOf("-")),O=e.substring(e.lastIndexOf("-")+1);if(k=k||{},F==="actioncable-v1")e=new bg({logger:f,...k});else if(F==="actioncable-v1-ext")e=new xS({logger:f,historyTimestamp:T,...k});else throw Error(`Protocol is not supported yet: ${e}`);if(O==="json")s=s||new wS,M=M||"text";else if(O==="msgpack"){if(M="binary",!s)throw Error("Msgpack encoder must be specified explicitly. Use `@anycable/msgpack-encoder` package or build your own")}else if(O==="protobuf"){if(M=M||"binary",!s)throw Error("Protobuf encoder must be specified explicitly. Use `@anycable/protobuf-encoder` package or build your own")}else throw Error(`Protocol is not supported yet: ${e}`)}if(!e)throw Error("Protocol must be specified");a=a||new MS(l,{websocketImplementation:u,websocketOptions:b,subprotocol:y,authStrategy:v,format:M}),x&&(a=new AS([a,...x],{logger:f})),E&&E.token&&a.setToken(E.token,E.param||"jid"),i=i||Sg(n),r!==!1&&(r=r||new Cg({pingInterval:n,reconnectStrategy:i,maxMissingPings:h,maxReconnectAttempts:m,logger:f}));let L={concurrentSubscribes:w},z=new kS({protocol:e,transport:a,encoder:s,logger:f,lazy:o,hubOptions:L,performFailures:I,transportConfigurator:D});return r&&(r.watch(z),z.monitor=r),R&&IS(z,async()=>{try{await R(a)}catch(F){return f.error("Failed to refresh authentication token: "+F),!1}return z.connect().catch(()=>{}),!0}),z}function IS(l,c){let e=!1;l.on("connect",()=>e=!1),l.on("close",async u=>{if(u){if(e){l.logger.warn("Token auto-refresh is disabled",u);return}u.reason==="token_expired"&&(e=!0,await c())}})}class OS extends wg{writeLogEntry(c,e,u){u?console[c](e,u):console[c](e)}}class NS extends Cg{watch(c){super.watch(c),this.initActivityListeners()}initActivityListeners(){if(typeof document<"u"&&typeof window<"u"&&document.addEventListener&&window.addEventListener){let c=()=>{document.hidden||this.reconnectNow()&&this.logger.debug("Trigger reconnect due to visibility change")},e=M=>{this.reconnectNow()&&this.logger.debug("Trigger reconnect",{event:M})},u=()=>this.disconnect(new ur("page_frozen"));document.addEventListener("visibilitychange",c,!1),window.addEventListener("focus",e,!1),window.addEventListener("online",e,!1),window.addEventListener("resume",e,!1),window.addEventListener("freeze",u,!1),this.unbind.push(()=>{document.removeEventListener("visibilitychange",c,!1),window.removeEventListener("focus",e,!1),window.removeEventListener("online",e,!1),window.removeEventListener("resume",e,!1),window.removeEventListener("freeze",u,!1)})}}disconnect(c){this.state==="disconnected"||this.state==="closed"||(this.logger.info("Disconnecting",{reason:c.message}),this.cancelReconnect(),this.stopPolling(),this.state="pending_disconnect",this.target.disconnected(c))}}const DS=["cable","action-cable"],FS="/cable",al=(l,c)=>{for(let e of DS){let u=l.head.querySelector(`meta[name='${e}-${c}']`);if(u)return u.getAttribute("content")}},bf=l=>l.match(/wss?:\/\//)?l:typeof window<"u"?`${window.location.protocol.replace("http","ws")}//${window.location.host}${l}`:l,PS=()=>{if(typeof document<"u"&&document.head){let l=al(document,"url");if(l)return bf(l)}return bf(FS)},BS=()=>{if(typeof document<"u"&&document.head){let l=al(document,"history-timestamp");if(l)return l|0}},WS=()=>{if(typeof document<"u"&&document.head)return al(document,"token")},HS=()=>{if(typeof document<"u"&&document.head)return al(document,"token-param")};function zS(l,c){typeof l=="object"&&typeof c>"u"&&(c=l,l=void 0),l=l||PS(),c=c||{},c.historyTimestamp||=BS();let e=WS();if(e){let f=HS();c.auth=Object.assign({token:e,param:f},c.auth||{})}c=Object.assign({},kg,c);let{logLevel:u,logger:M,pingInterval:b,reconnectStrategy:v,maxMissingPings:x,maxReconnectAttempts:p}=c;return M=c.logger=c.logger||new OS(u),v=c.reconnectStrategy=c.reconnectStrategy||Sg(b),c.monitor!==!1&&(c.monitor=c.monitor||new NS({pingInterval:b,reconnectStrategy:v,maxMissingPings:x,maxReconnectAttempts:p,logger:M})),RS(l,c)}function US(l,c){let e=zS(l,c);return new ES(e)}class VS{constructor(c="/openc3-api/cable",e="/openc3-api/auth/otp"){this._cable=null,this._url=c,this._otpUrl=e}disconnect(){this._cable&&(this._cable.cable.disconnect(),this._cable=null)}createSubscription(c,e,u={},M={}){return OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity).then(b=>(b&&OpenC3Auth.setTokens(),mg.get(this._otpUrl,{params:{scope:e}}))).then(({data:b})=>{if(this._cable==null){const v=new URL(this._url,document.baseURI);v.searchParams.set("scope",e),v.searchParams.set("authorization",b),this._cable=US(v.href)}return this._cable.subscriptions.create({channel:c,...M},u)})}recordPing(){}}class vu{constructor(c,e,u="",M=""){this.keyword=c.keyword,this.parameters=c.parameters,this.filename=c.filename,this.line=c.line,this.lineNumber=c.lineNumber,this.message=e,this.usage=u,this.url=M}}class jS{keyword=null;parameters=[];filename="";line="";lineNumber=0;url="https://docs.openc3.com/docs/configuration";constructor(){}verify_num_parameters(c,e,u=""){for(let M=1;M<=c;M++)if(this.parameters[M-1]===void 0)throw new vu(this,`Not enough parameters for ${this.keyword}.`,u,this.url);if(e&&this.parameters[e]!==void 0)throw new vu(this,`Too many parameters for ${this.keyword}.`,u,this.url)}remove_quotes(c){if(c.length<2)return c;let e=c.charAt(0);if(e!=='"'&&e!=="'")return c;let u=c.charAt(c.length-1);return e!==u?c:c.substring(1,c.length-1)}scan_string(c,e){if(!e.global)throw"rx must have 'global' flag set";let u=[];return c.replace(e,function(M){return u.push(M),M}),u}parse_string(c,e,u,M,b){let v=!1,x=!1;this.line="",this.keyword=null,this.parameters=[],this.filename=e;let p=c.split(`
1392
+ `),f=p.length;for(let a=0;a<f;a++){this.lineNumber=a+1;let s=p[a];if(v)this.line=s;else{if(s=s.trim(),s.length===0){if(u){let R=b(null,[],this.line,this.lineNumber);R===!0&&(v=!0),R===!1&&(v=!1)}continue}if(x===!0){if(s[0]==="#")continue;s=s.substring(1,s.length)}let m=s.charAt(s.length-1),y=!1;switch(m){case"+":y=!0;case"\\":let R=s.substring(0,s.length-1).trim();this.line+=R.substring(0,R.length-1),y&&(this.line+=`
1393
+ `),x=!0;continue;case"&":this.line+=s.substring(0,s.length-1);continue;default:this.line+=s}}x=!1;let o=/("([^\\"]|\\.)*")|('([^\\']|\\.)*')|\S+/g,r=this.scan_string(this.line,o),n="";if(r.length>0&&(n=n+r[0]),n.length===0||n.charAt(0)==="#"?this.keyword=null:this.keyword=n.toUpperCase(),this.parameters=[],this.keyword===null){if(u){let m=b(this.keyword,this.parameters,this.line,this.lineNumber);m===!0&&(v=!0),m===!1&&(v=!1)}this.line="";continue}let i=r.length;if(i>1)for(let m=1;m<i;m++){let y=r[m];if(y.length>0&&y.charAt(0)==="#")break;M?this.parameters.push(this.remove_quotes(y)):this.parameters.push(y)}let h=b(this.keyword,this.parameters,this.line,this.lineNumber);h===!0&&(v=!0),h===!1&&(v=!1),this.line=""}}}function Qs(l){return KS.test(l)}const KS=/^-?[0-9]+$/;function _g(l){return GS.test(l)}const GS=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?$/;function Ag(l,c){if(Qs(l))return Number.isSafeInteger(Number.parseInt(l,10));const e=Number.parseFloat(l),u=String(e);if(l===u)return!0;const M=xf(l),b=xf(u);return!!(M===b||c?.approx===!0&&!Qs(l)&&b.length>=14&&M.startsWith(b.substring(0,14)))}let Us=(function(l){return l.underflow="underflow",l.overflow="overflow",l.truncate_integer="truncate_integer",l.truncate_float="truncate_float",l})({});function qS(l){if(Ag(l,{approx:!1}))return;if(Qs(l))return Us.truncate_integer;const c=Number.parseFloat(l);return Number.isFinite(c)?c===0?Us.underflow:Us.truncate_float:Us.overflow}function xf(l){const{start:c,end:e}=YS(l),u=l.substring(c,e),M=u.indexOf(".");return M===-1?u:u.substring(0,M)+u.substring(M+1)}function YS(l){let c=0;for(l[0]==="-"&&c++;l[c]==="0"||l[c]===".";)c++;let e=l.lastIndexOf("e");for(e===-1&&(e=l.lastIndexOf("E")),e===-1&&(e=l.length);(l[e-1]==="0"||l[e-1]===".")&&e>c;)e--;return{start:c,end:e}}class QS{isLosslessNumber=!0;constructor(c){if(!_g(c))throw new Error(`Invalid number (value: "${c}")`);this.value=c}valueOf(){const c=qS(this.value);if(c===void 0||c===Us.truncate_float)return Number.parseFloat(this.value);if(Qs(this.value))return BigInt(this.value);throw new Error(`Cannot safely convert to number: the value '${this.value}' would ${c} and become ${Number.parseFloat(this.value)}`)}toString(){return this.value}}function ZS(l){return l&&typeof l=="object"&&l.isLosslessNumber||!1}function JS(l){return new QS(l)}function XS(l,c){return Du({"":l},"",l,c)}function Du(l,c,e,u){return Array.isArray(e)?u.call(l,c,tC(e,u)):e&&typeof e=="object"&&!ZS(e)?u.call(l,c,eC(e,u)):u.call(l,c,e)}function eC(l,c){for(const e of Object.keys(l)){const u=Du(l,e,l[e],c);u!==void 0?l[e]=u:delete l[e]}return l}function tC(l,c){for(let e=0;e<l.length;e++)l[e]=Du(l,String(e),l[e],c);return l}function nC(l,c,e){const u=typeof e=="function"?{parseNumber:e}:e,M=u?.parseNumber??JS,b=u?.onDuplicateKey??I;let v=0;const x=a();return m(x),R(),c?XS(x,c):x;function p(){if(l.charCodeAt(v)===lC){v++,o();const W={};let V=!0;for(;v<l.length&&l.charCodeAt(v)!==Cf;){V?V=!1:(i(),o());const G=v,Q=r();if(Q===void 0){w();return}o(),h();const te=a();if(te===void 0){F();return}if(Object.prototype.hasOwnProperty.call(W,Q)&&!yu(te,W[Q])){const le=b({key:Q,position:G+1,oldValue:W[Q],newValue:te});le!==void 0&&(W[Q]=le)}else W[Q]=te}return l.charCodeAt(v)!==Cf&&D(),v++,W}}function f(){if(l.charCodeAt(v)===cC){v++,o();const W=[];let V=!0;for(;v<l.length&&l.charCodeAt(v)!==kf;){V?V=!1:i();const G=a();y(G),W.push(G)}return l.charCodeAt(v)!==kf&&E(),v++,W}}function a(){o();const W=r()??n()??p()??f()??s("true",!0)??s("false",!1)??s("null",null);return o(),W}function s(W,V){if(l.slice(v,v+W.length)===W)return v+=W.length,V}function o(){for(;iC(l.charCodeAt(v));)v++}function r(){if(l.charCodeAt(v)===Cc){v++;let W="";for(;v<l.length&&l.charCodeAt(v)!==Cc;){if(l.charCodeAt(v)===aC){const V=l[v+1],G=sC[V];G!==void 0?(W+=G,v++):V==="u"?Ha(l.charCodeAt(v+2))&&Ha(l.charCodeAt(v+3))&&Ha(l.charCodeAt(v+4))&&Ha(l.charCodeAt(v+5))?(W+=String.fromCharCode(Number.parseInt(l.slice(v+2,v+6),16)),v+=5):O(v):z(v)}else oC(l.charCodeAt(v))?W+=l[v]:L(l[v]);v++}return k(),v++,W}}function n(){const W=v;if(l.charCodeAt(v)===_f&&(v++,T(W)),l.charCodeAt(v)===Fu)v++;else if(rC(l.charCodeAt(v)))for(v++;za(l.charCodeAt(v));)v++;if(l.charCodeAt(v)===vC)for(v++,T(W);za(l.charCodeAt(v));)v++;if(l.charCodeAt(v)===SC||l.charCodeAt(v)===xC)for(v++,(l.charCodeAt(v)===_f||l.charCodeAt(v)===pC)&&v++,T(W);za(l.charCodeAt(v));)v++;if(v>W)return M(l.slice(W,v))}function i(){if(l.charCodeAt(v)!==mC)throw new SyntaxError(`Comma ',' expected after value ${N()}`);v++}function h(){if(l.charCodeAt(v)!==yC)throw new SyntaxError(`Colon ':' expected after property name ${N()}`);v++}function m(W){if(W===void 0)throw new SyntaxError(`JSON value expected ${N()}`)}function y(W){if(W===void 0)throw new SyntaxError(`Array item expected ${N()}`)}function R(){if(v<l.length)throw new SyntaxError(`Expected end of input ${N()}`)}function T(W){if(!za(l.charCodeAt(v))){const V=l.slice(W,v);throw new SyntaxError(`Invalid number '${V}', expecting a digit ${N()}`)}}function k(){if(l.charCodeAt(v)!==Cc)throw new SyntaxError(`End of string '"' expected ${N()}`)}function w(){throw new SyntaxError(`Quoted object key expected ${N()}`)}function I(W){let{key:V,position:G}=W;throw new SyntaxError(`Duplicate key '${V}' encountered at position ${G}`)}function D(){throw new SyntaxError(`Quoted object key or end of object '}' expected ${N()}`)}function E(){throw new SyntaxError(`Array item or end of array ']' expected ${N()}`)}function L(W){throw new SyntaxError(`Invalid character '${W}' ${A()}`)}function z(W){const V=l.slice(W,W+2);throw new SyntaxError(`Invalid escape character '${V}' ${A()}`)}function F(){throw new SyntaxError(`Object value expected after ':' ${A()}`)}function O(W){const V=l.slice(W,W+6);throw new SyntaxError(`Invalid unicode character '${V}' ${A()}`)}function A(){return`at position ${v}`}function S(){return v<l.length?`but got '${l[v]}'`:"but reached end of input"}function N(){return`${S()} ${A()}`}}function iC(l){return l===uC||l===hC||l===dC||l===fC}function Ha(l){return l>=Fu&&l<=Pu||l>=wC&&l<=CC||l>=bC&&l<=kC}function za(l){return l>=Fu&&l<=Pu}function rC(l){return l>=gC&&l<=Pu}function oC(l){return l>=32&&l<=1114111}function yu(l,c){return l===c?!0:Array.isArray(l)&&Array.isArray(c)?l.length===c.length&&l.every((e,u)=>yu(e,c[u])):Sf(l)&&Sf(c)?[...new Set([...Object.keys(l),...Object.keys(c)])].every(e=>yu(l[e],c[e])):!1}function Sf(l){return typeof l=="object"&&l!==null}const sC={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
1394
+ `,r:"\r",t:" "},aC=92,lC=123,Cf=125,cC=91,kf=93,uC=32,hC=10,dC=9,fC=13,Cc=34,pC=43,_f=45,Fu=48,gC=49,Pu=57,mC=44,vC=46,yC=58,wC=65,bC=97,xC=69,SC=101,CC=70,kC=102;function Mg(l,c,e,u){return b(l);function b(f,a){if(Array.isArray(u)){const s=u.find(o=>o.test(f));if(s){const o=s.stringify(f);if(typeof o!="string"||!_g(o))throw new Error(`Invalid JSON number: output of a number stringifier must be a string containing a JSON number (output: ${o})`);return o}}if(typeof f=="boolean"||typeof f=="number"||typeof f=="string"||f===null||f instanceof Date||f instanceof Boolean||f instanceof Number||f instanceof String)return JSON.stringify(f);if(f?.isLosslessNumber||typeof f=="bigint")return f.toString();if(Array.isArray(f))return v(f);if(f&&typeof f=="object")return x(f)}function v(f,a){if(f.length===0)return"[]";let s="[";for(let o=0;o<f.length;o++){const r=f[o];typeof r<"u"&&typeof r!="function"?s+=b(r):s+="null",o<f.length-1&&(s+=",")}return s+="]",s}function x(f,a){if(typeof f.toJSON=="function")return Mg(f.toJSON(),c,e,void 0);const s=Array.isArray(c)?c.map(String):Object.keys(f);if(s.length===0)return"{}";let o=!0,r="{";for(const n of s){const i=f[n];if(p(n,i)){o?o=!1:r+=",";const h=JSON.stringify(n);r+=`${h}:`,r+=b(i)}}return r+="}",r}function p(f,a){return typeof a<"u"&&typeof a!="function"&&typeof a!="symbol"}}function _C(l){return Qs(l)&&!Ag(l)?BigInt(l):parseFloat(l)}class AC{id=1;constructor(){}async exec(c,e,u={},M={},b=6e4){try{await OpenC3Auth.updateToken(OpenC3Auth.defaultMinValidity)&&OpenC3Auth.setTokens()}catch{OpenC3Auth.login()}this.id=this.id+1;try{return u.scope=window.openc3Scope,M.manual=!0,(await Ou.post("/openc3-api/api",{jsonrpc:"2.0",method:c,params:e,id:this.id,keyword_params:u},{headers:{Authorization:localStorage.openc3Token,"Content-Type":"application/json-rpc",...M},timeout:b,transformRequest:[(v,x)=>Mg(v)],transformResponse:[v=>{try{return nC(v,void 0,_C)}catch{const x=typeof v=="string"?v.substring(0,200):String(v),p=new Error(`Server returned non-JSON response: ${x}`);throw p.name="ServerError",p}}]})).data.result}catch(v){let x=new Error;throw v.response?(x.name=v.response.data.error.data.class,x.message=v.response.data.error.data.message,x.object=v.response.data.error):v.request?(x.name="Request error",x.message="Request error, no response received"):x=v,x}}decode_openc3_type(c){if(c!==null&&typeof c=="object"&&c.json_class=="Float"&&c.raw){if(c.raw=="NaN")return NaN;if(c.raw=="Infinity")return 1/0;if(c.raw=="-Infinity")return-1/0}return null}encode_openc3_type(c){return Number.isNaN(c)?{json_class:"Float",raw:"NaN"}:c==Number.POSITIVE_INFINITY?{json_class:"Float",raw:"Infinity"}:c==Number.NEGATIVE_INFINITY?{json_class:"Float",raw:"-Infinity"}:null}ensure_offline_access(){this.offline_access_needed().then(c=>{c&&(localStorage.openc3OfflineToken?this.set_offline_access(localStorage.openc3OfflineToken).then(()=>{delete localStorage.openc3OfflineToken}):OpenC3Auth.getOfflineAccess())})}offline_access_needed(){return this.exec("offline_access_needed",[])}set_offline_access(c){return this.exec("set_offline_access",[c])}get_all_interface_info(){return this.exec("get_all_interface_info",[])}map_target_to_interface(c,e,u,M,b){return this.exec("map_target_to_interface",[c,e],{cmd_only:u,tlm_only:M,unmap_old:b})}unmap_target_from_interface(c,e,u,M){return this.exec("unmap_target_from_interface",[c,e],{cmd_only:u,tlm_only:M})}connect_interface(c,...e){return e.length>0?this.exec("connect_interface",[c,...e]):this.exec("connect_interface",[c])}disconnect_interface(c){return this.exec("disconnect_interface",[c])}interface_cmd(c,e,...u){return this.exec("interface_cmd",[c,e,...u])}interface_target_enable(c,e,u=!1,M=!1){return this.exec("interface_target_enable",[c,e],{cmd_only:u,tlm_only:M})}interface_target_disable(c,e,u=!1,M=!1){return this.exec("interface_target_disable",[c,e],{cmd_only:u,tlm_only:M})}interface_details(c){return this.exec("interface_details",[c])}get_all_router_info(){return this.exec("get_all_router_info",[])}map_target_to_router(c,e,u,M,b){return this.exec("map_target_to_router",[c,e],{cmd_only:u,tlm_only:M,unmap_old:b})}unmap_target_from_router(c,e,u,M){return this.exec("unmap_target_from_router",[c,e],{cmd_only:u,tlm_only:M})}connect_router(c){return this.exec("connect_router",[c])}disconnect_router(c){return this.exec("disconnect_router",[c])}router_target_enable(c,e,u=!1,M=!1){return this.exec("router_target_enable",[c,e],{cmd_only:u,tlm_only:M})}router_target_disable(c,e,u=!1,M=!1){return this.exec("router_target_disable",[c,e],{cmd_only:u,tlm_only:M})}router_details(c){return this.exec("router_details",[c])}get_target_interfaces(){return this.exec("get_target_interfaces",[])}get_tlm_cnts(c){return this.exec("get_tlm_cnts",[c])}get_item(c,e,u){return this.exec("get_item",[c,e,u])}get_param(c,e,u){return this.exec("get_param",[c,e,u])}get_parameter(c,e,u){return this.exec("get_param",[c,e,u])}get_limits_sets(){return this.exec("get_limits_sets",[])}get_limits_set(){return this.exec("get_limits_set",[])}set_limits_set(c){return this.exec("set_limits_set",[c])}get_target(c){return this.exec("get_target",[c])}get_target_names(){return this.exec("get_target_names",[])}get_target_list(){return this.exec("get_target_names",[])}get_tlm(c,e){return this.exec("get_tlm",[c,e])}get_telemetry(c,e){return this.exec("get_tlm",[c,e])}get_all_tlm(c){return this.exec("get_all_tlm",[c])}get_all_telemetry(c){return this.exec("get_all_tlm",[c])}get_all_tlm_names(c,e=!1){return this.exec("get_all_tlm_names",[c],{hidden:e})}get_all_telemetry_names(c){return this.exec("get_all_tlm_names",[c])}get_all_tlm_item_names(c){return this.exec("get_all_tlm_item_names",[c])}async get_tlm_packet(c,e,u,M=30){const b=await this.exec("get_tlm_packet",[c,e],{type:u,stale_time:M});if(b!=null){let v=b.length,x=null;for(let p=0;p<v;p++)x=this.decode_openc3_type(b[p][1]),x!==null&&(b[p][1]=x)}return b}get_packet_derived_items(c,e){return this.exec("get_packet_derived_items",[c,e])}get_tlm_buffer(c,e){return this.exec("get_tlm_buffer",[c,e])}get_tlm_available(c){return this.exec("get_tlm_available",[c])}async get_tlm_values(c,e=30,u=null,M=null,b=null){let v={stale_time:e};u!==null&&(v.cache_timeout=u),M!==null&&(v.start_time=M.toISOString()),b!==null&&(v.end_time=b.toISOString());const x=await this.exec("get_tlm_values",[c],v,{},1e4);if(x&&x.length>0){let p=x.length,f=null;for(let a=0;a<p;a++)f=this.decode_openc3_type(x[a][0]),f!==null&&(x[a][0]=f)}return x}get_limits(c,e,u){return this.exec("get_limits",[c,e,u])}async tlm(c,e,u,M="CONVERTED"){let b=null;if(e===void 0)b=await this.exec("tlm",[c]);else if(u===void 0)if(["RAW","CONVERTED","FORMATTED"].includes(e))b=await this.exec("tlm",[c],{type:e});else{let x=new Error;throw x.name="TypeError",x.message=`Invalid data type ${e}. Valid options are RAW, CONVERTED or FORMATTED.`,x}else b=await this.exec("tlm",[c,e,u],{type:M});let v=this.decode_openc3_type(b);return v!==null&&(b=v),b}async inject_tlm(c,e,u=null,M="CONVERTED"){await this.exec("inject_tlm",[c,e,u],{type:M})}set_tlm(c,e,u,M){return this.exec("set_tlm",[c,e,u],{type:M})}override_tlm(c,e,u,M){return this.exec("override_tlm",[c,e,u],{type:M})}get_overrides(){return this.exec("get_overrides")}normalize_tlm(c,e,u,M){return this.exec("normalize_tlm",[c,e,u],{type:M})}get_all_cmds(c){return this.exec("get_all_cmds",[c])}get_all_commands(c){return this.exec("get_all_cmds",[c])}get_all_cmd_names(c,e=!1){return this.exec("get_all_cmd_names",[c],{hidden:e})}get_all_command_names(c){return this.exec("get_all_cmd_names",[c])}get_cmd(c,e){return this.exec("get_cmd",[c,e])}get_command(c,e){return this.exec("get_cmd",[c,e])}get_cmd_cnts(c){return this.exec("get_cmd_cnts",[c])}get_cmd_value(c,e,u,M="CONVERTED"){return this.exec("get_cmd_value",[c,e,u,M])}get_cmd_buffer(c,e){return this.exec("get_cmd_buffer",[c,e])}_cmd(c,e,u,M,b,v={}){let x=null;for(let p in M)Object.prototype.hasOwnProperty.call(M,p)&&(x=this.encode_openc3_type(M[p]),x!==null&&(M[p]=x));return this.exec(c,[e,u,M],v,b)}get_cmd_hazardous(c,e,u,M={}){return e===void 0?this.exec("get_cmd_hazardous",c,{},M):this._cmd("get_cmd_hazardous",c,e,u,M)}cmd(c,e,u,M={},b={}){return e===void 0?this.exec("cmd",c,b,M):this._cmd("cmd",c,e,u,M,b)}cmd_no_range_check(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_no_range_check",c,b,M):this._cmd("cmd_no_range_check",c,e,u,M,b)}cmd_raw(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_raw",c,b,M):this._cmd("cmd_raw",c,e,u,M,b)}cmd_raw_no_range_check(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_raw_no_range_check",c,b,M):this._cmd("cmd_raw_no_range_check",c,e,u,M,b)}cmd_no_hazardous_check(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_no_hazardous_check",c,b,M):this._cmd("cmd_no_hazardous_check",c,e,u,M,b)}cmd_no_checks(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_no_checks",c,b,M):this._cmd("cmd_no_checks",c,e,u,M,b)}cmd_raw_no_hazardous_check(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_raw_no_hazardous_check",c,b,M):this._cmd("cmd_raw_no_hazardous_check",c,e,u,M,b)}cmd_raw_no_checks(c,e,u,M={},b={}){return e===void 0?this.exec("cmd_raw_no_checks",c,b,M):this._cmd("cmd_raw_no_checks",c,e,u,M,b)}build_cmd(c,e,u,M={},b={}){return e===void 0?this.exec("build_cmd",c,b,M):this._cmd("build_cmd",c,e,u,M,b)}build_command(c,e,u,M={},b={}){return e===void 0?this.exec("build_cmd",c,b,M):this._cmd("build_cmd",c,e,u,M,b)}get_interface_names(){return this.exec("get_interface_names",[])}get_router_names(){return this.exec("get_router_names",[])}send_raw(c,e){return this.exec("send_raw",[c,e])}list_configs(c){return this.exec("list_configs",[c])}load_config(c,e){return this.exec("load_config",[c,e])}save_config(c,e,u){return this.exec("save_config",[c,e,u])}delete_config(c,e){return this.exec("delete_config",[c,e])}enable_limits(c,e,u){return this.exec("enable_limits",[c,e,u])}disable_limits(c,e,u){return this.exec("disable_limits",[c,e,u])}get_out_of_limits(){return this.exec("get_out_of_limits",[])}get_overall_limits_state(c){return this.exec("get_overall_limits_state",[c])}list_settings(){return this.exec("list_settings",[])}get_all_settings(){return this.exec("get_all_settings",[])}get_setting(c,e){return this.exec("get_setting",[c],e)}get_settings(c,e){return this.exec("get_settings",c,e)}set_setting(c,e){return this.exec("set_setting",[c,e])}update_news(){return this.exec("update_news",[])}update_plugin_store(){return this.exec("update_plugin_store",[])}save_setting(c,e){return this.exec("set_setting",[c,e])}get_metrics(){return this.exec("get_metrics",[])}open_tab(c){window.open(c,"_blank")}async hashString(c){if(window.isSecureContext){const e=new TextEncoder().encode(c),u=await crypto.subtle.digest("SHA-256",e),M=new Uint8Array(u);return Array.from(M).map(b=>b.toString(16).padStart(2,"0")).join("")}}}var kc={exports:{}},Af;function MC(){return Af||(Af=1,(function(l,c){ace.define("ace/ext/hardwrap",["require","exports","module","ace/range","ace/editor","ace/config"],function(e,u,M){function b(f,a){function s(E,L,z){if(!(E.length<L)){var F=E.slice(0,L),O=E.slice(L),A=/^(?:(\s+)|(\S+)(\s+))/.exec(O),S=/(?:(\s+)|(\s+)(\S+))$/.exec(F),N=0,W=0;if(S&&!S[2]&&(N=L-S[1].length,W=L),A&&!A[2]&&(N||(N=L),W=L+A[1].length),N)return{start:N,end:W};if(S&&S[2]&&S.index>z)return{start:S.index,end:S.index+S[2].length};if(A&&A[2])return N=L+A[2].length,{start:N,end:N+A[3].length}}}for(var o=a.column||f.getOption("printMarginColumn"),r=a.allowMerge!=0,n=Math.min(a.startRow,a.endRow),i=Math.max(a.startRow,a.endRow),h=f.session;n<=i;){var m=h.getLine(n);if(m.length>o){var y=s(m,o,5);if(y){var R=/^\s*/.exec(m)[0];h.replace(new x(n,y.start,n,y.end),`
1395
+ `+R)}i++}else if(r&&/\S/.test(m)&&n!=i){var T=h.getLine(n+1);if(T&&/\S/.test(T)){var k=m.replace(/\s+$/,""),w=T.replace(/^\s+/,""),I=k+" "+w,y=s(I,o,5);if(y&&y.start>k.length||I.length<o){var D=new x(n,k.length,n+1,T.length-w.length);h.replace(D," "),n--,i--}else k.length<m.length&&h.remove(new x(n,k.length,n,m.length))}}n++}}function v(f){if(f.command.name=="insertstring"&&/\S/.test(f.args)){var a=f.editor,s=a.selection.cursor;if(s.column<=a.renderer.$printMarginColumn)return;var o=a.session.$undoManager.$lastDelta;b(a,{startRow:s.row,endRow:s.row,allowMerge:!1}),o!=a.session.$undoManager.$lastDelta&&a.session.markUndoGroup()}}var x=e("../range").Range,p=e("../editor").Editor;e("../config").defineOptions(p.prototype,"editor",{hardWrap:{set:function(f){f?this.commands.on("afterExec",v):this.commands.off("afterExec",v)},value:!1}}),u.hardWrap=b}),ace.define("ace/keyboard/vim",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/dom","ace/lib/oop","ace/lib/keys","ace/lib/event","ace/search","ace/lib/useragent","ace/search_highlight","ace/commands/multi_select_commands","ace/mode/text","ace/ext/hardwrap","ace/multi_select"],function(e,u,M){function b(g){return{row:g.line,column:g.ch}}function v(g){return new Ie(g.row,g.column)}function x(g,_,C){if(_.line===C.line&&_.ch>=C.ch-1){var P=g.getLine(_.line),B=P.charCodeAt(_.ch);55296<=B&&B<=55551&&(C.ch+=1)}return{start:_,end:C}}function p(g){g.setOption("disableInput",!0),g.setOption("showCursorWhenSelecting",!1),De.signal(g,"vim-mode-change",{mode:"normal"}),g.on("cursorActivity",mr),I(g),De.on(g.getInputField(),"paste",a(g))}function f(g){g.setOption("disableInput",!1),g.off("cursorActivity",mr),De.off(g.getInputField(),"paste",a(g)),g.state.vim=null,Wt&&clearTimeout(Wt)}function a(g){var _=g.state.vim;return _.onPasteFn||(_.onPasteFn=function(){_.insertMode||(g.setCursor(me(g.getCursor(),0,1)),fn.enterInsertMode(g,{},_))}),_.onPasteFn}function s(g,_){return _>=g.firstLine()&&_<=g.lastLine()}function o(g){return/^[a-z]$/.test(g)}function r(g){return"()[]{}".indexOf(g)!=-1}function n(g){return es.test(g)}function i(g){return et.test(g)}function h(g){return/^\s*$/.test(g)}function m(g){return".?!".indexOf(g)!=-1}function y(g,_){for(var C=0;C<_.length;C++)if(_[C]==g)return!0;return!1}function R(g,_,C,P,B){if(_===void 0&&!B)throw Error("defaultValue is required unless callback is provided");if(C||(C="string"),$t[g]={type:C,defaultValue:_,callback:B},P)for(var H=0;H<P.length;H++)$t[P[H]]=$t[g];_&&T(g,_)}function T(g,_,C,P){var B=$t[g];P=P||{};var H=P.scope;if(!B)return new Error("Unknown option: "+g);if(B.type=="boolean"){if(_&&_!==!0)return new Error("Invalid argument: "+g+"="+_);_!==!1&&(_=!0)}B.callback?(H!=="local"&&B.callback(_,void 0),H!=="global"&&C&&B.callback(_,C)):(H!=="local"&&(B.value=B.type=="boolean"?!!_:_),H!=="global"&&C&&(C.state.vim.options[g]={value:_}))}function k(g,_,C){var P=$t[g];C=C||{};var B=C.scope;if(!P)return new Error("Unknown option: "+g);if(P.callback){var H=_&&P.callback(void 0,_);return B!=="global"&&H!==void 0?H:B!=="local"?P.callback():void 0}var H=B!=="global"&&_&&_.state.vim.options[g];return(H||B!=="local"&&P||{}).value}function w(){this.latestRegister=void 0,this.isPlaying=!1,this.isRecording=!1,this.replaySearchQueries=[],this.onRecordingDone=void 0,this.lastInsertModeChanges=dn()}function I(g){return g.state.vim||(g.state.vim={inputState:new A,lastEditInputState:void 0,lastEditActionCommand:void 0,lastHPos:-1,lastHSPos:-1,lastMotion:null,marks:{},insertMode:!1,insertModeReturn:!1,insertModeRepeat:void 0,visualMode:!1,visualLine:!1,visualBlock:!1,lastSelection:null,lastPastedText:null,sel:{},options:{},expectLiteralNext:!1}),g.state.vim}function D(){Pe={searchQuery:null,searchIsReversed:!1,lastSubstituteReplacePart:void 0,jumpList:Fi(),macroModeState:new w,lastCharacterSearch:{increment:0,forward:!0,selectedCharacter:""},registerController:new G({}),searchHistoryController:new Q,exCommandHistoryController:new Q};for(var g in $t){var _=$t[g];_.value=_.defaultValue}}function E(g){function _(Y){typeof Y=="string"?bt.value=Y:bt=null}if(g[0]=="<"){var C=g.toLowerCase().slice(1,-1),P=C.split("-");if(C=P.pop()||"",C=="lt")g="<";else if(C=="space")g=" ";else if(C=="cr")g=`
1396
+ `;else if(rr[C]){var B=bt.value,H={key:rr[C],target:{value:B,selectionEnd:B.length,selectionStart:B.length}};bt.onKeyDown&&bt.onKeyDown(H,bt.value,_),bt&&bt.onKeyUp&&bt.onKeyUp(H,bt.value,_);return}}if(g==`
1397
+ `){var K=bt;bt=null,K.onClose&&K.onClose(K.value)}else bt.value=(bt.value||"")+g}function L(g,_,C){var P=Pi;if(C){if(Qn.indexOf(C)!=-1)return;Qn.push(C),Pi=C.noremap!=0}try{for(var B=I(g),H=/<(?:[CSMA]-)*\w+>|./gi,K;K=H.exec(_);){var Y=K[0],J=B.insertMode;if(bt){E(Y);continue}var re=ft.handleKey(g,Y,"mapping");if(!re&&J&&B.insertMode){if(Y[0]=="<"){var se=Y.toLowerCase().slice(1,-1),ve=se.split("-");if(se=ve.pop()||"",se=="lt")Y="<";else if(se=="space")Y=" ";else if(se=="cr")Y=`
1398
+ `;else{if(rr.hasOwnProperty(se)){Y=rr[se],So(g,Y);continue}Y=Y[0],H.lastIndex=K.index+1}}g.replaceSelection(Y)}}}finally{if(Qn.pop(),Pi=Qn.length?P:!1,!Qn.length&&bt){var xe=bt;bt=null,Yn(g,xe)}}}function z(g,_){var C=g.key;if(!Sn[C]){C.length>1&&C[0]=="n"&&(C=C.replace("Numpad","")),C=Zn[C]||C;var P="";if(g.ctrlKey&&(P+="C-"),g.altKey&&(P+="A-"),g.metaKey&&(P+="M-"),De.isMac&&g.altKey&&!g.metaKey&&!g.ctrlKey&&(P=P.slice(2)),(P||C.length>1)&&g.shiftKey&&(P+="S-"),_&&!_.expectLiteralNext&&C.length==1){if(cn.keymap&&C in cn.keymap)(cn.remapCtrl!=0||!P)&&(C=cn.keymap[C]);else if(C.charCodeAt(0)>255){var B=g.code&&g.code.slice(-1)||"";g.shiftKey||(B=B.toLowerCase()),B&&(C=B)}}return P+=C,P.length>1&&(P="<"+P+">"),P}}function F(g,_){cn.string!==g&&(cn=O(g)),cn.remapCtrl=_}function O(g){function _(P){return P.split(/\\?(.)/).filter(Boolean)}var C={};return g?(g.split(/((?:[^\\,]|\\.)+),/).map(function(P){if(P){var B=P.split(/((?:[^\\;]|\\.)+);/);if(B.length==3){var H=_(B[1]),K=_(B[2]);if(H.length!==K.length)return;for(var Y=0;Y<H.length;++Y)C[H[Y]]=K[Y]}else if(B.length==1){var J=_(P);if(J.length%2!==0)return;for(var Y=0;Y<J.length;Y+=2)C[J[Y]]=J[Y+1]}}}),{keymap:C,string:g}):{keymap:C,string:""}}function A(){this.prefixRepeat=[],this.motionRepeat=[],this.operator=null,this.operatorArgs=null,this.motion=null,this.motionArgs=null,this.keyBuffer=[],this.registerName=null,this.changeQueue=null}function S(g,_){g.state.vim.inputState=new A,g.state.vim.expectLiteralNext=!1,De.signal(g,"vim-command-done",_)}function N(){this.removed=[],this.inserted=""}function W(g,_,C){this.clear(),this.keyBuffer=[g||""],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!!_,this.blockwise=!!C}function V(g,_){var C=Pe.registerController.registers;if(!g||g.length!=1)throw Error("Register name must be 1 character");C[g]=_,_o.push(g)}function G(g){this.registers=g,this.unnamedRegister=g['"']=new W,g["."]=new W,g[":"]=new W,g["/"]=new W,g["+"]=new W}function Q(){this.historyBuffer=[],this.iterator=0,this.initialPrefix=null}function te(g,_){nn[g]=_}function le(g,_){for(var C=[],P=0;P<_;P++)C.push(g);return C}function ne(g,_){no[g]=_}function ue(g,_){fn[g]=_}function he(g,_,C){var P=g.state.vim,B=P.insertMode||P.visualMode,H=Math.min(Math.max(g.firstLine(),_.line),g.lastLine()),K=g.getLine(H),Y=K.length-1+ +!!B,J=Math.min(Math.max(0,_.ch),Y),re=K.charCodeAt(J);if(56320<=re&&re<=57343){var se=1;C&&C.line==H&&C.ch>J&&(se=-1),J+=se,J>Y&&(J-=2)}return new Ie(H,J)}function ce(g){var _={};for(var C in g)g.hasOwnProperty(C)&&(_[C]=g[C]);return _}function me(g,_,C){return typeof _=="object"&&(C=_.ch,_=_.line),new Ie(g.line+_,g.ch+C)}function _e(g,_,C,P){P.operator&&(C="operatorPending");for(var B,H=[],K=[],Y=Pi?_.length-Nr:0,J=Y;J<_.length;J++){var re=_[J];C=="insert"&&re.context!="insert"||re.context&&re.context!=C||P.operator&&re.type=="action"||!(B=Ae(g,re.keys))||(B=="partial"&&H.push(re),B=="full"&&K.push(re))}return{partial:H.length&&H,full:K.length&&K}}function Ae(g,_){var C=_.slice(-11)=="<character>",P=_.slice(-10)=="<register>";if(C||P){var B=_.length-(C?11:10),H=g.slice(0,B),K=_.slice(0,B);return H==K&&g.length>B?"full":K.indexOf(H)==0?"partial":!1}return g==_?"full":_.indexOf(g)==0?"partial":!1}function Me(g){var _=/^.*(<[^>]+>)$/.exec(g),C=_?_[1]:g.slice(-1);if(C.length>1)switch(C){case"<CR>":C=`
1399
+ `;break;case"<Space>":C=" ";break;default:C=""}return C}function Ye(g,_,C){return function(){for(var P=0;P<C;P++)_(g)}}function Ve(g){return new Ie(g.line,g.ch)}function it(g,_){return g.ch==_.ch&&g.line==_.line}function lt(g,_){return g.line<_.line?!0:g.line==_.line&&g.ch<_.ch}function nt(g,_){return arguments.length>2&&(_=nt.apply(void 0,Array.prototype.slice.call(arguments,1))),lt(g,_)?g:_}function Ot(g,_){return arguments.length>2&&(_=Ot.apply(void 0,Array.prototype.slice.call(arguments,1))),lt(g,_)?_:g}function bi(g,_,C){var P=lt(g,_),B=lt(_,C);return P&&B}function kt(g,_){return g.getLine(_).length}function ci(g){return g.trim?g.trim():g.replace(/^\s+|\s+$/g,"")}function _n(g){return g.replace(/([.?*+$\[\]\/\\(){}|\-])/g,"\\$1")}function ui(g,_,C){var P=kt(g,_),B=new Array(C-P+1).join(" ");g.setCursor(new Ie(_,P)),g.replaceRange(B,g.getCursor())}function tn(g,_){var C=[],P=g.listSelections(),B=Ve(g.clipPos(_)),H=!it(_,B),K=g.getCursor("head"),Y=ht(P,K),J=it(P[Y].head,P[Y].anchor),re=P.length-1,se=re-Y>Y?re:0,ve=P[se].anchor,xe=Math.min(ve.line,B.line),de=Math.max(ve.line,B.line),we=ve.ch,Re=B.ch,Te=P[se].head.ch-we,Be=Re-we;Te>0&&Be<=0?(we++,H||Re--):Te<0&&Be>=0?(we--,J||Re++):Te<0&&Be==-1&&(we--,Re++);for(var Xe=xe;Xe<=de;Xe++){var Qe={anchor:new Ie(Xe,we),head:new Ie(Xe,Re)};C.push(Qe)}return g.setSelections(C),_.ch=Re,ve.ch=we,ve}function Kn(g,_,C){for(var P=[],B=0;B<C;B++){var H=me(_,B,0);P.push({anchor:H,head:H})}g.setSelections(P,0)}function ht(g,_,C){for(var P=0;P<g.length;P++){var B=it(g[P].anchor,_),H=it(g[P].head,_);if(B||H)return P}return-1}function je(g,_){var C=_.lastSelection,P=function(){var H=g.listSelections(),K=H[0],Y=H[H.length-1],J=lt(K.anchor,K.head)?K.anchor:K.head,re=lt(Y.anchor,Y.head)?Y.head:Y.anchor;return[J,re]},B=function(){var H=g.getCursor(),K=g.getCursor(),Y=C.visualBlock;if(Y){var J=Y.width,re=Y.height;K=new Ie(H.line+re,H.ch+J);for(var se=[],ve=H.line;ve<K.line;ve++){var xe=new Ie(ve,H.ch),de=new Ie(ve,K.ch),we={anchor:xe,head:de};se.push(we)}g.setSelections(se)}else{var Re=C.anchorMark.find(),Te=C.headMark.find(),Be=Te.line-Re.line,Xe=Te.ch-Re.ch;K={line:K.line+Be,ch:Be?K.ch:Xe+K.ch},C.visualLine&&(H=new Ie(H.line,0),K=new Ie(K.line,kt(g,K.line))),g.setSelection(H,K)}return[H,K]};return _.visualMode?P():B()}function Et(g,_){var C=_.sel.anchor,P=_.sel.head;_.lastPastedText&&(P=g.posFromIndex(g.indexFromPos(C)+_.lastPastedText.length),_.lastPastedText=null),_.lastSelection={anchorMark:g.setBookmark(C),headMark:g.setBookmark(P),anchor:Ve(C),head:Ve(P),visualMode:_.visualMode,visualLine:_.visualLine,visualBlock:_.visualBlock}}function sn(g,_,C,P){var B=g.state.vim.sel,H=P?_:B.head,K=P?_:B.anchor,Y;return lt(C,_)&&(Y=C,C=_,_=Y),lt(H,K)?(H=nt(_,H),K=Ot(K,C)):(K=nt(_,K),H=Ot(H,C),H=me(H,0,-1),H.ch==-1&&H.line!=g.firstLine()&&(H=new Ie(H.line-1,kt(g,H.line-1)))),[K,H]}function An(g,_,B){var P=g.state.vim;_=_||P.sel;var B=B||P.visualLine?"line":P.visualBlock?"block":"char",H=Pn(g,_,B);g.setSelections(H.ranges,H.primary)}function Pn(g,_,C,P){var B=Ve(_.head),H=Ve(_.anchor);if(C=="char"){var K=!P&&!lt(_.head,_.anchor)?1:0,Y=lt(_.head,_.anchor)?1:0;return B=me(_.head,0,K),H=me(_.anchor,0,Y),{ranges:[{anchor:H,head:B}],primary:0}}if(C=="line"){if(lt(_.head,_.anchor))B.ch=0,H.ch=kt(g,H.line);else{H.ch=0;var J=g.lastLine();B.line>J&&(B.line=J),B.ch=kt(g,B.line)}return{ranges:[{anchor:H,head:B}],primary:0}}if(C=="block"){var re=Math.min(H.line,B.line),se=H.ch,ve=Math.max(H.line,B.line),xe=B.ch;se<xe?xe+=1:se+=1;for(var de=ve-re+1,we=B.line==re?0:de-1,Re=[],Te=0;Te<de;Te++)Re.push({anchor:new Ie(re+Te,se),head:new Ie(re+Te,xe)});return{ranges:Re,primary:we}}}function Gn(g){var _=g.getCursor("head");return g.getSelection().length==1&&(_=nt(_,g.getCursor("anchor"))),_}function an(g,_){var C=g.state.vim;_!==!1&&g.setCursor(he(g,C.sel.head)),Et(g,C),C.visualMode=!1,C.visualLine=!1,C.visualBlock=!1,C.insertMode||De.signal(g,"vim-mode-change",{mode:"normal"})}function Mn(g,_,C){var P=g.getRange(_,C);if(/\n\s*$/.test(P)){var B=P.split(`
1400
+ `);B.pop();for(var H,H=B.pop();B.length>0&&H&&h(H);H=B.pop())C.line--,C.ch=0;H?(C.line--,C.ch=kt(g,C.line)):C.ch=0}}function Bn(g,_,C){_.ch=0,C.ch=0,C.line++}function jt(g){if(!g)return 0;var _=g.search(/\S/);return _==-1?g.length:_}function $n(g,_,C){var P=_.inclusive,B=_.innerWord,H=_.bigWord,K=_.noSymbol,Y=_.multiline,J=C||Gn(g),re=g.getLine(J.line),se=re,ve=J.line,xe=ve,de=J.ch,we,Re=K?Dr[0]:Di[0];if(B&&/\s/.test(re.charAt(de)))Re=function(Gt){return/\s/.test(Gt)};else{for(;!Re(re.charAt(de));)if(de++,de>=re.length){if(!Y)return null;de--,we=Mr(g,J,!0,H,!0);break}H?Re=Di[0]:(Re=Dr[0],Re(re.charAt(de))||(Re=Dr[1]))}for(var Te=de,Be=de;Re(re.charAt(Be))&&Be>=0;)Be--;if(Be++,we)Te=we.to,xe=we.line,se=g.getLine(xe),!se&&Te==0&&Te++;else for(;Re(re.charAt(Te))&&Te<re.length;)Te++;if(P){var Xe=Te,Qe=J.ch<=Be&&/\s/.test(re.charAt(J.ch));if(!Qe)for(;/\s/.test(se.charAt(Te))&&Te<se.length;)Te++;if(Xe==Te||Qe){for(var Ke=Be;/\s/.test(re.charAt(Be-1))&&Be>0;)Be--;!Be&&!Qe&&(Be=Ke)}}return{start:new Ie(ve,Be),end:new Ie(xe,Te)}}function Ar(g,_,C){var P=_;if(!De.findMatchingTag||!De.findEnclosingTag)return{start:P,end:P};var B=De.findMatchingTag(g,_)||De.findEnclosingTag(g,_);return!B||!B.open||!B.close?{start:P,end:P}:C?{start:B.open.from,end:B.close.to}:{start:B.open.to,end:B.close.from}}function Yi(g,_,C){it(_,C)||Pe.jumpList.add(g,_,C)}function xi(g,_){Pe.lastCharacterSearch.increment=g,Pe.lastCharacterSearch.forward=_.forward,Pe.lastCharacterSearch.selectedCharacter=_.selectedCharacter}function Qi(g,_,C,P){var B=Ve(g.getCursor()),H=C?1:-1,K=C?g.lineCount():-1,Y=B.ch,J=B.line,re=g.getLine(J),se={lineText:re,nextCh:re.charAt(Y),lastCh:null,index:Y,symb:P,reverseSymb:(C?{")":"(","}":"{"}:{"(":")","{":"}"})[P],forward:C,depth:0,curMoveThrough:!1},ve=Ai[P];if(!ve)return B;var xe=Mi[ve].init,de=Mi[ve].isComplete;for(xe&&xe(se);J!==K&&_;){if(se.index+=H,se.nextCh=se.lineText.charAt(se.index),!se.nextCh){if(J+=H,se.lineText=g.getLine(J)||"",H>0)se.index=0;else{var we=se.lineText.length;se.index=we>0?we-1:0}se.nextCh=se.lineText.charAt(se.index)}de(se)&&(B.line=J,B.ch=se.index,_--)}return se.nextCh||se.curMoveThrough?new Ie(J,se.index):B}function Mr(g,_,C,P,B){var H=_.line,K=_.ch,Y=g.getLine(H),J=C?1:-1,re=P?Di:Dr;if(B&&Y==""){if(H+=J,Y=g.getLine(H),!s(g,H))return null;K=C?0:Y.length}for(;;){if(B&&Y=="")return{from:0,to:0,line:H};for(var se=J>0?Y.length:-1,ve=se,xe=se;K!=se;){for(var de=!1,we=0;we<re.length&&!de;++we)if(re[we](Y.charAt(K))){for(ve=K;K!=se&&re[we](Y.charAt(K));)K+=J;if(xe=K,de=ve!=xe,ve==_.ch&&H==_.line&&xe==ve+J)continue;return{from:Math.min(ve,xe+1),to:Math.max(ve,xe),line:H}}de||(K+=J)}if(H+=J,!s(g,H))return null;Y=g.getLine(H),K=J>0?0:Y.length}}function qn(g,_,C,P,B,H){var K=Ve(_),Y=[];(P&&!B||!P&&B)&&C++;for(var J=!P||!B,re=0;re<C;re++){var se=Mr(g,_,P,H,J);if(!se){var ve=kt(g,g.lastLine());Y.push(P?{line:g.lastLine(),from:ve,to:ve}:{line:0,from:0,to:0});break}Y.push(se),_=new Ie(se.line,P?se.to-1:se.from)}var xe=Y.length!=C,de=Y[0],we=Y.pop();return P&&!B?(!xe&&(de.from!=K.ch||de.line!=K.line)&&(we=Y.pop()),new Ie(we.line,we.from)):P&&B?new Ie(we.line,we.to-1):!P&&B?(!xe&&(de.to!=K.ch||de.line!=K.line)&&(we=Y.pop()),new Ie(we.line,we.to)):new Ie(we.line,we.from)}function $r(g,_,C,P,B){var H=_,K=new Ie(H.line+C.repeat-1,1/0),Y=g.clipPos(K);return Y.ch--,B||(P.lastHPos=1/0,P.lastHSPos=g.charCoords(Y,"div").left),K}function Tr(g,_,C,P,B){for(var H=B||g.getCursor(),K=H.ch,Y,J=0;J<_;J++){var re=g.getLine(H.line);if(Y=ks(K,re,P,C),Y==-1)return null;K=Y}return new Ie(g.getCursor().line,Y)}function Cs(g,_){var C=g.getCursor().line;return he(g,new Ie(C,_-1))}function Si(g,_,C,P){!y(C,br)&&!Pt.test(C)||(_.marks[C]&&_.marks[C].clear(),_.marks[C]=g.setBookmark(P))}function ks(g,_,C,P,B){var H;return P?(H=_.indexOf(C,g+1),H!=-1):(H=_.lastIndexOf(C,g-1),H!=-1),H}function Ko(g,_,C,P,B){function H(Be){return!/\S/.test(g.getLine(Be))}function K(Be,Xe,Qe){return Qe?H(Be)!=H(Be+Xe):!H(Be)&&H(Be+Xe)}function Y(Be){P=P>0?1:-1;var Xe=g.ace.session.getFoldLine(Be);Xe&&Be+P>Xe.start.row&&Be+P<Xe.end.row&&(P=(P>0?Xe.end.row:Xe.start.row)-Be)}var J=_.line,re=g.firstLine(),se=g.lastLine(),ve,xe,de=J;if(P){for(;re<=de&&de<=se&&C>0;)Y(de),K(de,P)&&C--,de+=P;return new Ie(de,0)}var we=g.state.vim;if(we.visualLine&&K(J,1,!0)){var Re=we.sel.anchor;K(Re.line,-1,!0)&&(!B||Re.line!=J)&&(J+=1)}var Te=H(J);for(de=J;de<=se&&C;de++)K(de,1,!0)&&(!B||H(de)!=Te)&&C--;for(xe=new Ie(de,0),de>se&&!Te?Te=!0:B=!1,de=J;de>re&&!((!B||H(de)==Te||de==J)&&K(de,-1,!0));de--);return ve=new Ie(de,0),{start:ve,end:xe}}function fo(g,_,C,P,B){function H(re){re.pos+re.dir<0||re.pos+re.dir>=re.line.length?re.line=null:re.pos+=re.dir}function K(re,se,ve,xe){var de=re.getLine(se),we={line:de,ln:se,pos:ve,dir:xe};if(we.line==="")return{ln:we.ln,pos:we.pos};var Re=we.pos;for(H(we);we.line!==null;){if(Re=we.pos,m(we.line[we.pos])){if(!B)return{ln:we.ln,pos:we.pos+1};for(H(we);we.line!==null&&h(we.line[we.pos]);)Re=we.pos,H(we);return{ln:we.ln,pos:Re+1}}H(we)}return{ln:we.ln,pos:Re+1}}function Y(re,se,ve,xe){var de=re.getLine(se),we={line:de,ln:se,pos:ve,dir:xe};if(we.line==="")return{ln:we.ln,pos:we.pos};var Re=we.pos;for(H(we);we.line!==null;){if(!h(we.line[we.pos])&&!m(we.line[we.pos]))Re=we.pos;else if(m(we.line[we.pos]))return B?h(we.line[we.pos+1])?{ln:we.ln,pos:we.pos+1}:{ln:we.ln,pos:Re}:{ln:we.ln,pos:Re};H(we)}return we.line=de,B&&h(we.line[we.pos])?{ln:we.ln,pos:we.pos}:{ln:we.ln,pos:Re}}for(var J={ln:_.line,pos:_.ch};C>0;)P<0?J=Y(g,J.ln,J.pos,P):J=K(g,J.ln,J.pos,P),C--;return new Ie(J.ln,J.pos)}function Zi(g,_,C,P){function B(J,re){if(re.pos+re.dir<0||re.pos+re.dir>=re.line.length){if(re.ln+=re.dir,!s(J,re.ln)){re.line=null,re.ln=null,re.pos=null;return}re.line=J.getLine(re.ln),re.pos=re.dir>0?0:re.line.length-1}else re.pos+=re.dir}function H(J,re,se,ve){var Te=J.getLine(re),xe=Te==="",de={line:Te,ln:re,pos:se,dir:ve},we={ln:de.ln,pos:de.pos},Re=de.line==="";for(B(J,de);de.line!==null;){if(we.ln=de.ln,we.pos=de.pos,de.line===""&&!Re)return{ln:de.ln,pos:de.pos};if(xe&&de.line!==""&&!h(de.line[de.pos]))return{ln:de.ln,pos:de.pos};m(de.line[de.pos])&&!xe&&(de.pos===de.line.length-1||h(de.line[de.pos+1]))&&(xe=!0),B(J,de)}var Te=J.getLine(we.ln);we.pos=0;for(var Be=Te.length-1;Be>=0;--Be)if(!h(Te[Be])){we.pos=Be;break}return we}function K(J,re,se,ve){var Re=J.getLine(re),xe={line:Re,ln:re,pos:se,dir:ve},de={ln:xe.ln,pos:null},we=xe.line==="";for(B(J,xe);xe.line!==null;){if(xe.line===""&&!we)return de.pos!==null?de:{ln:xe.ln,pos:xe.pos};if(!(!m(xe.line[xe.pos])||de.pos===null||xe.ln===de.ln&&xe.pos+1===de.pos))return de;xe.line!==""&&!h(xe.line[xe.pos])&&(we=!1,de={ln:xe.ln,pos:xe.pos}),B(J,xe)}var Re=J.getLine(de.ln);de.pos=0;for(var Te=0;Te<Re.length;++Te)if(!h(Re[Te])){de.pos=Te;break}return de}for(var Y={ln:_.line,pos:_.ch};C>0;)P<0?Y=K(g,Y.ln,Y.pos,P):Y=H(g,Y.ln,Y.pos,P),C--;return new Ie(Y.ln,Y.pos)}function mn(g,_,C,P){var B=_,H,K,Y={"(":/[()]/,")":/[()]/,"[":/[[\]]/,"]":/[[\]]/,"{":/[{}]/,"}":/[{}]/,"<":/[<>]/,">":/[<>]/}[C],J={"(":"(",")":"(","[":"[","]":"[","{":"{","}":"{","<":"<",">":"<"}[C],re=g.getLine(B.line).charAt(B.ch),se=re===J?1:0;if(H=g.scanForBracket(new Ie(B.line,B.ch+se),-1,void 0,{bracketRegex:Y}),K=g.scanForBracket(new Ie(B.line,B.ch+se),1,void 0,{bracketRegex:Y}),!H||!K)return null;if(H=H.pos,K=K.pos,H.line==K.line&&H.ch>K.ch||H.line>K.line){var ve=H;H=K,K=ve}return P?K.ch+=1:H.ch+=1,{start:H,end:K}}function hi(g,_,C,P){var B=Ve(_),H=g.getLine(B.line),K=H.split(""),Y,J,re,se,ve=K.indexOf(C);if(B.ch<ve)B.ch=ve;else if(ve<B.ch&&K[B.ch]==C){var xe=/string/.test(g.getTokenTypeAt(me(_,0,1))),de=/string/.test(g.getTokenTypeAt(_)),we=xe&&!de;we||(J=B.ch,--B.ch)}if(K[B.ch]==C&&!J)Y=B.ch+1;else for(re=B.ch;re>-1&&!Y;re--)K[re]==C&&(Y=re+1);if(Y&&!J)for(re=Y,se=K.length;re<se&&!J;re++)K[re]==C&&(J=re);return!Y||!J?{start:B,end:B}:(P&&(--Y,++J),{start:new Ie(B.line,Y),end:new Ie(B.line,J)})}function Ci(){}function vn(g){var _=g.state.vim;return _.searchState_||(_.searchState_=new Ci)}function Wn(g){return Ji(g,"/")}function pr(g){return po(g,"/")}function Ji(g,_){var C=po(g,_)||[];if(!C.length)return[];var P=[];if(C[0]===0){for(var B=0;B<C.length;B++)typeof C[B]=="number"&&P.push(g.substring(C[B]+1,C[B+1]));return P}}function po(g,_){_||(_="/");for(var C=!1,P=[],B=0;B<g.length;B++){var H=g.charAt(B);!C&&H==_&&P.push(B),C=!C&&H=="\\"}return P}function Go(g){for(var _="|(){",C="}",P=!1,B=[],H=-1;H<g.length;H++){var K=g.charAt(H)||"",Y=g.charAt(H+1)||"",J=Y&&_.indexOf(Y)!=-1;P?((K!=="\\"||!J)&&B.push(K),P=!1):K==="\\"?(P=!0,Y&&C.indexOf(Y)!=-1&&(J=!0),(!J||Y==="\\")&&B.push(K)):(B.push(K),J&&Y!=="\\"&&B.push("\\"))}return B.join("")}function _s(g){for(var _=!1,C=[],P=-1;P<g.length;P++){var B=g.charAt(P)||"",H=g.charAt(P+1)||"";Bi[B+H]?(C.push(Bi[B+H]),P++):_?(C.push(B),_=!1):B==="\\"?(_=!0,n(H)||H==="$"?C.push("$"):H!=="/"&&H!=="\\"&&C.push("\\")):(B==="$"&&C.push("$"),C.push(B),H==="/"&&C.push("\\"))}return C.join("")}function qo(g){for(var _=new De.StringStream(g),C=[];!_.eol();){for(;_.peek()&&_.peek()!="\\";)C.push(_.next());var P=!1;for(var B in Ao)if(_.match(B,!0)){P=!0,C.push(Ao[B]);break}P||C.push(_.next())}return C.join("")}function Xi(g,_,C){var P=Pe.registerController.getRegister("/");if(P.setText(g),g instanceof RegExp)return g;var B=pr(g),H,K;if(!B.length)H=g;else{H=g.substring(0,B[0]);var Y=g.substring(B[0]);K=Y.indexOf("i")!=-1}if(!H)return null;k("pcre")||(H=Go(H)),C&&(_=/^[^A-Z]*$/.test(H));var J=new RegExp(H,_||K?"im":"m");return J}function Ni(g){typeof g=="string"&&(g=document.createElement(g));for(var _,C=1;C<arguments.length;C++)if(_=arguments[C])if(typeof _!="object"&&(_=document.createTextNode(_)),_.nodeType)g.appendChild(_);else for(var P in _)Object.prototype.hasOwnProperty.call(_,P)&&(P[0]==="$"?g.style[P.slice(1)]=_[P]:g.setAttribute(P,_[P]));return g}function _t(g,_){var C=Ni("div",{$color:"red",$whiteSpace:"pre",class:"cm-vim-message"},_);g.openNotification?g.openNotification(C,{bottom:!0,duration:5e3}):alert(C.innerText)}function Yo(g,_){return Ni("div",{$display:"flex"},Ni("span",{$fontFamily:"monospace",$whiteSpace:"pre",$flex:1},g,Ni("input",{type:"text",autocorrect:"off",autocapitalize:"off",spellcheck:"false",$width:"100%"})),_&&Ni("span",{$color:"#888"},_))}function Yn(g,_){if(Qn.length){_.value||(_.value=""),bt=_;return}var C=Yo(_.prefix,_.desc);if(g.openDialog)g.openDialog(C,_.onClose,{onKeyDown:_.onKeyDown,onKeyUp:_.onKeyUp,bottom:!0,selectValueOnOpen:!1,value:_.value});else{var P="";typeof _.prefix!="string"&&_.prefix&&(P+=_.prefix.textContent),_.desc&&(P+=" "+_.desc),_.onClose(prompt(P,""))}}function yn(g,_){if(g instanceof RegExp&&_ instanceof RegExp){for(var C=["global","multiline","ignoreCase","source"],P=0;P<C.length;P++){var B=C[P];if(g[B]!==_[B])return!1}return!0}return!1}function Zt(g,_,C,P){if(_){var B=vn(g),H=Xi(_,!!C,!!P);if(H)return Lr(g,H),yn(H,B.getQuery())||B.setQuery(H),H}}function hn(g){if(g.source.charAt(0)=="^")var _=!0;return{token:function(C){if(_&&!C.sol()){C.skipToEnd();return}var P=C.match(g,!1);if(P)return P[0].length==0?(C.next(),"searching"):!C.sol()&&(C.backUp(1),!g.exec(C.next()+P[0]))?(C.next(),null):(C.match(g),"searching");for(;!C.eol()&&(C.next(),!C.match(g,!1)););},query:g}}function Lr(g,_){clearTimeout(Wt);var C=vn(g);C.highlightTimeout=Wt,Wt=setTimeout(function(){if(g.state.vim){var P=vn(g);P.highlightTimeout=null;var B=P.getOverlay();(!B||_!=B.query)&&(B&&g.removeOverlay(B),B=hn(_),g.addOverlay(B),g.showMatchesOnScrollbar&&(P.getScrollbarAnnotate()&&P.getScrollbarAnnotate().clear(),P.setScrollbarAnnotate(g.showMatchesOnScrollbar(_))),P.setOverlay(B))}},50)}function Tn(g,_,C,P){return P===void 0&&(P=1),g.operation(function(){for(var B=g.getCursor(),H=g.getSearchCursor(C,B),K=0;K<P;K++){var Y=H.find(_);if(K==0&&Y&&it(H.from(),B)){var J=_?H.from():H.to();Y=H.find(_),Y&&!Y[0]&&it(H.from(),J)&&g.getLine(J.line).length==J.ch&&(Y=H.find(_))}if(!Y&&(H=g.getSearchCursor(C,_?new Ie(g.lastLine()):new Ie(g.firstLine(),0)),!H.find(_)))return}return H.from()})}function Er(g,_,C,P,B){return P===void 0&&(P=1),g.operation(function(){var H=g.getCursor(),K=g.getSearchCursor(C,H),Y=K.find(!_);!B.visualMode&&Y&&it(K.from(),H)&&K.find(!_);for(var J=0;J<P;J++)if(Y=K.find(_),!Y&&(K=g.getSearchCursor(C,_?new Ie(g.lastLine()):new Ie(g.firstLine(),0)),!K.find(_)))return;return[K.from(),K.to()]})}function er(g){var _=vn(g);_.highlightTimeout&&(clearTimeout(_.highlightTimeout),_.highlightTimeout=null),g.removeOverlay(vn(g).getOverlay()),_.setOverlay(null),_.getScrollbarAnnotate()&&(_.getScrollbarAnnotate().clear(),_.setScrollbarAnnotate(null))}function go(g,_,C){return typeof g!="number"&&(g=g.line),_ instanceof Array?y(g,_):typeof C=="number"?g>=_&&g<=C:g==_}function gr(g){var _=g.ace.renderer;return{top:_.getFirstFullyVisibleRow(),bottom:_.getLastFullyVisibleRow()}}function ki(g,_,C){if(C=="'"||C=="`")return Pe.jumpList.find(g,-1)||new Ie(0,0);if(C==".")return Rr(g);var P=_.marks[C];return P&&P.find()}function Rr(g){if(g.getLastEditEnd)return g.getLastEditEnd();for(var _=g.doc.history.done,C=_.length;C--;)if(_[C].changes)return Ve(_[C].changes[0].to)}function qr(g,_,C,P,B,H,K,Y,J){function re(){g.operation(function(){for(;!Re;)se(),xe();de()})}function se(){var Qe=g.getRange(H.from(),H.to()),Ke=Qe.replace(K,Y),Gt=H.to().line;H.replace(Ke),Be=H.to().line,B+=Be-Gt,Xe=Be<Gt}function ve(){var Qe=Te&&Ve(H.to()),Ke=H.findNext();return Ke&&!Ke[0]&&Qe&&it(H.from(),Qe)&&(Ke=H.findNext()),Ke}function xe(){for(;ve()&&go(H.from(),P,B);)if(!(!C&&H.from().line==Be&&!Xe)){g.scrollIntoView(H.from(),30),g.setSelection(H.from(),H.to()),Te=H.from(),Re=!1;return}Re=!0}function de(Qe){if(Qe&&Qe(),g.focus(),Te){g.setCursor(Te);var Ke=g.state.vim;Ke.exMode=!1,Ke.lastHPos=Ke.lastHSPos=Te.ch}J&&J()}function we(Qe,Ke,Gt){De.e_stop(Qe);var gt=z(Qe);switch(gt){case"y":se(),xe();break;case"n":xe();break;case"a":var It=J;J=void 0,g.operation(re),J=It;break;case"l":se();case"q":case"<Esc>":case"<C-c>":case"<C-[>":de(Gt)}return Re&&de(Gt),!0}g.state.vim.exMode=!0;var Re=!1,Te,Be,Xe;if(xe(),Re){_t(g,"No matches for "+K.source);return}if(!_){re(),J&&J();return}Yn(g,{prefix:Ni("span","replace with ",Ni("strong",Y)," (y/n/a/q/l)"),onKeyDown:we})}function ii(g,_){var C=g.state.vim,P=Pe.macroModeState,B=Pe.registerController.getRegister("."),H=P.isPlaying,K=P.lastInsertModeChanges;H||(g.off("change",Qr),C.insertEnd&&C.insertEnd.clear(),C.insertEnd=null,De.off(g.getInputField(),"keydown",Ir)),!H&&C.insertModeRepeat>1&&(xo(g,C,C.insertModeRepeat-1,!0),C.lastEditInputState.repeatOverride=C.insertModeRepeat),delete C.insertModeRepeat,C.insertMode=!1,_||g.setCursor(g.getCursor().line,g.getCursor().ch-1),g.setOption("keyMap","vim"),g.setOption("disableInput",!0),g.toggleOverwrite(!1),B.setText(K.changes.join("")),De.signal(g,"vim-mode-change",{mode:"normal"}),P.isRecording&&Ln(P)}function Yr(g){ln.unshift(g)}function mo(g,_,C,P,B){var H={keys:g,type:_};H[_]=C,H[_+"Args"]=P;for(var K in B)H[K]=B[K];Yr(H)}function vo(g,_,C,P){var B=Pe.registerController.getRegister(P);if(P==":"){B.keyBuffer[0]&&Jn.processCommand(g,B.keyBuffer[0]),C.isPlaying=!1;return}var H=B.keyBuffer,K=0;C.isPlaying=!0,C.replaySearchQueries=B.searchQueries.slice(0);for(var Y=0;Y<H.length;Y++)for(var J=H[Y],re,se;J;)if(re=/<\w+-.+?>|<\w+>|./.exec(J),se=re[0],J=J.substring(re.index+se.length),ft.handleKey(g,se,"macro"),_.insertMode){var ve=B.insertModeChanges[K++].changes;Pe.macroModeState.lastInsertModeChanges.changes=ve,Jr(g,ve,1),ii(g)}C.isPlaying=!1}function yo(g,_){if(!g.isPlaying){var C=g.latestRegister,P=Pe.registerController.getRegister(C);P&&P.pushText(_)}}function Ln(g){if(!g.isPlaying){var _=g.latestRegister,C=Pe.registerController.getRegister(_);C&&C.pushInsertModeChanges&&C.pushInsertModeChanges(g.lastInsertModeChanges)}}function wo(g,_){if(!g.isPlaying){var C=g.latestRegister,P=Pe.registerController.getRegister(C);P&&P.pushSearchQuery&&P.pushSearchQuery(_)}}function Qr(g,_){var C=Pe.macroModeState,P=C.lastInsertModeChanges;if(!C.isPlaying)for(var B=g.state.vim;_;){if(P.expectCursorActivityForChange=!0,P.ignoreCount>1)P.ignoreCount--;else if(_.origin=="+input"||_.origin=="paste"||_.origin===void 0){var H=g.listSelections().length;H>1&&(P.ignoreCount=H);var K=_.text.join(`
1401
+ `);if(P.maybeReset&&(P.changes=[],P.maybeReset=!1),K)if(g.state.overwrite&&!/\n/.test(K))P.changes.push([K]);else{if(K.length>1){var Y=B&&B.insertEnd&&B.insertEnd.find(),J=g.getCursor();if(Y&&Y.line==J.line){var re=Y.ch-J.ch;re>0&&re<K.length&&(P.changes.push([K,re]),K="")}}K&&P.changes.push(K)}}_=_.next}}function mr(g){var _=g.state.vim;if(_.insertMode){var C=Pe.macroModeState;if(C.isPlaying)return;var P=C.lastInsertModeChanges;P.expectCursorActivityForChange?P.expectCursorActivityForChange=!1:(P.maybeReset=!0,_.insertEnd&&_.insertEnd.clear(),_.insertEnd=g.setBookmark(g.getCursor(),{insertLeft:!0}))}else g.curOp.isVimOp||bo(g,_)}function bo(g,_,C){var P=g.getCursor("anchor"),B=g.getCursor("head");if(_.visualMode&&!g.somethingSelected()?an(g,!1):!_.visualMode&&!_.insertMode&&g.somethingSelected()&&(_.visualMode=!0,_.visualLine=!1,De.signal(g,"vim-mode-change",{mode:"visual"})),_.visualMode){var H=lt(B,P)?0:-1,K=lt(B,P)?-1:0;B=me(B,0,H),P=me(P,0,K),_.sel={anchor:P,head:B},Si(g,_,"<",nt(B,P)),Si(g,_,">",Ot(B,P))}else!_.insertMode&&!C&&(_.lastHPos=g.getCursor().ch)}function Zr(g,_){this.keyName=g,this.key=_.key,this.ctrlKey=_.ctrlKey,this.altKey=_.altKey,this.metaKey=_.metaKey,this.shiftKey=_.shiftKey}function Ir(g){var _=Pe.macroModeState,C=_.lastInsertModeChanges,P=De.keyName?De.keyName(g):g.key;P&&(P.indexOf("Delete")!=-1||P.indexOf("Backspace")!=-1)&&(C.maybeReset&&(C.changes=[],C.maybeReset=!1),C.changes.push(new Zr(P,g)))}function xo(g,_,C,P){function B(){Y?_i.processAction(g,_,_.lastEditActionCommand):_i.evalInput(g,_)}function H(se){if(K.lastInsertModeChanges.changes.length>0){se=_.lastEditActionCommand?se:1;var ve=K.lastInsertModeChanges;Jr(g,ve.changes,se)}}var K=Pe.macroModeState;K.isPlaying=!0;var Y=!!_.lastEditActionCommand,J=_.inputState;if(_.inputState=_.lastEditInputState,Y&&_.lastEditActionCommand.interlaceInsertRepeat)for(var re=0;re<C;re++)B(),H(1);else P||B(),H(C);_.inputState=J,_.insertMode&&!P&&ii(g),K.isPlaying=!1}function So(g,_){De.lookupKey(_,"vim-insert",function(C){return typeof C=="string"?De.commands[C](g):C(g),!0})}function Jr(g,_,C){var P=g.getCursor("head"),B=Pe.macroModeState.lastInsertModeChanges.visualBlock;B&&(Kn(g,P,B+1),C=g.listSelections().length,g.setCursor(P));for(var H=0;H<C;H++){B&&g.setCursor(me(P,H,0));for(var K=0;K<_.length;K++){var Y=_[K];if(Y instanceof Zr)So(g,Y.keyName);else if(typeof Y=="string")g.replaceSelection(Y);else{var J=g.getCursor(),re=me(J,0,Y[0].length-(Y[1]||0));g.replaceRange(Y[0],J,Y[1]?J:re),g.setCursor(re)}}}B&&g.setCursor(me(P,0,1))}function Qo(g,_,C,P){_.length>1&&_[0]=="n"&&(_=_.replace("numpad","")),_=xr[_]||_;var B="";if(C.ctrlKey&&(B+="C-"),C.altKey&&(B+="A-"),(B||_.length>1)&&C.shiftKey&&(B+="S-"),P&&!P.expectLiteralNext&&_.length==1){if(cn.keymap&&_ in cn.keymap)(cn.remapCtrl!==!1||!B)&&(_=cn.keymap[_]);else if(_.charCodeAt(0)>255){var H=C.code&&C.code.slice(-1)||"";C.shiftKey||(H=H.toLowerCase()),H&&(_=H)}}return B+=_,B.length>1&&(B="<"+B+">"),B}function vr(g){var _=new g.constructor;return Object.keys(g).forEach(function(C){if(C!="insertEnd"){var P=g[C];Array.isArray(P)?P=P.slice():P&&typeof P=="object"&&P.constructor!=Object&&(P=vr(P)),_[C]=P}}),g.sel&&(_.sel={head:g.sel.head&&Ve(g.sel.head),anchor:g.sel.anchor&&Ve(g.sel.anchor)}),_}function Xr(g,_,C){var P=!1,B=ft.maybeInitVimState_(g),H=B.visualBlock||B.wasInVisualBlock,K=g.ace.inMultiSelectMode;if(B.wasInVisualBlock&&!K?B.wasInVisualBlock=!1:K&&B.visualBlock&&(B.wasInVisualBlock=!0),_=="<Esc>"&&!B.insertMode&&!B.visualMode&&K)g.ace.exitMultiSelectMode();else if(H||!K||g.ace.inVirtualSelectionMode)P=ft.handleKey(g,_,C);else{var Y=vr(B),J=B.inputState.changeQueueList||[];g.operation(function(){g.curOp.isVimOp=!0;var re=0;g.ace.forEachSelection(function(){var se=g.ace.selection;g.state.vim.lastHPos=se.$desiredColumn==null?se.lead.column:se.$desiredColumn,g.state.vim.inputState.changeQueue=J[re];var ve=g.getCursor("head"),xe=g.getCursor("anchor"),de=lt(ve,xe)?0:-1,we=lt(ve,xe)?-1:0;ve=me(ve,0,de),xe=me(xe,0,we),g.state.vim.sel.head=ve,g.state.vim.sel.anchor=xe,P=zn(g,_,C),se.$desiredColumn=g.state.vim.lastHPos==-1?null:g.state.vim.lastHPos,g.ace.inVirtualSelectionMode&&(J[re]=g.state.vim.inputState.changeQueue),g.virtualSelectionMode()&&(g.state.vim=vr(Y)),re++}),g.curOp.cursorActivity&&!P&&(g.curOp.cursorActivity=!1),B.status=g.state.vim.status,g.state.vim=B,B.inputState.changeQueueList=J,B.inputState.changeQueue=null},!0)}return P&&!B.visualMode&&!B.insert&&B.visualMode!=g.somethingSelected()&&bo(g,B,!0),P}function tr(g,_){_.off("beforeEndOperation",tr);var C=_.state.cm.vimCmd;C&&_.execCommand(C.exec?C:C.name,C.args),_.curOp=_.prevOp}var En=e("../range").Range,Co=e("../lib/event_emitter").EventEmitter,ri=e("../lib/dom"),Zo=e("../lib/oop"),Jo=e("../lib/keys"),eo=e("../lib/event"),nr=e("../search").Search,Or=e("../lib/useragent"),to=e("../search_highlight").SearchHighlight,yr=e("../commands/multi_select_commands"),Xo=e("../mode/text").Mode.prototype.tokenRe,wr=e("../ext/hardwrap").hardWrap;e("../multi_select");var De=function(g){this.ace=g,this.state={},this.marks={},this.options={},this.$uid=0,this.onChange=this.onChange.bind(this),this.onSelectionChange=this.onSelectionChange.bind(this),this.onBeforeEndOperation=this.onBeforeEndOperation.bind(this),this.ace.on("change",this.onChange),this.ace.on("changeSelection",this.onSelectionChange),this.ace.on("beforeEndOperation",this.onBeforeEndOperation)};De.Pos=function(g,_){if(!(this instanceof Ie))return new Ie(g,_);this.line=g,this.ch=_},De.defineOption=function(g,_,C){},De.commands={redo:function(g){g.ace.redo()},undo:function(g){g.ace.undo()},newlineAndIndent:function(g){g.ace.insert(`
1402
+ `)},goLineLeft:function(g){g.ace.selection.moveCursorLineStart()},goLineRight:function(g){g.ace.selection.moveCursorLineEnd()}},De.keyMap={},De.addClass=De.rmClass=function(){},De.e_stop=De.e_preventDefault=eo.stopEvent,De.keyName=function(g){var _=Jo[g.keyCode]||g.key||"";return _.length==1&&(_=_.toUpperCase()),_=eo.getModifierString(g).replace(/(^|-)\w/g,function(C){return C.toUpperCase()})+_,_},De.keyMap.default=function(g){return function(_){var C=_.ace.commands.commandKeyBinding[g.toLowerCase()];return C&&_.ace.execCommand(C)!==!1}},De.lookupKey=function g(_,C,P){C||(C="default"),typeof C=="string"&&(C=De.keyMap[C]||De.keyMap.default);var B=typeof C=="function"?C(_):C[_];if(B===!1)return"nothing";if(B==="...")return"multi";if(B!=null&&P(B))return"handled";if(C.fallthrough){if(!Array.isArray(C.fallthrough))return g(_,C.fallthrough,P);for(var H=0;H<C.fallthrough.length;H++){var K=g(_,C.fallthrough[H],P);if(K)return K}}},De.findMatchingTag=function(g,_){return g.findMatchingTag(_)},De.findEnclosingTag=function(g,_){},De.signal=function(g,_,C){return g._signal(_,C)},De.on=eo.addListener,De.off=eo.removeListener,De.isWordChar=function(g){return g<""?/^\w$/.test(g):(Xo.lastIndex=0,Xo.test(g))},(function(){Zo.implement(De.prototype,Co),this.destroy=function(){this.ace.off("change",this.onChange),this.ace.off("changeSelection",this.onSelectionChange),this.ace.off("beforeEndOperation",this.onBeforeEndOperation),this.removeOverlay()},this.virtualSelectionMode=function(){return this.ace.inVirtualSelectionMode&&this.ace.selection.index},this.onChange=function(C){this.$lineHandleChanges&&this.$lineHandleChanges.push(C);var P={text:C.action[0]=="i"?C.lines:[]},B=this.curOp=this.curOp||{};B.changeHandlers||(B.changeHandlers=this._eventRegistry.change&&this._eventRegistry.change.slice()),B.lastChange?B.lastChange.next=B.lastChange=P:B.lastChange=B.change=P,this.$updateMarkers(C)},this.onSelectionChange=function(){var C=this.curOp=this.curOp||{};C.cursorActivityHandlers||(C.cursorActivityHandlers=this._eventRegistry.cursorActivity&&this._eventRegistry.cursorActivity.slice()),this.curOp.cursorActivity=!0,this.ace.inMultiSelectMode&&this.ace.keyBinding.removeKeyboardHandler(yr.keyboardHandler)},this.operation=function(C,P){if(!P&&this.curOp||P&&this.curOp&&this.curOp.force)return C();if((P||!this.ace.curOp)&&this.curOp&&this.onBeforeEndOperation(),!this.ace.curOp){var B=this.ace.prevOp;this.ace.startOperation({command:{name:"vim",scrollIntoView:"cursor"}})}var H=this.curOp=this.curOp||{};this.curOp.force=P;var K=C();return this.ace.curOp&&this.ace.curOp.command.name=="vim"&&(this.state.dialog&&(this.ace.curOp.command.scrollIntoView=this.ace.curOp.vimDialogScroll),this.ace.endOperation(),!H.cursorActivity&&!H.lastChange&&B&&(this.ace.prevOp=B)),(P||!this.ace.curOp)&&this.curOp&&this.onBeforeEndOperation(),K},this.onBeforeEndOperation=function(){var C=this.curOp;C&&(C.change&&this.signal("change",C.change,C),C&&C.cursorActivity&&this.signal("cursorActivity",null,C),this.curOp=null)},this.signal=function(C,P,B){var H=B?B[C+"Handlers"]:(this._eventRegistry||{})[C];if(H){H=H.slice();for(var K=0;K<H.length;K++)H[K](this,P)}},this.firstLine=function(){return 0},this.lastLine=function(){return this.ace.session.getLength()-1},this.lineCount=function(){return this.ace.session.getLength()},this.setCursor=function(C,P){typeof C=="object"&&(P=C.ch,C=C.line);var B=!this.curOp&&!this.ace.inVirtualSelectionMode;this.ace.inVirtualSelectionMode||this.ace.exitMultiSelectMode(),this.ace.session.unfold({row:C,column:P}),this.ace.selection.moveTo(C,P),B&&(this.ace.renderer.scrollCursorIntoView(),this.ace.endOperation())},this.getCursor=function(C){var P=this.ace.selection,B=C=="anchor"?P.isEmpty()?P.lead:P.anchor:C=="head"||!C?P.lead:P.getRange()[C];return v(B)},this.listSelections=function(C){var P=this.ace.multiSelect.rangeList.ranges;return!P.length||this.ace.inVirtualSelectionMode?[{anchor:this.getCursor("anchor"),head:this.getCursor("head")}]:P.map(function(B){return{anchor:this.clipPos(v(B.cursor==B.end?B.start:B.end)),head:this.clipPos(v(B.cursor))}},this)},this.setSelections=function(C,P){var B=this.ace.multiSelect,H=C.map(function(re){var se=b(re.anchor),ve=b(re.head),xe=En.comparePoints(se,ve)<0?new En.fromPoints(se,ve):new En.fromPoints(ve,se);return xe.cursor=En.comparePoints(xe.start,ve)?xe.end:xe.start,xe});if(this.ace.inVirtualSelectionMode){this.ace.selection.fromOrientedRange(H[0]);return}P?H[P]&&H.push(H.splice(P,1)[0]):H=H.reverse(),B.toSingleRange(H[0].clone());for(var K=this.ace.session,Y=0;Y<H.length;Y++){var J=K.$clipRangeToDocument(H[Y]);B.addRange(J)}},this.setSelection=function(C,P,B){var H=this.ace.selection;H.moveTo(C.line,C.ch),H.selectTo(P.line,P.ch),B&&B.origin=="*mouse"&&this.onBeforeEndOperation()},this.somethingSelected=function(C){return!this.ace.selection.isEmpty()},this.clipPos=function(C){var P=this.ace.session.$clipPositionToDocument(C.line,C.ch);return v(P)},this.foldCode=function(C){this.ace.session.$toggleFoldWidget(C.line,{})},this.markText=function(C){return{clear:function(){},find:function(){}}},this.$updateMarkers=function(C){var P=C.action=="insert",B=C.start,H=C.end,K=(H.row-B.row)*(P?1:-1),Y=(H.column-B.column)*(P?1:-1);P&&(H=B);for(var J in this.marks){var re=this.marks[J],se=En.comparePoints(re,B);if(!(se<0)){if(se===0&&P)if(!re.$insertRight)se=1;else{if(re.bias!=1){re.bias=-1;continue}se=1}var ve=P?se:En.comparePoints(re,H);if(ve>0){re.row+=K,re.column+=re.row==H.row?Y:0;continue}!P&&ve<=0&&(re.row=B.row,re.column=B.column,ve===0&&(re.bias=1))}}};var g=function(C,P,B,H){this.cm=C,this.id=P,this.row=B,this.column=H,C.marks[this.id]=this};g.prototype.clear=function(){delete this.cm.marks[this.id]},g.prototype.find=function(){return v(this)},this.setBookmark=function(C,P){var B=new g(this,this.$uid++,C.line,C.ch);return(!P||!P.insertLeft)&&(B.$insertRight=!0),this.marks[B.id]=B,B},this.moveH=function(C,P){if(P=="char"){var B=this.ace.selection;B.clearSelection(),B.moveCursorBy(0,C)}},this.findPosV=function(C,P,B,H){if(B=="page"){var K=this.ace.renderer,Y=K.layerConfig;P*=Math.floor(Y.height/Y.lineHeight),B="line"}if(B=="line"){var J=this.ace.session.documentToScreenPosition(C.line,C.ch);H!=null&&(J.column=H),J.row+=P,J.row=Math.min(Math.max(0,J.row),this.ace.session.getScreenLength()-1);var re=this.ace.session.screenToDocumentPosition(J.row,J.column);return v(re)}debugger},this.charCoords=function(C,P){if(P=="div"||!P){var B=this.ace.session.documentToScreenPosition(C.line,C.ch);return{left:B.column,top:B.row}}if(P=="local"){var H=this.ace.renderer,B=this.ace.session.documentToScreenPosition(C.line,C.ch),K=H.layerConfig.lineHeight,Y=H.layerConfig.characterWidth,J=K*B.row;return{left:B.column*Y,top:J,bottom:J+K}}},this.coordsChar=function(C,P){var B=this.ace.renderer;if(P=="local"){var H=Math.max(0,Math.floor(C.top/B.lineHeight)),K=Math.max(0,Math.floor(C.left/B.characterWidth)),Y=B.session.screenToDocumentPosition(H,K);return v(Y)}if(P=="div")throw"not implemented"},this.getSearchCursor=function(C,P,B){var H=!1,K=!1;C instanceof RegExp&&!C.global&&(H=!C.ignoreCase,C=C.source,K=!0),C=="\\n"&&(C=`
1403
+ `,K=!1);var Y=new nr;P.ch==null&&(P.ch=Number.MAX_VALUE);var J={row:P.line,column:P.ch},re=this,se=null;return{findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(ve){Y.setOptions({needle:C,caseSensitive:H,wrap:!1,backwards:ve,regExp:K,start:se||J});var xe=Y.find(re.ace.session);return se=xe,se&&[!se.isEmpty()]},from:function(){return se&&v(se.start)},to:function(){return se&&v(se.end)},replace:function(ve){se&&(se.end=re.ace.session.doc.replace(se,ve))}}},this.scrollTo=function(C,P){var B=this.ace.renderer,H=B.layerConfig,K=H.maxHeight;K-=(B.$size.scrollerHeight-B.lineHeight)*B.$scrollPastEnd,P!=null&&this.ace.session.setScrollTop(Math.max(0,Math.min(P,K))),C!=null&&this.ace.session.setScrollLeft(Math.max(0,Math.min(C,H.width)))},this.scrollInfo=function(){return 0},this.scrollIntoView=function(C,P){if(C){var B=this.ace.renderer,H={top:0,bottom:P};B.scrollCursorIntoView(b(C),B.lineHeight*2/B.$size.scrollerHeight,H)}},this.getLine=function(C){return this.ace.session.getLine(C)},this.getRange=function(C,P){return this.ace.session.getTextRange(new En(C.line,C.ch,P.line,P.ch))},this.replaceRange=function(C,P,B){B||(B=P);var H=new En(P.line,P.ch,B.line,B.ch);return this.ace.session.$clipRangeToDocument(H),this.ace.session.replace(H,C)},this.replaceSelection=this.replaceSelections=function(C){var P=Array.isArray(C)&&C,B=this.ace.selection;if(this.ace.inVirtualSelectionMode){this.ace.session.replace(B.getRange(),P?C[0]||"":C);return}B.inVirtualSelectionMode=!0;var H=B.rangeList.ranges;H.length||(H=[this.ace.multiSelect.getRange()]);for(var K=H.length;K--;)this.ace.session.replace(H[K],P?C[K]||"":C);B.inVirtualSelectionMode=!1},this.getSelection=function(){return this.ace.getSelectedText()},this.getSelections=function(){return this.listSelections().map(function(C){return this.getRange(C.anchor,C.head)},this)},this.getInputField=function(){return this.ace.textInput.getElement()},this.getWrapperElement=function(){return this.ace.container};var _={indentWithTabs:"useSoftTabs",indentUnit:"tabSize",tabSize:"tabSize",firstLineNumber:"firstLineNumber",readOnly:"readOnly"};this.setOption=function(C,P){switch(this.state[C]=P,C){case"indentWithTabs":C=_[C],P=!P;break;case"keyMap":this.state.$keyMap=P;return;default:C=_[C]}C&&this.ace.setOption(C,P)},this.getOption=function(C){var P,B=_[C];switch(B&&(P=this.ace.getOption(B)),C){case"indentWithTabs":return C=_[C],!P;case"keyMap":return this.state.$keyMap||"vim"}return B?P:this.state[C]},this.toggleOverwrite=function(C){return this.state.overwrite=C,this.ace.setOverwrite(C)},this.addOverlay=function(C){if(!this.$searchHighlight||!this.$searchHighlight.session){var P=new to(null,"ace_highlight-marker","text"),B=this.ace.session.addDynamicMarker(P);P.id=B.id,P.session=this.ace.session,P.destroy=function(K){P.session.off("change",P.updateOnChange),P.session.off("changeEditor",P.destroy),P.session.removeMarker(P.id),P.session=null},P.updateOnChange=function(K){var Y=K.start.row;Y==K.end.row?P.cache[Y]=void 0:P.cache.splice(Y,P.cache.length)},P.session.on("changeEditor",P.destroy),P.session.on("change",P.updateOnChange)}var H=new RegExp(C.query.source,"gmi");this.$searchHighlight=C.highlight=P,this.$searchHighlight.setRegexp(H),this.ace.renderer.updateBackMarkers()},this.removeOverlay=function(C){this.$searchHighlight&&this.$searchHighlight.session&&this.$searchHighlight.destroy()},this.getScrollInfo=function(){var C=this.ace.renderer,P=C.layerConfig;return{left:C.scrollLeft,top:C.scrollTop,height:P.maxHeight,width:P.width,clientHeight:P.height,clientWidth:P.width}},this.getValue=function(){return this.ace.getValue()},this.setValue=function(C){return this.ace.setValue(C,-1)},this.getTokenTypeAt=function(C){var P=this.ace.session.getTokenAt(C.line,C.ch);return P&&/comment|string/.test(P.type)?"string":""},this.findMatchingBracket=function(C){var P=this.ace.session.findMatchingBracket(b(C));return{to:P&&v(P)}},this.findMatchingTag=function(C){var P=this.ace.session.getMatchingTags(b(C));if(P)return{open:{from:v(P.openTag.start),to:v(P.openTag.end)},close:{from:v(P.closeTag.start),to:v(P.closeTag.end)}}},this.indentLine=function(C,P){P===!0?this.ace.session.indentRows(C,C," "):P===!1&&this.ace.session.outdentRows(new En(C,0,C,0))},this.indexFromPos=function(C){return this.ace.session.doc.positionToIndex(b(C))},this.posFromIndex=function(C){return v(this.ace.session.doc.indexToPosition(C))},this.focus=function(C){return this.ace.textInput.focus()},this.blur=function(C){return this.ace.blur()},this.defaultTextHeight=function(C){return this.ace.renderer.layerConfig.lineHeight},this.scanForBracket=function(C,P,B,H){var K=H.bracketRegex.source,Y=/paren|text|operator|tag/;if(P==1)var J=this.ace.session.$findClosingBracket(K.slice(1,2),b(C),Y);else{var J=this.ace.session.$findOpeningBracket(K.slice(-2,-1),{row:C.line,column:C.ch+1},Y);!J&&H.bracketRegex&&H.bracketRegex.test(this.getLine(C.line)[C.ch-1])&&(J={row:C.line,column:C.ch-1})}return J&&{pos:v(J)}},this.refresh=function(){return this.ace.resize(!0)},this.getMode=function(){return{name:this.getOption("mode")}},this.execCommand=function(C){if(De.commands.hasOwnProperty(C))return De.commands[C](this);if(C=="indentAuto")return this.ace.execCommand("autoindent");console.log(C+" is not implemented")},this.getLineNumber=function(C){var P=this.$lineHandleChanges;if(!P)return null;for(var B=C.row,H=0;H<P.length;H++){var K=P[H];if(K.start.row!=K.end.row){if(K.action[0]=="i")K.start.row<B&&(B+=K.end.row-K.start.row);else if(K.start.row<B){if(B<K.end.row||B==K.end.row&&K.start.column>0)return null;B-=K.end.row-K.start.row}}}return B},this.getLineHandle=function(C){return this.$lineHandleChanges||(this.$lineHandleChanges=[]),{text:this.ace.session.getLine(C),row:C}},this.releaseLineHandles=function(){this.$lineHandleChanges=void 0},this.getLastEditEnd=function(){var C=this.ace.session.$undoManager;if(C&&C.$lastDelta)return v(C.$lastDelta.end)}}).call(De.prototype);var ko=De.StringStream=function(g,_){this.pos=this.start=0,this.string=g,this.tabSize=_||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0};ko.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},eat:function(g){var _=this.string.charAt(this.pos);if(typeof g=="string")var C=_==g;else var C=_&&(g.test?g.test(_):g(_));if(C)return++this.pos,_},eatWhile:function(g){for(var _=this.pos;this.eat(g););return this.pos>_},eatSpace:function(){for(var g=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>g},skipToEnd:function(){this.pos=this.string.length},skipTo:function(g){var _=this.string.indexOf(g,this.pos);if(_>-1)return this.pos=_,!0},backUp:function(g){this.pos-=g},column:function(){throw"not implemented"},indentation:function(){throw"not implemented"},match:function(g,_,C){if(typeof g!="string"){var P=this.string.slice(this.pos).match(g);return P&&P.index>0?null:(P&&_!==!1&&(this.pos+=P[0].length),P)}var B=function(K){return C?K.toLowerCase():K},H=this.string.substr(this.pos,g.length);if(B(H)==B(g))return _!==!1&&(this.pos+=g.length),!0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(g,_){this.lineStart+=g;try{return _()}finally{this.lineStart-=g}}},De.defineExtension=function(g,_){De.prototype[g]=_},ri.importCssString(`.normal-mode .ace_cursor{
1404
+ border: none;
1405
+ background-color: rgba(255,0,0,0.5);
1406
+ }
1407
+ .normal-mode .ace_hidden-cursors .ace_cursor{
1408
+ background-color: transparent;
1409
+ border: 1px solid red;
1410
+ opacity: 0.7
1411
+ }
1412
+ .ace_dialog {
1413
+ position: absolute;
1414
+ left: 0; right: 0;
1415
+ background: inherit;
1416
+ z-index: 15;
1417
+ padding: .1em .8em;
1418
+ overflow: hidden;
1419
+ color: inherit;
1420
+ }
1421
+ .ace_dialog-top {
1422
+ border-bottom: 1px solid #444;
1423
+ top: 0;
1424
+ }
1425
+ .ace_dialog-bottom {
1426
+ border-top: 1px solid #444;
1427
+ bottom: 0;
1428
+ }
1429
+ .ace_dialog input {
1430
+ border: none;
1431
+ outline: none;
1432
+ background: transparent;
1433
+ width: 20em;
1434
+ color: inherit;
1435
+ font-family: monospace;
1436
+ }`,"vimMode",!1),(function(){function g(C,P,B){var H=C.ace.container,K;return K=H.appendChild(document.createElement("div")),B?K.className="ace_dialog ace_dialog-bottom":K.className="ace_dialog ace_dialog-top",typeof P=="string"?K.innerHTML=P:K.appendChild(P),K}function _(C,P){C.state.currentNotificationClose&&C.state.currentNotificationClose(),C.state.currentNotificationClose=P}De.defineExtension("openDialog",function(C,P,B){function H(ve){if(typeof ve=="string")re.value=ve;else{if(Y||ve&&ve.type=="blur"&&document.activeElement===re)return;J.state.dialog==K&&(J.state.dialog=null,J.focus()),Y=!0,K.remove(),B.onClose&&B.onClose(K);var xe=J;xe.state.vim&&(xe.state.vim.status=null,xe.ace._signal("changeStatus"),xe.ace.renderer.$loop.schedule(xe.ace.renderer.CHANGE_CURSOR))}}if(!this.virtualSelectionMode()){B||(B={}),_(this,null);var K=g(this,C,B.bottom),Y=!1,J=this;this.state.dialog=K;var re=K.getElementsByTagName("input")[0],se;return re?(B.value&&(re.value=B.value,B.selectValueOnOpen!==!1&&re.select()),B.onInput&&De.on(re,"input",function(ve){B.onInput(ve,re.value,H)}),B.onKeyUp&&De.on(re,"keyup",function(ve){B.onKeyUp(ve,re.value,H)}),De.on(re,"keydown",function(ve){B&&B.onKeyDown&&B.onKeyDown(ve,re.value,H)||(ve.keyCode==13&&P(re.value),(ve.keyCode==27||B.closeOnEnter!==!1&&ve.keyCode==13)&&(De.e_stop(ve),H()))}),B.closeOnBlur!==!1&&De.on(re,"blur",H),re.focus()):(se=K.getElementsByTagName("button")[0])&&(De.on(se,"click",function(){H(),J.focus()}),B.closeOnBlur!==!1&&De.on(se,"blur",H),se.focus()),H}}),De.defineExtension("openNotification",function(C,P){function B(){K||(K=!0,clearTimeout(Y),H.remove())}if(!this.virtualSelectionMode()){_(this,B);var H=g(this,C,P&&P.bottom),K=!1,Y,J=P&&typeof P.duration<"u"?P.duration:5e3;return De.on(H,"click",function(re){De.e_preventDefault(re),B()}),J&&(Y=setTimeout(B,J)),B}})})();var Ie=De.Pos,ln=[{keys:"<Left>",type:"keyToKey",toKeys:"h"},{keys:"<Right>",type:"keyToKey",toKeys:"l"},{keys:"<Up>",type:"keyToKey",toKeys:"k"},{keys:"<Down>",type:"keyToKey",toKeys:"j"},{keys:"g<Up>",type:"keyToKey",toKeys:"gk"},{keys:"g<Down>",type:"keyToKey",toKeys:"gj"},{keys:"<Space>",type:"keyToKey",toKeys:"l"},{keys:"<BS>",type:"keyToKey",toKeys:"h"},{keys:"<Del>",type:"keyToKey",toKeys:"x"},{keys:"<C-Space>",type:"keyToKey",toKeys:"W"},{keys:"<C-BS>",type:"keyToKey",toKeys:"B"},{keys:"<S-Space>",type:"keyToKey",toKeys:"w"},{keys:"<S-BS>",type:"keyToKey",toKeys:"b"},{keys:"<C-n>",type:"keyToKey",toKeys:"j"},{keys:"<C-p>",type:"keyToKey",toKeys:"k"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-[>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-c>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>"},{keys:"<C-Esc>",type:"keyToKey",toKeys:"<Esc>",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"c",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"VdO",context:"visual"},{keys:"<Home>",type:"keyToKey",toKeys:"0"},{keys:"<End>",type:"keyToKey",toKeys:"$"},{keys:"<PageUp>",type:"keyToKey",toKeys:"<C-b>"},{keys:"<PageDown>",type:"keyToKey",toKeys:"<C-f>"},{keys:"<CR>",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"<Ins>",type:"keyToKey",toKeys:"i",context:"normal"},{keys:"<Ins>",type:"action",action:"toggleOverwrite",context:"insert"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"(",type:"motion",motion:"moveBySentence",motionArgs:{forward:!1}},{keys:")",type:"motion",motion:"moveBySentence",motionArgs:{forward:!0}},{keys:"<C-f>",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"<C-b>",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"<C-d>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"<C-u>",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"g$",type:"motion",motion:"moveToEndOfDisplayLine"},{keys:"g^",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"g0",type:"motion",motion:"moveToStartOfDisplayLine"},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F<character>",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T<character>",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`<register>",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[<character>",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:"=",type:"operator",operator:"indentAuto"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"gn",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!0}},{keys:"gN",type:"motion",motion:"findAndSelectNextInclusive",motionArgs:{forward:!1}},{keys:"gq",type:"operator",operator:"hardWrap"},{keys:"gw",type:"operator",operator:"hardWrap",operatorArgs:{keepCursor:!0}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"expandToLine",motionArgs:{linewise:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"<C-u>",type:"operatorMotion",operator:"delete",motion:"moveToStartOfLine",context:"insert"},{keys:"<C-w>",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"<C-w>",type:"idle",context:"normal"},{keys:"<C-i>",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"<C-o>",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"<C-e>",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"<C-y>",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"gi",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"lastEdit"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"gI",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"bol"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"<C-v>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"<C-q>",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"gJ",type:"action",action:"joinLines",actionArgs:{keepSpaces:!0},isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r<character>",type:"action",action:"replace",isEdit:!0},{keys:"@<register>",type:"action",action:"replayMacro"},{keys:"q<register>",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0},context:"normal"},{keys:"R",type:"operator",operator:"change",operatorArgs:{linewise:!0,fullLine:!0},context:"visual",exitVisualBlock:!0},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"<C-r>",type:"action",action:"redo"},{keys:"m<register>",type:"action",action:"setMark"},{keys:'"<register>',type:"action",action:"setRegister"},{keys:"<C-r><register>",type:"action",action:"insertRegister",context:"insert",isEdit:!0},{keys:"<C-o>",type:"action",action:"oneNormalCommand",context:"insert"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z<CR>",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"<C-a>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"<C-x>",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"<C-t>",type:"action",action:"indent",actionArgs:{indentRight:!0},context:"insert"},{keys:"<C-d>",type:"action",action:"indent",actionArgs:{indentRight:!1},context:"insert"},{keys:"a<register>",type:"motion",motion:"textObjectManipulation"},{keys:"i<register>",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],Nr=ln.length,ir=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"omap",shortName:"om"},{name:"noremap",shortName:"no"},{name:"nnoremap",shortName:"nn"},{name:"vnoremap",shortName:"vn"},{name:"inoremap",shortName:"ino"},{name:"onoremap",shortName:"ono"},{name:"unmap"},{name:"mapclear",shortName:"mapc"},{name:"nmapclear",shortName:"nmapc"},{name:"vmapclear",shortName:"vmapc"},{name:"imapclear",shortName:"imapc"},{name:"omapclear",shortName:"omapc"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"startinsert",shortName:"start"},{name:"nohlsearch",shortName:"noh"},{name:"yank",shortName:"y"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"vglobal",shortName:"v"},{name:"delete",shortName:"d"},{name:"join",shortName:"j"},{name:"normal",shortName:"norm"},{name:"global",shortName:"g"}],cn=O(""),es=/[\d]/,Dr=[De.isWordChar,function(g){return g&&!De.isWordChar(g)&&!/\s/.test(g)}],Di=[function(g){return/\S/.test(g)}],br=["<",">"],_o=["-",'"',".",":","_","/","+"],Pt=/^\w$/,et;try{et=new RegExp("^[\\p{Lu}]$","u")}catch{et=/^[A-Z]$/}var $t={};R("filetype",void 0,"string",["ft"],function(g,_){if(_!==void 0){if(g===void 0){var C=_.getOption("mode");return C=="null"?"":C}var C=g==""?"null":g;_.setOption("mode",C)}}),R("textwidth",80,"number",["tw"],function(g,_){if(_!==void 0){if(g===void 0){var C=_.getOption("textwidth");return C}var P=Math.round(g);P>1&&_.setOption("textwidth",P)}});var Fi=function(){function g(J,re,se){function ve(Re){var Te=++B%P,Be=Y[Te];Be&&Be.clear(),Y[Te]=J.setBookmark(Re)}var xe=B%P,de=Y[xe];if(de){var we=de.find();we&&!it(we,re)&&ve(re)}else ve(re);ve(se),H=B,K=B-P+1,K<0&&(K=0)}function _(J,re){B+=re,B>H?B=H:B<K&&(B=K);var se=Y[(P+B)%P];if(se&&!se.find()){var ve=re>0?1:-1,xe,de=J.getCursor();do if(B+=ve,se=Y[(P+B)%P],se&&(xe=se.find())&&!it(de,xe))break;while(B<H&&B>K)}return se}function C(J,re){var se=B,ve=_(J,re);return B=se,ve&&ve.find()}var P=100,B=-1,H=0,K=0,Y=new Array(P);return{cachedCursor:void 0,add:g,find:C,move:_}},dn=function(g){return g?{changes:g.changes,expectCursorActivityForChange:g.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};w.prototype={exitMacroRecordMode:function(){var g=Pe.macroModeState;g.onRecordingDone&&g.onRecordingDone(),g.onRecordingDone=void 0,g.isRecording=!1},enterMacroRecordMode:function(g,_){var C=Pe.registerController.getRegister(_);if(C){if(C.clear(),this.latestRegister=_,g.openDialog){var P=Ni("span",{class:"cm-vim-message"},"recording @"+_);this.onRecordingDone=g.openDialog(P,null,{bottom:!0})}this.isRecording=!0}}};var Pe,Jt,ft={enterVimMode:p,leaveVimMode:f,buildKeyMap:function(){},getRegisterController:function(){return Pe.registerController},resetVimGlobalState_:D,getVimGlobalState_:function(){return Pe},maybeInitVimState_:I,suppressErrorLogging:!1,InsertModeKey:Zr,map:function(g,_,C){Jn.map(g,_,C)},unmap:function(g,_){return Jn.unmap(g,_)},noremap:function(g,_,C){Jn.map(g,_,C,!0)},mapclear:function(g){var _=ln.length,C=Nr,P=ln.slice(0,_-C);if(ln=ln.slice(_-C),g)for(var B=P.length-1;B>=0;B--){var H=P[B];if(g!==H.context)if(H.context)this._mapCommand(H);else{var K=["normal","insert","visual"];for(var Y in K)if(K[Y]!==g){var J={};for(var re in H)J[re]=H[re];J.context=K[Y],this._mapCommand(J)}}}},langmap:F,vimKeyFromEvent:z,setOption:T,getOption:k,defineOption:R,defineEx:function(g,_,C){if(!_)_=g;else if(g.indexOf(_)!==0)throw new Error('(Vim.defineEx) "'+_+'" is not a prefix of "'+g+'", command not registered');Rn[g]=C,Jn.commandMap_[_]={name:g,shortName:_,type:"api"}},handleKey:function(g,_,C){var P=this.findKey(g,_,C);if(typeof P=="function")return P()},multiSelectHandleKey:Xr,findKey:function(g,_,C){function P(){var re=Pe.macroModeState;if(re.isRecording){if(_=="q")return re.exitMacroRecordMode(),S(g),!0;C!="mapping"&&yo(re,_)}}function B(){if(_=="<Esc>"){if(Y.visualMode)an(g);else{if(!Y.insertMode)return;ii(g)}return S(g),!0}}function H(){if(B())return!0;Y.inputState.keyBuffer.push(_);var re=Y.inputState.keyBuffer.join(""),se=_.length==1,ve=_i.matchCommand(re,ln,Y.inputState,"insert"),xe=Y.inputState.changeQueue;if(ve.type=="none")return S(g),!1;if(ve.type=="partial"){if(ve.expectLiteralNext&&(Y.expectLiteralNext=!0),Jt&&window.clearTimeout(Jt),Jt=se&&window.setTimeout(function(){Y.insertMode&&Y.inputState.keyBuffer.length&&S(g)},k("insertModeEscKeysTimeout")),se){var de=g.listSelections();(!xe||xe.removed.length!=de.length)&&(xe=Y.inputState.changeQueue=new N),xe.inserted+=_;for(var we=0;we<de.length;we++){var Re=nt(de[we].anchor,de[we].head),Te=Ot(de[we].anchor,de[we].head),Be=g.getRange(Re,g.state.overwrite?me(Te,0,1):Te);xe.removed[we]=(xe.removed[we]||"")+Be}}return!se}if(Y.expectLiteralNext=!1,Jt&&window.clearTimeout(Jt),ve.command&&xe){for(var de=g.listSelections(),we=0;we<de.length;we++){var Xe=de[we].head;g.replaceRange(xe.removed[we]||"",me(Xe,0,-xe.inserted.length),Xe,"+input")}Pe.macroModeState.lastInsertModeChanges.changes.pop()}return ve.command||S(g),ve.command}function K(){if(P()||B())return!0;Y.inputState.keyBuffer.push(_);var re=Y.inputState.keyBuffer.join("");if(/^[1-9]\d*$/.test(re))return!0;var se=/^(\d*)(.*)$/.exec(re);if(!se)return S(g),!1;var ve=Y.visualMode?"visual":"normal",xe=se[2]||se[1];Y.inputState.operatorShortcut&&Y.inputState.operatorShortcut.slice(-1)==xe&&(xe=Y.inputState.operatorShortcut);var de=_i.matchCommand(xe,ln,Y.inputState,ve);return de.type=="none"?(S(g),!1):de.type=="partial"?(de.expectLiteralNext&&(Y.expectLiteralNext=!0),!0):de.type=="clear"?(S(g),!0):(Y.expectLiteralNext=!1,Y.inputState.keyBuffer.length=0,se=/^(\d*)(.*)$/.exec(re),se[1]&&se[1]!="0"&&Y.inputState.pushRepeatDigit(se[1]),de.command)}var Y=I(g),J;return Y.insertMode?J=H():J=K(),J===!1?!Y.insertMode&&_.length===1?function(){return!0}:void 0:J===!0?function(){return!0}:function(){if(!((J.operator||J.isEdit)&&g.getOption("readOnly")))return g.operation(function(){g.curOp.isVimOp=!0;try{J.type=="keyToKey"?L(g,J.toKeys,J):_i.processCommand(g,Y,J)}catch(re){throw g.state.vim=void 0,I(g),ft.suppressErrorLogging||console.log(re),re}return!0})}},handleEx:function(g,_){Jn.processCommand(g,_)},defineMotion:te,defineAction:ue,defineOperator:ne,mapCommand:mo,_mapCommand:Yr,defineRegister:V,exitVisualMode:an,exitInsertMode:ii},Qn=[],Pi=!1,bt,Zn={Return:"CR",Backspace:"BS",Delete:"Del",Escape:"Esc",Insert:"Ins",ArrowLeft:"Left",ArrowRight:"Right",ArrowUp:"Up",ArrowDown:"Down",Enter:"CR"," ":"Space"},Sn={Shift:1,Alt:1,Command:1,Control:1,CapsLock:1,AltGraph:1,Dead:1,Unidentified:1},rr={};"Left|Right|Up|Down|End|Home".split("|").concat(Object.keys(Zn)).forEach(function(g){rr[(Zn[g]||"").toLowerCase()]=rr[g.toLowerCase()]=g}),R("langmap",void 0,"string",["lmap"],function(g,_){if(g===void 0)return cn.string;F(g)}),A.prototype.pushRepeatDigit=function(g){this.operator?this.motionRepeat=this.motionRepeat.concat(g):this.prefixRepeat=this.prefixRepeat.concat(g)},A.prototype.getRepeat=function(){var g=0;return(this.prefixRepeat.length>0||this.motionRepeat.length>0)&&(g=1,this.prefixRepeat.length>0&&(g*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(g*=parseInt(this.motionRepeat.join(""),10))),g},W.prototype={setText:function(g,_,C){this.keyBuffer=[g||""],this.linewise=!!_,this.blockwise=!!C},pushText:function(g,_){_&&(this.linewise||this.keyBuffer.push(`
1437
+ `),this.linewise=!0),this.keyBuffer.push(g)},pushInsertModeChanges:function(g){this.insertModeChanges.push(dn(g))},pushSearchQuery:function(g){this.searchQueries.push(g)},clear:function(){this.keyBuffer=[],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!1},toString:function(){return this.keyBuffer.join("")}},G.prototype={pushText:function(g,_,C,P,B){if(g!=="_"){P&&C.charAt(C.length-1)!==`
1438
+ `&&(C+=`
1439
+ `);var H=this.isValidRegister(g)?this.getRegister(g):null;if(!H){switch(_){case"yank":this.registers[0]=new W(C,P,B);break;case"delete":case"change":C.indexOf(`
1440
+ `)==-1?this.registers["-"]=new W(C,P):(this.shiftNumericRegisters_(),this.registers[1]=new W(C,P))}this.unnamedRegister.setText(C,P,B);return}var K=i(g);K?H.pushText(C,P):H.setText(C,P,B),g==="+"&&typeof navigator<"u"&&typeof navigator.clipboard<"u"&&typeof navigator.clipboard.readText=="function"&&navigator.clipboard.writeText(C),this.unnamedRegister.setText(H.toString(),P)}},getRegister:function(g){return this.isValidRegister(g)?(g=g.toLowerCase(),this.registers[g]||(this.registers[g]=new W),this.registers[g]):this.unnamedRegister},isValidRegister:function(g){return g&&(y(g,_o)||Pt.test(g))},shiftNumericRegisters_:function(){for(var g=9;g>=2;g--)this.registers[g]=this.getRegister(""+(g-1))}},Q.prototype={nextMatch:function(g,_){var C=this.historyBuffer,P=_?-1:1;this.initialPrefix===null&&(this.initialPrefix=g);for(var B=this.iterator+P;_?B>=0:B<C.length;B+=P)for(var H=C[B],K=0;K<=H.length;K++)if(this.initialPrefix==H.substring(0,K))return this.iterator=B,H;if(B>=C.length)return this.iterator=C.length,this.initialPrefix;if(B<0)return g},pushInput:function(g){var _=this.historyBuffer.indexOf(g);_>-1&&this.historyBuffer.splice(_,1),g.length&&this.historyBuffer.push(g)},reset:function(){this.initialPrefix=null,this.iterator=this.historyBuffer.length}};var _i={matchCommand:function(g,_,C,P){var B=_e(g,_,P,C);if(!B.full&&!B.partial)return{type:"none"};if(!B.full&&B.partial)return{type:"partial",expectLiteralNext:B.partial.length==1&&B.partial[0].keys.slice(-11)=="<character>"};for(var H,K=0;K<B.full.length;K++){var Y=B.full[K];H||(H=Y)}if(H.keys.slice(-11)=="<character>"||H.keys.slice(-10)=="<register>"){var J=Me(g);if(!J||J.length>1)return{type:"clear"};C.selectedCharacter=J}return{type:"full",command:H}},processCommand:function(g,_,C){switch(_.inputState.repeatOverride=C.repeatOverride,C.type){case"motion":this.processMotion(g,_,C);break;case"operator":this.processOperator(g,_,C);break;case"operatorMotion":this.processOperatorMotion(g,_,C);break;case"action":this.processAction(g,_,C);break;case"search":this.processSearch(g,_,C);break;case"ex":case"keyToEx":this.processEx(g,_,C);break}},processMotion:function(g,_,C){_.inputState.motion=C.motion,_.inputState.motionArgs=ce(C.motionArgs),this.evalInput(g,_)},processOperator:function(g,_,C){var P=_.inputState;if(P.operator){if(P.operator==C.operator){P.motion="expandToLine",P.motionArgs={linewise:!0},this.evalInput(g,_);return}S(g)}P.operator=C.operator,P.operatorArgs=ce(C.operatorArgs),C.keys.length>1&&(P.operatorShortcut=C.keys),C.exitVisualBlock&&(_.visualBlock=!1,An(g)),_.visualMode&&this.evalInput(g,_)},processOperatorMotion:function(g,_,C){var P=_.visualMode,B=ce(C.operatorMotionArgs);B&&P&&B.visualLine&&(_.visualLine=!0),this.processOperator(g,_,C),P||this.processMotion(g,_,C)},processAction:function(g,_,C){var P=_.inputState,B=P.getRepeat(),H=!!B,K=ce(C.actionArgs)||{};P.selectedCharacter&&(K.selectedCharacter=P.selectedCharacter),C.operator&&this.processOperator(g,_,C),C.motion&&this.processMotion(g,_,C),(C.motion||C.operator)&&this.evalInput(g,_),K.repeat=B||1,K.repeatIsExplicit=H,K.registerName=P.registerName,S(g),_.lastMotion=null,C.isEdit&&this.recordLastEdit(_,P,C),fn[C.action](g,K,_)},processSearch:function(g,_,C){function P(Te,Be,Xe){Pe.searchHistoryController.pushInput(Te),Pe.searchHistoryController.reset();try{Zt(g,Te,Be,Xe)}catch{_t(g,"Invalid regex: "+Te),S(g);return}_i.processMotion(g,_,{type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:C.searchArgs.toJumplist}})}function B(Te){P(Te,!0,!0);var Be=Pe.macroModeState;Be.isRecording&&wo(Be,Te)}function H(Te,Be,Xe){var Qe=z(Te),Ke,Gt;Qe=="<Up>"||Qe=="<Down>"?(Ke=Qe=="<Up>",Gt=Te.target?Te.target.selectionEnd:0,Be=Pe.searchHistoryController.nextMatch(Be,Ke)||"",Xe(Be),Gt&&Te.target&&(Te.target.selectionEnd=Te.target.selectionStart=Math.min(Gt,Te.target.value.length))):Qe&&Qe!="<Left>"&&Qe!="<Right>"&&Pe.searchHistoryController.reset();var gt;try{gt=Zt(g,Be,!0,!0)}catch{}gt?g.scrollIntoView(Tn(g,!Y,gt),30):(er(g),g.scrollTo(ve.left,ve.top))}function K(Te,Be,Xe){var Qe=z(Te);Qe=="<Esc>"||Qe=="<C-c>"||Qe=="<C-[>"||Qe=="<BS>"&&Be==""?(Pe.searchHistoryController.pushInput(Be),Pe.searchHistoryController.reset(),Zt(g,se),er(g),g.scrollTo(ve.left,ve.top),De.e_stop(Te),S(g),Xe(),g.focus()):Qe=="<Up>"||Qe=="<Down>"?De.e_stop(Te):Qe=="<C-u>"&&(De.e_stop(Te),Xe(""))}if(g.getSearchCursor){var Y=C.searchArgs.forward,J=C.searchArgs.wholeWordOnly;vn(g).setReversed(!Y);var re=Y?"/":"?",se=vn(g).getQuery(),ve=g.getScrollInfo();switch(C.searchArgs.querySrc){case"prompt":var xe=Pe.macroModeState;if(xe.isPlaying){var Re=xe.replaySearchQueries.shift();P(Re,!0,!1)}else Yn(g,{onClose:B,prefix:re,desc:"(JavaScript regexp)",onKeyUp:H,onKeyDown:K});break;case"wordUnderCursor":var de=$n(g,{noSymbol:!0}),we=!0;if(de||(de=$n(g,{noSymbol:!1}),we=!1),!de){_t(g,"No word under cursor"),S(g);return}var Re=g.getLine(de.start.line).substring(de.start.ch,de.end.ch);we&&J?Re="\\b"+Re+"\\b":Re=_n(Re),Pe.jumpList.cachedCursor=g.getCursor(),g.setCursor(de.start),P(Re,!0,!1)}}},processEx:function(g,_,C){function P(H){Pe.exCommandHistoryController.pushInput(H),Pe.exCommandHistoryController.reset(),Jn.processCommand(g,H),g.state.vim&&S(g)}function B(H,K,Y){var J=z(H),re,se;(J=="<Esc>"||J=="<C-c>"||J=="<C-[>"||J=="<BS>"&&K=="")&&(Pe.exCommandHistoryController.pushInput(K),Pe.exCommandHistoryController.reset(),De.e_stop(H),S(g),Y(),g.focus()),J=="<Up>"||J=="<Down>"?(De.e_stop(H),re=J=="<Up>",se=H.target?H.target.selectionEnd:0,K=Pe.exCommandHistoryController.nextMatch(K,re)||"",Y(K),se&&H.target&&(H.target.selectionEnd=H.target.selectionStart=Math.min(se,H.target.value.length))):J=="<C-u>"?(De.e_stop(H),Y("")):J&&J!="<Left>"&&J!="<Right>"&&Pe.exCommandHistoryController.reset()}C.type=="keyToEx"?Jn.processCommand(g,C.exArgs.input):_.visualMode?Yn(g,{onClose:P,prefix:":",value:"'<,'>",onKeyDown:B,selectValueOnOpen:!1}):Yn(g,{onClose:P,prefix:":",onKeyDown:B})},evalInput:function(g,_){var C=_.inputState,P=C.motion,B=C.motionArgs||{},H=C.operator,K=C.operatorArgs||{},Y=C.registerName,J=_.sel,re=Ve(_.visualMode?he(g,J.head):g.getCursor("head")),se=Ve(_.visualMode?he(g,J.anchor):g.getCursor("anchor")),ve=Ve(re),xe=Ve(se),de,we,Re;if(H&&this.recordLastEdit(_,C),C.repeatOverride!==void 0?Re=C.repeatOverride:Re=C.getRepeat(),Re>0&&B.explicitRepeat?B.repeatIsExplicit=!0:(B.noRepeat||!B.explicitRepeat&&Re===0)&&(Re=1,B.repeatIsExplicit=!1),C.selectedCharacter&&(B.selectedCharacter=K.selectedCharacter=C.selectedCharacter),B.repeat=Re,S(g),P){var Te=nn[P](g,re,B,_,C);if(_.lastMotion=nn[P],!Te)return;if(B.toJumplist){!H&&g.ace.curOp!=null&&(g.ace.curOp.command.scrollIntoView="center-animate");var Be=Pe.jumpList,Xe=Be.cachedCursor;Xe?(Yi(g,Xe,Te),delete Be.cachedCursor):Yi(g,re,Te)}Te instanceof Array?(we=Te[0],de=Te[1]):de=Te,de||(de=Ve(re)),_.visualMode?((!_.visualBlock||de.ch!==1/0)&&(de=he(g,de,ve)),we&&(we=he(g,we)),we=we||xe,J.anchor=we,J.head=de,An(g),Si(g,_,"<",lt(we,de)?we:de),Si(g,_,">",lt(we,de)?de:we)):H||(g.ace.curOp&&(g.ace.curOp.vimDialogScroll="center-animate"),de=he(g,de,ve),g.setCursor(de.line,de.ch))}if(H){if(K.lastSel){we=xe;var Qe=K.lastSel,Ke=Math.abs(Qe.head.line-Qe.anchor.line),Gt=Math.abs(Qe.head.ch-Qe.anchor.ch);Qe.visualLine?de=new Ie(xe.line+Ke,xe.ch):Qe.visualBlock?de=new Ie(xe.line+Ke,xe.ch+Gt):Qe.head.line==Qe.anchor.line?de=new Ie(xe.line,xe.ch+Gt):de=new Ie(xe.line+Ke,xe.ch),_.visualMode=!0,_.visualLine=Qe.visualLine,_.visualBlock=Qe.visualBlock,J=_.sel={anchor:we,head:de},An(g)}else _.visualMode&&(K.lastSel={anchor:Ve(J.anchor),head:Ve(J.head),visualBlock:_.visualBlock,visualLine:_.visualLine});var gt,It,At,st,pn;if(_.visualMode){gt=nt(J.head,J.anchor),It=Ot(J.head,J.anchor),At=_.visualLine||K.linewise,st=_.visualBlock?"block":At?"line":"char";var In=x(g,gt,It);if(pn=Pn(g,{anchor:In.start,head:In.end},st),At){var rn=pn.ranges;if(st=="block")for(var j=0;j<rn.length;j++)rn[j].head.ch=kt(g,rn[j].head.line);else st=="line"&&(rn[0].head=new Ie(rn[0].head.line+1,0))}}else{if(gt=Ve(we||xe),It=Ve(de||ve),lt(It,gt)){var Z=gt;gt=It,It=Z}At=B.linewise||K.linewise,At?Bn(g,gt,It):B.forward&&Mn(g,gt,It),st="char";var ie=!B.inclusive||At,In=x(g,gt,It);pn=Pn(g,{anchor:In.start,head:In.end},st,ie)}g.setSelections(pn.ranges,pn.primary),_.lastMotion=null,K.repeat=Re,K.registerName=Y,K.linewise=At;var oe=no[H](g,K,pn.ranges,xe,de);_.visualMode&&an(g,oe!=null),oe&&g.setCursor(oe)}},recordLastEdit:function(g,_,C){var P=Pe.macroModeState;P.isPlaying||(g.lastEditInputState=_,g.lastEditActionCommand=C,P.lastInsertModeChanges.changes=[],P.lastInsertModeChanges.expectCursorActivityForChange=!1,P.lastInsertModeChanges.visualBlock=g.visualBlock?g.sel.head.line-g.sel.anchor.line:0)}},nn={moveToTopLine:function(g,_,C){var P=gr(g).top+C.repeat-1;return new Ie(P,jt(g.getLine(P)))},moveToMiddleLine:function(g){var _=gr(g),C=Math.floor((_.top+_.bottom)*.5);return new Ie(C,jt(g.getLine(C)))},moveToBottomLine:function(g,_,C){var P=gr(g).bottom-C.repeat+1;return new Ie(P,jt(g.getLine(P)))},expandToLine:function(g,_,C){var P=_;return new Ie(P.line+C.repeat-1,1/0)},findNext:function(g,_,C){var P=vn(g),B=P.getQuery();if(B){var H=!C.forward;return H=P.isReversed()?!H:H,Lr(g,B),Tn(g,H,B,C.repeat)}},findAndSelectNextInclusive:function(g,_,C,P,B){var H=vn(g),K=H.getQuery();if(K){var Y=!C.forward;Y=H.isReversed()?!Y:Y;var J=Er(g,Y,K,C.repeat,P);if(J){if(B.operator)return J;var re=J[0],se=new Ie(J[1].line,J[1].ch-1);if(P.visualMode){(P.visualLine||P.visualBlock)&&(P.visualLine=!1,P.visualBlock=!1,De.signal(g,"vim-mode-change",{mode:"visual",subMode:""}));var ve=P.sel.anchor;if(ve)return H.isReversed()?C.forward?[ve,re]:[ve,se]:C.forward?[ve,se]:[ve,re]}else P.visualMode=!0,P.visualLine=!1,P.visualBlock=!1,De.signal(g,"vim-mode-change",{mode:"visual",subMode:""});return Y?[se,re]:[re,se]}}},goToMark:function(g,_,C,P){var B=ki(g,P,C.selectedCharacter);return B?C.linewise?{line:B.line,ch:jt(g.getLine(B.line))}:B:null},moveToOtherHighlightedEnd:function(g,_,C,P){if(P.visualBlock&&C.sameLine){var B=P.sel;return[he(g,new Ie(B.anchor.line,B.head.ch)),he(g,new Ie(B.head.line,B.anchor.ch))]}return[P.sel.head,P.sel.anchor]},jumpToMark:function(g,_,C,P){for(var B=_,H=0;H<C.repeat;H++){var K=B;for(var Y in P.marks)if(o(Y)){var J=P.marks[Y].find(),re=C.forward?lt(J,K):lt(K,J);if(!re&&!(C.linewise&&J.line==K.line)){var se=it(K,B),ve=C.forward?bi(K,J,B):bi(B,J,K);(se||ve)&&(B=J)}}}return C.linewise&&(B=new Ie(B.line,jt(g.getLine(B.line)))),B},moveByCharacters:function(g,_,C){var P=_,B=C.repeat,H=C.forward?P.ch+B:P.ch-B;return new Ie(P.line,H)},moveByLines:function(g,_,C,P){var B=_,H=B.ch;switch(P.lastMotion){case this.moveByLines:case this.moveByDisplayLines:case this.moveByScroll:case this.moveToColumn:case this.moveToEol:H=P.lastHPos;break;default:P.lastHPos=H}var K=C.repeat+(C.repeatOffset||0),Y=C.forward?B.line+K:B.line-K,J=g.firstLine(),re=g.lastLine();if(Y<J&&B.line==J)return this.moveToStartOfLine(g,_,C,P);if(Y>re&&B.line==re)return $r(g,_,C,P,!0);var se=g.ace.session.getFoldLine(Y);return se&&(C.forward?Y>se.start.row&&(Y=se.end.row+1):Y=se.start.row),C.toFirstChar&&(H=jt(g.getLine(Y)),P.lastHPos=H),P.lastHSPos=g.charCoords(new Ie(Y,H),"div").left,new Ie(Y,H)},moveByDisplayLines:function(g,_,C,P){var B=_;switch(P.lastMotion){case this.moveByDisplayLines:case this.moveByScroll:case this.moveByLines:case this.moveToColumn:case this.moveToEol:break;default:P.lastHSPos=g.charCoords(B,"div").left}var H=C.repeat,J=g.findPosV(B,C.forward?H:-H,"line",P.lastHSPos);if(J.hitSide)if(C.forward)var K=g.charCoords(J,"div"),Y={top:K.top+8,left:P.lastHSPos},J=g.coordsChar(Y,"div");else{var re=g.charCoords(new Ie(g.firstLine(),0),"div");re.left=P.lastHSPos,J=g.coordsChar(re,"div")}return P.lastHPos=J.ch,J},moveByPage:function(g,_,C){var P=_,B=C.repeat;return g.findPosV(P,C.forward?B:-B,"page")},moveByParagraph:function(g,_,C){var P=C.forward?1:-1;return Ko(g,_,C.repeat,P)},moveBySentence:function(g,_,C){var P=C.forward?1:-1;return Zi(g,_,C.repeat,P)},moveByScroll:function(g,_,C,P){var B=g.getScrollInfo(),H=null,K=C.repeat;K||(K=B.clientHeight/(2*g.defaultTextHeight()));var Y=g.charCoords(_,"local");if(C.repeat=K,H=nn.moveByDisplayLines(g,_,C,P),!H)return null;var J=g.charCoords(H,"local");return g.scrollTo(null,B.top+J.top-Y.top),H},moveByWords:function(g,_,C){return qn(g,_,C.repeat,!!C.forward,!!C.wordEnd,!!C.bigWord)},moveTillCharacter:function(g,_,C){var P=C.repeat,B=Tr(g,P,C.forward,C.selectedCharacter,_),H=C.forward?-1:1;return xi(H,C),B?(B.ch+=H,B):null},moveToCharacter:function(g,_,C){var P=C.repeat;return xi(0,C),Tr(g,P,C.forward,C.selectedCharacter,_)||_},moveToSymbol:function(g,_,C){var P=C.repeat;return Qi(g,P,C.forward,C.selectedCharacter)||_},moveToColumn:function(g,_,C,P){var B=C.repeat;return P.lastHPos=B-1,P.lastHSPos=g.charCoords(_,"div").left,Cs(g,B)},moveToEol:function(g,_,C,P){return $r(g,_,C,P,!1)},moveToFirstNonWhiteSpaceCharacter:function(g,_){var C=_;return new Ie(C.line,jt(g.getLine(C.line)))},moveToMatchedSymbol:function(g,_){for(var C=_,P=C.line,B=C.ch,H=g.getLine(P),K;B<H.length;B++)if(K=H.charAt(B),K&&r(K)){var Y=g.getTokenTypeAt(new Ie(P,B+1));if(Y!=="string"&&Y!=="comment")break}if(B<H.length){var J=/[<>]/.test(H[B])?/[(){}[\]<>]/:/[(){}[\]]/,re=g.findMatchingBracket(new Ie(P,B+1),{bracketRegex:J});return re.to}return C},moveToStartOfLine:function(g,_){return new Ie(_.line,0)},moveToLineOrEdgeOfDocument:function(g,_,C){var P=C.forward?g.lastLine():g.firstLine();return C.repeatIsExplicit&&(P=C.repeat-g.getOption("firstLineNumber")),new Ie(P,jt(g.getLine(P)))},moveToStartOfDisplayLine:function(g){return g.execCommand("goLineLeft"),g.getCursor()},moveToEndOfDisplayLine:function(g){g.execCommand("goLineRight");var _=g.getCursor();return _.sticky=="before"&&_.ch--,_},textObjectManipulation:function(g,_,C,P){var B={"(":")",")":"(","{":"}","}":"{","[":"]","]":"[","<":">",">":"<"},H={"'":!0,'"':!0,"`":!0},K=C.selectedCharacter;K=="b"?K="(":K=="B"&&(K="{");var Y=!C.textObjectInner,J,re;if(B[K]){if(re=!0,J=mn(g,_,K,Y),!J){var se=g.getSearchCursor(new RegExp("\\"+K,"g"),_);se.find()&&(J=mn(g,se.from(),K,Y))}}else if(H[K])re=!0,J=hi(g,_,K,Y);else if(K==="W"||K==="w")for(var ve=C.repeat||1;ve-- >0;){var xe=$n(g,{inclusive:Y,innerWord:!Y,bigWord:K==="W",noSymbol:K==="W",multiline:!0},J&&J.end);xe&&(J||(J=xe),J.end=xe.end)}else if(K==="p")if(J=Ko(g,_,C.repeat,0,Y),C.linewise=!0,P.visualMode)P.visualLine||(P.visualLine=!0);else{var de=P.inputState.operatorArgs;de&&(de.linewise=!0),J.end.line--}else if(K==="t")J=Ar(g,_,Y);else if(K==="s"){var we=g.getLine(_.line);_.ch>0&&m(we[_.ch])&&(_.ch-=1);var Re=fo(g,_,C.repeat,1,Y),Te=fo(g,_,C.repeat,-1,Y);h(g.getLine(Te.line)[Te.ch])&&h(g.getLine(Re.line)[Re.ch-1])&&(Te={line:Te.line,ch:Te.ch+1}),J={start:Te,end:Re}}return J?g.state.vim.visualMode?sn(g,J.start,J.end,re):[J.start,J.end]:null},repeatLastCharacterSearch:function(g,_,C){var P=Pe.lastCharacterSearch,B=C.repeat,H=C.forward===P.forward,K=(P.increment?1:0)*(H?-1:1);g.moveH(-K,"char"),C.inclusive=!!H;var Y=Tr(g,B,H,P.selectedCharacter);return Y?(Y.ch+=K,Y):(g.moveH(K,"char"),_)}},no={change:function(g,_,C){var P,B,H=g.state.vim,K=C[0].anchor,Y=C[0].head;if(H.visualMode)if(_.fullLine)Y.ch=Number.MAX_VALUE,Y.line--,g.setSelection(K,Y),B=g.getSelection(),g.replaceSelection(""),P=K;else{B=g.getSelection();var se=le("",C.length);g.replaceSelections(se),P=nt(C[0].head,C[0].anchor)}else{B=g.getRange(K,Y);var J=H.lastEditInputState||{};if(J.motion=="moveByWords"&&!h(B)){var re=/\s+$/.exec(B);re&&J.motionArgs&&J.motionArgs.forward&&(Y=me(Y,0,-re[0].length),B=B.slice(0,-re[0].length))}_.linewise&&(K=new Ie(K.line,jt(g.getLine(K.line))),Y.line>K.line&&(Y=new Ie(Y.line-1,Number.MAX_VALUE))),g.replaceRange("",K,Y),P=K}Pe.registerController.pushText(_.registerName,"change",B,_.linewise,C.length>1),fn.enterInsertMode(g,{head:P},g.state.vim)},delete:function(g,_,C){var P,B,H=g.state.vim;if(H.visualBlock){B=g.getSelection();var J=le("",C.length);g.replaceSelections(J),P=nt(C[0].head,C[0].anchor)}else{var K=C[0].anchor,Y=C[0].head;_.linewise&&Y.line!=g.firstLine()&&K.line==g.lastLine()&&K.line==Y.line-1&&(K.line==g.firstLine()?K.ch=0:K=new Ie(K.line-1,kt(g,K.line-1))),B=g.getRange(K,Y),g.replaceRange("",K,Y),P=K,_.linewise&&(P=nn.moveToFirstNonWhiteSpaceCharacter(g,K))}return Pe.registerController.pushText(_.registerName,"delete",B,_.linewise,H.visualBlock),he(g,P)},indent:function(g,_,C){var P=g.state.vim,B=P.visualMode?_.repeat:1;if(P.visualBlock){for(var H=g.getOption("tabSize"),K=g.getOption("indentWithTabs")?" ":" ".repeat(H),Y,J=C.length-1;J>=0;J--)if(Y=nt(C[J].anchor,C[J].head),_.indentRight)g.replaceRange(K.repeat(B),Y,Y);else{for(var re=g.getLine(Y.line),se=0,ve=0;ve<B;ve++){var xe=re[Y.ch+se];if(xe==" ")se++;else{if(xe!=" ")break;se++;for(var de=1;de<K.length&&(xe=re[Y.ch+se],xe===" ");de++)se++}}g.replaceRange("",Y,me(Y,0,se))}return Y}if(g.indentMore)for(var ve=0;ve<B;ve++)_.indentRight?g.indentMore():g.indentLess();else{var we=C[0].anchor.line,Re=P.visualBlock?C[C.length-1].anchor.line:C[0].head.line;_.linewise&&Re--;for(var J=we;J<=Re;J++)for(var ve=0;ve<B;ve++)g.indentLine(J,_.indentRight)}return nn.moveToFirstNonWhiteSpaceCharacter(g,C[0].anchor)},indentAuto:function(g,_,C){return g.execCommand("indentAuto"),nn.moveToFirstNonWhiteSpaceCharacter(g,C[0].anchor)},hardWrap:function(g,_,C,P,B){if(g.hardWrap){var H=C[0].anchor.line,K=C[0].head.line;_.linewise&&K--;var Y=g.hardWrap({from:H,to:K});return Y>H&&_.linewise&&Y--,_.keepCursor?P:new Ie(Y,0)}},changeCase:function(g,_,C,P,B){for(var H=g.getSelections(),K=[],Y=_.toLower,J=0;J<H.length;J++){var re=H[J],se="";if(Y===!0)se=re.toLowerCase();else if(Y===!1)se=re.toUpperCase();else for(var ve=0;ve<re.length;ve++){var xe=re.charAt(ve);se+=i(xe)?xe.toLowerCase():xe.toUpperCase()}K.push(se)}return g.replaceSelections(K),_.shouldMoveCursor?B:!g.state.vim.visualMode&&_.linewise&&C[0].anchor.line+1==C[0].head.line?nn.moveToFirstNonWhiteSpaceCharacter(g,P):_.linewise?P:nt(C[0].anchor,C[0].head)},yank:function(g,_,C,P){var B=g.state.vim,H=g.getSelection(),K=B.visualMode?nt(B.sel.anchor,B.sel.head,C[0].head,C[0].anchor):P;return Pe.registerController.pushText(_.registerName,"yank",H,_.linewise,B.visualBlock),K}},fn={jumpListWalk:function(g,_,C){if(!C.visualMode){var P=_.repeat,B=_.forward,H=Pe.jumpList,K=H.move(g,B?P:-P),Y=K?K.find():void 0;Y=Y||g.getCursor(),g.setCursor(Y),g.ace.curOp.command.scrollIntoView="center-animate"}},scroll:function(g,_,C){if(!C.visualMode){var P=_.repeat||1,B=g.defaultTextHeight(),H=g.getScrollInfo().top,K=B*P,Y=_.forward?H+K:H-K,J=Ve(g.getCursor()),re=g.charCoords(J,"local");if(_.forward)Y>re.top?(J.line+=(Y-re.top)/B,J.line=Math.ceil(J.line),g.setCursor(J),re=g.charCoords(J,"local"),g.scrollTo(null,re.top)):g.scrollTo(null,Y);else{var se=Y+g.getScrollInfo().clientHeight;se<re.bottom?(J.line-=(re.bottom-se)/B,J.line=Math.floor(J.line),g.setCursor(J),re=g.charCoords(J,"local"),g.scrollTo(null,re.bottom-g.getScrollInfo().clientHeight)):g.scrollTo(null,Y)}}},scrollToCursor:function(g,_){var C=g.getCursor().line,P=g.charCoords(new Ie(C,0),"local"),B=g.getScrollInfo().clientHeight,H=P.top;switch(_.position){case"center":H=P.bottom-B/2;break;case"bottom":var K=new Ie(C,g.getLine(C).length-1),Y=g.charCoords(K,"local"),J=Y.bottom-H;H=H-B+J}g.scrollTo(null,H)},replayMacro:function(g,_,C){var P=_.selectedCharacter,B=_.repeat,H=Pe.macroModeState;for(P=="@"?P=H.latestRegister:H.latestRegister=P;B--;)vo(g,C,H,P)},enterMacroRecordMode:function(g,_){var C=Pe.macroModeState,P=_.selectedCharacter;Pe.registerController.isValidRegister(P)&&C.enterMacroRecordMode(g,P)},toggleOverwrite:function(g){g.state.overwrite?(g.toggleOverwrite(!1),g.setOption("keyMap","vim-insert"),De.signal(g,"vim-mode-change",{mode:"insert"})):(g.toggleOverwrite(!0),g.setOption("keyMap","vim-replace"),De.signal(g,"vim-mode-change",{mode:"replace"}))},enterInsertMode:function(g,_,C){if(!g.getOption("readOnly")){C.insertMode=!0,C.insertModeRepeat=_&&_.repeat||1;var P=_?_.insertAt:null,B=C.sel,H=_.head||g.getCursor("head"),K=g.listSelections().length;if(P=="eol")H=new Ie(H.line,kt(g,H.line));else if(P=="bol")H=new Ie(H.line,0);else if(P=="charAfter"){var Y=x(g,H,me(H,0,1));H=Y.end}else if(P=="firstNonBlank"){var Y=x(g,H,nn.moveToFirstNonWhiteSpaceCharacter(g,H));H=Y.end}else if(P=="startOfSelectedArea"){if(!C.visualMode)return;C.visualBlock?(H=new Ie(Math.min(B.head.line,B.anchor.line),Math.min(B.head.ch,B.anchor.ch)),K=Math.abs(B.head.line-B.anchor.line)+1):B.head.line<B.anchor.line?H=B.head:H=new Ie(B.anchor.line,0)}else if(P=="endOfSelectedArea"){if(!C.visualMode)return;C.visualBlock?(H=new Ie(Math.min(B.head.line,B.anchor.line),Math.max(B.head.ch,B.anchor.ch)+1),K=Math.abs(B.head.line-B.anchor.line)+1):B.head.line>=B.anchor.line?H=me(B.head,0,1):H=new Ie(B.anchor.line,0)}else if(P=="inplace"){if(C.visualMode)return}else P=="lastEdit"&&(H=Rr(g)||H);g.setOption("disableInput",!1),_&&_.replace?(g.toggleOverwrite(!0),g.setOption("keyMap","vim-replace"),De.signal(g,"vim-mode-change",{mode:"replace"})):(g.toggleOverwrite(!1),g.setOption("keyMap","vim-insert"),De.signal(g,"vim-mode-change",{mode:"insert"})),Pe.macroModeState.isPlaying||(g.on("change",Qr),C.insertEnd&&C.insertEnd.clear(),C.insertEnd=g.setBookmark(H,{insertLeft:!0}),De.on(g.getInputField(),"keydown",Ir)),C.visualMode&&an(g),Kn(g,H,K)}},toggleVisualMode:function(g,_,C){var P=_.repeat,B=g.getCursor(),H;if(C.visualMode)C.visualLine^_.linewise||C.visualBlock^_.blockwise?(C.visualLine=!!_.linewise,C.visualBlock=!!_.blockwise,De.signal(g,"vim-mode-change",{mode:"visual",subMode:C.visualLine?"linewise":C.visualBlock?"blockwise":""}),An(g)):an(g);else{C.visualMode=!0,C.visualLine=!!_.linewise,C.visualBlock=!!_.blockwise,H=he(g,new Ie(B.line,B.ch+P-1));var K=x(g,B,H);C.sel={anchor:K.start,head:K.end},De.signal(g,"vim-mode-change",{mode:"visual",subMode:C.visualLine?"linewise":C.visualBlock?"blockwise":""}),An(g),Si(g,C,"<",nt(B,H)),Si(g,C,">",Ot(B,H))}},reselectLastSelection:function(g,_,C){var P=C.lastSelection;if(C.visualMode&&Et(g,C),P){var B=P.anchorMark.find(),H=P.headMark.find();if(!B||!H)return;C.sel={anchor:B,head:H},C.visualMode=!0,C.visualLine=P.visualLine,C.visualBlock=P.visualBlock,An(g),Si(g,C,"<",nt(B,H)),Si(g,C,">",Ot(B,H)),De.signal(g,"vim-mode-change",{mode:"visual",subMode:C.visualLine?"linewise":C.visualBlock?"blockwise":""})}},joinLines:function(g,_,C){var P,B;if(C.visualMode){if(P=g.getCursor("anchor"),B=g.getCursor("head"),lt(B,P)){var H=B;B=P,P=H}B.ch=kt(g,B.line)-1}else{var K=Math.max(_.repeat,2);P=g.getCursor(),B=he(g,new Ie(P.line+K-1,1/0))}for(var Y=0,J=P.line;J<B.line;J++){Y=kt(g,P.line);var re="",se=0;if(!_.keepSpaces){var ve=g.getLine(P.line+1);se=ve.search(/\S/),se==-1?se=ve.length:re=" "}g.replaceRange(re,new Ie(P.line,Y),new Ie(P.line+1,se))}var xe=he(g,new Ie(P.line,Y));C.visualMode&&an(g,!1),g.setCursor(xe)},newLineAndEnterInsertMode:function(g,_,C){C.insertMode=!0;var P=Ve(g.getCursor());if(P.line===g.firstLine()&&!_.after)g.replaceRange(`
1441
+ `,new Ie(g.firstLine(),0)),g.setCursor(g.firstLine(),0);else{P.line=_.after?P.line:P.line-1,P.ch=kt(g,P.line),g.setCursor(P);var B=De.commands.newlineAndIndentContinueComment||De.commands.newlineAndIndent;B(g)}this.enterInsertMode(g,{repeat:_.repeat},C)},paste:function(g,_,C){var P=this,B=Pe.registerController.getRegister(_.registerName),H=function(){var K=B.toString();P.continuePaste(g,_,C,K,B)};_.registerName==="+"&&typeof navigator<"u"&&typeof navigator.clipboard<"u"&&typeof navigator.clipboard.readText=="function"?navigator.clipboard.readText().then(function(K){P.continuePaste(g,_,C,K,B)},function(){H()}):H()},continuePaste:function(g,_,C,de,B){var H=Ve(g.getCursor());if(de){if(_.matchIndent){var K=g.getOption("tabSize"),Y=function(rn){var j=rn.split(" ").length-1,Z=rn.split(" ").length-1;return j*K+Z*1},J=g.getLine(g.getCursor().line),re=Y(J.match(/^\s*/)[0]),se=de.replace(/\n$/,""),ve=de!==se,xe=Y(de.match(/^\s*/)[0]),de=se.replace(/^\s*/gm,function(rn){var j=re+(Y(rn)-xe);if(j<0)return"";if(g.getOption("indentWithTabs")){var Z=Math.floor(j/K);return Array(Z+1).join(" ")}return Array(j+1).join(" ")});de+=ve?`
1442
+ `:""}if(_.repeat>1)var de=Array(_.repeat+1).join(de);var we=B.linewise,Re=B.blockwise;if(Re){de=de.split(`
1443
+ `),we&&de.pop();for(var Te=0;Te<de.length;Te++)de[Te]=de[Te]==""?" ":de[Te];H.ch+=_.after?1:0,H.ch=Math.min(kt(g,H.line),H.ch)}else we?C.visualMode?de=C.visualLine?de.slice(0,-1):`
1444
+ `+de.slice(0,de.length-1)+`
1445
+ `:_.after?(de=`
1446
+ `+de.slice(0,de.length-1),H.ch=kt(g,H.line)):H.ch=0:H.ch+=_.after?1:0;var Be;if(C.visualMode){C.lastPastedText=de;var Xe,Qe=je(g,C),Ke=Qe[0],Gt=Qe[1],gt=g.getSelection(),It=g.listSelections(),At=new Array(It.length).join("1").split("1");C.lastSelection&&(Xe=C.lastSelection.headMark.find()),Pe.registerController.unnamedRegister.setText(gt),Re?(g.replaceSelections(At),Gt=new Ie(Ke.line+de.length-1,Ke.ch),g.setCursor(Ke),tn(g,Gt),g.replaceSelections(de),Be=Ke):C.visualBlock?(g.replaceSelections(At),g.setCursor(Ke),g.replaceRange(de,Ke,Ke),Be=Ke):(g.replaceRange(de,Ke,Gt),Be=g.posFromIndex(g.indexFromPos(Ke)+de.length-1)),Xe&&(C.lastSelection.headMark=g.setBookmark(Xe)),we&&(Be.ch=0)}else if(Re){g.setCursor(H);for(var Te=0;Te<de.length;Te++){var st=H.line+Te;st>g.lastLine()&&g.replaceRange(`
1447
+ `,new Ie(st,0));var pn=kt(g,st);pn<H.ch&&ui(g,st,H.ch)}g.setCursor(H),tn(g,new Ie(H.line+de.length-1,H.ch)),g.replaceSelections(de),Be=H}else if(g.replaceRange(de,H),we){var st=_.after?H.line+1:H.line;Be=new Ie(st,jt(g.getLine(st)))}else Be=Ve(H),/\n/.test(de)||(Be.ch+=de.length-(_.after?1:0));C.visualMode&&an(g,!1),g.setCursor(Be)}},undo:function(g,_){g.operation(function(){Ye(g,De.commands.undo,_.repeat)(),g.setCursor(he(g,g.getCursor("start")))})},redo:function(g,_){Ye(g,De.commands.redo,_.repeat)()},setRegister:function(g,_,C){C.inputState.registerName=_.selectedCharacter},insertRegister:function(g,_,C){var P=_.selectedCharacter,B=Pe.registerController.getRegister(P),H=B&&B.toString();H&&g.replaceSelection(H)},oneNormalCommand:function(g,_,C){ii(g,!0),C.insertModeReturn=!0,De.on(g,"vim-command-done",function P(){C.visualMode||(C.insertModeReturn&&(C.insertModeReturn=!1,C.insertMode||fn.enterInsertMode(g,{},C)),De.off(g,"vim-command-done",P))})},setMark:function(g,_,C){var P=_.selectedCharacter;Si(g,C,P,g.getCursor())},replace:function(g,_,C){var P=_.selectedCharacter,B=g.getCursor(),H,K,Y=g.listSelections();if(C.visualMode)B=g.getCursor("start"),K=g.getCursor("end");else{var J=g.getLine(B.line);H=B.ch+_.repeat,H>J.length&&(H=J.length),K=new Ie(B.line,H)}var re=x(g,B,K);if(B=re.start,K=re.end,P==`
1448
+ `)C.visualMode||g.replaceRange("",B,K),(De.commands.newlineAndIndentContinueComment||De.commands.newlineAndIndent)(g);else{var se=g.getRange(B,K);if(se=se.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,P),se=se.replace(/[^\n]/g,P),C.visualBlock){var ve=new Array(g.getOption("tabSize")+1).join(" ");se=g.getSelection(),se=se.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,P),se=se.replace(/\t/g,ve).replace(/[^\n]/g,P).split(`
1449
+ `),g.replaceSelections(se)}else g.replaceRange(se,B,K);C.visualMode?(B=lt(Y[0].anchor,Y[0].head)?Y[0].anchor:Y[0].head,g.setCursor(B),an(g,!1)):g.setCursor(me(K,0,-1))}},incrementNumberToken:function(g,_){for(var C=g.getCursor(),P=g.getLine(C.line),B=/(-?)(?:(0x)([\da-f]+)|(0b|0|)(\d+))/gi,H,K,Y,J;(H=B.exec(P))!==null&&(K=H.index,Y=K+H[0].length,!(C.ch<Y)););if(!(!_.backtrack&&Y<=C.ch)&&H){var re=H[2]||H[4],se=H[3]||H[5],ve=_.increase?1:-1,xe={"0b":2,0:8,"":10,"0x":16}[re.toLowerCase()],de=parseInt(H[1]+se,xe)+ve*_.repeat;J=de.toString(xe);var we=re?new Array(se.length-J.length+1+H[1].length).join("0"):"";J.charAt(0)==="-"?J="-"+re+we+J.substr(1):J=re+we+J;var Re=new Ie(C.line,K),Te=new Ie(C.line,Y);g.replaceRange(J,Re,Te),g.setCursor(new Ie(C.line,K+J.length-1))}},repeatLastEdit:function(g,_,C){var P=C.lastEditInputState;if(P){var B=_.repeat;B&&_.repeatIsExplicit?C.lastEditInputState.repeatOverride=B:B=C.lastEditInputState.repeatOverride||B,xo(g,C,B,!1)}},indent:function(g,_){g.indentLine(g.getCursor().line,_.indentRight)},exitInsertMode:ii},Ai={"(":"bracket",")":"bracket","{":"bracket","}":"bracket","[":"section","]":"section","*":"comment","/":"comment",m:"method",M:"method","#":"preprocess"},Mi={bracket:{isComplete:function(g){if(g.nextCh===g.symb){if(g.depth++,g.depth>=1)return!0}else g.nextCh===g.reverseSymb&&g.depth--;return!1}},section:{init:function(g){g.curMoveThrough=!0,g.symb=(g.forward?"]":"[")===g.symb?"{":"}"},isComplete:function(g){return g.index===0&&g.nextCh===g.symb}},comment:{isComplete:function(g){var _=g.lastCh==="*"&&g.nextCh==="/";return g.lastCh=g.nextCh,_}},method:{init:function(g){g.symb=g.symb==="m"?"{":"}",g.reverseSymb=g.symb==="{"?"}":"{"},isComplete:function(g){return g.nextCh===g.symb}},preprocess:{init:function(g){g.index=0},isComplete:function(g){if(g.nextCh==="#"){var _=g.lineText.match(/^#(\w+)/)[1];if(_==="endif"){if(g.forward&&g.depth===0)return!0;g.depth++}else if(_==="if"){if(!g.forward&&g.depth===0)return!0;g.depth--}if(_==="else"&&g.depth===0)return!0}return!1}}};R("pcre",!0,"boolean"),Ci.prototype={getQuery:function(){return Pe.query},setQuery:function(g){Pe.query=g},getOverlay:function(){return this.searchOverlay},setOverlay:function(g){this.searchOverlay=g},isReversed:function(){return Pe.isReversed},setReversed:function(g){Pe.isReversed=g},getScrollbarAnnotate:function(){return this.annotate},setScrollbarAnnotate:function(g){this.annotate=g}};var Bi={"\\n":`
1450
+ `,"\\r":"\r","\\t":" "},Ao={"\\/":"/","\\\\":"\\","\\n":`
1451
+ `,"\\r":"\r","\\t":" ","\\&":"&"},Wt=0,ts=function(){this.buildCommandMap_()};ts.prototype={processCommand:function(g,_,C){var P=this;g.operation(function(){g.curOp.isVimOp=!0,P._processCommand(g,_,C)})},_processCommand:function(g,_,C){var P=g.state.vim,B=Pe.registerController.getRegister(":"),H=B.toString(),K=new De.StringStream(_);B.setText(_);var Y=C||{};Y.input=_;try{this.parseInput_(g,K,Y)}catch(se){throw _t(g,se.toString()),se}P.visualMode&&an(g);var J,re;if(!Y.commandName)Y.line!==void 0&&(re="move");else if(J=this.matchCommand_(Y.commandName),J){if(re=J.name,J.excludeFromCommandHistory&&B.setText(H),this.parseCommandArgs_(K,Y,J),J.type=="exToKey"){L(g,J.toKeys,J);return}if(J.type=="exToEx"){this.processCommand(g,J.toInput);return}}if(!re){_t(g,'Not an editor command ":'+_+'"');return}try{Rn[re](g,Y),(!J||!J.possiblyAsync)&&Y.callback&&Y.callback()}catch(se){throw _t(g,se.toString()),se}},parseInput_:function(g,_,C){if(_.eatWhile(":"),_.eat("%")?(C.line=g.firstLine(),C.lineEnd=g.lastLine()):(C.line=this.parseLineSpec_(g,_),C.line!==void 0&&_.eat(",")&&(C.lineEnd=this.parseLineSpec_(g,_))),C.line==null)if(g.state.vim.visualMode){var P=ki(g,g.state.vim,"<");C.selectionLine=P&&P.line,P=ki(g,g.state.vim,">"),C.selectionLineEnd=P&&P.line}else C.selectionLine=g.getCursor().line;else C.selectionLine=C.line,C.selectionLineEnd=C.lineEnd;var B=_.match(/^(\w+|!!|@@|[!#&*<=>@~])/);return B?C.commandName=B[1]:C.commandName=_.match(/.*/)[0],C},parseLineSpec_:function(g,_){var C=_.match(/^(\d+)/);if(C)return parseInt(C[1],10)-1;switch(_.next()){case".":return this.parseLineSpecOffset_(_,g.getCursor().line);case"$":return this.parseLineSpecOffset_(_,g.lastLine());case"'":var P=_.next(),B=ki(g,g.state.vim,P);if(!B)throw new Error("Mark not set");return this.parseLineSpecOffset_(_,B.line);case"-":case"+":return _.backUp(1),this.parseLineSpecOffset_(_,g.getCursor().line);default:return _.backUp(1),void 0}},parseLineSpecOffset_:function(g,_){var C=g.match(/^([+-])?(\d+)/);if(C){var P=parseInt(C[2],10);C[1]=="-"?_-=P:_+=P}return _},parseCommandArgs_:function(g,_,C){if(!g.eol()){_.argString=g.match(/.*/)[0];var P=C.argDelimiter||/\s+/,B=ci(_.argString).split(P);B.length&&B[0]&&(_.args=B)}},matchCommand_:function(g){for(var _=g.length;_>0;_--){var C=g.substring(0,_);if(this.commandMap_[C]){var P=this.commandMap_[C];if(P.name.indexOf(g)===0)return P}}return null},buildCommandMap_:function(){this.commandMap_={};for(var g=0;g<ir.length;g++){var _=ir[g],C=_.shortName||_.name;this.commandMap_[C]=_}},map:function(g,_,C,P){if(g!=":"&&g.charAt(0)==":"){if(C)throw Error("Mode not supported for ex mappings");var B=g.substring(1);_!=":"&&_.charAt(0)==":"?this.commandMap_[B]={name:B,type:"exToEx",toInput:_.substring(1),user:!0}:this.commandMap_[B]={name:B,type:"exToKey",toKeys:_,user:!0}}else{var H={keys:g,type:"keyToKey",toKeys:_,noremap:!!P};C&&(H.context=C),ln.unshift(H)}},unmap:function(g,_){if(g!=":"&&g.charAt(0)==":"){if(_)throw Error("Mode not supported for ex mappings");var C=g.substring(1);if(this.commandMap_[C]&&this.commandMap_[C].user)return delete this.commandMap_[C],!0}else for(var P=g,B=0;B<ln.length;B++)if(P==ln[B].keys&&ln[B].context===_)return ln.splice(B,1),!0}};var Rn={colorscheme:function(g,_){if(!_.args||_.args.length<1){_t(g,g.getOption("theme"));return}g.setOption("theme",_.args[0])},map:function(g,_,C,P){var B=_.args;if(!B||B.length<2){g&&_t(g,"Invalid mapping: "+_.input);return}Jn.map(B[0],B[1],C,P)},imap:function(g,_){this.map(g,_,"insert")},nmap:function(g,_){this.map(g,_,"normal")},vmap:function(g,_){this.map(g,_,"visual")},omap:function(g,_){this.map(g,_,"operatorPending")},noremap:function(g,_){this.map(g,_,void 0,!0)},inoremap:function(g,_){this.map(g,_,"insert",!0)},nnoremap:function(g,_){this.map(g,_,"normal",!0)},vnoremap:function(g,_){this.map(g,_,"visual",!0)},onoremap:function(g,_){this.map(g,_,"operatorPending",!0)},unmap:function(g,_,C){var P=_.args;(!P||P.length<1||!Jn.unmap(P[0],C))&&g&&_t(g,"No such mapping: "+_.input)},mapclear:function(g,_){ft.mapclear()},imapclear:function(g,_){ft.mapclear("insert")},nmapclear:function(g,_){ft.mapclear("normal")},vmapclear:function(g,_){ft.mapclear("visual")},omapclear:function(g,_){ft.mapclear("operatorPending")},move:function(g,_){_i.processCommand(g,g.state.vim,{type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0},repeatOverride:_.line+1})},set:function(g,_){var C=_.args,P=_.setCfg||{};if(!C||C.length<1){g&&_t(g,"Invalid mapping: "+_.input);return}var B=C[0].split("="),H=B[0],K=B[1],Y=!1,J=!1;if(H.charAt(H.length-1)=="?"){if(K)throw Error("Trailing characters: "+_.argString);H=H.substring(0,H.length-1),Y=!0}else H.charAt(H.length-1)=="!"&&(H=H.substring(0,H.length-1),J=!0);K===void 0&&H.substring(0,2)=="no"&&(H=H.substring(2),K=!1);var re=$t[H]&&$t[H].type=="boolean";if(re&&(J?K=!k(H,g,P):K==null&&(K=!0)),!re&&K===void 0||Y){var se=k(H,g,P);se instanceof Error?_t(g,se.message):se===!0||se===!1?_t(g," "+(se?"":"no")+H):_t(g," "+H+"="+se)}else{var ve=T(H,K,g,P);ve instanceof Error&&_t(g,ve.message)}},setlocal:function(g,_){_.setCfg={scope:"local"},this.set(g,_)},setglobal:function(g,_){_.setCfg={scope:"global"},this.set(g,_)},registers:function(g,_){var C=_.args,P=Pe.registerController.registers,B=`----------Registers----------
1452
+
1453
+ `;if(C){var H;C=C.join("");for(var Y=0;Y<C.length;Y++)if(H=C.charAt(Y),!!Pe.registerController.isValidRegister(H)){var J=P[H]||new W;B+='"'+H+" "+J.toString()+`
1454
+ `}}else for(var H in P){var K=P[H].toString();K.length&&(B+='"'+H+" "+K+`
1455
+ `)}_t(g,B)},sort:function(g,_){function C(){if(_.argString){var At=new De.StringStream(_.argString);if(At.eat("!")&&(H=!0),At.eol())return;if(!At.eatSpace())return"Invalid arguments";var st=At.match(/([dinuox]+)?\s*(\/.+\/)?\s*/);if(!st&&!At.eol())return"Invalid arguments";if(st[1]){K=st[1].indexOf("i")!=-1,Y=st[1].indexOf("u")!=-1;var pn=st[1].indexOf("d")!=-1||st[1].indexOf("n")!=-1&&1,In=st[1].indexOf("x")!=-1&&1,rn=st[1].indexOf("o")!=-1&&1;if(pn+In+rn>1)return"Invalid arguments";J=pn&&"decimal"||In&&"hex"||rn&&"octal"}st[2]&&(re=new RegExp(st[2].substr(1,st[2].length-2),K?"i":""))}}function P(At,st){if(H){var pn;pn=At,At=st,st=pn}K&&(At=At.toLowerCase(),st=st.toLowerCase());var In=J&&Te.exec(At),rn=J&&Te.exec(st);return In?(In=parseInt((In[1]+In[2]).toLowerCase(),Be),rn=parseInt((rn[1]+rn[2]).toLowerCase(),Be),In-rn):At<st?-1:1}function B(At,st){if(H){var pn;pn=At,At=st,st=pn}return K&&(At[0]=At[0].toLowerCase(),st[0]=st[0].toLowerCase()),At[0]<st[0]?-1:1}var H,K,Y,J,re,se=C();if(se){_t(g,se+": "+_.argString);return}var ve=_.line||g.firstLine(),xe=_.lineEnd||_.line||g.lastLine();if(ve!=xe){var de=new Ie(ve,0),we=new Ie(xe,kt(g,xe)),Re=g.getRange(de,we).split(`
1456
+ `),Te=re||(J=="decimal"?/(-?)([\d]+)/:J=="hex"?/(-?)(?:0x)?([0-9a-f]+)/i:J=="octal"?/([0-7]+)/:null),Be=J=="decimal"?10:J=="hex"?16:J=="octal"?8:null,Xe=[],Qe=[];if(J||re)for(var Ke=0;Ke<Re.length;Ke++){var Gt=re?Re[Ke].match(re):null;Gt&&Gt[0]!=""?Xe.push(Gt):!re&&Te.exec(Re[Ke])?Xe.push(Re[Ke]):Qe.push(Re[Ke])}else Qe=Re;if(Xe.sort(re?B:P),re)for(var Ke=0;Ke<Xe.length;Ke++)Xe[Ke]=Xe[Ke].input;else J||Qe.sort(P);if(Re=H?Xe.concat(Qe):Qe.concat(Xe),Y){var gt=Re,It;Re=[];for(var Ke=0;Ke<gt.length;Ke++)gt[Ke]!=It&&Re.push(gt[Ke]),It=gt[Ke]}g.replaceRange(Re.join(`
1457
+ `),de,we)}},vglobal:function(g,_){this.global(g,_)},normal:function(g,_){var C=_.argString;if(C&&C[0]=="!"&&(C=C.slice(1),Pi=!0),C=C.trimStart(),!C){_t(g,"Argument is required.");return}var P=_.line;if(typeof P=="number")for(var B=isNaN(_.lineEnd)?P:_.lineEnd,H=P;H<=B;H++)g.setCursor(H,0),L(g,_.argString.trimStart()),g.state.vim.insertMode&&ii(g,!0);else L(g,_.argString.trimStart()),g.state.vim.insertMode&&ii(g,!0)},global:function(g,_){var C=_.argString;if(!C){_t(g,"Regular Expression missing from global");return}var P=_.commandName[0]==="v";C[0]==="!"&&_.commandName[0]==="g"&&(P=!0,C=C.slice(1));var B=_.line!==void 0?_.line:g.firstLine(),H=_.lineEnd||_.line||g.lastLine(),K=Wn(C),Y=C,J;if(K.length&&(Y=K[0],J=K.slice(1,K.length).join("/")),Y)try{Zt(g,Y,!0,!0)}catch{_t(g,"Invalid regex: "+Y);return}for(var re=vn(g).getQuery(),se=[],ve=B;ve<=H;ve++){var xe=g.getLine(ve),de=re.test(xe);de!==P&&se.push(J?g.getLineHandle(ve):xe)}if(!J){_t(g,se.join(`
1458
+ `));return}var we=0,Re=function(){if(we<se.length){var Te=se[we++],Be=g.getLineNumber(Te);if(Be==null){Re();return}var Xe=Be+1+J;Jn.processCommand(g,Xe,{callback:Re})}else g.releaseLineHandles&&g.releaseLineHandles()};Re()},substitute:function(g,_){if(!g.getSearchCursor)throw new Error("Search feature not available. Requires searchcursor.js or any other getSearchCursor implementation.");var C=_.argString,P=C?Ji(C,C[0]):[],B,H="",K,Y,J,re=!1,se=!1;if(P.length)B=P[0],k("pcre")&&B!==""&&(B=new RegExp(B).source),H=P[1],H!==void 0&&(k("pcre")?H=qo(H.replace(/([^\\])&/g,"$1$$&")):H=_s(H),Pe.lastSubstituteReplacePart=H),K=P[2]?P[2].split(" "):[];else if(C&&C.length){_t(g,"Substitutions should be of the form :s/pattern/replace/");return}if(K&&(Y=K[0],J=parseInt(K[1]),Y&&(Y.indexOf("c")!=-1&&(re=!0),Y.indexOf("g")!=-1&&(se=!0),k("pcre")?B=B+"/"+Y:B=B.replace(/\//g,"\\/")+"/"+Y)),B)try{Zt(g,B,!0,!0)}catch{_t(g,"Invalid regex: "+B);return}if(H=H||Pe.lastSubstituteReplacePart,H===void 0){_t(g,"No previous substitute regular expression");return}var ve=vn(g),xe=ve.getQuery(),de=_.line!==void 0?_.line:g.getCursor().line,we=_.lineEnd||de;de==g.firstLine()&&we==g.lastLine()&&(we=1/0),J&&(de=we,we=de+J-1);var Re=he(g,new Ie(de,0)),Te=g.getSearchCursor(xe,Re);qr(g,re,se,de,we,Te,xe,H,_.callback)},startinsert:function(g,_){L(g,_.argString=="!"?"A":"i",{})},redo:De.commands.redo,undo:De.commands.undo,write:function(g){De.commands.save?De.commands.save(g):g.save&&g.save()},nohlsearch:function(g){er(g)},yank:function(g){var _=Ve(g.getCursor()),C=_.line,P=g.getLine(C);Pe.registerController.pushText("0","yank",P,!0,!0)},delete:function(g,_){var C=_.selectionLine,P=isNaN(_.selectionLineEnd)?C:_.selectionLineEnd;no.delete(g,{linewise:!0},[{anchor:new Ie(C,0),head:new Ie(P+1,0)}])},join:function(g,_){var C=_.selectionLine,P=isNaN(_.selectionLineEnd)?C:_.selectionLineEnd;g.setCursor(new Ie(C,0)),fn.joinLines(g,{repeat:P-C},g.state.vim)},delmarks:function(g,_){if(!_.argString||!ci(_.argString)){_t(g,"Argument required");return}for(var C=g.state.vim,P=new De.StringStream(ci(_.argString));!P.eol();){P.eatSpace();var B=P.pos;if(!P.match(/[a-zA-Z]/,!1)){_t(g,"Invalid argument: "+_.argString.substring(B));return}var H=P.next();if(P.match("-",!0)){if(!P.match(/[a-zA-Z]/,!1)){_t(g,"Invalid argument: "+_.argString.substring(B));return}var K=H,Y=P.next();if(!(o(K)&&o(Y)||i(K)&&i(Y))){_t(g,"Invalid argument: "+K+"-");return}var J=K.charCodeAt(0),re=Y.charCodeAt(0);if(J>=re){_t(g,"Invalid argument: "+_.argString.substring(B));return}for(var se=0;se<=re-J;se++){var ve=String.fromCharCode(J+se);delete C.marks[ve]}}else delete C.marks[H]}}},Jn=new ts;R("insertModeEscKeysTimeout",200,"number"),De.Vim=ft;var xr={return:"CR",backspace:"BS",delete:"Del",esc:"Esc",left:"Left",right:"Right",up:"Up",down:"Down",space:"Space",insert:"Ins",home:"Home",end:"End",pageup:"PageUp",pagedown:"PageDown",enter:"CR"},zn=ft.handleKey.bind(ft);ft.handleKey=function(g,_,C){return g.operation(function(){return zn(g,_,C)},!0)},D(),u.CodeMirror=De;var di=ft.maybeInitVimState_;u.handler={$id:"ace/keyboard/vim",drawCursor:function(g,_,C,P,B){var H=this.state.vim||{},K=C.characterWidth,Y=C.lineHeight,J=_.top,re=_.left;if(!H.insertMode){var se=P.cursor?En.comparePoints(P.cursor,P.start)<=0:B.selection.isBackwards()||B.selection.isEmpty();!se&&re>K&&(re-=K)}!H.insertMode&&H.status&&(Y/=2,J+=Y),ri.translate(g,re,J),ri.setStyle(g.style,"width",K+"px"),ri.setStyle(g.style,"height",Y+"px")},$getDirectionForHighlight:function(g){var _=g.state.cm,C=di(_);if(!C.insertMode)return g.session.selection.isBackwards()||g.session.selection.isEmpty()},handleKeyboard:function(g,_,C,P,B){var H=g.editor,K=H.state.cm,Y=di(K);if(P!=-1){if(Y.insertMode||(_==-1?(C.charCodeAt(0)>255&&g.inputKey&&(C=g.inputKey,C&&g.inputHash==4&&(C=C.toUpperCase())),g.inputChar=C):_==4||_==0?g.inputKey==C&&g.inputHash==_&&g.inputChar?(C=g.inputChar,_=-1):(g.inputChar=null,g.inputKey=C,g.inputHash=_):g.inputChar=g.inputKey=null),K.state.overwrite&&Y.insertMode&&C=="backspace"&&_==0)return{command:"gotoleft"};if(C=="c"&&_==1&&!Or.isMac&&H.getCopyText())return H.once("copy",function(){Y.insertMode?H.selection.clearSelection():K.operation(function(){an(K)})}),{command:"null",passEvent:!0};if(C=="esc"&&!Y.insertMode&&!Y.visualMode&&!K.ace.inMultiSelectMode){var J=vn(K),re=J.getOverlay();re&&K.removeOverlay(re)}if(_==-1||_&1||_===0&&C.length>1){var se=Y.insertMode,ve=Qo(_,C,B||{},Y);Y.status==null&&(Y.status="");var xe=Xr(K,ve,"user");return Y=di(K),xe&&Y.status!=null?Y.status+=ve:Y.status==null&&(Y.status=""),K._signal("changeStatus"),!xe&&(_!=-1||se)?void 0:{command:"null",passEvent:!xe}}}},attach:function(g){function _(){var P=di(C).insertMode;C.ace.renderer.setStyle("normal-mode",!P),g.textInput.setCommandMode(!P),g.renderer.$keepTextAreaAtCursor=P,g.renderer.$blockCursor=!P}g.state||(g.state={});var C=new De(g);g.state.cm=C,g.$vimModeHandler=this,p(C),di(C).status=null,C.on("vim-command-done",function(){C.virtualSelectionMode()||(di(C).status=null,C.ace._signal("changeStatus"),C.ace.session.markUndoGroup())}),C.on("changeStatus",function(){C.ace.renderer.updateCursor(),C.ace._signal("changeStatus")}),C.on("vim-mode-change",function(){C.virtualSelectionMode()||(_(),C._signal("changeStatus"))}),_(),g.renderer.$cursorLayer.drawCursor=this.drawCursor.bind(C)},detach:function(g){var _=g.state.cm;f(_),_.destroy(),g.state.cm=null,g.$vimModeHandler=null,g.renderer.$cursorLayer.drawCursor=null,g.renderer.setStyle("normal-mode",!1),g.textInput.setCommandMode(!1),g.renderer.$keepTextAreaAtCursor=!0},getStatusText:function(g){var _=g.state.cm,C=di(_);if(C.insertMode)return"INSERT";var P="";return C.visualMode&&(P+="VISUAL",C.visualLine&&(P+=" LINE"),C.visualBlock&&(P+=" BLOCK")),C.status&&(P+=(P?" ":"")+C.status),P}},ft.defineOption({name:"wrap",set:function(g,_){_&&_.ace.setOption("wrap",g)},type:"boolean"},!1),ft.defineEx("write","w",function(){console.log(":write is not implemented")}),ln.push({keys:"zc",type:"action",action:"fold",actionArgs:{open:!1}},{keys:"zC",type:"action",action:"fold",actionArgs:{open:!1,all:!0}},{keys:"zo",type:"action",action:"fold",actionArgs:{open:!0}},{keys:"zO",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"za",type:"action",action:"fold",actionArgs:{toggle:!0}},{keys:"zA",type:"action",action:"fold",actionArgs:{toggle:!0,all:!0}},{keys:"zf",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"zd",type:"action",action:"fold",actionArgs:{open:!0,all:!0}},{keys:"<C-A-k>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorAbove"}},{keys:"<C-A-j>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorBelow"}},{keys:"<C-A-S-k>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorAboveSkipCurrent"}},{keys:"<C-A-S-j>",type:"action",action:"aceCommand",actionArgs:{name:"addCursorBelowSkipCurrent"}},{keys:"<C-A-h>",type:"action",action:"aceCommand",actionArgs:{name:"selectMoreBefore"}},{keys:"<C-A-l>",type:"action",action:"aceCommand",actionArgs:{name:"selectMoreAfter"}},{keys:"<C-A-S-h>",type:"action",action:"aceCommand",actionArgs:{name:"selectNextBefore"}},{keys:"<C-A-S-l>",type:"action",action:"aceCommand",actionArgs:{name:"selectNextAfter"}}),ln.push({keys:"gq",type:"operator",operator:"hardWrap"}),ft.defineOperator("hardWrap",function(g,_,C,P,B){var H=C[0].anchor.line,K=C[0].head.line;return _.linewise&&K--,wr(g.ace,{startRow:H,endRow:K}),Ie(K,0)}),R("textwidth",void 0,"number",["tw"],function(g,_){if(_!==void 0){if(g===void 0){var C=_.ace.getOption("printMarginColumn");return C}var P=Math.round(g);P>1&&_.ace.setOption("printMarginColumn",P)}}),fn.aceCommand=function(g,_,C){g.vimCmd=_,g.ace.inVirtualSelectionMode?g.ace.on("beforeEndOperation",tr):tr(null,g.ace)},fn.fold=function(g,_,C){g.ace.execCommand(["toggleFoldWidget","toggleFoldWidget","foldOther","unfoldall"][(_.all?2:0)+(_.open?1:0)])},Nr=ln.length,u.handler.defaultKeymap=ln,u.handler.actions=fn,u.Vim=ft}),(function(){ace.require(["ace/keyboard/vim"],function(e){l&&(l.exports=e)})})()})(kc)),kc.exports}MC();var _c={},Mf;function $C(){return Mf||(Mf=1,(function(l){(function(){var c={not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,text:/^[^\x25]+/,modulo:/^\x25{2}/,placeholder:/^\x25(?:([1-9]\d*)\$|\(([^)]+)\))?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\d]*)/i,key_access:/^\.([a-z_][a-z_\d]*)/i,index_access:/^\[(\d+)\]/,sign:/^[+-]/};function e(x){return M(v(x),arguments)}function u(x,p){return e.apply(null,[x].concat(p||[]))}function M(x,p){var f=1,a=x.length,s,o="",r,n,i,h,m,y,R,T;for(r=0;r<a;r++)if(typeof x[r]=="string")o+=x[r];else if(typeof x[r]=="object"){if(i=x[r],i.keys)for(s=p[f],n=0;n<i.keys.length;n++){if(s==null)throw new Error(e('[sprintf] Cannot access property "%s" of undefined value "%s"',i.keys[n],i.keys[n-1]));s=s[i.keys[n]]}else i.param_no?s=p[i.param_no]:s=p[f++];if(c.not_type.test(i.type)&&c.not_primitive.test(i.type)&&s instanceof Function&&(s=s()),c.numeric_arg.test(i.type)&&typeof s!="number"&&isNaN(s))throw new TypeError(e("[sprintf] expecting number but found %T",s));switch(c.number.test(i.type)&&(R=s>=0),i.type){case"b":s=parseInt(s,10).toString(2);break;case"c":s=String.fromCharCode(parseInt(s,10));break;case"d":case"i":s=parseInt(s,10);break;case"j":s=JSON.stringify(s,null,i.width?parseInt(i.width):0);break;case"e":s=i.precision?parseFloat(s).toExponential(i.precision):parseFloat(s).toExponential();break;case"f":s=i.precision?parseFloat(s).toFixed(i.precision):parseFloat(s);break;case"g":s=i.precision?String(Number(s.toPrecision(i.precision))):parseFloat(s);break;case"o":s=(parseInt(s,10)>>>0).toString(8);break;case"s":s=String(s),s=i.precision?s.substring(0,i.precision):s;break;case"t":s=String(!!s),s=i.precision?s.substring(0,i.precision):s;break;case"T":s=Object.prototype.toString.call(s).slice(8,-1).toLowerCase(),s=i.precision?s.substring(0,i.precision):s;break;case"u":s=parseInt(s,10)>>>0;break;case"v":s=s.valueOf(),s=i.precision?s.substring(0,i.precision):s;break;case"x":s=(parseInt(s,10)>>>0).toString(16);break;case"X":s=(parseInt(s,10)>>>0).toString(16).toUpperCase();break}c.json.test(i.type)?o+=s:(c.number.test(i.type)&&(!R||i.sign)?(T=R?"+":"-",s=s.toString().replace(c.sign,"")):T="",m=i.pad_char?i.pad_char==="0"?"0":i.pad_char.charAt(1):" ",y=i.width-(T+s).length,h=i.width&&y>0?m.repeat(y):"",o+=i.align?T+s+h:m==="0"?T+h+s:h+T+s)}return o}var b=Object.create(null);function v(x){if(b[x])return b[x];for(var p=x,f,a=[],s=0;p;){if((f=c.text.exec(p))!==null)a.push(f[0]);else if((f=c.modulo.exec(p))!==null)a.push("%");else if((f=c.placeholder.exec(p))!==null){if(f[2]){s|=1;var o=[],r=f[2],n=[];if((n=c.key.exec(r))!==null)for(o.push(n[1]);(r=r.substring(n[0].length))!=="";)if((n=c.key_access.exec(r))!==null)o.push(n[1]);else if((n=c.index_access.exec(r))!==null)o.push(n[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");f[2]=o}else s|=2;if(s===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");a.push({placeholder:f[0],param_no:f[1],keys:f[2],sign:f[3],pad_char:f[4],align:f[5],width:f[6],precision:f[7],type:f[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");p=p.substring(f[0].length)}return b[x]=a}l.sprintf=e,l.vsprintf=u,typeof window<"u"&&(window.sprintf=e,window.vsprintf=u)})()})(_c)),_c}$C();const $g={props:{config:{type:Object},packets:{type:Array}},data:function(){return{currentConfig:{},currentPackets:[],latestData:null}},computed:{hasRaw:function(){for(let l=0;l<this.currentPackets.length;l++)if(this.currentPackets[l].mode==="RAW")return!0;return!1},hasDecom:function(){for(let l=0;l<this.currentPackets.length;l++)if(this.currentPackets[l].mode==="DECOM")return!0;return!1}},watch:{currentConfig:{deep:!0,handler:function(l){this.$emit("config",l)}}},created:function(){this.config&&(this.currentConfig={...this.config}),this.packets&&(this.currentPackets=[...this.packets])},methods:{receive:function(l){this.latestData=l}}};var Vs={exports:{}};var TC=Vs.exports,$f;function LC(){return $f||($f=1,(function(l,c){(function(){var e,u="4.18.1",M=200,b="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",v="Expected a function",x="Invalid `variable` option passed into `_.template`",p="Invalid `imports` option passed into `_.template`",f="__lodash_hash_undefined__",a=500,s="__lodash_placeholder__",o=1,r=2,n=4,i=1,h=2,m=1,y=2,R=4,T=8,k=16,w=32,I=64,D=128,E=256,L=512,z=30,F="...",O=800,A=16,S=1,N=2,W=3,V=1/0,G=9007199254740991,Q=17976931348623157e292,te=NaN,le=4294967295,ne=le-1,ue=le>>>1,he=[["ary",D],["bind",m],["bindKey",y],["curry",T],["curryRight",k],["flip",L],["partial",w],["partialRight",I],["rearg",E]],ce="[object Arguments]",me="[object Array]",_e="[object AsyncFunction]",Ae="[object Boolean]",Me="[object Date]",Ye="[object DOMException]",Ve="[object Error]",it="[object Function]",lt="[object GeneratorFunction]",nt="[object Map]",Ot="[object Number]",bi="[object Null]",kt="[object Object]",ci="[object Promise]",_n="[object Proxy]",ui="[object RegExp]",tn="[object Set]",Kn="[object String]",ht="[object Symbol]",je="[object Undefined]",Et="[object WeakMap]",sn="[object WeakSet]",An="[object ArrayBuffer]",Pn="[object DataView]",Gn="[object Float32Array]",an="[object Float64Array]",Mn="[object Int8Array]",Bn="[object Int16Array]",jt="[object Int32Array]",$n="[object Uint8Array]",Ar="[object Uint8ClampedArray]",Yi="[object Uint16Array]",xi="[object Uint32Array]",Qi=/\b__p \+= '';/g,Mr=/\b(__p \+=) '' \+/g,qn=/(__e\(.*?\)|\b__t\)) \+\n'';/g,$r=/&(?:amp|lt|gt|quot|#39);/g,Tr=/[&<>"']/g,Cs=RegExp($r.source),Si=RegExp(Tr.source),ks=/<%-([\s\S]+?)%>/g,Ko=/<%([\s\S]+?)%>/g,fo=/<%=([\s\S]+?)%>/g,Zi=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,mn=/^\w*$/,hi=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ci=/[\\^$.*+?()[\]{}|]/g,vn=RegExp(Ci.source),Wn=/^\s+/,pr=/\s/,Ji=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,po=/\{\n\/\* \[wrapped with (.+)\] \*/,Go=/,? & /,_s=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,qo=/[()=,{}\[\]\/\s]/,Xi=/\\(\\)?/g,Ni=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,_t=/\w*$/,Yo=/^[-+]0x[0-9a-f]+$/i,Yn=/^0b[01]+$/i,yn=/^\[object .+?Constructor\]$/,Zt=/^0o[0-7]+$/i,hn=/^(?:0|[1-9]\d*)$/,Lr=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Tn=/($^)/,Er=/['\n\r\u2028\u2029\\]/g,er="\\ud800-\\udfff",go="\\u0300-\\u036f",gr="\\ufe20-\\ufe2f",ki="\\u20d0-\\u20ff",Rr=go+gr+ki,qr="\\u2700-\\u27bf",ii="a-z\\xdf-\\xf6\\xf8-\\xff",Yr="\\xac\\xb1\\xd7\\xf7",mo="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",vo="\\u2000-\\u206f",yo=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ln="A-Z\\xc0-\\xd6\\xd8-\\xde",wo="\\ufe0e\\ufe0f",Qr=Yr+mo+vo+yo,mr="['’]",bo="["+er+"]",Zr="["+Qr+"]",Ir="["+Rr+"]",xo="\\d+",So="["+qr+"]",Jr="["+ii+"]",Qo="[^"+er+Qr+xo+qr+ii+Ln+"]",vr="\\ud83c[\\udffb-\\udfff]",Xr="(?:"+Ir+"|"+vr+")",tr="[^"+er+"]",En="(?:\\ud83c[\\udde6-\\uddff]){2}",Co="[\\ud800-\\udbff][\\udc00-\\udfff]",ri="["+Ln+"]",Zo="\\u200d",Jo="(?:"+Jr+"|"+Qo+")",eo="(?:"+ri+"|"+Qo+")",nr="(?:"+mr+"(?:d|ll|m|re|s|t|ve))?",Or="(?:"+mr+"(?:D|LL|M|RE|S|T|VE))?",to=Xr+"?",yr="["+wo+"]?",Xo="(?:"+Zo+"(?:"+[tr,En,Co].join("|")+")"+yr+to+")*",wr="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",De="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",ko=yr+to+Xo,Ie="(?:"+[So,En,Co].join("|")+")"+ko,ln="(?:"+[tr+Ir+"?",Ir,En,Co,bo].join("|")+")",Nr=RegExp(mr,"g"),ir=RegExp(Ir,"g"),cn=RegExp(vr+"(?="+vr+")|"+ln+ko,"g"),es=RegExp([ri+"?"+Jr+"+"+nr+"(?="+[Zr,ri,"$"].join("|")+")",eo+"+"+Or+"(?="+[Zr,ri+Jo,"$"].join("|")+")",ri+"?"+Jo+"+"+nr,ri+"+"+Or,De,wr,xo,Ie].join("|"),"g"),Dr=RegExp("["+Zo+er+Rr+wo+"]"),Di=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,br=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],_o=-1,Pt={};Pt[Gn]=Pt[an]=Pt[Mn]=Pt[Bn]=Pt[jt]=Pt[$n]=Pt[Ar]=Pt[Yi]=Pt[xi]=!0,Pt[ce]=Pt[me]=Pt[An]=Pt[Ae]=Pt[Pn]=Pt[Me]=Pt[Ve]=Pt[it]=Pt[nt]=Pt[Ot]=Pt[kt]=Pt[ui]=Pt[tn]=Pt[Kn]=Pt[Et]=!1;var et={};et[ce]=et[me]=et[An]=et[Pn]=et[Ae]=et[Me]=et[Gn]=et[an]=et[Mn]=et[Bn]=et[jt]=et[nt]=et[Ot]=et[kt]=et[ui]=et[tn]=et[Kn]=et[ht]=et[$n]=et[Ar]=et[Yi]=et[xi]=!0,et[Ve]=et[it]=et[Et]=!1;var $t={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Fi={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},dn={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},Pe={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Jt=parseFloat,ft=parseInt,Qn=typeof uo=="object"&&uo&&uo.Object===Object&&uo,Pi=typeof self=="object"&&self&&self.Object===Object&&self,bt=Qn||Pi||Function("return this")(),Zn=c&&!c.nodeType&&c,Sn=Zn&&!0&&l&&!l.nodeType&&l,rr=Sn&&Sn.exports===Zn,_i=rr&&Qn.process,nn=(function(){try{var ge=Sn&&Sn.require&&Sn.require("util").types;return ge||_i&&_i.binding&&_i.binding("util")}catch{}})(),no=nn&&nn.isArrayBuffer,fn=nn&&nn.isDate,Ai=nn&&nn.isMap,Mi=nn&&nn.isRegExp,Bi=nn&&nn.isSet,Ao=nn&&nn.isTypedArray;function Wt(ge,ke,Se){switch(Se.length){case 0:return ge.call(ke);case 1:return ge.call(ke,Se[0]);case 2:return ge.call(ke,Se[0],Se[1]);case 3:return ge.call(ke,Se[0],Se[1],Se[2])}return ge.apply(ke,Se)}function ts(ge,ke,Se,He){for(var tt=-1,mt=ge==null?0:ge.length;++tt<mt;){var Dt=ge[tt];ke(He,Dt,Se(Dt),ge)}return He}function Rn(ge,ke){for(var Se=-1,He=ge==null?0:ge.length;++Se<He&&ke(ge[Se],Se,ge)!==!1;);return ge}function Jn(ge,ke){for(var Se=ge==null?0:ge.length;Se--&&ke(ge[Se],Se,ge)!==!1;);return ge}function xr(ge,ke){for(var Se=-1,He=ge==null?0:ge.length;++Se<He;)if(!ke(ge[Se],Se,ge))return!1;return!0}function zn(ge,ke){for(var Se=-1,He=ge==null?0:ge.length,tt=0,mt=[];++Se<He;){var Dt=ge[Se];ke(Dt,Se,ge)&&(mt[tt++]=Dt)}return mt}function di(ge,ke){var Se=ge==null?0:ge.length;return!!Se&&ve(ge,ke,0)>-1}function g(ge,ke,Se){for(var He=-1,tt=ge==null?0:ge.length;++He<tt;)if(Se(ke,ge[He]))return!0;return!1}function _(ge,ke){for(var Se=-1,He=ge==null?0:ge.length,tt=Array(He);++Se<He;)tt[Se]=ke(ge[Se],Se,ge);return tt}function C(ge,ke){for(var Se=-1,He=ke.length,tt=ge.length;++Se<He;)ge[tt+Se]=ke[Se];return ge}function P(ge,ke,Se,He){var tt=-1,mt=ge==null?0:ge.length;for(He&&mt&&(Se=ge[++tt]);++tt<mt;)Se=ke(Se,ge[tt],tt,ge);return Se}function B(ge,ke,Se,He){var tt=ge==null?0:ge.length;for(He&&tt&&(Se=ge[--tt]);tt--;)Se=ke(Se,ge[tt],tt,ge);return Se}function H(ge,ke){for(var Se=-1,He=ge==null?0:ge.length;++Se<He;)if(ke(ge[Se],Se,ge))return!0;return!1}var K=Re("length");function Y(ge){return ge.split("")}function J(ge){return ge.match(_s)||[]}function re(ge,ke,Se){var He;return Se(ge,function(tt,mt,Dt){if(ke(tt,mt,Dt))return He=mt,!1}),He}function se(ge,ke,Se,He){for(var tt=ge.length,mt=Se+(He?1:-1);He?mt--:++mt<tt;)if(ke(ge[mt],mt,ge))return mt;return-1}function ve(ge,ke,Se){return ke===ke?pt(ge,ke,Se):se(ge,de,Se)}function xe(ge,ke,Se,He){for(var tt=Se-1,mt=ge.length;++tt<mt;)if(He(ge[tt],ke))return tt;return-1}function de(ge){return ge!==ge}function we(ge,ke){var Se=ge==null?0:ge.length;return Se?Qe(ge,ke)/Se:te}function Re(ge){return function(ke){return ke==null?e:ke[ge]}}function Te(ge){return function(ke){return ge==null?e:ge[ke]}}function Be(ge,ke,Se,He,tt){return tt(ge,function(mt,Dt,St){Se=He?(He=!1,mt):ke(Se,mt,Dt,St)}),Se}function Xe(ge,ke){var Se=ge.length;for(ge.sort(ke);Se--;)ge[Se]=ge[Se].value;return ge}function Qe(ge,ke){for(var Se,He=-1,tt=ge.length;++He<tt;){var mt=ke(ge[He]);mt!==e&&(Se=Se===e?mt:Se+mt)}return Se}function Ke(ge,ke){for(var Se=-1,He=Array(ge);++Se<ge;)He[Se]=ke(Se);return He}function Gt(ge,ke){return _(ke,function(Se){return[Se,ge[Se]]})}function gt(ge){return ge&&ge.slice(0,rt(ge)+1).replace(Wn,"")}function It(ge){return function(ke){return ge(ke)}}function At(ge,ke){return _(ke,function(Se){return ge[Se]})}function st(ge,ke){return ge.has(ke)}function pn(ge,ke){for(var Se=-1,He=ge.length;++Se<He&&ve(ke,ge[Se],0)>-1;);return Se}function In(ge,ke){for(var Se=ge.length;Se--&&ve(ke,ge[Se],0)>-1;);return Se}function rn(ge,ke){for(var Se=ge.length,He=0;Se--;)ge[Se]===ke&&++He;return He}var j=Te($t),Z=Te(Fi);function ie(ge){return"\\"+Pe[ge]}function oe(ge,ke){return ge==null?e:ge[ke]}function pe(ge){return Dr.test(ge)}function be(ge){return Di.test(ge)}function $e(ge){for(var ke,Se=[];!(ke=ge.next()).done;)Se.push(ke.value);return Se}function Ne(ge){var ke=-1,Se=Array(ge.size);return ge.forEach(function(He,tt){Se[++ke]=[tt,He]}),Se}function Fe(ge,ke){return function(Se){return ge(ke(Se))}}function We(ge,ke){for(var Se=-1,He=ge.length,tt=0,mt=[];++Se<He;){var Dt=ge[Se];(Dt===ke||Dt===s)&&(ge[Se]=s,mt[tt++]=Se)}return mt}function ze(ge){var ke=-1,Se=Array(ge.size);return ge.forEach(function(He){Se[++ke]=He}),Se}function qe(ge){var ke=-1,Se=Array(ge.size);return ge.forEach(function(He){Se[++ke]=[He,He]}),Se}function pt(ge,ke,Se){for(var He=Se-1,tt=ge.length;++He<tt;)if(ge[He]===ke)return He;return-1}function Nt(ge,ke,Se){for(var He=Se+1;He--;)if(ge[He]===ke)return He;return He}function xt(ge){return pe(ge)?qt(ge):K(ge)}function ut(ge){return pe(ge)?on(ge):Y(ge)}function rt(ge){for(var ke=ge.length;ke--&&pr.test(ge.charAt(ke)););return ke}var Je=Te(dn);function qt(ge){for(var ke=cn.lastIndex=0;cn.test(ge);)++ke;return ke}function on(ge){return ge.match(cn)||[]}function Cn(ge){return ge.match(es)||[]}var Ht=(function ge(ke){ke=ke==null?bt:Kt.defaults(bt.Object(),ke,Kt.pick(bt,br));var Se=ke.Array,He=ke.Date,tt=ke.Error,mt=ke.Function,Dt=ke.Math,St=ke.Object,fi=ke.RegExp,Un=ke.String,Xt=ke.TypeError,Wi=Se.prototype,Vn=mt.prototype,Fr=St.prototype,oa=ke["__core-js_shared__"],sa=Vn.toString,zt=Fr.hasOwnProperty,wm=0,eh=(function(){var t=/[^.]+$/.exec(oa&&oa.keys&&oa.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})(),aa=Fr.toString,bm=sa.call(St),xm=bt._,Sm=fi("^"+sa.call(zt).replace(Ci,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),la=rr?ke.Buffer:e,io=ke.Symbol,ca=ke.Uint8Array,th=la?la.allocUnsafe:e,ua=Fe(St.getPrototypeOf,St),nh=St.create,ih=Fr.propertyIsEnumerable,ha=Wi.splice,rh=io?io.isConcatSpreadable:e,As=io?io.iterator:e,Mo=io?io.toStringTag:e,da=(function(){try{var t=Ro(St,"defineProperty");return t({},"",{}),t}catch{}})(),Cm=ke.clearTimeout!==bt.clearTimeout&&ke.clearTimeout,km=He&&He.now!==bt.Date.now&&He.now,_m=ke.setTimeout!==bt.setTimeout&&ke.setTimeout,fa=Dt.ceil,pa=Dt.floor,vl=St.getOwnPropertySymbols,Am=la?la.isBuffer:e,oh=ke.isFinite,Mm=Wi.join,$m=Fe(St.keys,St),On=Dt.max,Xn=Dt.min,Tm=He.now,Lm=ke.parseInt,sh=Dt.random,Em=Wi.reverse,yl=Ro(ke,"DataView"),Ms=Ro(ke,"Map"),wl=Ro(ke,"Promise"),ns=Ro(ke,"Set"),$s=Ro(ke,"WeakMap"),Ts=Ro(St,"create"),ga=$s&&new $s,is={},Rm=Io(yl),Im=Io(Ms),Om=Io(wl),Nm=Io(ns),Dm=Io($s),ma=io?io.prototype:e,Ls=ma?ma.valueOf:e,ah=ma?ma.toString:e;function X(t){if(gn(t)&&!vt(t)&&!(t instanceof Tt)){if(t instanceof Hi)return t;if(zt.call(t,"__wrapped__"))return ld(t)}return new Hi(t)}var rs=(function(){function t(){}return function(d){if(!un(d))return{};if(nh)return nh(d);t.prototype=d;var $=new t;return t.prototype=e,$}})();function va(){}function Hi(t,d){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!d,this.__index__=0,this.__values__=e}X.templateSettings={escape:ks,evaluate:Ko,interpolate:fo,variable:"",imports:{_:X}},X.prototype=va.prototype,X.prototype.constructor=X,Hi.prototype=rs(va.prototype),Hi.prototype.constructor=Hi;function Tt(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=le,this.__views__=[]}function Fm(){var t=new Tt(this.__wrapped__);return t.__actions__=pi(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=pi(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=pi(this.__views__),t}function Pm(){if(this.__filtered__){var t=new Tt(this);t.__dir__=-1,t.__filtered__=!0}else t=this.clone(),t.__dir__*=-1;return t}function Bm(){var t=this.__wrapped__.value(),d=this.__dir__,$=vt(t),U=d<0,q=$?t.length:0,ee=Zv(0,q,this.__views__),ae=ee.start,fe=ee.end,ye=fe-ae,Le=U?fe:ae-1,Ee=this.__iteratees__,Oe=Ee.length,Ue=0,Ze=Xn(ye,this.__takeCount__);if(!$||!U&&q==ye&&Ze==ye)return Eh(t,this.__actions__);var ct=[];e:for(;ye--&&Ue<Ze;){Le+=d;for(var wt=-1,ot=t[Le];++wt<Oe;){var Mt=Ee[wt],Rt=Mt.iteratee,Li=Mt.type,ai=Rt(ot);if(Li==N)ot=ai;else if(!ai){if(Li==S)continue e;break e}}ct[Ue++]=ot}return ct}Tt.prototype=rs(va.prototype),Tt.prototype.constructor=Tt;function $o(t){var d=-1,$=t==null?0:t.length;for(this.clear();++d<$;){var U=t[d];this.set(U[0],U[1])}}function Wm(){this.__data__=Ts?Ts(null):{},this.size=0}function Hm(t){var d=this.has(t)&&delete this.__data__[t];return this.size-=d?1:0,d}function zm(t){var d=this.__data__;if(Ts){var $=d[t];return $===f?e:$}return zt.call(d,t)?d[t]:e}function Um(t){var d=this.__data__;return Ts?d[t]!==e:zt.call(d,t)}function Vm(t,d){var $=this.__data__;return this.size+=this.has(t)?0:1,$[t]=Ts&&d===e?f:d,this}$o.prototype.clear=Wm,$o.prototype.delete=Hm,$o.prototype.get=zm,$o.prototype.has=Um,$o.prototype.set=Vm;function Pr(t){var d=-1,$=t==null?0:t.length;for(this.clear();++d<$;){var U=t[d];this.set(U[0],U[1])}}function jm(){this.__data__=[],this.size=0}function Km(t){var d=this.__data__,$=ya(d,t);if($<0)return!1;var U=d.length-1;return $==U?d.pop():ha.call(d,$,1),--this.size,!0}function Gm(t){var d=this.__data__,$=ya(d,t);return $<0?e:d[$][1]}function qm(t){return ya(this.__data__,t)>-1}function Ym(t,d){var $=this.__data__,U=ya($,t);return U<0?(++this.size,$.push([t,d])):$[U][1]=d,this}Pr.prototype.clear=jm,Pr.prototype.delete=Km,Pr.prototype.get=Gm,Pr.prototype.has=qm,Pr.prototype.set=Ym;function Br(t){var d=-1,$=t==null?0:t.length;for(this.clear();++d<$;){var U=t[d];this.set(U[0],U[1])}}function Qm(){this.size=0,this.__data__={hash:new $o,map:new(Ms||Pr),string:new $o}}function Zm(t){var d=La(this,t).delete(t);return this.size-=d?1:0,d}function Jm(t){return La(this,t).get(t)}function Xm(t){return La(this,t).has(t)}function ev(t,d){var $=La(this,t),U=$.size;return $.set(t,d),this.size+=$.size==U?0:1,this}Br.prototype.clear=Qm,Br.prototype.delete=Zm,Br.prototype.get=Jm,Br.prototype.has=Xm,Br.prototype.set=ev;function To(t){var d=-1,$=t==null?0:t.length;for(this.__data__=new Br;++d<$;)this.add(t[d])}function tv(t){return this.__data__.set(t,f),this}function nv(t){return this.__data__.has(t)}To.prototype.add=To.prototype.push=tv,To.prototype.has=nv;function or(t){var d=this.__data__=new Pr(t);this.size=d.size}function iv(){this.__data__=new Pr,this.size=0}function rv(t){var d=this.__data__,$=d.delete(t);return this.size=d.size,$}function ov(t){return this.__data__.get(t)}function sv(t){return this.__data__.has(t)}function av(t,d){var $=this.__data__;if($ instanceof Pr){var U=$.__data__;if(!Ms||U.length<M-1)return U.push([t,d]),this.size=++$.size,this;$=this.__data__=new Br(U)}return $.set(t,d),this.size=$.size,this}or.prototype.clear=iv,or.prototype.delete=rv,or.prototype.get=ov,or.prototype.has=sv,or.prototype.set=av;function lh(t,d){var $=vt(t),U=!$&&Oo(t),q=!$&&!U&&lo(t),ee=!$&&!U&&!q&&ls(t),ae=$||U||q||ee,fe=ae?Ke(t.length,Un):[],ye=fe.length;for(var Le in t)(d||zt.call(t,Le))&&!(ae&&(Le=="length"||q&&(Le=="offset"||Le=="parent")||ee&&(Le=="buffer"||Le=="byteLength"||Le=="byteOffset")||zr(Le,ye)))&&fe.push(Le);return fe}function ch(t){var d=t.length;return d?t[Ll(0,d-1)]:e}function lv(t,d){return Ea(pi(t),Lo(d,0,t.length))}function cv(t){return Ea(pi(t))}function bl(t,d,$){($!==e&&!ar(t[d],$)||$===e&&!(d in t))&&Sr(t,d,$)}function Es(t,d,$){var U=t[d];(!(zt.call(t,d)&&ar(U,$))||$===e&&!(d in t))&&Sr(t,d,$)}function ya(t,d){for(var $=t.length;$--;)if(ar(t[$][0],d))return $;return-1}function uv(t,d,$,U){return ro(t,function(q,ee,ae){d(U,q,$(q),ae)}),U}function uh(t,d){return t&&kr(d,Hn(d),t)}function hv(t,d){return t&&kr(d,mi(d),t)}function Sr(t,d,$){d=="__proto__"&&da?da(t,d,{configurable:!0,enumerable:!0,value:$,writable:!0}):t[d]=$}function xl(t,d){for(var $=-1,U=d.length,q=Se(U),ee=t==null;++$<U;)q[$]=ee?e:nc(t,d[$]);return q}function Lo(t,d,$){return t===t&&($!==e&&(t=t<=$?t:$),d!==e&&(t=t>=d?t:d)),t}function zi(t,d,$,U,q,ee){var ae,fe=d&o,ye=d&r,Le=d&n;if($&&(ae=q?$(t,U,q,ee):$(t)),ae!==e)return ae;if(!un(t))return t;var Ee=vt(t);if(Ee){if(ae=Xv(t),!fe)return pi(t,ae)}else{var Oe=ei(t),Ue=Oe==it||Oe==lt;if(lo(t))return Oh(t,fe);if(Oe==kt||Oe==ce||Ue&&!q){if(ae=ye||Ue?{}:Xh(t),!fe)return ye?zv(t,hv(ae,t)):Hv(t,uh(ae,t))}else{if(!et[Oe])return q?t:{};ae=ey(t,Oe,fe)}}ee||(ee=new or);var Ze=ee.get(t);if(Ze)return Ze;ee.set(t,ae),$d(t)?t.forEach(function(ot){ae.add(zi(ot,d,$,ot,t,ee))}):Ad(t)&&t.forEach(function(ot,Mt){ae.set(Mt,zi(ot,d,$,Mt,t,ee))});var ct=Le?ye?Hl:Wl:ye?mi:Hn,wt=Ee?e:ct(t);return Rn(wt||t,function(ot,Mt){wt&&(Mt=ot,ot=t[Mt]),Es(ae,Mt,zi(ot,d,$,Mt,t,ee))}),ae}function dv(t){var d=Hn(t);return function($){return hh($,t,d)}}function hh(t,d,$){var U=$.length;if(t==null)return!U;for(t=St(t);U--;){var q=$[U],ee=d[q],ae=t[q];if(ae===e&&!(q in t)||!ee(ae))return!1}return!0}function dh(t,d,$){if(typeof t!="function")throw new Xt(v);return Ps(function(){t.apply(e,$)},d)}function Rs(t,d,$,U){var q=-1,ee=di,ae=!0,fe=t.length,ye=[],Le=d.length;if(!fe)return ye;$&&(d=_(d,It($))),U?(ee=g,ae=!1):d.length>=M&&(ee=st,ae=!1,d=new To(d));e:for(;++q<fe;){var Ee=t[q],Oe=$==null?Ee:$(Ee);if(Ee=U||Ee!==0?Ee:0,ae&&Oe===Oe){for(var Ue=Le;Ue--;)if(d[Ue]===Oe)continue e;ye.push(Ee)}else ee(d,Oe,U)||ye.push(Ee)}return ye}var ro=Bh(Cr),fh=Bh(Cl,!0);function fv(t,d){var $=!0;return ro(t,function(U,q,ee){return $=!!d(U,q,ee),$}),$}function wa(t,d,$){for(var U=-1,q=t.length;++U<q;){var ee=t[U],ae=d(ee);if(ae!=null&&(fe===e?ae===ae&&!Ti(ae):$(ae,fe)))var fe=ae,ye=ee}return ye}function pv(t,d,$,U){var q=t.length;for($=yt($),$<0&&($=-$>q?0:q+$),U=U===e||U>q?q:yt(U),U<0&&(U+=q),U=$>U?0:Ld(U);$<U;)t[$++]=d;return t}function ph(t,d){var $=[];return ro(t,function(U,q,ee){d(U,q,ee)&&$.push(U)}),$}function jn(t,d,$,U,q){var ee=-1,ae=t.length;for($||($=ny),q||(q=[]);++ee<ae;){var fe=t[ee];d>0&&$(fe)?d>1?jn(fe,d-1,$,U,q):C(q,fe):U||(q[q.length]=fe)}return q}var Sl=Wh(),gh=Wh(!0);function Cr(t,d){return t&&Sl(t,d,Hn)}function Cl(t,d){return t&&gh(t,d,Hn)}function ba(t,d){return zn(d,function($){return Ur(t[$])})}function Eo(t,d){d=so(d,t);for(var $=0,U=d.length;t!=null&&$<U;)t=t[sr(d[$++])];return $&&$==U?t:e}function mh(t,d,$){var U=d(t);return vt(t)?U:C(U,$(t))}function oi(t){return t==null?t===e?je:bi:Mo&&Mo in St(t)?Qv(t):cy(t)}function kl(t,d){return t>d}function gv(t,d){return t!=null&&zt.call(t,d)}function mv(t,d){return t!=null&&d in St(t)}function vv(t,d,$){return t>=Xn(d,$)&&t<On(d,$)}function _l(t,d,$){for(var U=$?g:di,q=t[0].length,ee=t.length,ae=ee,fe=Se(ee),ye=1/0,Le=[];ae--;){var Ee=t[ae];ae&&d&&(Ee=_(Ee,It(d))),ye=Xn(Ee.length,ye),fe[ae]=!$&&(d||q>=120&&Ee.length>=120)?new To(ae&&Ee):e}Ee=t[0];var Oe=-1,Ue=fe[0];e:for(;++Oe<q&&Le.length<ye;){var Ze=Ee[Oe],ct=d?d(Ze):Ze;if(Ze=$||Ze!==0?Ze:0,!(Ue?st(Ue,ct):U(Le,ct,$))){for(ae=ee;--ae;){var wt=fe[ae];if(!(wt?st(wt,ct):U(t[ae],ct,$)))continue e}Ue&&Ue.push(ct),Le.push(Ze)}}return Le}function yv(t,d,$,U){return Cr(t,function(q,ee,ae){d(U,$(q),ee,ae)}),U}function Is(t,d,$){d=so(d,t),t=id(t,d);var U=t==null?t:t[sr(Vi(d))];return U==null?e:Wt(U,t,$)}function vh(t){return gn(t)&&oi(t)==ce}function wv(t){return gn(t)&&oi(t)==An}function bv(t){return gn(t)&&oi(t)==Me}function Os(t,d,$,U,q){return t===d?!0:t==null||d==null||!gn(t)&&!gn(d)?t!==t&&d!==d:xv(t,d,$,U,Os,q)}function xv(t,d,$,U,q,ee){var ae=vt(t),fe=vt(d),ye=ae?me:ei(t),Le=fe?me:ei(d);ye=ye==ce?kt:ye,Le=Le==ce?kt:Le;var Ee=ye==kt,Oe=Le==kt,Ue=ye==Le;if(Ue&&lo(t)){if(!lo(d))return!1;ae=!0,Ee=!1}if(Ue&&!Ee)return ee||(ee=new or),ae||ls(t)?Qh(t,d,$,U,q,ee):qv(t,d,ye,$,U,q,ee);if(!($&i)){var Ze=Ee&&zt.call(t,"__wrapped__"),ct=Oe&&zt.call(d,"__wrapped__");if(Ze||ct){var wt=Ze?t.value():t,ot=ct?d.value():d;return ee||(ee=new or),q(wt,ot,$,U,ee)}}return Ue?(ee||(ee=new or),Yv(t,d,$,U,q,ee)):!1}function Sv(t){return gn(t)&&ei(t)==nt}function Al(t,d,$,U){var q=$.length,ee=q,ae=!U;if(t==null)return!ee;for(t=St(t);q--;){var fe=$[q];if(ae&&fe[2]?fe[1]!==t[fe[0]]:!(fe[0]in t))return!1}for(;++q<ee;){fe=$[q];var ye=fe[0],Le=t[ye],Ee=fe[1];if(ae&&fe[2]){if(Le===e&&!(ye in t))return!1}else{var Oe=new or;if(U)var Ue=U(Le,Ee,ye,t,d,Oe);if(!(Ue===e?Os(Ee,Le,i|h,U,Oe):Ue))return!1}}return!0}function yh(t){if(!un(t)||ry(t))return!1;var d=Ur(t)?Sm:yn;return d.test(Io(t))}function Cv(t){return gn(t)&&oi(t)==ui}function kv(t){return gn(t)&&ei(t)==tn}function _v(t){return gn(t)&&Fa(t.length)&&!!Pt[oi(t)]}function wh(t){return typeof t=="function"?t:t==null?vi:typeof t=="object"?vt(t)?Sh(t[0],t[1]):xh(t):zd(t)}function Ml(t){if(!Fs(t))return $m(t);var d=[];for(var $ in St(t))zt.call(t,$)&&$!="constructor"&&d.push($);return d}function Av(t){if(!un(t))return ly(t);var d=Fs(t),$=[];for(var U in t)U=="constructor"&&(d||!zt.call(t,U))||$.push(U);return $}function $l(t,d){return t<d}function bh(t,d){var $=-1,U=gi(t)?Se(t.length):[];return ro(t,function(q,ee,ae){U[++$]=d(q,ee,ae)}),U}function xh(t){var d=Ul(t);return d.length==1&&d[0][2]?td(d[0][0],d[0][1]):function($){return $===t||Al($,t,d)}}function Sh(t,d){return jl(t)&&ed(d)?td(sr(t),d):function($){var U=nc($,t);return U===e&&U===d?ic($,t):Os(d,U,i|h)}}function xa(t,d,$,U,q){t!==d&&Sl(d,function(ee,ae){if(q||(q=new or),un(ee))Mv(t,d,ae,$,xa,U,q);else{var fe=U?U(Gl(t,ae),ee,ae+"",t,d,q):e;fe===e&&(fe=ee),bl(t,ae,fe)}},mi)}function Mv(t,d,$,U,q,ee,ae){var fe=Gl(t,$),ye=Gl(d,$),Le=ae.get(ye);if(Le){bl(t,$,Le);return}var Ee=ee?ee(fe,ye,$+"",t,d,ae):e,Oe=Ee===e;if(Oe){var Ue=vt(ye),Ze=!Ue&&lo(ye),ct=!Ue&&!Ze&&ls(ye);Ee=ye,Ue||Ze||ct?vt(fe)?Ee=fe:wn(fe)?Ee=pi(fe):Ze?(Oe=!1,Ee=Oh(ye,!0)):ct?(Oe=!1,Ee=Nh(ye,!0)):Ee=[]:Bs(ye)||Oo(ye)?(Ee=fe,Oo(fe)?Ee=Ed(fe):(!un(fe)||Ur(fe))&&(Ee=Xh(ye))):Oe=!1}Oe&&(ae.set(ye,Ee),q(Ee,ye,U,ee,ae),ae.delete(ye)),bl(t,$,Ee)}function Ch(t,d){var $=t.length;if($)return d+=d<0?$:0,zr(d,$)?t[d]:e}function kh(t,d,$){d.length?d=_(d,function(ee){return vt(ee)?function(ae){return Eo(ae,ee.length===1?ee[0]:ee)}:ee}):d=[vi];var U=-1;d=_(d,It(at()));var q=bh(t,function(ee,ae,fe){var ye=_(d,function(Le){return Le(ee)});return{criteria:ye,index:++U,value:ee}});return Xe(q,function(ee,ae){return Wv(ee,ae,$)})}function $v(t,d){return _h(t,d,function($,U){return ic(t,U)})}function _h(t,d,$){for(var U=-1,q=d.length,ee={};++U<q;){var ae=d[U],fe=Eo(t,ae);$(fe,ae)&&Ns(ee,so(ae,t),fe)}return ee}function Tv(t){return function(d){return Eo(d,t)}}function Tl(t,d,$,U){var q=U?xe:ve,ee=-1,ae=d.length,fe=t;for(t===d&&(d=pi(d)),$&&(fe=_(t,It($)));++ee<ae;)for(var ye=0,Le=d[ee],Ee=$?$(Le):Le;(ye=q(fe,Ee,ye,U))>-1;)fe!==t&&ha.call(fe,ye,1),ha.call(t,ye,1);return t}function Ah(t,d){for(var $=t?d.length:0,U=$-1;$--;){var q=d[$];if($==U||q!==ee){var ee=q;zr(q)?ha.call(t,q,1):Il(t,q)}}return t}function Ll(t,d){return t+pa(sh()*(d-t+1))}function Lv(t,d,$,U){for(var q=-1,ee=On(fa((d-t)/($||1)),0),ae=Se(ee);ee--;)ae[U?ee:++q]=t,t+=$;return ae}function El(t,d){var $="";if(!t||d<1||d>G)return $;do d%2&&($+=t),d=pa(d/2),d&&(t+=t);while(d);return $}function Ct(t,d){return ql(nd(t,d,vi),t+"")}function Ev(t){return ch(cs(t))}function Rv(t,d){var $=cs(t);return Ea($,Lo(d,0,$.length))}function Ns(t,d,$,U){if(!un(t))return t;d=so(d,t);for(var q=-1,ee=d.length,ae=ee-1,fe=t;fe!=null&&++q<ee;){var ye=sr(d[q]),Le=$;if(ye==="__proto__"||ye==="constructor"||ye==="prototype")return t;if(q!=ae){var Ee=fe[ye];Le=U?U(Ee,ye,fe):e,Le===e&&(Le=un(Ee)?Ee:zr(d[q+1])?[]:{})}Es(fe,ye,Le),fe=fe[ye]}return t}var Mh=ga?function(t,d){return ga.set(t,d),t}:vi,Iv=da?function(t,d){return da(t,"toString",{configurable:!0,enumerable:!1,value:oc(d),writable:!0})}:vi;function Ov(t){return Ea(cs(t))}function Ui(t,d,$){var U=-1,q=t.length;d<0&&(d=-d>q?0:q+d),$=$>q?q:$,$<0&&($+=q),q=d>$?0:$-d>>>0,d>>>=0;for(var ee=Se(q);++U<q;)ee[U]=t[U+d];return ee}function Nv(t,d){var $;return ro(t,function(U,q,ee){return $=d(U,q,ee),!$}),!!$}function Sa(t,d,$){var U=0,q=t==null?U:t.length;if(typeof d=="number"&&d===d&&q<=ue){for(;U<q;){var ee=U+q>>>1,ae=t[ee];ae!==null&&!Ti(ae)&&($?ae<=d:ae<d)?U=ee+1:q=ee}return q}return Rl(t,d,vi,$)}function Rl(t,d,$,U){var q=0,ee=t==null?0:t.length;if(ee===0)return 0;d=$(d);for(var ae=d!==d,fe=d===null,ye=Ti(d),Le=d===e;q<ee;){var Ee=pa((q+ee)/2),Oe=$(t[Ee]),Ue=Oe!==e,Ze=Oe===null,ct=Oe===Oe,wt=Ti(Oe);if(ae)var ot=U||ct;else Le?ot=ct&&(U||Ue):fe?ot=ct&&Ue&&(U||!Ze):ye?ot=ct&&Ue&&!Ze&&(U||!wt):Ze||wt?ot=!1:ot=U?Oe<=d:Oe<d;ot?q=Ee+1:ee=Ee}return Xn(ee,ne)}function $h(t,d){for(var $=-1,U=t.length,q=0,ee=[];++$<U;){var ae=t[$],fe=d?d(ae):ae;if(!$||!ar(fe,ye)){var ye=fe;ee[q++]=ae===0?0:ae}}return ee}function Th(t){return typeof t=="number"?t:Ti(t)?te:+t}function $i(t){if(typeof t=="string")return t;if(vt(t))return _(t,$i)+"";if(Ti(t))return ah?ah.call(t):"";var d=t+"";return d=="0"&&1/t==-V?"-0":d}function oo(t,d,$){var U=-1,q=di,ee=t.length,ae=!0,fe=[],ye=fe;if($)ae=!1,q=g;else if(ee>=M){var Le=d?null:Kv(t);if(Le)return ze(Le);ae=!1,q=st,ye=new To}else ye=d?[]:fe;e:for(;++U<ee;){var Ee=t[U],Oe=d?d(Ee):Ee;if(Ee=$||Ee!==0?Ee:0,ae&&Oe===Oe){for(var Ue=ye.length;Ue--;)if(ye[Ue]===Oe)continue e;d&&ye.push(Oe),fe.push(Ee)}else q(ye,Oe,$)||(ye!==fe&&ye.push(Oe),fe.push(Ee))}return fe}function Il(t,d){d=so(d,t);var $=-1,U=d.length;if(!U)return!0;for(;++$<U;){var q=sr(d[$]);if(q==="__proto__"&&!zt.call(t,"__proto__")||(q==="constructor"||q==="prototype")&&$<U-1)return!1}var ee=id(t,d);return ee==null||delete ee[sr(Vi(d))]}function Lh(t,d,$,U){return Ns(t,d,$(Eo(t,d)),U)}function Ca(t,d,$,U){for(var q=t.length,ee=U?q:-1;(U?ee--:++ee<q)&&d(t[ee],ee,t););return $?Ui(t,U?0:ee,U?ee+1:q):Ui(t,U?ee+1:0,U?q:ee)}function Eh(t,d){var $=t;return $ instanceof Tt&&($=$.value()),P(d,function(U,q){return q.func.apply(q.thisArg,C([U],q.args))},$)}function Ol(t,d,$){var U=t.length;if(U<2)return U?oo(t[0]):[];for(var q=-1,ee=Se(U);++q<U;)for(var ae=t[q],fe=-1;++fe<U;)fe!=q&&(ee[q]=Rs(ee[q]||ae,t[fe],d,$));return oo(jn(ee,1),d,$)}function Rh(t,d,$){for(var U=-1,q=t.length,ee=d.length,ae={};++U<q;){var fe=U<ee?d[U]:e;$(ae,t[U],fe)}return ae}function Nl(t){return wn(t)?t:[]}function Dl(t){return typeof t=="function"?t:vi}function so(t,d){return vt(t)?t:jl(t,d)?[t]:ad(Ut(t))}var Dv=Ct;function ao(t,d,$){var U=t.length;return $=$===e?U:$,!d&&$>=U?t:Ui(t,d,$)}var Ih=Cm||function(t){return bt.clearTimeout(t)};function Oh(t,d){if(d)return t.slice();var $=t.length,U=th?th($):new t.constructor($);return t.copy(U),U}function Fl(t){var d=new t.constructor(t.byteLength);return new ca(d).set(new ca(t)),d}function Fv(t,d){var $=d?Fl(t.buffer):t.buffer;return new t.constructor($,t.byteOffset,t.byteLength)}function Pv(t){var d=new t.constructor(t.source,_t.exec(t));return d.lastIndex=t.lastIndex,d}function Bv(t){return Ls?St(Ls.call(t)):{}}function Nh(t,d){var $=d?Fl(t.buffer):t.buffer;return new t.constructor($,t.byteOffset,t.length)}function Dh(t,d){if(t!==d){var $=t!==e,U=t===null,q=t===t,ee=Ti(t),ae=d!==e,fe=d===null,ye=d===d,Le=Ti(d);if(!fe&&!Le&&!ee&&t>d||ee&&ae&&ye&&!fe&&!Le||U&&ae&&ye||!$&&ye||!q)return 1;if(!U&&!ee&&!Le&&t<d||Le&&$&&q&&!U&&!ee||fe&&$&&q||!ae&&q||!ye)return-1}return 0}function Wv(t,d,$){for(var U=-1,q=t.criteria,ee=d.criteria,ae=q.length,fe=$.length;++U<ae;){var ye=Dh(q[U],ee[U]);if(ye){if(U>=fe)return ye;var Le=$[U];return ye*(Le=="desc"?-1:1)}}return t.index-d.index}function Fh(t,d,$,U){for(var q=-1,ee=t.length,ae=$.length,fe=-1,ye=d.length,Le=On(ee-ae,0),Ee=Se(ye+Le),Oe=!U;++fe<ye;)Ee[fe]=d[fe];for(;++q<ae;)(Oe||q<ee)&&(Ee[$[q]]=t[q]);for(;Le--;)Ee[fe++]=t[q++];return Ee}function Ph(t,d,$,U){for(var q=-1,ee=t.length,ae=-1,fe=$.length,ye=-1,Le=d.length,Ee=On(ee-fe,0),Oe=Se(Ee+Le),Ue=!U;++q<Ee;)Oe[q]=t[q];for(var Ze=q;++ye<Le;)Oe[Ze+ye]=d[ye];for(;++ae<fe;)(Ue||q<ee)&&(Oe[Ze+$[ae]]=t[q++]);return Oe}function pi(t,d){var $=-1,U=t.length;for(d||(d=Se(U));++$<U;)d[$]=t[$];return d}function kr(t,d,$,U){var q=!$;$||($={});for(var ee=-1,ae=d.length;++ee<ae;){var fe=d[ee],ye=U?U($[fe],t[fe],fe,$,t):e;ye===e&&(ye=t[fe]),q?Sr($,fe,ye):Es($,fe,ye)}return $}function Hv(t,d){return kr(t,Vl(t),d)}function zv(t,d){return kr(t,Zh(t),d)}function ka(t,d){return function($,U){var q=vt($)?ts:uv,ee=d?d():{};return q($,t,at(U,2),ee)}}function os(t){return Ct(function(d,$){var U=-1,q=$.length,ee=q>1?$[q-1]:e,ae=q>2?$[2]:e;for(ee=t.length>3&&typeof ee=="function"?(q--,ee):e,ae&&si($[0],$[1],ae)&&(ee=q<3?e:ee,q=1),d=St(d);++U<q;){var fe=$[U];fe&&t(d,fe,U,ee)}return d})}function Bh(t,d){return function($,U){if($==null)return $;if(!gi($))return t($,U);for(var q=$.length,ee=d?q:-1,ae=St($);(d?ee--:++ee<q)&&U(ae[ee],ee,ae)!==!1;);return $}}function Wh(t){return function(d,$,U){for(var q=-1,ee=St(d),ae=U(d),fe=ae.length;fe--;){var ye=ae[t?fe:++q];if($(ee[ye],ye,ee)===!1)break}return d}}function Uv(t,d,$){var U=d&m,q=Ds(t);function ee(){var ae=this&&this!==bt&&this instanceof ee?q:t;return ae.apply(U?$:this,arguments)}return ee}function Hh(t){return function(d){d=Ut(d);var $=pe(d)?ut(d):e,U=$?$[0]:d.charAt(0),q=$?ao($,1).join(""):d.slice(1);return U[t]()+q}}function ss(t){return function(d){return P(Wd(Bd(d).replace(Nr,"")),t,"")}}function Ds(t){return function(){var d=arguments;switch(d.length){case 0:return new t;case 1:return new t(d[0]);case 2:return new t(d[0],d[1]);case 3:return new t(d[0],d[1],d[2]);case 4:return new t(d[0],d[1],d[2],d[3]);case 5:return new t(d[0],d[1],d[2],d[3],d[4]);case 6:return new t(d[0],d[1],d[2],d[3],d[4],d[5]);case 7:return new t(d[0],d[1],d[2],d[3],d[4],d[5],d[6])}var $=rs(t.prototype),U=t.apply($,d);return un(U)?U:$}}function Vv(t,d,$){var U=Ds(t);function q(){for(var ee=arguments.length,ae=Se(ee),fe=ee,ye=as(q);fe--;)ae[fe]=arguments[fe];var Le=ee<3&&ae[0]!==ye&&ae[ee-1]!==ye?[]:We(ae,ye);if(ee-=Le.length,ee<$)return Kh(t,d,_a,q.placeholder,e,ae,Le,e,e,$-ee);var Ee=this&&this!==bt&&this instanceof q?U:t;return Wt(Ee,this,ae)}return q}function zh(t){return function(d,$,U){var q=St(d);if(!gi(d)){var ee=at($,3);d=Hn(d),$=function(fe){return ee(q[fe],fe,q)}}var ae=t(d,$,U);return ae>-1?q[ee?d[ae]:ae]:e}}function Uh(t){return Hr(function(d){var $=d.length,U=$,q=Hi.prototype.thru;for(t&&d.reverse();U--;){var ee=d[U];if(typeof ee!="function")throw new Xt(v);if(q&&!ae&&Ta(ee)=="wrapper")var ae=new Hi([],!0)}for(U=ae?U:$;++U<$;){ee=d[U];var fe=Ta(ee),ye=fe=="wrapper"?zl(ee):e;ye&&Kl(ye[0])&&ye[1]==(D|T|w|E)&&!ye[4].length&&ye[9]==1?ae=ae[Ta(ye[0])].apply(ae,ye[3]):ae=ee.length==1&&Kl(ee)?ae[fe]():ae.thru(ee)}return function(){var Le=arguments,Ee=Le[0];if(ae&&Le.length==1&&vt(Ee))return ae.plant(Ee).value();for(var Oe=0,Ue=$?d[Oe].apply(this,Le):Ee;++Oe<$;)Ue=d[Oe].call(this,Ue);return Ue}})}function _a(t,d,$,U,q,ee,ae,fe,ye,Le){var Ee=d&D,Oe=d&m,Ue=d&y,Ze=d&(T|k),ct=d&L,wt=Ue?e:Ds(t);function ot(){for(var Mt=arguments.length,Rt=Se(Mt),Li=Mt;Li--;)Rt[Li]=arguments[Li];if(Ze)var ai=as(ot),Ei=rn(Rt,ai);if(U&&(Rt=Fh(Rt,U,q,Ze)),ee&&(Rt=Ph(Rt,ee,ae,Ze)),Mt-=Ei,Ze&&Mt<Le){var bn=We(Rt,ai);return Kh(t,d,_a,ot.placeholder,$,Rt,bn,fe,ye,Le-Mt)}var lr=Oe?$:this,jr=Ue?lr[t]:t;return Mt=Rt.length,fe?Rt=uy(Rt,fe):ct&&Mt>1&&Rt.reverse(),Ee&&ye<Mt&&(Rt.length=ye),this&&this!==bt&&this instanceof ot&&(jr=wt||Ds(jr)),jr.apply(lr,Rt)}return ot}function Vh(t,d){return function($,U){return yv($,t,d(U),{})}}function Aa(t,d){return function($,U){var q;if($===e&&U===e)return d;if($!==e&&(q=$),U!==e){if(q===e)return U;typeof $=="string"||typeof U=="string"?($=$i($),U=$i(U)):($=Th($),U=Th(U)),q=t($,U)}return q}}function Pl(t){return Hr(function(d){return d=_(d,It(at())),Ct(function($){var U=this;return t(d,function(q){return Wt(q,U,$)})})})}function Ma(t,d){d=d===e?" ":$i(d);var $=d.length;if($<2)return $?El(d,t):d;var U=El(d,fa(t/xt(d)));return pe(d)?ao(ut(U),0,t).join(""):U.slice(0,t)}function jv(t,d,$,U){var q=d&m,ee=Ds(t);function ae(){for(var fe=-1,ye=arguments.length,Le=-1,Ee=U.length,Oe=Se(Ee+ye),Ue=this&&this!==bt&&this instanceof ae?ee:t;++Le<Ee;)Oe[Le]=U[Le];for(;ye--;)Oe[Le++]=arguments[++fe];return Wt(Ue,q?$:this,Oe)}return ae}function jh(t){return function(d,$,U){return U&&typeof U!="number"&&si(d,$,U)&&($=U=e),d=Vr(d),$===e?($=d,d=0):$=Vr($),U=U===e?d<$?1:-1:Vr(U),Lv(d,$,U,t)}}function $a(t){return function(d,$){return typeof d=="string"&&typeof $=="string"||(d=ji(d),$=ji($)),t(d,$)}}function Kh(t,d,$,U,q,ee,ae,fe,ye,Le){var Ee=d&T,Oe=Ee?ae:e,Ue=Ee?e:ae,Ze=Ee?ee:e,ct=Ee?e:ee;d|=Ee?w:I,d&=~(Ee?I:w),d&R||(d&=-4);var wt=[t,d,q,Ze,Oe,ct,Ue,fe,ye,Le],ot=$.apply(e,wt);return Kl(t)&&rd(ot,wt),ot.placeholder=U,od(ot,t,d)}function Bl(t){var d=Dt[t];return function($,U){if($=ji($),U=U==null?0:Xn(yt(U),292),U&&oh($)){var q=(Ut($)+"e").split("e"),ee=d(q[0]+"e"+(+q[1]+U));return q=(Ut(ee)+"e").split("e"),+(q[0]+"e"+(+q[1]-U))}return d($)}}var Kv=ns&&1/ze(new ns([,-0]))[1]==V?function(t){return new ns(t)}:lc;function Gh(t){return function(d){var $=ei(d);return $==nt?Ne(d):$==tn?qe(d):Gt(d,t(d))}}function Wr(t,d,$,U,q,ee,ae,fe){var ye=d&y;if(!ye&&typeof t!="function")throw new Xt(v);var Le=U?U.length:0;if(Le||(d&=-97,U=q=e),ae=ae===e?ae:On(yt(ae),0),fe=fe===e?fe:yt(fe),Le-=q?q.length:0,d&I){var Ee=U,Oe=q;U=q=e}var Ue=ye?e:zl(t),Ze=[t,d,$,U,q,Ee,Oe,ee,ae,fe];if(Ue&&ay(Ze,Ue),t=Ze[0],d=Ze[1],$=Ze[2],U=Ze[3],q=Ze[4],fe=Ze[9]=Ze[9]===e?ye?0:t.length:On(Ze[9]-Le,0),!fe&&d&(T|k)&&(d&=-25),!d||d==m)var ct=Uv(t,d,$);else d==T||d==k?ct=Vv(t,d,fe):(d==w||d==(m|w))&&!q.length?ct=jv(t,d,$,U):ct=_a.apply(e,Ze);var wt=Ue?Mh:rd;return od(wt(ct,Ze),t,d)}function qh(t,d,$,U){return t===e||ar(t,Fr[$])&&!zt.call(U,$)?d:t}function Yh(t,d,$,U,q,ee){return un(t)&&un(d)&&(ee.set(d,t),xa(t,d,e,Yh,ee),ee.delete(d)),t}function Gv(t){return Bs(t)?e:t}function Qh(t,d,$,U,q,ee){var ae=$&i,fe=t.length,ye=d.length;if(fe!=ye&&!(ae&&ye>fe))return!1;var Le=ee.get(t),Ee=ee.get(d);if(Le&&Ee)return Le==d&&Ee==t;var Oe=-1,Ue=!0,Ze=$&h?new To:e;for(ee.set(t,d),ee.set(d,t);++Oe<fe;){var ct=t[Oe],wt=d[Oe];if(U)var ot=ae?U(wt,ct,Oe,d,t,ee):U(ct,wt,Oe,t,d,ee);if(ot!==e){if(ot)continue;Ue=!1;break}if(Ze){if(!H(d,function(Mt,Rt){if(!st(Ze,Rt)&&(ct===Mt||q(ct,Mt,$,U,ee)))return Ze.push(Rt)})){Ue=!1;break}}else if(!(ct===wt||q(ct,wt,$,U,ee))){Ue=!1;break}}return ee.delete(t),ee.delete(d),Ue}function qv(t,d,$,U,q,ee,ae){switch($){case Pn:if(t.byteLength!=d.byteLength||t.byteOffset!=d.byteOffset)return!1;t=t.buffer,d=d.buffer;case An:return!(t.byteLength!=d.byteLength||!ee(new ca(t),new ca(d)));case Ae:case Me:case Ot:return ar(+t,+d);case Ve:return t.name==d.name&&t.message==d.message;case ui:case Kn:return t==d+"";case nt:var fe=Ne;case tn:var ye=U&i;if(fe||(fe=ze),t.size!=d.size&&!ye)return!1;var Le=ae.get(t);if(Le)return Le==d;U|=h,ae.set(t,d);var Ee=Qh(fe(t),fe(d),U,q,ee,ae);return ae.delete(t),Ee;case ht:if(Ls)return Ls.call(t)==Ls.call(d)}return!1}function Yv(t,d,$,U,q,ee){var ae=$&i,fe=Wl(t),ye=fe.length,Le=Wl(d),Ee=Le.length;if(ye!=Ee&&!ae)return!1;for(var Oe=ye;Oe--;){var Ue=fe[Oe];if(!(ae?Ue in d:zt.call(d,Ue)))return!1}var Ze=ee.get(t),ct=ee.get(d);if(Ze&&ct)return Ze==d&&ct==t;var wt=!0;ee.set(t,d),ee.set(d,t);for(var ot=ae;++Oe<ye;){Ue=fe[Oe];var Mt=t[Ue],Rt=d[Ue];if(U)var Li=ae?U(Rt,Mt,Ue,d,t,ee):U(Mt,Rt,Ue,t,d,ee);if(!(Li===e?Mt===Rt||q(Mt,Rt,$,U,ee):Li)){wt=!1;break}ot||(ot=Ue=="constructor")}if(wt&&!ot){var ai=t.constructor,Ei=d.constructor;ai!=Ei&&"constructor"in t&&"constructor"in d&&!(typeof ai=="function"&&ai instanceof ai&&typeof Ei=="function"&&Ei instanceof Ei)&&(wt=!1)}return ee.delete(t),ee.delete(d),wt}function Hr(t){return ql(nd(t,e,hd),t+"")}function Wl(t){return mh(t,Hn,Vl)}function Hl(t){return mh(t,mi,Zh)}var zl=ga?function(t){return ga.get(t)}:lc;function Ta(t){for(var d=t.name+"",$=is[d],U=zt.call(is,d)?$.length:0;U--;){var q=$[U],ee=q.func;if(ee==null||ee==t)return q.name}return d}function as(t){var d=zt.call(X,"placeholder")?X:t;return d.placeholder}function at(){var t=X.iteratee||sc;return t=t===sc?wh:t,arguments.length?t(arguments[0],arguments[1]):t}function La(t,d){var $=t.__data__;return iy(d)?$[typeof d=="string"?"string":"hash"]:$.map}function Ul(t){for(var d=Hn(t),$=d.length;$--;){var U=d[$],q=t[U];d[$]=[U,q,ed(q)]}return d}function Ro(t,d){var $=oe(t,d);return yh($)?$:e}function Qv(t){var d=zt.call(t,Mo),$=t[Mo];try{t[Mo]=e;var U=!0}catch{}var q=aa.call(t);return U&&(d?t[Mo]=$:delete t[Mo]),q}var Vl=vl?function(t){return t==null?[]:(t=St(t),zn(vl(t),function(d){return ih.call(t,d)}))}:cc,Zh=vl?function(t){for(var d=[];t;)C(d,Vl(t)),t=ua(t);return d}:cc,ei=oi;(yl&&ei(new yl(new ArrayBuffer(1)))!=Pn||Ms&&ei(new Ms)!=nt||wl&&ei(wl.resolve())!=ci||ns&&ei(new ns)!=tn||$s&&ei(new $s)!=Et)&&(ei=function(t){var d=oi(t),$=d==kt?t.constructor:e,U=$?Io($):"";if(U)switch(U){case Rm:return Pn;case Im:return nt;case Om:return ci;case Nm:return tn;case Dm:return Et}return d});function Zv(t,d,$){for(var U=-1,q=$.length;++U<q;){var ee=$[U],ae=ee.size;switch(ee.type){case"drop":t+=ae;break;case"dropRight":d-=ae;break;case"take":d=Xn(d,t+ae);break;case"takeRight":t=On(t,d-ae);break}}return{start:t,end:d}}function Jv(t){var d=t.match(po);return d?d[1].split(Go):[]}function Jh(t,d,$){d=so(d,t);for(var U=-1,q=d.length,ee=!1;++U<q;){var ae=sr(d[U]);if(!(ee=t!=null&&$(t,ae)))break;t=t[ae]}return ee||++U!=q?ee:(q=t==null?0:t.length,!!q&&Fa(q)&&zr(ae,q)&&(vt(t)||Oo(t)))}function Xv(t){var d=t.length,$=new t.constructor(d);return d&&typeof t[0]=="string"&&zt.call(t,"index")&&($.index=t.index,$.input=t.input),$}function Xh(t){return typeof t.constructor=="function"&&!Fs(t)?rs(ua(t)):{}}function ey(t,d,$){var U=t.constructor;switch(d){case An:return Fl(t);case Ae:case Me:return new U(+t);case Pn:return Fv(t,$);case Gn:case an:case Mn:case Bn:case jt:case $n:case Ar:case Yi:case xi:return Nh(t,$);case nt:return new U;case Ot:case Kn:return new U(t);case ui:return Pv(t);case tn:return new U;case ht:return Bv(t)}}function ty(t,d){var $=d.length;if(!$)return t;var U=$-1;return d[U]=($>1?"& ":"")+d[U],d=d.join($>2?", ":" "),t.replace(Ji,`{
1459
+ /* [wrapped with `+d+`] */
1460
+ `)}function ny(t){return vt(t)||Oo(t)||!!(rh&&t&&t[rh])}function zr(t,d){var $=typeof t;return d=d??G,!!d&&($=="number"||$!="symbol"&&hn.test(t))&&t>-1&&t%1==0&&t<d}function si(t,d,$){if(!un($))return!1;var U=typeof d;return(U=="number"?gi($)&&zr(d,$.length):U=="string"&&d in $)?ar($[d],t):!1}function jl(t,d){if(vt(t))return!1;var $=typeof t;return $=="number"||$=="symbol"||$=="boolean"||t==null||Ti(t)?!0:mn.test(t)||!Zi.test(t)||d!=null&&t in St(d)}function iy(t){var d=typeof t;return d=="string"||d=="number"||d=="symbol"||d=="boolean"?t!=="__proto__":t===null}function Kl(t){var d=Ta(t),$=X[d];if(typeof $!="function"||!(d in Tt.prototype))return!1;if(t===$)return!0;var U=zl($);return!!U&&t===U[0]}function ry(t){return!!eh&&eh in t}var oy=oa?Ur:uc;function Fs(t){var d=t&&t.constructor,$=typeof d=="function"&&d.prototype||Fr;return t===$}function ed(t){return t===t&&!un(t)}function td(t,d){return function($){return $==null?!1:$[t]===d&&(d!==e||t in St($))}}function sy(t){var d=Na(t,function(U){return $.size===a&&$.clear(),U}),$=d.cache;return d}function ay(t,d){var $=t[1],U=d[1],q=$|U,ee=q<(m|y|D),ae=U==D&&$==T||U==D&&$==E&&t[7].length<=d[8]||U==(D|E)&&d[7].length<=d[8]&&$==T;if(!(ee||ae))return t;U&m&&(t[2]=d[2],q|=$&m?0:R);var fe=d[3];if(fe){var ye=t[3];t[3]=ye?Fh(ye,fe,d[4]):fe,t[4]=ye?We(t[3],s):d[4]}return fe=d[5],fe&&(ye=t[5],t[5]=ye?Ph(ye,fe,d[6]):fe,t[6]=ye?We(t[5],s):d[6]),fe=d[7],fe&&(t[7]=fe),U&D&&(t[8]=t[8]==null?d[8]:Xn(t[8],d[8])),t[9]==null&&(t[9]=d[9]),t[0]=d[0],t[1]=q,t}function ly(t){var d=[];if(t!=null)for(var $ in St(t))d.push($);return d}function cy(t){return aa.call(t)}function nd(t,d,$){return d=On(d===e?t.length-1:d,0),function(){for(var U=arguments,q=-1,ee=On(U.length-d,0),ae=Se(ee);++q<ee;)ae[q]=U[d+q];q=-1;for(var fe=Se(d+1);++q<d;)fe[q]=U[q];return fe[d]=$(ae),Wt(t,this,fe)}}function id(t,d){return d.length<2?t:Eo(t,Ui(d,0,-1))}function uy(t,d){for(var $=t.length,U=Xn(d.length,$),q=pi(t);U--;){var ee=d[U];t[U]=zr(ee,$)?q[ee]:e}return t}function Gl(t,d){if(!(d==="constructor"&&typeof t[d]=="function")&&d!="__proto__")return t[d]}var rd=sd(Mh),Ps=_m||function(t,d){return bt.setTimeout(t,d)},ql=sd(Iv);function od(t,d,$){var U=d+"";return ql(t,ty(U,hy(Jv(U),$)))}function sd(t){var d=0,$=0;return function(){var U=Tm(),q=A-(U-$);if($=U,q>0){if(++d>=O)return arguments[0]}else d=0;return t.apply(e,arguments)}}function Ea(t,d){var $=-1,U=t.length,q=U-1;for(d=d===e?U:d;++$<d;){var ee=Ll($,q),ae=t[ee];t[ee]=t[$],t[$]=ae}return t.length=d,t}var ad=sy(function(t){var d=[];return t.charCodeAt(0)===46&&d.push(""),t.replace(hi,function($,U,q,ee){d.push(q?ee.replace(Xi,"$1"):U||$)}),d});function sr(t){if(typeof t=="string"||Ti(t))return t;var d=t+"";return d=="0"&&1/t==-V?"-0":d}function Io(t){if(t!=null){try{return sa.call(t)}catch{}try{return t+""}catch{}}return""}function hy(t,d){return Rn(he,function($){var U="_."+$[0];d&$[1]&&!di(t,U)&&t.push(U)}),t.sort()}function ld(t){if(t instanceof Tt)return t.clone();var d=new Hi(t.__wrapped__,t.__chain__);return d.__actions__=pi(t.__actions__),d.__index__=t.__index__,d.__values__=t.__values__,d}function dy(t,d,$){($?si(t,d,$):d===e)?d=1:d=On(yt(d),0);var U=t==null?0:t.length;if(!U||d<1)return[];for(var q=0,ee=0,ae=Se(fa(U/d));q<U;)ae[ee++]=Ui(t,q,q+=d);return ae}function fy(t){for(var d=-1,$=t==null?0:t.length,U=0,q=[];++d<$;){var ee=t[d];ee&&(q[U++]=ee)}return q}function py(){var t=arguments.length;if(!t)return[];for(var d=Se(t-1),$=arguments[0],U=t;U--;)d[U-1]=arguments[U];return C(vt($)?pi($):[$],jn(d,1))}var gy=Ct(function(t,d){return wn(t)?Rs(t,jn(d,1,wn,!0)):[]}),my=Ct(function(t,d){var $=Vi(d);return wn($)&&($=e),wn(t)?Rs(t,jn(d,1,wn,!0),at($,2)):[]}),vy=Ct(function(t,d){var $=Vi(d);return wn($)&&($=e),wn(t)?Rs(t,jn(d,1,wn,!0),e,$):[]});function yy(t,d,$){var U=t==null?0:t.length;return U?(d=$||d===e?1:yt(d),Ui(t,d<0?0:d,U)):[]}function wy(t,d,$){var U=t==null?0:t.length;return U?(d=$||d===e?1:yt(d),d=U-d,Ui(t,0,d<0?0:d)):[]}function by(t,d){return t&&t.length?Ca(t,at(d,3),!0,!0):[]}function xy(t,d){return t&&t.length?Ca(t,at(d,3),!0):[]}function Sy(t,d,$,U){var q=t==null?0:t.length;return q?($&&typeof $!="number"&&si(t,d,$)&&($=0,U=q),pv(t,d,$,U)):[]}function cd(t,d,$){var U=t==null?0:t.length;if(!U)return-1;var q=$==null?0:yt($);return q<0&&(q=On(U+q,0)),se(t,at(d,3),q)}function ud(t,d,$){var U=t==null?0:t.length;if(!U)return-1;var q=U-1;return $!==e&&(q=yt($),q=$<0?On(U+q,0):Xn(q,U-1)),se(t,at(d,3),q,!0)}function hd(t){var d=t==null?0:t.length;return d?jn(t,1):[]}function Cy(t){var d=t==null?0:t.length;return d?jn(t,V):[]}function ky(t,d){var $=t==null?0:t.length;return $?(d=d===e?1:yt(d),jn(t,d)):[]}function _y(t){for(var d=-1,$=t==null?0:t.length,U={};++d<$;){var q=t[d];Sr(U,q[0],q[1])}return U}function dd(t){return t&&t.length?t[0]:e}function Ay(t,d,$){var U=t==null?0:t.length;if(!U)return-1;var q=$==null?0:yt($);return q<0&&(q=On(U+q,0)),ve(t,d,q)}function My(t){var d=t==null?0:t.length;return d?Ui(t,0,-1):[]}var $y=Ct(function(t){var d=_(t,Nl);return d.length&&d[0]===t[0]?_l(d):[]}),Ty=Ct(function(t){var d=Vi(t),$=_(t,Nl);return d===Vi($)?d=e:$.pop(),$.length&&$[0]===t[0]?_l($,at(d,2)):[]}),Ly=Ct(function(t){var d=Vi(t),$=_(t,Nl);return d=typeof d=="function"?d:e,d&&$.pop(),$.length&&$[0]===t[0]?_l($,e,d):[]});function Ey(t,d){return t==null?"":Mm.call(t,d)}function Vi(t){var d=t==null?0:t.length;return d?t[d-1]:e}function Ry(t,d,$){var U=t==null?0:t.length;if(!U)return-1;var q=U;return $!==e&&(q=yt($),q=q<0?On(U+q,0):Xn(q,U-1)),d===d?Nt(t,d,q):se(t,de,q,!0)}function Iy(t,d){return t&&t.length?Ch(t,yt(d)):e}var Oy=Ct(fd);function fd(t,d){return t&&t.length&&d&&d.length?Tl(t,d):t}function Ny(t,d,$){return t&&t.length&&d&&d.length?Tl(t,d,at($,2)):t}function Dy(t,d,$){return t&&t.length&&d&&d.length?Tl(t,d,e,$):t}var Fy=Hr(function(t,d){var $=t==null?0:t.length,U=xl(t,d);return Ah(t,_(d,function(q){return zr(q,$)?+q:q}).sort(Dh)),U});function Py(t,d){var $=[];if(!(t&&t.length))return $;var U=-1,q=[],ee=t.length;for(d=at(d,3);++U<ee;){var ae=t[U];d(ae,U,t)&&($.push(ae),q.push(U))}return Ah(t,q),$}function Yl(t){return t==null?t:Em.call(t)}function By(t,d,$){var U=t==null?0:t.length;return U?($&&typeof $!="number"&&si(t,d,$)?(d=0,$=U):(d=d==null?0:yt(d),$=$===e?U:yt($)),Ui(t,d,$)):[]}function Wy(t,d){return Sa(t,d)}function Hy(t,d,$){return Rl(t,d,at($,2))}function zy(t,d){var $=t==null?0:t.length;if($){var U=Sa(t,d);if(U<$&&ar(t[U],d))return U}return-1}function Uy(t,d){return Sa(t,d,!0)}function Vy(t,d,$){return Rl(t,d,at($,2),!0)}function jy(t,d){var $=t==null?0:t.length;if($){var U=Sa(t,d,!0)-1;if(ar(t[U],d))return U}return-1}function Ky(t){return t&&t.length?$h(t):[]}function Gy(t,d){return t&&t.length?$h(t,at(d,2)):[]}function qy(t){var d=t==null?0:t.length;return d?Ui(t,1,d):[]}function Yy(t,d,$){return t&&t.length?(d=$||d===e?1:yt(d),Ui(t,0,d<0?0:d)):[]}function Qy(t,d,$){var U=t==null?0:t.length;return U?(d=$||d===e?1:yt(d),d=U-d,Ui(t,d<0?0:d,U)):[]}function Zy(t,d){return t&&t.length?Ca(t,at(d,3),!1,!0):[]}function Jy(t,d){return t&&t.length?Ca(t,at(d,3)):[]}var Xy=Ct(function(t){return oo(jn(t,1,wn,!0))}),ew=Ct(function(t){var d=Vi(t);return wn(d)&&(d=e),oo(jn(t,1,wn,!0),at(d,2))}),tw=Ct(function(t){var d=Vi(t);return d=typeof d=="function"?d:e,oo(jn(t,1,wn,!0),e,d)});function nw(t){return t&&t.length?oo(t):[]}function iw(t,d){return t&&t.length?oo(t,at(d,2)):[]}function rw(t,d){return d=typeof d=="function"?d:e,t&&t.length?oo(t,e,d):[]}function Ql(t){if(!(t&&t.length))return[];var d=0;return t=zn(t,function($){if(wn($))return d=On($.length,d),!0}),Ke(d,function($){return _(t,Re($))})}function pd(t,d){if(!(t&&t.length))return[];var $=Ql(t);return d==null?$:_($,function(U){return Wt(d,e,U)})}var ow=Ct(function(t,d){return wn(t)?Rs(t,d):[]}),sw=Ct(function(t){return Ol(zn(t,wn))}),aw=Ct(function(t){var d=Vi(t);return wn(d)&&(d=e),Ol(zn(t,wn),at(d,2))}),lw=Ct(function(t){var d=Vi(t);return d=typeof d=="function"?d:e,Ol(zn(t,wn),e,d)}),cw=Ct(Ql);function uw(t,d){return Rh(t||[],d||[],Es)}function hw(t,d){return Rh(t||[],d||[],Ns)}var dw=Ct(function(t){var d=t.length,$=d>1?t[d-1]:e;return $=typeof $=="function"?(t.pop(),$):e,pd(t,$)});function gd(t){var d=X(t);return d.__chain__=!0,d}function fw(t,d){return d(t),t}function Ra(t,d){return d(t)}var pw=Hr(function(t){var d=t.length,$=d?t[0]:0,U=this.__wrapped__,q=function(ee){return xl(ee,t)};return d>1||this.__actions__.length||!(U instanceof Tt)||!zr($)?this.thru(q):(U=U.slice($,+$+(d?1:0)),U.__actions__.push({func:Ra,args:[q],thisArg:e}),new Hi(U,this.__chain__).thru(function(ee){return d&&!ee.length&&ee.push(e),ee}))});function gw(){return gd(this)}function mw(){return new Hi(this.value(),this.__chain__)}function vw(){this.__values__===e&&(this.__values__=Td(this.value()));var t=this.__index__>=this.__values__.length,d=t?e:this.__values__[this.__index__++];return{done:t,value:d}}function yw(){return this}function ww(t){for(var d,$=this;$ instanceof va;){var U=ld($);U.__index__=0,U.__values__=e,d?q.__wrapped__=U:d=U;var q=U;$=$.__wrapped__}return q.__wrapped__=t,d}function bw(){var t=this.__wrapped__;if(t instanceof Tt){var d=t;return this.__actions__.length&&(d=new Tt(this)),d=d.reverse(),d.__actions__.push({func:Ra,args:[Yl],thisArg:e}),new Hi(d,this.__chain__)}return this.thru(Yl)}function xw(){return Eh(this.__wrapped__,this.__actions__)}var Sw=ka(function(t,d,$){zt.call(t,$)?++t[$]:Sr(t,$,1)});function Cw(t,d,$){var U=vt(t)?xr:fv;return $&&si(t,d,$)&&(d=e),U(t,at(d,3))}function kw(t,d){var $=vt(t)?zn:ph;return $(t,at(d,3))}var _w=zh(cd),Aw=zh(ud);function Mw(t,d){return jn(Ia(t,d),1)}function $w(t,d){return jn(Ia(t,d),V)}function Tw(t,d,$){return $=$===e?1:yt($),jn(Ia(t,d),$)}function md(t,d){var $=vt(t)?Rn:ro;return $(t,at(d,3))}function vd(t,d){var $=vt(t)?Jn:fh;return $(t,at(d,3))}var Lw=ka(function(t,d,$){zt.call(t,$)?t[$].push(d):Sr(t,$,[d])});function Ew(t,d,$,U){t=gi(t)?t:cs(t),$=$&&!U?yt($):0;var q=t.length;return $<0&&($=On(q+$,0)),Pa(t)?$<=q&&t.indexOf(d,$)>-1:!!q&&ve(t,d,$)>-1}var Rw=Ct(function(t,d,$){var U=-1,q=typeof d=="function",ee=gi(t)?Se(t.length):[];return ro(t,function(ae){ee[++U]=q?Wt(d,ae,$):Is(ae,d,$)}),ee}),Iw=ka(function(t,d,$){Sr(t,$,d)});function Ia(t,d){var $=vt(t)?_:bh;return $(t,at(d,3))}function Ow(t,d,$,U){return t==null?[]:(vt(d)||(d=d==null?[]:[d]),$=U?e:$,vt($)||($=$==null?[]:[$]),kh(t,d,$))}var Nw=ka(function(t,d,$){t[$?0:1].push(d)},function(){return[[],[]]});function Dw(t,d,$){var U=vt(t)?P:Be,q=arguments.length<3;return U(t,at(d,4),$,q,ro)}function Fw(t,d,$){var U=vt(t)?B:Be,q=arguments.length<3;return U(t,at(d,4),$,q,fh)}function Pw(t,d){var $=vt(t)?zn:ph;return $(t,Da(at(d,3)))}function Bw(t){var d=vt(t)?ch:Ev;return d(t)}function Ww(t,d,$){($?si(t,d,$):d===e)?d=1:d=yt(d);var U=vt(t)?lv:Rv;return U(t,d)}function Hw(t){var d=vt(t)?cv:Ov;return d(t)}function zw(t){if(t==null)return 0;if(gi(t))return Pa(t)?xt(t):t.length;var d=ei(t);return d==nt||d==tn?t.size:Ml(t).length}function Uw(t,d,$){var U=vt(t)?H:Nv;return $&&si(t,d,$)&&(d=e),U(t,at(d,3))}var Vw=Ct(function(t,d){if(t==null)return[];var $=d.length;return $>1&&si(t,d[0],d[1])?d=[]:$>2&&si(d[0],d[1],d[2])&&(d=[d[0]]),kh(t,jn(d,1),[])}),Oa=km||function(){return bt.Date.now()};function jw(t,d){if(typeof d!="function")throw new Xt(v);return t=yt(t),function(){if(--t<1)return d.apply(this,arguments)}}function yd(t,d,$){return d=$?e:d,d=t&&d==null?t.length:d,Wr(t,D,e,e,e,e,d)}function wd(t,d){var $;if(typeof d!="function")throw new Xt(v);return t=yt(t),function(){return--t>0&&($=d.apply(this,arguments)),t<=1&&(d=e),$}}var Zl=Ct(function(t,d,$){var U=m;if($.length){var q=We($,as(Zl));U|=w}return Wr(t,U,d,$,q)}),bd=Ct(function(t,d,$){var U=m|y;if($.length){var q=We($,as(bd));U|=w}return Wr(d,U,t,$,q)});function xd(t,d,$){d=$?e:d;var U=Wr(t,T,e,e,e,e,e,d);return U.placeholder=xd.placeholder,U}function Sd(t,d,$){d=$?e:d;var U=Wr(t,k,e,e,e,e,e,d);return U.placeholder=Sd.placeholder,U}function Cd(t,d,$){var U,q,ee,ae,fe,ye,Le=0,Ee=!1,Oe=!1,Ue=!0;if(typeof t!="function")throw new Xt(v);d=ji(d)||0,un($)&&(Ee=!!$.leading,Oe="maxWait"in $,ee=Oe?On(ji($.maxWait)||0,d):ee,Ue="trailing"in $?!!$.trailing:Ue);function Ze(bn){var lr=U,jr=q;return U=q=e,Le=bn,ae=t.apply(jr,lr),ae}function ct(bn){return Le=bn,fe=Ps(Mt,d),Ee?Ze(bn):ae}function wt(bn){var lr=bn-ye,jr=bn-Le,Ud=d-lr;return Oe?Xn(Ud,ee-jr):Ud}function ot(bn){var lr=bn-ye,jr=bn-Le;return ye===e||lr>=d||lr<0||Oe&&jr>=ee}function Mt(){var bn=Oa();if(ot(bn))return Rt(bn);fe=Ps(Mt,wt(bn))}function Rt(bn){return fe=e,Ue&&U?Ze(bn):(U=q=e,ae)}function Li(){fe!==e&&Ih(fe),Le=0,U=ye=q=fe=e}function ai(){return fe===e?ae:Rt(Oa())}function Ei(){var bn=Oa(),lr=ot(bn);if(U=arguments,q=this,ye=bn,lr){if(fe===e)return ct(ye);if(Oe)return Ih(fe),fe=Ps(Mt,d),Ze(ye)}return fe===e&&(fe=Ps(Mt,d)),ae}return Ei.cancel=Li,Ei.flush=ai,Ei}var Kw=Ct(function(t,d){return dh(t,1,d)}),Gw=Ct(function(t,d,$){return dh(t,ji(d)||0,$)});function qw(t){return Wr(t,L)}function Na(t,d){if(typeof t!="function"||d!=null&&typeof d!="function")throw new Xt(v);var $=function(){var U=arguments,q=d?d.apply(this,U):U[0],ee=$.cache;if(ee.has(q))return ee.get(q);var ae=t.apply(this,U);return $.cache=ee.set(q,ae)||ee,ae};return $.cache=new(Na.Cache||Br),$}Na.Cache=Br;function Da(t){if(typeof t!="function")throw new Xt(v);return function(){var d=arguments;switch(d.length){case 0:return!t.call(this);case 1:return!t.call(this,d[0]);case 2:return!t.call(this,d[0],d[1]);case 3:return!t.call(this,d[0],d[1],d[2])}return!t.apply(this,d)}}function Yw(t){return wd(2,t)}var Qw=Dv(function(t,d){d=d.length==1&&vt(d[0])?_(d[0],It(at())):_(jn(d,1),It(at()));var $=d.length;return Ct(function(U){for(var q=-1,ee=Xn(U.length,$);++q<ee;)U[q]=d[q].call(this,U[q]);return Wt(t,this,U)})}),Jl=Ct(function(t,d){var $=We(d,as(Jl));return Wr(t,w,e,d,$)}),kd=Ct(function(t,d){var $=We(d,as(kd));return Wr(t,I,e,d,$)}),Zw=Hr(function(t,d){return Wr(t,E,e,e,e,d)});function Jw(t,d){if(typeof t!="function")throw new Xt(v);return d=d===e?d:yt(d),Ct(t,d)}function Xw(t,d){if(typeof t!="function")throw new Xt(v);return d=d==null?0:On(yt(d),0),Ct(function($){var U=$[d],q=ao($,0,d);return U&&C(q,U),Wt(t,this,q)})}function eb(t,d,$){var U=!0,q=!0;if(typeof t!="function")throw new Xt(v);return un($)&&(U="leading"in $?!!$.leading:U,q="trailing"in $?!!$.trailing:q),Cd(t,d,{leading:U,maxWait:d,trailing:q})}function tb(t){return yd(t,1)}function nb(t,d){return Jl(Dl(d),t)}function ib(){if(!arguments.length)return[];var t=arguments[0];return vt(t)?t:[t]}function rb(t){return zi(t,n)}function ob(t,d){return d=typeof d=="function"?d:e,zi(t,n,d)}function sb(t){return zi(t,o|n)}function ab(t,d){return d=typeof d=="function"?d:e,zi(t,o|n,d)}function lb(t,d){return d==null||hh(t,d,Hn(d))}function ar(t,d){return t===d||t!==t&&d!==d}var cb=$a(kl),ub=$a(function(t,d){return t>=d}),Oo=vh((function(){return arguments})())?vh:function(t){return gn(t)&&zt.call(t,"callee")&&!ih.call(t,"callee")},vt=Se.isArray,hb=no?It(no):wv;function gi(t){return t!=null&&Fa(t.length)&&!Ur(t)}function wn(t){return gn(t)&&gi(t)}function db(t){return t===!0||t===!1||gn(t)&&oi(t)==Ae}var lo=Am||uc,fb=fn?It(fn):bv;function pb(t){return gn(t)&&t.nodeType===1&&!Bs(t)}function gb(t){if(t==null)return!0;if(gi(t)&&(vt(t)||typeof t=="string"||typeof t.splice=="function"||lo(t)||ls(t)||Oo(t)))return!t.length;var d=ei(t);if(d==nt||d==tn)return!t.size;if(Fs(t))return!Ml(t).length;for(var $ in t)if(zt.call(t,$))return!1;return!0}function mb(t,d){return Os(t,d)}function vb(t,d,$){$=typeof $=="function"?$:e;var U=$?$(t,d):e;return U===e?Os(t,d,e,$):!!U}function Xl(t){if(!gn(t))return!1;var d=oi(t);return d==Ve||d==Ye||typeof t.message=="string"&&typeof t.name=="string"&&!Bs(t)}function yb(t){return typeof t=="number"&&oh(t)}function Ur(t){if(!un(t))return!1;var d=oi(t);return d==it||d==lt||d==_e||d==_n}function _d(t){return typeof t=="number"&&t==yt(t)}function Fa(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=G}function un(t){var d=typeof t;return t!=null&&(d=="object"||d=="function")}function gn(t){return t!=null&&typeof t=="object"}var Ad=Ai?It(Ai):Sv;function wb(t,d){return t===d||Al(t,d,Ul(d))}function bb(t,d,$){return $=typeof $=="function"?$:e,Al(t,d,Ul(d),$)}function xb(t){return Md(t)&&t!=+t}function Sb(t){if(oy(t))throw new tt(b);return yh(t)}function Cb(t){return t===null}function kb(t){return t==null}function Md(t){return typeof t=="number"||gn(t)&&oi(t)==Ot}function Bs(t){if(!gn(t)||oi(t)!=kt)return!1;var d=ua(t);if(d===null)return!0;var $=zt.call(d,"constructor")&&d.constructor;return typeof $=="function"&&$ instanceof $&&sa.call($)==bm}var ec=Mi?It(Mi):Cv;function _b(t){return _d(t)&&t>=-G&&t<=G}var $d=Bi?It(Bi):kv;function Pa(t){return typeof t=="string"||!vt(t)&&gn(t)&&oi(t)==Kn}function Ti(t){return typeof t=="symbol"||gn(t)&&oi(t)==ht}var ls=Ao?It(Ao):_v;function Ab(t){return t===e}function Mb(t){return gn(t)&&ei(t)==Et}function $b(t){return gn(t)&&oi(t)==sn}var Tb=$a($l),Lb=$a(function(t,d){return t<=d});function Td(t){if(!t)return[];if(gi(t))return Pa(t)?ut(t):pi(t);if(As&&t[As])return $e(t[As]());var d=ei(t),$=d==nt?Ne:d==tn?ze:cs;return $(t)}function Vr(t){if(!t)return t===0?t:0;if(t=ji(t),t===V||t===-V){var d=t<0?-1:1;return d*Q}return t===t?t:0}function yt(t){var d=Vr(t),$=d%1;return d===d?$?d-$:d:0}function Ld(t){return t?Lo(yt(t),0,le):0}function ji(t){if(typeof t=="number")return t;if(Ti(t))return te;if(un(t)){var d=typeof t.valueOf=="function"?t.valueOf():t;t=un(d)?d+"":d}if(typeof t!="string")return t===0?t:+t;t=gt(t);var $=Yn.test(t);return $||Zt.test(t)?ft(t.slice(2),$?2:8):Yo.test(t)?te:+t}function Ed(t){return kr(t,mi(t))}function Eb(t){return t?Lo(yt(t),-G,G):t===0?t:0}function Ut(t){return t==null?"":$i(t)}var Rb=os(function(t,d){if(Fs(d)||gi(d)){kr(d,Hn(d),t);return}for(var $ in d)zt.call(d,$)&&Es(t,$,d[$])}),Rd=os(function(t,d){kr(d,mi(d),t)}),Id=os(function(t,d,$,U){kr(d,mi(d),t,U)}),tc=os(function(t,d,$,U){kr(d,Hn(d),t,U)}),Ib=Hr(xl);function Ob(t,d){var $=rs(t);return d==null?$:uh($,d)}var Nb=Ct(function(t,d){t=St(t);var $=-1,U=d.length,q=U>2?d[2]:e;for(q&&si(d[0],d[1],q)&&(U=1);++$<U;)for(var ee=d[$],ae=mi(ee),fe=-1,ye=ae.length;++fe<ye;){var Le=ae[fe],Ee=t[Le];(Ee===e||ar(Ee,Fr[Le])&&!zt.call(t,Le))&&(t[Le]=ee[Le])}return t}),Db=Ct(function(t){return t.push(e,Yh),Wt(Od,e,t)});function Fb(t,d){return re(t,at(d,3),Cr)}function Pb(t,d){return re(t,at(d,3),Cl)}function Bb(t,d){return t==null?t:Sl(t,at(d,3),mi)}function Wb(t,d){return t==null?t:gh(t,at(d,3),mi)}function Hb(t,d){return t&&Cr(t,at(d,3))}function zb(t,d){return t&&Cl(t,at(d,3))}function Ub(t){return t==null?[]:ba(t,Hn(t))}function Vb(t){return t==null?[]:ba(t,mi(t))}function nc(t,d,$){var U=t==null?e:Eo(t,d);return U===e?$:U}function jb(t,d){return t!=null&&Jh(t,d,gv)}function ic(t,d){return t!=null&&Jh(t,d,mv)}var Kb=Vh(function(t,d,$){d!=null&&typeof d.toString!="function"&&(d=aa.call(d)),t[d]=$},oc(vi)),Gb=Vh(function(t,d,$){d!=null&&typeof d.toString!="function"&&(d=aa.call(d)),zt.call(t,d)?t[d].push($):t[d]=[$]},at),qb=Ct(Is);function Hn(t){return gi(t)?lh(t):Ml(t)}function mi(t){return gi(t)?lh(t,!0):Av(t)}function Yb(t,d){var $={};return d=at(d,3),Cr(t,function(U,q,ee){Sr($,d(U,q,ee),U)}),$}function Qb(t,d){var $={};return d=at(d,3),Cr(t,function(U,q,ee){Sr($,q,d(U,q,ee))}),$}var Zb=os(function(t,d,$){xa(t,d,$)}),Od=os(function(t,d,$,U){xa(t,d,$,U)}),Jb=Hr(function(t,d){var $={};if(t==null)return $;var U=!1;d=_(d,function(ee){return ee=so(ee,t),U||(U=ee.length>1),ee}),kr(t,Hl(t),$),U&&($=zi($,o|r|n,Gv));for(var q=d.length;q--;)Il($,d[q]);return $});function Xb(t,d){return Nd(t,Da(at(d)))}var e0=Hr(function(t,d){return t==null?{}:$v(t,d)});function Nd(t,d){if(t==null)return{};var $=_(Hl(t),function(U){return[U]});return d=at(d),_h(t,$,function(U,q){return d(U,q[0])})}function t0(t,d,$){d=so(d,t);var U=-1,q=d.length;for(q||(q=1,t=e);++U<q;){var ee=t==null?e:t[sr(d[U])];ee===e&&(U=q,ee=$),t=Ur(ee)?ee.call(t):ee}return t}function n0(t,d,$){return t==null?t:Ns(t,d,$)}function i0(t,d,$,U){return U=typeof U=="function"?U:e,t==null?t:Ns(t,d,$,U)}var Dd=Gh(Hn),Fd=Gh(mi);function r0(t,d,$){var U=vt(t),q=U||lo(t)||ls(t);if(d=at(d,4),$==null){var ee=t&&t.constructor;q?$=U?new ee:[]:un(t)?$=Ur(ee)?rs(ua(t)):{}:$={}}return(q?Rn:Cr)(t,function(ae,fe,ye){return d($,ae,fe,ye)}),$}function o0(t,d){return t==null?!0:Il(t,d)}function s0(t,d,$){return t==null?t:Lh(t,d,Dl($))}function a0(t,d,$,U){return U=typeof U=="function"?U:e,t==null?t:Lh(t,d,Dl($),U)}function cs(t){return t==null?[]:At(t,Hn(t))}function l0(t){return t==null?[]:At(t,mi(t))}function c0(t,d,$){return $===e&&($=d,d=e),$!==e&&($=ji($),$=$===$?$:0),d!==e&&(d=ji(d),d=d===d?d:0),Lo(ji(t),d,$)}function u0(t,d,$){return d=Vr(d),$===e?($=d,d=0):$=Vr($),t=ji(t),vv(t,d,$)}function h0(t,d,$){if($&&typeof $!="boolean"&&si(t,d,$)&&(d=$=e),$===e&&(typeof d=="boolean"?($=d,d=e):typeof t=="boolean"&&($=t,t=e)),t===e&&d===e?(t=0,d=1):(t=Vr(t),d===e?(d=t,t=0):d=Vr(d)),t>d){var U=t;t=d,d=U}if($||t%1||d%1){var q=sh();return Xn(t+q*(d-t+Jt("1e-"+((q+"").length-1))),d)}return Ll(t,d)}var d0=ss(function(t,d,$){return d=d.toLowerCase(),t+($?Pd(d):d)});function Pd(t){return rc(Ut(t).toLowerCase())}function Bd(t){return t=Ut(t),t&&t.replace(Lr,j).replace(ir,"")}function f0(t,d,$){t=Ut(t),d=$i(d);var U=t.length;$=$===e?U:Lo(yt($),0,U);var q=$;return $-=d.length,$>=0&&t.slice($,q)==d}function p0(t){return t=Ut(t),t&&Si.test(t)?t.replace(Tr,Z):t}function g0(t){return t=Ut(t),t&&vn.test(t)?t.replace(Ci,"\\$&"):t}var m0=ss(function(t,d,$){return t+($?"-":"")+d.toLowerCase()}),v0=ss(function(t,d,$){return t+($?" ":"")+d.toLowerCase()}),y0=Hh("toLowerCase");function w0(t,d,$){t=Ut(t),d=yt(d);var U=d?xt(t):0;if(!d||U>=d)return t;var q=(d-U)/2;return Ma(pa(q),$)+t+Ma(fa(q),$)}function b0(t,d,$){t=Ut(t),d=yt(d);var U=d?xt(t):0;return d&&U<d?t+Ma(d-U,$):t}function x0(t,d,$){t=Ut(t),d=yt(d);var U=d?xt(t):0;return d&&U<d?Ma(d-U,$)+t:t}function S0(t,d,$){return $||d==null?d=0:d&&(d=+d),Lm(Ut(t).replace(Wn,""),d||0)}function C0(t,d,$){return($?si(t,d,$):d===e)?d=1:d=yt(d),El(Ut(t),d)}function k0(){var t=arguments,d=Ut(t[0]);return t.length<3?d:d.replace(t[1],t[2])}var _0=ss(function(t,d,$){return t+($?"_":"")+d.toLowerCase()});function A0(t,d,$){return $&&typeof $!="number"&&si(t,d,$)&&(d=$=e),$=$===e?le:$>>>0,$?(t=Ut(t),t&&(typeof d=="string"||d!=null&&!ec(d))&&(d=$i(d),!d&&pe(t))?ao(ut(t),0,$):t.split(d,$)):[]}var M0=ss(function(t,d,$){return t+($?" ":"")+rc(d)});function $0(t,d,$){return t=Ut(t),$=$==null?0:Lo(yt($),0,t.length),d=$i(d),t.slice($,$+d.length)==d}function T0(t,d,$){var U=X.templateSettings;$&&si(t,d,$)&&(d=e),t=Ut(t),d=tc({},d,U,qh);var q=tc({},d.imports,U.imports,qh),ee=Hn(q),ae=At(q,ee);Rn(ee,function(ot){if(qo.test(ot))throw new tt(p)});var fe,ye,Le=0,Ee=d.interpolate||Tn,Oe="__p += '",Ue=fi((d.escape||Tn).source+"|"+Ee.source+"|"+(Ee===fo?Ni:Tn).source+"|"+(d.evaluate||Tn).source+"|$","g"),Ze="//# sourceURL="+(zt.call(d,"sourceURL")?(d.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++_o+"]")+`
1461
+ `;t.replace(Ue,function(ot,Mt,Rt,Li,ai,Ei){return Rt||(Rt=Li),Oe+=t.slice(Le,Ei).replace(Er,ie),Mt&&(fe=!0,Oe+=`' +
1462
+ __e(`+Mt+`) +
1463
+ '`),ai&&(ye=!0,Oe+=`';
1464
+ `+ai+`;
1465
+ __p += '`),Rt&&(Oe+=`' +
1466
+ ((__t = (`+Rt+`)) == null ? '' : __t) +
1467
+ '`),Le=Ei+ot.length,ot}),Oe+=`';
1468
+ `;var ct=zt.call(d,"variable")&&d.variable;if(!ct)Oe=`with (obj) {
1469
+ `+Oe+`
1470
+ }
1471
+ `;else if(qo.test(ct))throw new tt(x);Oe=(ye?Oe.replace(Qi,""):Oe).replace(Mr,"$1").replace(qn,"$1;"),Oe="function("+(ct||"obj")+`) {
1472
+ `+(ct?"":`obj || (obj = {});
1473
+ `)+"var __t, __p = ''"+(fe?", __e = _.escape":"")+(ye?`, __j = Array.prototype.join;
1474
+ function print() { __p += __j.call(arguments, '') }
1475
+ `:`;
1476
+ `)+Oe+`return __p
1477
+ }`;var wt=Hd(function(){return mt(ee,Ze+"return "+Oe).apply(e,ae)});if(wt.source=Oe,Xl(wt))throw wt;return wt}function L0(t){return Ut(t).toLowerCase()}function E0(t){return Ut(t).toUpperCase()}function R0(t,d,$){if(t=Ut(t),t&&($||d===e))return gt(t);if(!t||!(d=$i(d)))return t;var U=ut(t),q=ut(d),ee=pn(U,q),ae=In(U,q)+1;return ao(U,ee,ae).join("")}function I0(t,d,$){if(t=Ut(t),t&&($||d===e))return t.slice(0,rt(t)+1);if(!t||!(d=$i(d)))return t;var U=ut(t),q=In(U,ut(d))+1;return ao(U,0,q).join("")}function O0(t,d,$){if(t=Ut(t),t&&($||d===e))return t.replace(Wn,"");if(!t||!(d=$i(d)))return t;var U=ut(t),q=pn(U,ut(d));return ao(U,q).join("")}function N0(t,d){var $=z,U=F;if(un(d)){var q="separator"in d?d.separator:q;$="length"in d?yt(d.length):$,U="omission"in d?$i(d.omission):U}t=Ut(t);var ee=t.length;if(pe(t)){var ae=ut(t);ee=ae.length}if($>=ee)return t;var fe=$-xt(U);if(fe<1)return U;var ye=ae?ao(ae,0,fe).join(""):t.slice(0,fe);if(q===e)return ye+U;if(ae&&(fe+=ye.length-fe),ec(q)){if(t.slice(fe).search(q)){var Le,Ee=ye;for(q.global||(q=fi(q.source,Ut(_t.exec(q))+"g")),q.lastIndex=0;Le=q.exec(Ee);)var Oe=Le.index;ye=ye.slice(0,Oe===e?fe:Oe)}}else if(t.indexOf($i(q),fe)!=fe){var Ue=ye.lastIndexOf(q);Ue>-1&&(ye=ye.slice(0,Ue))}return ye+U}function D0(t){return t=Ut(t),t&&Cs.test(t)?t.replace($r,Je):t}var F0=ss(function(t,d,$){return t+($?" ":"")+d.toUpperCase()}),rc=Hh("toUpperCase");function Wd(t,d,$){return t=Ut(t),d=$?e:d,d===e?be(t)?Cn(t):J(t):t.match(d)||[]}var Hd=Ct(function(t,d){try{return Wt(t,e,d)}catch($){return Xl($)?$:new tt($)}}),P0=Hr(function(t,d){return Rn(d,function($){$=sr($),Sr(t,$,Zl(t[$],t))}),t});function B0(t){var d=t==null?0:t.length,$=at();return t=d?_(t,function(U){if(typeof U[1]!="function")throw new Xt(v);return[$(U[0]),U[1]]}):[],Ct(function(U){for(var q=-1;++q<d;){var ee=t[q];if(Wt(ee[0],this,U))return Wt(ee[1],this,U)}})}function W0(t){return dv(zi(t,o))}function oc(t){return function(){return t}}function H0(t,d){return t==null||t!==t?d:t}var z0=Uh(),U0=Uh(!0);function vi(t){return t}function sc(t){return wh(typeof t=="function"?t:zi(t,o))}function V0(t){return xh(zi(t,o))}function j0(t,d){return Sh(t,zi(d,o))}var K0=Ct(function(t,d){return function($){return Is($,t,d)}}),G0=Ct(function(t,d){return function($){return Is(t,$,d)}});function ac(t,d,$){var U=Hn(d),q=ba(d,U);$==null&&!(un(d)&&(q.length||!U.length))&&($=d,d=t,t=this,q=ba(d,Hn(d)));var ee=!(un($)&&"chain"in $)||!!$.chain,ae=Ur(t);return Rn(q,function(fe){var ye=d[fe];t[fe]=ye,ae&&(t.prototype[fe]=function(){var Le=this.__chain__;if(ee||Le){var Ee=t(this.__wrapped__),Oe=Ee.__actions__=pi(this.__actions__);return Oe.push({func:ye,args:arguments,thisArg:t}),Ee.__chain__=Le,Ee}return ye.apply(t,C([this.value()],arguments))})}),t}function q0(){return bt._===this&&(bt._=xm),this}function lc(){}function Y0(t){return t=yt(t),Ct(function(d){return Ch(d,t)})}var Q0=Pl(_),Z0=Pl(xr),J0=Pl(H);function zd(t){return jl(t)?Re(sr(t)):Tv(t)}function X0(t){return function(d){return t==null?e:Eo(t,d)}}var ex=jh(),tx=jh(!0);function cc(){return[]}function uc(){return!1}function nx(){return{}}function ix(){return""}function rx(){return!0}function ox(t,d){if(t=yt(t),t<1||t>G)return[];var $=le,U=Xn(t,le);d=at(d),t-=le;for(var q=Ke(U,d);++$<t;)d($);return q}function sx(t){return vt(t)?_(t,sr):Ti(t)?[t]:pi(ad(Ut(t)))}function ax(t){var d=++wm;return Ut(t)+d}var lx=Aa(function(t,d){return t+d},0),cx=Bl("ceil"),ux=Aa(function(t,d){return t/d},1),hx=Bl("floor");function dx(t){return t&&t.length?wa(t,vi,kl):e}function fx(t,d){return t&&t.length?wa(t,at(d,2),kl):e}function px(t){return we(t,vi)}function gx(t,d){return we(t,at(d,2))}function mx(t){return t&&t.length?wa(t,vi,$l):e}function vx(t,d){return t&&t.length?wa(t,at(d,2),$l):e}var yx=Aa(function(t,d){return t*d},1),wx=Bl("round"),bx=Aa(function(t,d){return t-d},0);function xx(t){return t&&t.length?Qe(t,vi):0}function Sx(t,d){return t&&t.length?Qe(t,at(d,2)):0}return X.after=jw,X.ary=yd,X.assign=Rb,X.assignIn=Rd,X.assignInWith=Id,X.assignWith=tc,X.at=Ib,X.before=wd,X.bind=Zl,X.bindAll=P0,X.bindKey=bd,X.castArray=ib,X.chain=gd,X.chunk=dy,X.compact=fy,X.concat=py,X.cond=B0,X.conforms=W0,X.constant=oc,X.countBy=Sw,X.create=Ob,X.curry=xd,X.curryRight=Sd,X.debounce=Cd,X.defaults=Nb,X.defaultsDeep=Db,X.defer=Kw,X.delay=Gw,X.difference=gy,X.differenceBy=my,X.differenceWith=vy,X.drop=yy,X.dropRight=wy,X.dropRightWhile=by,X.dropWhile=xy,X.fill=Sy,X.filter=kw,X.flatMap=Mw,X.flatMapDeep=$w,X.flatMapDepth=Tw,X.flatten=hd,X.flattenDeep=Cy,X.flattenDepth=ky,X.flip=qw,X.flow=z0,X.flowRight=U0,X.fromPairs=_y,X.functions=Ub,X.functionsIn=Vb,X.groupBy=Lw,X.initial=My,X.intersection=$y,X.intersectionBy=Ty,X.intersectionWith=Ly,X.invert=Kb,X.invertBy=Gb,X.invokeMap=Rw,X.iteratee=sc,X.keyBy=Iw,X.keys=Hn,X.keysIn=mi,X.map=Ia,X.mapKeys=Yb,X.mapValues=Qb,X.matches=V0,X.matchesProperty=j0,X.memoize=Na,X.merge=Zb,X.mergeWith=Od,X.method=K0,X.methodOf=G0,X.mixin=ac,X.negate=Da,X.nthArg=Y0,X.omit=Jb,X.omitBy=Xb,X.once=Yw,X.orderBy=Ow,X.over=Q0,X.overArgs=Qw,X.overEvery=Z0,X.overSome=J0,X.partial=Jl,X.partialRight=kd,X.partition=Nw,X.pick=e0,X.pickBy=Nd,X.property=zd,X.propertyOf=X0,X.pull=Oy,X.pullAll=fd,X.pullAllBy=Ny,X.pullAllWith=Dy,X.pullAt=Fy,X.range=ex,X.rangeRight=tx,X.rearg=Zw,X.reject=Pw,X.remove=Py,X.rest=Jw,X.reverse=Yl,X.sampleSize=Ww,X.set=n0,X.setWith=i0,X.shuffle=Hw,X.slice=By,X.sortBy=Vw,X.sortedUniq=Ky,X.sortedUniqBy=Gy,X.split=A0,X.spread=Xw,X.tail=qy,X.take=Yy,X.takeRight=Qy,X.takeRightWhile=Zy,X.takeWhile=Jy,X.tap=fw,X.throttle=eb,X.thru=Ra,X.toArray=Td,X.toPairs=Dd,X.toPairsIn=Fd,X.toPath=sx,X.toPlainObject=Ed,X.transform=r0,X.unary=tb,X.union=Xy,X.unionBy=ew,X.unionWith=tw,X.uniq=nw,X.uniqBy=iw,X.uniqWith=rw,X.unset=o0,X.unzip=Ql,X.unzipWith=pd,X.update=s0,X.updateWith=a0,X.values=cs,X.valuesIn=l0,X.without=ow,X.words=Wd,X.wrap=nb,X.xor=sw,X.xorBy=aw,X.xorWith=lw,X.zip=cw,X.zipObject=uw,X.zipObjectDeep=hw,X.zipWith=dw,X.entries=Dd,X.entriesIn=Fd,X.extend=Rd,X.extendWith=Id,ac(X,X),X.add=lx,X.attempt=Hd,X.camelCase=d0,X.capitalize=Pd,X.ceil=cx,X.clamp=c0,X.clone=rb,X.cloneDeep=sb,X.cloneDeepWith=ab,X.cloneWith=ob,X.conformsTo=lb,X.deburr=Bd,X.defaultTo=H0,X.divide=ux,X.endsWith=f0,X.eq=ar,X.escape=p0,X.escapeRegExp=g0,X.every=Cw,X.find=_w,X.findIndex=cd,X.findKey=Fb,X.findLast=Aw,X.findLastIndex=ud,X.findLastKey=Pb,X.floor=hx,X.forEach=md,X.forEachRight=vd,X.forIn=Bb,X.forInRight=Wb,X.forOwn=Hb,X.forOwnRight=zb,X.get=nc,X.gt=cb,X.gte=ub,X.has=jb,X.hasIn=ic,X.head=dd,X.identity=vi,X.includes=Ew,X.indexOf=Ay,X.inRange=u0,X.invoke=qb,X.isArguments=Oo,X.isArray=vt,X.isArrayBuffer=hb,X.isArrayLike=gi,X.isArrayLikeObject=wn,X.isBoolean=db,X.isBuffer=lo,X.isDate=fb,X.isElement=pb,X.isEmpty=gb,X.isEqual=mb,X.isEqualWith=vb,X.isError=Xl,X.isFinite=yb,X.isFunction=Ur,X.isInteger=_d,X.isLength=Fa,X.isMap=Ad,X.isMatch=wb,X.isMatchWith=bb,X.isNaN=xb,X.isNative=Sb,X.isNil=kb,X.isNull=Cb,X.isNumber=Md,X.isObject=un,X.isObjectLike=gn,X.isPlainObject=Bs,X.isRegExp=ec,X.isSafeInteger=_b,X.isSet=$d,X.isString=Pa,X.isSymbol=Ti,X.isTypedArray=ls,X.isUndefined=Ab,X.isWeakMap=Mb,X.isWeakSet=$b,X.join=Ey,X.kebabCase=m0,X.last=Vi,X.lastIndexOf=Ry,X.lowerCase=v0,X.lowerFirst=y0,X.lt=Tb,X.lte=Lb,X.max=dx,X.maxBy=fx,X.mean=px,X.meanBy=gx,X.min=mx,X.minBy=vx,X.stubArray=cc,X.stubFalse=uc,X.stubObject=nx,X.stubString=ix,X.stubTrue=rx,X.multiply=yx,X.nth=Iy,X.noConflict=q0,X.noop=lc,X.now=Oa,X.pad=w0,X.padEnd=b0,X.padStart=x0,X.parseInt=S0,X.random=h0,X.reduce=Dw,X.reduceRight=Fw,X.repeat=C0,X.replace=k0,X.result=t0,X.round=wx,X.runInContext=ge,X.sample=Bw,X.size=zw,X.snakeCase=_0,X.some=Uw,X.sortedIndex=Wy,X.sortedIndexBy=Hy,X.sortedIndexOf=zy,X.sortedLastIndex=Uy,X.sortedLastIndexBy=Vy,X.sortedLastIndexOf=jy,X.startCase=M0,X.startsWith=$0,X.subtract=bx,X.sum=xx,X.sumBy=Sx,X.template=T0,X.times=ox,X.toFinite=Vr,X.toInteger=yt,X.toLength=Ld,X.toLower=L0,X.toNumber=ji,X.toSafeInteger=Eb,X.toString=Ut,X.toUpper=E0,X.trim=R0,X.trimEnd=I0,X.trimStart=O0,X.truncate=N0,X.unescape=D0,X.uniqueId=ax,X.upperCase=F0,X.upperFirst=rc,X.each=md,X.eachRight=vd,X.first=dd,ac(X,(function(){var t={};return Cr(X,function(d,$){zt.call(X.prototype,$)||(t[$]=d)}),t})(),{chain:!1}),X.VERSION=u,Rn(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){X[t].placeholder=X}),Rn(["drop","take"],function(t,d){Tt.prototype[t]=function($){$=$===e?1:On(yt($),0);var U=this.__filtered__&&!d?new Tt(this):this.clone();return U.__filtered__?U.__takeCount__=Xn($,U.__takeCount__):U.__views__.push({size:Xn($,le),type:t+(U.__dir__<0?"Right":"")}),U},Tt.prototype[t+"Right"]=function($){return this.reverse()[t]($).reverse()}}),Rn(["filter","map","takeWhile"],function(t,d){var $=d+1,U=$==S||$==W;Tt.prototype[t]=function(q){var ee=this.clone();return ee.__iteratees__.push({iteratee:at(q,3),type:$}),ee.__filtered__=ee.__filtered__||U,ee}}),Rn(["head","last"],function(t,d){var $="take"+(d?"Right":"");Tt.prototype[t]=function(){return this[$](1).value()[0]}}),Rn(["initial","tail"],function(t,d){var $="drop"+(d?"":"Right");Tt.prototype[t]=function(){return this.__filtered__?new Tt(this):this[$](1)}}),Tt.prototype.compact=function(){return this.filter(vi)},Tt.prototype.find=function(t){return this.filter(t).head()},Tt.prototype.findLast=function(t){return this.reverse().find(t)},Tt.prototype.invokeMap=Ct(function(t,d){return typeof t=="function"?new Tt(this):this.map(function($){return Is($,t,d)})}),Tt.prototype.reject=function(t){return this.filter(Da(at(t)))},Tt.prototype.slice=function(t,d){t=yt(t);var $=this;return $.__filtered__&&(t>0||d<0)?new Tt($):(t<0?$=$.takeRight(-t):t&&($=$.drop(t)),d!==e&&(d=yt(d),$=d<0?$.dropRight(-d):$.take(d-t)),$)},Tt.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Tt.prototype.toArray=function(){return this.take(le)},Cr(Tt.prototype,function(t,d){var $=/^(?:filter|find|map|reject)|While$/.test(d),U=/^(?:head|last)$/.test(d),q=X[U?"take"+(d=="last"?"Right":""):d],ee=U||/^find/.test(d);q&&(X.prototype[d]=function(){var ae=this.__wrapped__,fe=U?[1]:arguments,ye=ae instanceof Tt,Le=fe[0],Ee=ye||vt(ae),Oe=function(Mt){var Rt=q.apply(X,C([Mt],fe));return U&&Ue?Rt[0]:Rt};Ee&&$&&typeof Le=="function"&&Le.length!=1&&(ye=Ee=!1);var Ue=this.__chain__,Ze=!!this.__actions__.length,ct=ee&&!Ue,wt=ye&&!Ze;if(!ee&&Ee){ae=wt?ae:new Tt(this);var ot=t.apply(ae,fe);return ot.__actions__.push({func:Ra,args:[Oe],thisArg:e}),new Hi(ot,Ue)}return ct&&wt?t.apply(this,fe):(ot=this.thru(Oe),ct?U?ot.value()[0]:ot.value():ot)})}),Rn(["pop","push","shift","sort","splice","unshift"],function(t){var d=Wi[t],$=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",U=/^(?:pop|shift)$/.test(t);X.prototype[t]=function(){var q=arguments;if(U&&!this.__chain__){var ee=this.value();return d.apply(vt(ee)?ee:[],q)}return this[$](function(ae){return d.apply(vt(ae)?ae:[],q)})}}),Cr(Tt.prototype,function(t,d){var $=X[d];if($){var U=$.name+"";zt.call(is,U)||(is[U]=[]),is[U].push({name:d,func:$})}}),is[_a(e,y).name]=[{name:"wrapper",func:e}],Tt.prototype.clone=Fm,Tt.prototype.reverse=Pm,Tt.prototype.value=Bm,X.prototype.at=pw,X.prototype.chain=gw,X.prototype.commit=mw,X.prototype.next=vw,X.prototype.plant=ww,X.prototype.reverse=bw,X.prototype.toJSON=X.prototype.valueOf=X.prototype.value=xw,X.prototype.first=X.prototype.head,As&&(X.prototype[As]=yw),X}),Kt=Ht();Sn?((Sn.exports=Kt)._=Kt,Zn._=Kt):bt._=Kt}).call(TC)})(Vs,Vs.exports)),Vs.exports}var Tg=LC();const Lg=el(Tg),EC={mixins:[$g],props:{calculatePacketText:{type:Function,default:l=>`${l}`}},data:function(){return{history:[],historyPointer:-1,filterText:null,paused:!1,pausedAt:0,pauseOffset:0,pausedHistory:[],rows:1,textarea:null,displayText:"",rules:{required:l=>!!l||"Required.",min:l=>l>=1||"Minimum: 1",max:l=>Number.parseInt(l)<=this.currentConfig.history||`Maximum: ${this.currentConfig.history}`}}},computed:{allInstantSettings:function(){return`${this.currentConfig.showLineAddress}|${this.currentConfig.showTimestamp}|${this.currentConfig.showAscii}|${this.currentConfig.newestAtTop}|${this.pauseOffset}`},allDebouncedSettings:function(){return`${this.currentConfig.bytesPerLine}|${this.currentConfig.packetsToShow}|${this.filterText}`}},watch:{latestData:function(l){l.forEach(c=>{"buffer"in c&&(c.buffer=atob(c.buffer)),this.historyPointer=++this.historyPointer%this.currentConfig.history,Number.isNaN(this.historyPointer)&&(this.historyPointer=0),this.history[this.historyPointer]=c,this.paused||this.rebuildDisplayText()})},paused:function(l){l?(this.pausedAt=this.historyPointer,this.pausedHistory=this.history.slice()):(this.pauseOffset=0,this.rebuildDisplayText())},allInstantSettings:function(){this.rebuildDisplayText()},allDebouncedSettings:Lg.debounce(function(){this.rebuildDisplayText()},300)},created:function(){const l={history:300,showTimestamp:!0,showAscii:!0,showLineAddress:!0,packetsToShow:1,bytesPerLine:16,newestAtTop:!0};this.currentConfig={...l,...this.currentConfig}},methods:{rebuildDisplayText:function(){let l=this.paused?this.pausedHistory:this.history;const c=this.paused?this.pausedAt:this.historyPointer;if(l=l.filter(M=>M).slice(c+1,this.currentConfig.history).concat(l.slice(0,c+1)).map(this.calculatePacketText).map(this.matchesSearch),this.paused){const M=Math.max(l.length+this.pauseOffset,1);l=l.slice(0,M)}const e=Math.max(this.currentConfig.packetsToShow,1);l=l.slice(-e),this.currentConfig.newestAtTop&&(l=l.reverse());let u=`
1478
+ `;this.filterText!==null&&(u+=`
1479
+ `),this.displayText=l.join(u),this.rows=this.displayText.split(`
1480
+ `).length},matchesSearch:function(l){return this.filterText===null?l:l.split(`
1481
+ `).filter(c=>c.toLowerCase().includes(this.filterText.toLowerCase())).join(`
1482
+ `)},download:function(){const l=new Blob([this.displayText],{type:"text/plain"}),c=document.createElement("a");let e=URL.createObjectURL(l);c.href=e,c.setAttribute("download",`${kx.format(new Date,"yyyy_MM_dd_HH_mm_ss")}.txt`),c.click(),window.URL.revokeObjectURL(e)},pause:function(){this.paused=!0},togglePlayPause:function(){this.paused=!this.paused},stepBackward:function(){this.pause(),this.pauseOffset--},stepForward:function(){this.pause(),this.pauseOffset++}}},RC={class:"pa-2"},IC={class:"text-area-container"},OC={class:"floating-buttons"};function NC(l,c,e,u,M,b){const v=Ge.resolveComponent("v-text-field"),x=Ge.resolveComponent("v-col"),p=Ge.resolveComponent("v-slider"),f=Ge.resolveComponent("v-row"),a=Ge.resolveComponent("v-textarea"),s=Ge.resolveComponent("v-btn"),o=Ge.resolveComponent("v-card-title"),r=Ge.resolveComponent("v-switch"),n=Ge.resolveComponent("v-radio"),i=Ge.resolveComponent("v-radio-group"),h=Ge.resolveComponent("v-card-text"),m=Ge.resolveComponent("v-card"),y=Ge.resolveComponent("v-menu");return Ge.openBlock(),Ge.createElementBlock("div",RC,[Ge.createVNode(f,{dense:"",class:"mb-2"},{default:Ge.withCtx(()=>[Ge.createVNode(x,{cols:"4"},{default:Ge.withCtx(()=>[Ge.createVNode(v,{modelValue:l.filterText,"onUpdate:modelValue":c[0]||(c[0]=R=>l.filterText=R),label:"Search",class:"search","prepend-inner-icon":"mdi-magnify",clearable:"",variant:"outlined",density:"compact","single-line":"","hide-details":"","data-test":"history-component-search"},null,8,["modelValue"])]),_:1}),Ge.createVNode(x,{cols:"8",class:"mt-1"},{default:Ge.withCtx(()=>[Ge.createVNode(p,{modelValue:l.pauseOffset,"onUpdate:modelValue":c[1]||(c[1]=R=>l.pauseOffset=R),"prepend-icon":"mdi-step-backward","append-icon":"mdi-step-forward",min:1-l.currentConfig.history,max:0,"hide-details":"",onMousedown:b.pause,"onClick:prepend":b.stepBackward,"onClick:append":b.stepForward},null,8,["modelValue","min","onMousedown","onClick:prepend","onClick:append"])]),_:1})]),_:1}),Ge.createVNode(f,{dense:"","no-gutters":""},{default:Ge.withCtx(()=>[Ge.createVNode(x,null,{default:Ge.withCtx(()=>[Ge.createElementVNode("div",IC,[Ge.createVNode(a,{"model-value":l.displayText,rows:l.rows,"no-resize":"",readonly:"",variant:"solo",flat:"","hide-details":"","data-test":"history-component-text-area"},null,8,["model-value","rows"]),Ge.createElementVNode("div",OC,[Ge.createVNode(y,{"close-on-content-click":!1,"min-width":700},{activator:Ge.withCtx(({props:R})=>[Ge.createVNode(s,Ge.mergeProps({class:"ml-2",color:"secondary"},R,{icon:"astro:settings",size:"small","aria-label":"Settings","data-test":"history-component-open-settings"}),null,16)]),default:Ge.withCtx(()=>[Ge.createVNode(m,null,{default:Ge.withCtx(()=>[Ge.createVNode(o,{"data-test":"display-settings-card"},{default:Ge.withCtx(()=>[...c[9]||(c[9]=[Ge.createTextVNode(" Display settings ",-1)])]),_:1}),Ge.createVNode(h,null,{default:Ge.withCtx(()=>[Ge.createVNode(f,null,{default:Ge.withCtx(()=>[Ge.createVNode(x,null,{default:Ge.withCtx(()=>[Ge.createVNode(r,{modelValue:l.currentConfig.showTimestamp,"onUpdate:modelValue":c[2]||(c[2]=R=>l.currentConfig.showTimestamp=R),label:"Show timestamp",density:"compact",color:"primary","hide-details":"","data-test":"history-component-settings-show-timestamp"},null,8,["modelValue"]),l.hasRaw?(Ge.openBlock(),Ge.createBlock(r,{key:0,modelValue:l.currentConfig.showAscii,"onUpdate:modelValue":c[3]||(c[3]=R=>l.currentConfig.showAscii=R),label:"Show ASCII",density:"compact",color:"primary","hide-details":"","data-test":"history-component-settings-show-ascii"},null,8,["modelValue"])):Ge.createCommentVNode("",!0),l.hasRaw?(Ge.openBlock(),Ge.createBlock(r,{key:1,modelValue:l.currentConfig.showLineAddress,"onUpdate:modelValue":c[4]||(c[4]=R=>l.currentConfig.showLineAddress=R),label:"Show line address",density:"compact",color:"primary","hide-details":"","data-test":"history-component-settings-show-address"},null,8,["modelValue"])):Ge.createCommentVNode("",!0)]),_:1}),Ge.createVNode(x,null,{default:Ge.withCtx(()=>[Ge.createVNode(i,{modelValue:l.currentConfig.newestAtTop,"onUpdate:modelValue":c[5]||(c[5]=R=>l.currentConfig.newestAtTop=R),label:"Print newest to the"},{default:Ge.withCtx(()=>[Ge.createVNode(n,{label:"Top",value:!0,"data-test":"history-component-settings-newest-top"}),Ge.createVNode(n,{label:"Bottom",value:!1,"data-test":"history-component-settings-newest-bottom"})]),_:1},8,["modelValue"])]),_:1}),Ge.createVNode(x,null,{default:Ge.withCtx(()=>[Ge.createVNode(v,{modelValue:l.currentConfig.history,"onUpdate:modelValue":c[6]||(c[6]=R=>l.currentConfig.history=R),label:"History Buffer",type:"number",min:"1","persistent-hint":"",rules:[l.rules.required,l.rules.min],"data-test":"history-component-settings-history"},null,8,["modelValue","rules"]),l.hasRaw?(Ge.openBlock(),Ge.createBlock(v,{key:0,modelValue:l.currentConfig.bytesPerLine,"onUpdate:modelValue":c[7]||(c[7]=R=>l.currentConfig.bytesPerLine=R),label:"Bytes per line",type:"number",min:"1",rules:[l.rules.required,l.rules.min],"data-test":"history-component-settings-num-bytes"},null,8,["modelValue","rules"])):Ge.createCommentVNode("",!0),Ge.createVNode(v,{modelValue:l.currentConfig.packetsToShow,"onUpdate:modelValue":c[8]||(c[8]=R=>l.currentConfig.packetsToShow=R),label:"Entries to show",type:"number",min:"1",hint:`Maximum: ${l.currentConfig.history}`,"persistent-hint":"",rules:[l.rules.required,l.rules.min,l.rules.max],"data-test":"history-component-settings-num-packets"},null,8,["modelValue","hint","rules"])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),Ge.createVNode(s,{class:"ml-2",color:"secondary",icon:"mdi-file-download",size:"small","aria-label":"Download","data-test":"history-component-download",onClick:b.download},null,8,["onClick"]),Ge.createVNode(s,{class:Ge.normalizeClass(["ml-2",{blink:l.paused}]),color:"primary",icon:l.paused?"mdi-play":"mdi-pause",size:"large","aria-label":l.paused?"Play":"Pause","data-test":"history-component-play-pause",onClick:b.togglePlayPause},null,8,["class","icon","aria-label","onClick"])])])]),_:1})]),_:1})])}const DC=Cx._export_sfc(EC,[["render",NC],["__scopeId","data-v-f489e1c6"]]);var Ac={exports:{}},Tf;function FC(){return Tf||(Tf=1,(function(l,c){(function(){ace.require(["ace/mode/text"],function(e){l&&(l.exports=e)})})()})(Ac)),Ac.exports}FC();const PC=!0,Fn="u-",BC="uplot",WC=Fn+"hz",HC=Fn+"vt",zC=Fn+"title",UC=Fn+"wrap",VC=Fn+"under",jC=Fn+"over",KC=Fn+"axis",Bo=Fn+"off",GC=Fn+"select",qC=Fn+"cursor-x",YC=Fn+"cursor-y",QC=Fn+"cursor-pt",ZC=Fn+"legend",JC=Fn+"live",XC=Fn+"inline",ek=Fn+"series",tk=Fn+"marker",Lf=Fn+"label",nk=Fn+"value",js="width",Ks="height",Hs="top",Ef="bottom",hs="left",Mc="right",Bu="#000",Rf=Bu+"0",$c="mousemove",If="mousedown",Tc="mouseup",Of="mouseenter",Nf="mouseleave",Df="dblclick",ik="resize",rk="scroll",Ff="change",Za="dppxchange",Wu="--",bs=typeof window<"u",wu=bs?document:null,fs=bs?window:null,ok=bs?navigator:null;let Bt,Ua;function bu(){let l=devicePixelRatio;Bt!=l&&(Bt=l,Ua&&Su(Ff,Ua,bu),Ua=matchMedia(`(min-resolution: ${Bt-.001}dppx) and (max-resolution: ${Bt+.001}dppx)`),zo(Ff,Ua,bu),fs.dispatchEvent(new CustomEvent(Za)))}function Ri(l,c){if(c!=null){let e=l.classList;!e.contains(c)&&e.add(c)}}function xu(l,c){let e=l.classList;e.contains(c)&&e.remove(c)}function en(l,c,e){l.style[c]=e+"px"}function cr(l,c,e,u){let M=wu.createElement(l);return c!=null&&Ri(M,c),e?.insertBefore(M,u),M}function Gi(l,c){return cr("div",l,c)}const Pf=new WeakMap;function _r(l,c,e,u,M){let b="translate("+c+"px,"+e+"px)",v=Pf.get(l);b!=v&&(l.style.transform=b,Pf.set(l,b),c<0||e<0||c>u||e>M?Ri(l,Bo):xu(l,Bo))}const Bf=new WeakMap;function Wf(l,c,e){let u=c+e,M=Bf.get(l);u!=M&&(Bf.set(l,u),l.style.background=c,l.style.borderColor=e)}const Hf=new WeakMap;function zf(l,c,e,u){let M=c+""+e,b=Hf.get(l);M!=b&&(Hf.set(l,M),l.style.height=e+"px",l.style.width=c+"px",l.style.marginLeft=u?-c/2+"px":0,l.style.marginTop=u?-e/2+"px":0)}const Hu={passive:!0},sk={...Hu,capture:!0};function zo(l,c,e,u){c.addEventListener(l,e,u?sk:Hu)}function Su(l,c,e,u){c.removeEventListener(l,e,Hu)}bs&&bu();function hr(l,c,e,u){let M;e=e||0,u=u||c.length-1;let b=u<=2147483647;for(;u-e>1;)M=b?e+u>>1:Ii((e+u)/2),c[M]<l?e=M:u=M;return l-c[e]<=c[u]-l?e:u}function Eg(l){return(e,u,M)=>{let b=-1,v=-1;for(let x=u;x<=M;x++)if(l(e[x])){b=x;break}for(let x=M;x>=u;x--)if(l(e[x])){v=x;break}return[b,v]}}const Rg=l=>l!=null,Ig=l=>l!=null&&l>0,ll=Eg(Rg),ak=Eg(Ig);function lk(l,c,e,u=0,M=!1){let b=M?ak:ll,v=M?Ig:Rg;[c,e]=b(l,c,e);let x=l[c],p=l[c];if(c>-1)if(u==1)x=l[c],p=l[e];else if(u==-1)x=l[e],p=l[c];else for(let f=c;f<=e;f++){let a=l[f];v(a)&&(a<x?x=a:a>p&&(p=a))}return[x??Yt,p??-Yt]}function cl(l,c,e,u){let M=jf(l),b=jf(c);l==c&&(M==-1?(l*=e,c/=e):(l/=e,c*=e));let v=e==10?Kr:Og,x=M==1?Ii:qi,p=b==1?qi:Ii,f=x(v(Dn(l))),a=p(v(Dn(c))),s=gs(e,f),o=gs(e,a);return e==10&&(f<0&&(s=Qt(s,-f)),a<0&&(o=Qt(o,-a))),u||e==2?(l=s*M,c=o*b):(l=Pg(l,s),c=ul(c,o)),[l,c]}function zu(l,c,e,u){let M=cl(l,c,e,u);return l==0&&(M[0]=0),c==0&&(M[1]=0),M}const Uu=.1,Uf={mode:3,pad:Uu},qs={pad:0,soft:null,mode:0},ck={min:qs,max:qs};function Ja(l,c,e,u){return hl(e)?Vf(l,c,e):(qs.pad=e,qs.soft=u?0:null,qs.mode=u?3:0,Vf(l,c,ck))}function Ft(l,c){return l??c}function uk(l,c,e){for(c=Ft(c,0),e=Ft(e,l.length-1);c<=e;){if(l[c]!=null)return!0;c++}return!1}function Vf(l,c,e){let u=e.min,M=e.max,b=Ft(u.pad,0),v=Ft(M.pad,0),x=Ft(u.hard,-Yt),p=Ft(M.hard,Yt),f=Ft(u.soft,Yt),a=Ft(M.soft,-Yt),s=Ft(u.mode,0),o=Ft(M.mode,0),r=c-l,n=Kr(r),i=li(Dn(l),Dn(c)),h=Kr(i),m=Dn(h-n);(r<1e-24||m>10)&&(r=0,(l==0||c==0)&&(r=1e-24,s==2&&f!=Yt&&(b=0),o==2&&a!=-Yt&&(v=0)));let y=r||i||1e3,R=Kr(y),T=gs(10,Ii(R)),k=y*(r==0?l==0?.1:1:b),w=Qt(Pg(l-k,T/10),24),I=l>=f&&(s==1||s==3&&w<=f||s==2&&w>=f)?f:Yt,D=li(x,w<I&&l>=I?I:dr(I,w)),E=y*(r==0?c==0?.1:1:v),L=Qt(ul(c+E,T/10),24),z=c<=a&&(o==1||o==3&&L>=a||o==2&&L<=a)?a:-Yt,F=dr(p,L>z&&c<=z?z:li(z,L));return D==F&&D==0&&(F=100),[D,F]}const hk=new Intl.NumberFormat(bs?ok.language:"en-US"),Vu=l=>hk.format(l),Oi=Math,Ya=Oi.PI,Dn=Oi.abs,Ii=Oi.floor,Nn=Oi.round,qi=Oi.ceil,dr=Oi.min,li=Oi.max,gs=Oi.pow,jf=Oi.sign,Kr=Oi.log10,Og=Oi.log2,dk=(l,c=1)=>Oi.sinh(l)*c,Lc=(l,c=1)=>Oi.asinh(l/c),Yt=1/0;function Kf(l){return(Kr((l^l>>31)-(l>>31))|0)+1}function Cu(l,c,e){return dr(li(l,c),e)}function Ng(l){return typeof l=="function"}function Lt(l){return Ng(l)?l:()=>l}const fk=()=>{},Dg=l=>l,Fg=(l,c)=>c,pk=l=>null,Gf=l=>!0,qf=(l,c)=>l==c,gk=/\.\d*?(?=9{6,}|0{6,})/gm,Vo=l=>{if(Wg(l)||ho.has(l))return l;const c=`${l}`,e=c.match(gk);if(e==null)return l;let u=e[0].length-1;if(c.indexOf("e-")!=-1){let[M,b]=c.split("e");return+`${Vo(M)}e${b}`}return Qt(l,u)};function Fo(l,c){return Vo(Qt(Vo(l/c))*c)}function ul(l,c){return Vo(qi(Vo(l/c))*c)}function Pg(l,c){return Vo(Ii(Vo(l/c))*c)}function Qt(l,c=0){if(Wg(l))return l;let e=10**c,u=l*e*(1+Number.EPSILON);return Nn(u)/e}const ho=new Map;function Bg(l){return((""+l).split(".")[1]||"").length}function Zs(l,c,e,u){let M=[],b=u.map(Bg);for(let v=c;v<e;v++){let x=Dn(v),p=Qt(gs(l,v),x);for(let f=0;f<u.length;f++){let a=l==10?+`${u[f]}e${v}`:u[f]*p,s=(v>=0?0:x)+(v>=b[f]?0:b[f]),o=l==10?a:Qt(a,s);M.push(o),ho.set(o,s)}}return M}const Ys={},ju=[],ms=[null,null],co=Array.isArray,Wg=Number.isInteger,mk=l=>l===void 0;function Yf(l){return typeof l=="string"}function hl(l){let c=!1;if(l!=null){let e=l.constructor;c=e==null||e==Object}return c}function vk(l){return l!=null&&typeof l=="object"}const yk=Object.getPrototypeOf(Uint8Array),Hg="__proto__";function vs(l,c=hl){let e;if(co(l)){let u=l.find(M=>M!=null);if(co(u)||c(u)){e=Array(l.length);for(let M=0;M<l.length;M++)e[M]=vs(l[M],c)}else e=l.slice()}else if(l instanceof yk)e=l.slice();else if(c(l)){e={};for(let u in l)u!=Hg&&(e[u]=vs(l[u],c))}else e=l;return e}function kn(l){let c=arguments;for(let e=1;e<c.length;e++){let u=c[e];for(let M in u)M!=Hg&&(hl(l[M])?kn(l[M],vs(u[M])):l[M]=vs(u[M]))}return l}const wk=0,bk=1,xk=2;function Sk(l,c,e){for(let u=0,M,b=-1;u<c.length;u++){let v=c[u];if(v>b){for(M=v-1;M>=0&&l[M]==null;)l[M--]=null;for(M=v+1;M<e&&l[M]==null;)l[b=M++]=null}}}function Ck(l,c){if(Ak(l)){let v=l[0].slice();for(let x=1;x<l.length;x++)v.push(...l[x].slice(1));return Mk(v[0])||(v=_k(v)),v}let e=new Set;for(let v=0;v<l.length;v++){let p=l[v][0],f=p.length;for(let a=0;a<f;a++)e.add(p[a])}let u=[Array.from(e).sort((v,x)=>v-x)],M=u[0].length,b=new Map;for(let v=0;v<M;v++)b.set(u[0][v],v);for(let v=0;v<l.length;v++){let x=l[v],p=x[0];for(let f=1;f<x.length;f++){let a=x[f],s=Array(M).fill(void 0),o=c?c[v][f]:bk,r=[];for(let n=0;n<a.length;n++){let i=a[n],h=b.get(p[n]);i===null?o!=wk&&(s[h]=i,o==xk&&r.push(h)):s[h]=i}Sk(s,r,M),u.push(s)}}return u}const kk=typeof queueMicrotask>"u"?l=>Promise.resolve().then(l):queueMicrotask;function _k(l){let c=l[0],e=c.length,u=Array(e);for(let b=0;b<u.length;b++)u[b]=b;u.sort((b,v)=>c[b]-c[v]);let M=[];for(let b=0;b<l.length;b++){let v=l[b],x=Array(e);for(let p=0;p<e;p++)x[p]=v[u[p]];M.push(x)}return M}function Ak(l){let c=l[0][0],e=c.length;for(let u=1;u<l.length;u++){let M=l[u][0];if(M.length!=e)return!1;if(M!=c){for(let b=0;b<e;b++)if(M[b]!=c[b])return!1}}return!0}function Mk(l,c=100){const e=l.length;if(e<=1)return!0;let u=0,M=e-1;for(;u<=M&&l[u]==null;)u++;for(;M>=u&&l[M]==null;)M--;if(M<=u)return!0;const b=li(1,Ii((M-u+1)/c));for(let v=l[u],x=u+b;x<=M;x+=b){const p=l[x];if(p!=null){if(p<=v)return!1;v=p}}return!0}const zg=["January","February","March","April","May","June","July","August","September","October","November","December"],Ug=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];function Vg(l){return l.slice(0,3)}const $k=Ug.map(Vg),Tk=zg.map(Vg),Lk={MMMM:zg,MMM:Tk,WWWW:Ug,WWW:$k};function zs(l){return(l<10?"0":"")+l}function Ek(l){return(l<10?"00":l<100?"0":"")+l}const Rk={YYYY:l=>l.getFullYear(),YY:l=>(l.getFullYear()+"").slice(2),MMMM:(l,c)=>c.MMMM[l.getMonth()],MMM:(l,c)=>c.MMM[l.getMonth()],MM:l=>zs(l.getMonth()+1),M:l=>l.getMonth()+1,DD:l=>zs(l.getDate()),D:l=>l.getDate(),WWWW:(l,c)=>c.WWWW[l.getDay()],WWW:(l,c)=>c.WWW[l.getDay()],HH:l=>zs(l.getHours()),H:l=>l.getHours(),h:l=>{let c=l.getHours();return c==0?12:c>12?c-12:c},AA:l=>l.getHours()>=12?"PM":"AM",aa:l=>l.getHours()>=12?"pm":"am",a:l=>l.getHours()>=12?"p":"a",mm:l=>zs(l.getMinutes()),m:l=>l.getMinutes(),ss:l=>zs(l.getSeconds()),s:l=>l.getSeconds(),fff:l=>Ek(l.getMilliseconds())};function Ku(l,c){c=c||Lk;let e=[],u=/\{([a-z]+)\}|[^{]+/gi,M;for(;M=u.exec(l);)e.push(M[0][0]=="{"?Rk[M[1]]:M[0]);return b=>{let v="";for(let x=0;x<e.length;x++)v+=typeof e[x]=="string"?e[x]:e[x](b,c);return v}}const Ik=new Intl.DateTimeFormat().resolvedOptions().timeZone;function Ok(l,c){let e;return c=="UTC"||c=="Etc/UTC"?e=new Date(+l+l.getTimezoneOffset()*6e4):c==Ik?e=l:(e=new Date(l.toLocaleString("en-US",{timeZone:c})),e.setMilliseconds(l.getMilliseconds())),e}const jg=l=>l%1==0,Xa=[1,2,2.5,5],Nk=Zs(10,-32,0,Xa),Kg=Zs(10,0,32,Xa),Dk=Kg.filter(jg),Po=Nk.concat(Kg),Gu=`
1483
+ `,Gg="{YYYY}",Qf=Gu+Gg,qg="{M}/{D}",Gs=Gu+qg,Va=Gs+"/{YY}",Yg="{aa}",Fk="{h}:{mm}",ds=Fk+Yg,Zf=Gu+ds,Jf=":{ss}",Vt=null;function Qg(l){let c=l*1e3,e=c*60,u=e*60,M=u*24,b=M*30,v=M*365,p=(l==1?Zs(10,0,3,Xa).filter(jg):Zs(10,-3,0,Xa)).concat([c,c*5,c*10,c*15,c*30,e,e*5,e*10,e*15,e*30,u,u*2,u*3,u*4,u*6,u*8,u*12,M,M*2,M*3,M*4,M*5,M*6,M*7,M*8,M*9,M*10,M*15,b,b*2,b*3,b*4,b*6,v,v*2,v*5,v*10,v*25,v*50,v*100]);const f=[[v,Gg,Vt,Vt,Vt,Vt,Vt,Vt,1],[M*28,"{MMM}",Qf,Vt,Vt,Vt,Vt,Vt,1],[M,qg,Qf,Vt,Vt,Vt,Vt,Vt,1],[u,"{h}"+Yg,Va,Vt,Gs,Vt,Vt,Vt,1],[e,ds,Va,Vt,Gs,Vt,Vt,Vt,1],[c,Jf,Va+" "+ds,Vt,Gs+" "+ds,Vt,Zf,Vt,1],[l,Jf+".{fff}",Va+" "+ds,Vt,Gs+" "+ds,Vt,Zf,Vt,1]];function a(s){return(o,r,n,i,h,m)=>{let y=[],R=h>=v,T=h>=b&&h<v,k=s(n),w=Qt(k*l,3),I=Ec(k.getFullYear(),R?0:k.getMonth(),T||R?1:k.getDate()),D=Qt(I*l,3);if(T||R){let E=T?h/b:0,L=R?h/v:0,z=w==D?w:Qt(Ec(I.getFullYear()+L,I.getMonth()+E,1)*l,3),F=new Date(Nn(z/l)),O=F.getFullYear(),A=F.getMonth();for(let S=0;z<=i;S++){let N=Ec(O+L*S,A+E*S,1),W=N-s(Qt(N*l,3));z=Qt((+N+W)*l,3),z<=i&&y.push(z)}}else{let E=h>=M?M:h,L=Ii(n)-Ii(w),z=D+L+ul(w-D,E);y.push(z);let F=s(z),O=F.getHours()+F.getMinutes()/e+F.getSeconds()/u,A=h/u,S=o.axes[r]._space,N=m/S;for(;z=Qt(z+h,l==1?0:3),!(z>i);)if(A>1){let W=Ii(Qt(O+A,6))%24,Q=s(z).getHours()-W;Q>1&&(Q=-1),z-=Q*u,O=(O+A)%24;let te=y[y.length-1];Qt((z-te)/h,3)*N>=.7&&y.push(z)}else y.push(z)}return y}}return[p,f,a]}const[Pk,Bk,Wk]=Qg(1),[Hk,zk,Uk]=Qg(.001);Zs(2,-53,53,[1]);function Xf(l,c){return l.map(e=>e.map((u,M)=>M==0||M==8||u==null?u:c(M==1||e[8]==0?u:e[1]+u)))}function ep(l,c){return(e,u,M,b,v)=>{let x=c.find(n=>v>=n[0])||c[c.length-1],p,f,a,s,o,r;return u.map(n=>{let i=l(n),h=i.getFullYear(),m=i.getMonth(),y=i.getDate(),R=i.getHours(),T=i.getMinutes(),k=i.getSeconds(),w=h!=p&&x[2]||m!=f&&x[3]||y!=a&&x[4]||R!=s&&x[5]||T!=o&&x[6]||k!=r&&x[7]||x[1];return p=h,f=m,a=y,s=R,o=T,r=k,w(i)})}}function Vk(l,c){let e=Ku(c);return(u,M,b,v,x)=>M.map(p=>e(l(p)))}function Ec(l,c,e){return new Date(l,c,e)}function tp(l,c){return c(l)}const jk="{YYYY}-{MM}-{DD} {h}:{mm}{aa}";function np(l,c){return(e,u,M,b)=>b==null?Wu:c(l(u))}function Kk(l,c){let e=l.series[c];return e.width?e.stroke(l,c):e.points.width?e.points.stroke(l,c):null}function Gk(l,c){return l.series[c].fill(l,c)}const qk={show:!0,live:!0,isolate:!1,mount:fk,markers:{show:!0,width:2,stroke:Kk,fill:Gk,dash:"solid"},idx:null,idxs:null,values:[]};function Yk(l,c){let e=l.cursor.points,u=Gi(),M=e.size(l,c);en(u,js,M),en(u,Ks,M);let b=M/-2;en(u,"marginLeft",b),en(u,"marginTop",b);let v=e.width(l,c,M);return v&&en(u,"borderWidth",v),u}function Qk(l,c){let e=l.series[c].points;return e._fill||e._stroke}function Zk(l,c){let e=l.series[c].points;return e._stroke||e._fill}function Jk(l,c){return l.series[c].points.size}const Rc=[0,0];function Xk(l,c,e){return Rc[0]=c,Rc[1]=e,Rc}function ja(l,c,e,u=!0){return M=>{M.button==0&&(!u||M.target==c)&&e(M)}}function Ic(l,c,e,u=!0){return M=>{(!u||M.target==c)&&e(M)}}const e_={show:!0,x:!0,y:!0,lock:!1,move:Xk,points:{one:!1,show:Yk,size:Jk,width:0,stroke:Zk,fill:Qk},bind:{mousedown:ja,mouseup:ja,click:ja,dblclick:ja,mousemove:Ic,mouseleave:Ic,mouseenter:Ic},drag:{setScale:!0,x:!0,y:!1,dist:0,uni:null,click:(l,c)=>{c.stopPropagation(),c.stopImmediatePropagation()},_x:!1,_y:!1},focus:{dist:(l,c,e,u,M)=>u-M,prox:-1,bias:0},hover:{skip:[void 0],prox:null,bias:0},left:-10,top:-10,idx:null,dataIdx:null,idxs:null,event:null},Zg={show:!0,stroke:"rgba(0,0,0,0.07)",width:2},qu=kn({},Zg,{filter:Fg}),Jg=kn({},qu,{size:10}),Xg=kn({},Zg,{show:!1}),Yu='12px system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"',em="bold "+Yu,tm=1.5,ip={show:!0,scale:"x",stroke:Bu,space:50,gap:5,alignTo:1,size:50,labelGap:0,labelSize:30,labelFont:em,side:2,grid:qu,ticks:Jg,border:Xg,font:Yu,lineGap:tm,rotate:0},t_="Value",n_="Time",rp={show:!0,scale:"x",auto:!1,sorted:1,min:Yt,max:-Yt,idxs:[]};function i_(l,c,e,u,M){return c.map(b=>b==null?"":Vu(b))}function r_(l,c,e,u,M,b,v){let x=[],p=ho.get(M)||0;e=v?e:Qt(ul(e,M),p);for(let f=e;f<=u;f=Qt(f+M,p))x.push(Object.is(f,-0)?0:f);return x}function ku(l,c,e,u,M,b,v){const x=[],p=l.scales[l.axes[c].scale].log,f=p==10?Kr:Og,a=Ii(f(e));M=gs(p,a),p==10&&(M=Po[hr(M,Po)]);let s=e,o=M*p;p==10&&(o=Po[hr(o,Po)]);do x.push(s),s=s+M,p==10&&!ho.has(s)&&(s=Qt(s,ho.get(M))),s>=o&&(M=s,o=M*p,p==10&&(o=Po[hr(o,Po)]));while(s<=u);return x}function o_(l,c,e,u,M,b,v){let p=l.scales[l.axes[c].scale].asinh,f=u>p?ku(l,c,li(p,e),u,M):[p],a=u>=0&&e<=0?[0]:[];return(e<-p?ku(l,c,li(p,-u),-e,M):[p]).reverse().map(o=>-o).concat(a,f)}const nm=/./,s_=/[12357]/,a_=/[125]/,op=/1/,_u=(l,c,e,u)=>l.map((M,b)=>c==4&&M==0||b%u==0&&e.test(M.toExponential()[M<0?1:0])?M:null);function l_(l,c,e,u,M){let b=l.axes[e],v=b.scale,x=l.scales[v],p=l.valToPos,f=b._space,a=p(10,v),s=p(9,v)-a>=f?nm:p(7,v)-a>=f?s_:p(5,v)-a>=f?a_:op;if(s==op){let o=Dn(p(1,v)-a);if(o<f)return _u(c.slice().reverse(),x.distr,s,qi(f/o)).reverse()}return _u(c,x.distr,s,1)}function c_(l,c,e,u,M){let b=l.axes[e],v=b.scale,x=b._space,p=l.valToPos,f=Dn(p(1,v)-p(2,v));return f<x?_u(c.slice().reverse(),3,nm,qi(x/f)).reverse():c}function u_(l,c,e,u){return u==null?Wu:c==null?"":Vu(c)}const sp={show:!0,scale:"y",stroke:Bu,space:30,gap:5,alignTo:1,size:50,labelGap:0,labelSize:30,labelFont:em,side:3,grid:qu,ticks:Jg,border:Xg,font:Yu,lineGap:tm,rotate:0};function h_(l,c){let e=3+(l||1)*2;return Qt(e*c,3)}function d_(l,c){let{scale:e,idxs:u}=l.series[0],M=l._data[0],b=l.valToPos(M[u[0]],e,!0),v=l.valToPos(M[u[1]],e,!0),x=Dn(v-b),p=l.series[c],f=x/(p.points.space*Bt);return u[1]-u[0]<=f}const ap={scale:null,auto:!0,sorted:0,min:Yt,max:-Yt},im=(l,c,e,u,M)=>M,lp={show:!0,auto:!0,sorted:0,gaps:im,alpha:1,facets:[kn({},ap,{scale:"x"}),kn({},ap,{scale:"y"})]},cp={scale:"y",auto:!0,sorted:0,show:!0,spanGaps:!1,gaps:im,alpha:1,points:{show:d_,filter:null},values:null,min:Yt,max:-Yt,idxs:[],path:null,clip:null};function f_(l,c,e,u,M){return e/10}const rm={time:PC,auto:!0,distr:1,log:10,asinh:1,min:null,max:null,dir:1,ori:0},p_=kn({},rm,{time:!1,ori:1}),up={};function om(l,c){let e=up[l];return e||(e={key:l,plots:[],sub(u){e.plots.push(u)},unsub(u){e.plots=e.plots.filter(M=>M!=u)},pub(u,M,b,v,x,p,f){for(let a=0;a<e.plots.length;a++)e.plots[a]!=M&&e.plots[a].pub(u,M,b,v,x,p,f)}},l!=null&&(up[l]=e)),e}const ys=1,Au=2;function jo(l,c,e){const u=l.mode,M=l.series[c],b=u==2?l._data[c]:l._data,v=l.scales,x=l.bbox;let p=b[0],f=u==2?b[1]:b[c],a=u==2?v[M.facets[0].scale]:v[l.series[0].scale],s=u==2?v[M.facets[1].scale]:v[M.scale],o=x.left,r=x.top,n=x.width,i=x.height,h=l.valToPosH,m=l.valToPosV;return a.ori==0?e(M,p,f,a,s,h,m,o,r,n,i,fl,xs,gl,am,cm):e(M,p,f,a,s,m,h,r,o,i,n,pl,Ss,Ju,lm,um)}function Qu(l,c){let e=0,u=0,M=Ft(l.bands,ju);for(let b=0;b<M.length;b++){let v=M[b];v.series[0]==c?e=v.dir:v.series[1]==c&&(v.dir==1?u|=1:u|=2)}return[e,u==1?-1:u==2?1:u==3?2:0]}function g_(l,c,e,u,M){let b=l.mode,v=l.series[c],x=b==2?v.facets[1].scale:v.scale,p=l.scales[x];return M==-1?p.min:M==1?p.max:p.distr==3?p.dir==1?p.min:p.max:0}function Gr(l,c,e,u,M,b){return jo(l,c,(v,x,p,f,a,s,o,r,n,i,h)=>{let m=v.pxRound;const y=f.dir*(f.ori==0?1:-1),R=f.ori==0?xs:Ss;let T,k;y==1?(T=e,k=u):(T=u,k=e);let w=m(s(x[T],f,i,r)),I=m(o(p[T],a,h,n)),D=m(s(x[k],f,i,r)),E=m(o(b==1?a.max:a.min,a,h,n)),L=new Path2D(M);return R(L,D,E),R(L,w,E),R(L,w,I),L})}function dl(l,c,e,u,M,b){let v=null;if(l.length>0){v=new Path2D;const x=c==0?gl:Ju;let p=e;for(let s=0;s<l.length;s++){let o=l[s];if(o[1]>o[0]){let r=o[0]-p;r>0&&x(v,p,u,r,u+b),p=o[1]}}let f=e+M-p,a=10;f>0&&x(v,p,u-a/2,f,u+b+a)}return v}function m_(l,c,e){let u=l[l.length-1];u&&u[0]==c?u[1]=e:l.push([c,e])}function Zu(l,c,e,u,M,b,v){let x=[],p=l.length;for(let f=M==1?e:u;f>=e&&f<=u;f+=M)if(c[f]===null){let s=f,o=f;if(M==1)for(;++f<=u&&c[f]===null;)o=f;else for(;--f>=e&&c[f]===null;)o=f;let r=b(l[s]),n=o==s?r:b(l[o]),i=s-M;r=v<=0&&i>=0&&i<p?b(l[i]):r;let m=o+M;n=v>=0&&m>=0&&m<p?b(l[m]):n,n>=r&&x.push([r,n])}return x}function hp(l){return l==0?Dg:l==1?Nn:c=>Fo(c,l)}function sm(l){let c=l==0?fl:pl,e=l==0?(M,b,v,x,p,f)=>{M.arcTo(b,v,x,p,f)}:(M,b,v,x,p,f)=>{M.arcTo(v,b,p,x,f)},u=l==0?(M,b,v,x,p)=>{M.rect(b,v,x,p)}:(M,b,v,x,p)=>{M.rect(v,b,p,x)};return(M,b,v,x,p,f=0,a=0)=>{f==0&&a==0?u(M,b,v,x,p):(f=dr(f,x/2,p/2),a=dr(a,x/2,p/2),c(M,b+f,v),e(M,b+x,v,b+x,v+p,f),e(M,b+x,v+p,b,v+p,a),e(M,b,v+p,b,v,a),e(M,b,v,b+x,v,f),M.closePath())}}const fl=(l,c,e)=>{l.moveTo(c,e)},pl=(l,c,e)=>{l.moveTo(e,c)},xs=(l,c,e)=>{l.lineTo(c,e)},Ss=(l,c,e)=>{l.lineTo(e,c)},gl=sm(0),Ju=sm(1),am=(l,c,e,u,M,b)=>{l.arc(c,e,u,M,b)},lm=(l,c,e,u,M,b)=>{l.arc(e,c,u,M,b)},cm=(l,c,e,u,M,b,v)=>{l.bezierCurveTo(c,e,u,M,b,v)},um=(l,c,e,u,M,b,v)=>{l.bezierCurveTo(e,c,M,u,v,b)};function hm(l){return(c,e,u,M,b)=>jo(c,e,(v,x,p,f,a,s,o,r,n,i,h)=>{let{pxRound:m,points:y}=v,R,T;f.ori==0?(R=fl,T=am):(R=pl,T=lm);const k=Qt(y.width*Bt,3);let w=(y.size-y.width)/2*Bt,I=Qt(w*2,3),D=new Path2D,E=new Path2D,{left:L,top:z,width:F,height:O}=c.bbox;gl(E,L-I,z-I,F+I*2,O+I*2);const A=S=>{if(p[S]!=null){let N=m(s(x[S],f,i,r)),W=m(o(p[S],a,h,n));R(D,N+w,W),T(D,N,W,w,0,Ya*2)}};if(b)b.forEach(A);else for(let S=u;S<=M;S++)A(S);return{stroke:k>0?D:null,fill:D,clip:E,flags:ys|Au}})}function dm(l){return(c,e,u,M,b,v)=>{u!=M&&(b!=u&&v!=u&&l(c,e,u),b!=M&&v!=M&&l(c,e,M),l(c,e,v))}}const v_=dm(xs),y_=dm(Ss);function fm(l){const c=Ft(l?.alignGaps,0);return(e,u,M,b)=>jo(e,u,(v,x,p,f,a,s,o,r,n,i,h)=>{[M,b]=ll(p,M,b);let m=v.pxRound,y=O=>m(s(O,f,i,r)),R=O=>m(o(O,a,h,n)),T,k;f.ori==0?(T=xs,k=v_):(T=Ss,k=y_);const w=f.dir*(f.ori==0?1:-1),I={stroke:new Path2D,fill:null,clip:null,band:null,gaps:null,flags:ys},D=I.stroke;let E=!1;if(b-M>=i*4){let O=ne=>e.posToVal(ne,f.key,!0),A=null,S=null,N,W,V,G=y(x[w==1?M:b]),Q=y(x[M]),te=y(x[b]),le=O(w==1?Q+1:te-1);for(let ne=w==1?M:b;ne>=M&&ne<=b;ne+=w){let ue=x[ne],ce=(w==1?ue<le:ue>le)?G:y(ue),me=p[ne];ce==G?me!=null?(W=me,A==null?(T(D,ce,R(W)),N=A=S=W):W<A?A=W:W>S&&(S=W)):me===null&&(E=!0):(A!=null&&k(D,G,R(A),R(S),R(N),R(W)),me!=null?(W=me,T(D,ce,R(W)),A=S=N=W):(A=S=null,me===null&&(E=!0)),G=ce,le=O(G+w))}A!=null&&A!=S&&V!=G&&k(D,G,R(A),R(S),R(N),R(W))}else for(let O=w==1?M:b;O>=M&&O<=b;O+=w){let A=p[O];A===null?E=!0:A!=null&&T(D,y(x[O]),R(A))}let[z,F]=Qu(e,u);if(v.fill!=null||z!=0){let O=I.fill=new Path2D(D),A=v.fillTo(e,u,v.min,v.max,z),S=R(A),N=y(x[M]),W=y(x[b]);w==-1&&([W,N]=[N,W]),T(O,W,S),T(O,N,S)}if(!v.spanGaps){let O=[];E&&O.push(...Zu(x,p,M,b,w,y,c)),I.gaps=O=v.gaps(e,u,M,b,O),I.clip=dl(O,f.ori,r,n,i,h)}return F!=0&&(I.band=F==2?[Gr(e,u,M,b,D,-1),Gr(e,u,M,b,D,1)]:Gr(e,u,M,b,D,F)),I})}function w_(l){const c=Ft(l.align,1),e=Ft(l.ascDesc,!1),u=Ft(l.alignGaps,0),M=Ft(l.extend,!1);return(b,v,x,p)=>jo(b,v,(f,a,s,o,r,n,i,h,m,y,R)=>{[x,p]=ll(s,x,p);let T=f.pxRound,{left:k,width:w}=b.bbox,I=Q=>T(n(Q,o,y,h)),D=Q=>T(i(Q,r,R,m)),E=o.ori==0?xs:Ss;const L={stroke:new Path2D,fill:null,clip:null,band:null,gaps:null,flags:ys},z=L.stroke,F=o.dir*(o.ori==0?1:-1);let O=D(s[F==1?x:p]),A=I(a[F==1?x:p]),S=A,N=A;M&&c==-1&&(N=k,E(z,N,O)),E(z,A,O);for(let Q=F==1?x:p;Q>=x&&Q<=p;Q+=F){let te=s[Q];if(te==null)continue;let le=I(a[Q]),ne=D(te);c==1?E(z,le,O):E(z,S,ne),E(z,le,ne),O=ne,S=le}let W=S;M&&c==1&&(W=k+w,E(z,W,O));let[V,G]=Qu(b,v);if(f.fill!=null||V!=0){let Q=L.fill=new Path2D(z),te=f.fillTo(b,v,f.min,f.max,V),le=D(te);E(Q,W,le),E(Q,N,le)}if(!f.spanGaps){let Q=[];Q.push(...Zu(a,s,x,p,F,I,u));let te=f.width*Bt/2,le=e||c==1?te:-te,ne=e||c==-1?-te:te;Q.forEach(ue=>{ue[0]+=le,ue[1]+=ne}),L.gaps=Q=f.gaps(b,v,x,p,Q),L.clip=dl(Q,o.ori,h,m,y,R)}return G!=0&&(L.band=G==2?[Gr(b,v,x,p,z,-1),Gr(b,v,x,p,z,1)]:Gr(b,v,x,p,z,G)),L})}function dp(l,c,e,u,M,b,v=Yt){if(l.length>1){let x=null;for(let p=0,f=1/0;p<l.length;p++)if(c[p]!==void 0){if(x!=null){let a=Dn(l[p]-l[x]);a<f&&(f=a,v=Dn(e(l[p],u,M,b)-e(l[x],u,M,b)))}x=p}}return v}function b_(l){l=l||Ys;const c=Ft(l.size,[.6,Yt,1]),e=l.align||0,u=l.gap||0;let M=l.radius;M=M==null?[0,0]:typeof M=="number"?[M,0]:M;const b=Lt(M),v=1-c[0],x=Ft(c[1],Yt),p=Ft(c[2],1),f=Ft(l.disp,Ys),a=Ft(l.each,r=>{}),{fill:s,stroke:o}=f;return(r,n,i,h)=>jo(r,n,(m,y,R,T,k,w,I,D,E,L,z)=>{let F=m.pxRound,O=e,A=u*Bt,S=x*Bt,N=p*Bt,W,V;T.ori==0?[W,V]=b(r,n):[V,W]=b(r,n);const G=T.dir*(T.ori==0?1:-1);let Q=T.ori==0?gl:Ju,te=T.ori==0?a:(je,Et,sn,An,Pn,Gn,an)=>{a(je,Et,sn,Pn,An,an,Gn)},le=Ft(r.bands,ju).find(je=>je.series[0]==n),ne=le!=null?le.dir:0,ue=m.fillTo(r,n,m.min,m.max,ne),he=F(I(ue,k,z,E)),ce,me,_e,Ae=L,Me=F(m.width*Bt),Ye=!1,Ve=null,it=null,lt=null,nt=null;s!=null&&(Me==0||o!=null)&&(Ye=!0,Ve=s.values(r,n,i,h),it=new Map,new Set(Ve).forEach(je=>{je!=null&&it.set(je,new Path2D)}),Me>0&&(lt=o.values(r,n,i,h),nt=new Map,new Set(lt).forEach(je=>{je!=null&&nt.set(je,new Path2D)})));let{x0:Ot,size:bi}=f;if(Ot!=null&&bi!=null){O=1,y=Ot.values(r,n,i,h),Ot.unit==2&&(y=y.map(sn=>r.posToVal(D+sn*L,T.key,!0)));let je=bi.values(r,n,i,h);bi.unit==2?me=je[0]*L:me=w(je[0],T,L,D)-w(0,T,L,D),Ae=dp(y,R,w,T,L,D,Ae),_e=Ae-me+A}else Ae=dp(y,R,w,T,L,D,Ae),_e=Ae*v+A,me=Ae-_e;_e<1&&(_e=0),Me>=me/2&&(Me=0),_e<5&&(F=Dg);let kt=_e>0,ci=Ae-_e-(kt?Me:0);me=F(Cu(ci,N,S)),ce=(O==0?me/2:O==G?0:me)-O*G*((O==0?A/2:0)+(kt?Me/2:0));const _n={stroke:null,fill:null,clip:null,band:null,gaps:null,flags:0},ui=Ye?null:new Path2D;let tn=null;if(le!=null)tn=r.data[le.series[1]];else{let{y0:je,y1:Et}=f;je!=null&&Et!=null&&(R=Et.values(r,n,i,h),tn=je.values(r,n,i,h))}let Kn=W*me,ht=V*me;for(let je=G==1?i:h;je>=i&&je<=h;je+=G){let Et=R[je];if(Et==null)continue;if(tn!=null){let jt=tn[je]??0;if(Et-jt==0)continue;he=I(jt,k,z,E)}let sn=T.distr!=2||f!=null?y[je]:je,An=w(sn,T,L,D),Pn=I(Ft(Et,ue),k,z,E),Gn=F(An-ce),an=F(li(Pn,he)),Mn=F(dr(Pn,he)),Bn=an-Mn;if(Et!=null){let jt=Et<0?ht:Kn,$n=Et<0?Kn:ht;Ye?(Me>0&&lt[je]!=null&&Q(nt.get(lt[je]),Gn,Mn+Ii(Me/2),me,li(0,Bn-Me),jt,$n),Ve[je]!=null&&Q(it.get(Ve[je]),Gn,Mn+Ii(Me/2),me,li(0,Bn-Me),jt,$n)):Q(ui,Gn,Mn+Ii(Me/2),me,li(0,Bn-Me),jt,$n),te(r,n,je,Gn-Me/2,Mn,me+Me,Bn)}}return Me>0?_n.stroke=Ye?nt:ui:Ye||(_n._fill=m.width==0?m._fill:m._stroke??m._fill,_n.width=0),_n.fill=Ye?it:ui,_n})}function x_(l,c){const e=Ft(c?.alignGaps,0);return(u,M,b,v)=>jo(u,M,(x,p,f,a,s,o,r,n,i,h,m)=>{[b,v]=ll(f,b,v);let y=x.pxRound,R=W=>y(o(W,a,h,n)),T=W=>y(r(W,s,m,i)),k,w,I;a.ori==0?(k=fl,I=xs,w=cm):(k=pl,I=Ss,w=um);const D=a.dir*(a.ori==0?1:-1);let E=R(p[D==1?b:v]),L=E,z=[],F=[];for(let W=D==1?b:v;W>=b&&W<=v;W+=D)if(f[W]!=null){let G=p[W],Q=R(G);z.push(L=Q),F.push(T(f[W]))}const O={stroke:l(z,F,k,I,w,y),fill:null,clip:null,band:null,gaps:null,flags:ys},A=O.stroke;let[S,N]=Qu(u,M);if(x.fill!=null||S!=0){let W=O.fill=new Path2D(A),V=x.fillTo(u,M,x.min,x.max,S),G=T(V);I(W,L,G),I(W,E,G)}if(!x.spanGaps){let W=[];W.push(...Zu(p,f,b,v,D,R,e)),O.gaps=W=x.gaps(u,M,b,v,W),O.clip=dl(W,a.ori,n,i,h,m)}return N!=0&&(O.band=N==2?[Gr(u,M,b,v,A,-1),Gr(u,M,b,v,A,1)]:Gr(u,M,b,v,A,N)),O})}function S_(l){return x_(C_,l)}function C_(l,c,e,u,M,b){const v=l.length;if(v<2)return null;const x=new Path2D;if(e(x,l[0],c[0]),v==2)u(x,l[1],c[1]);else{let p=Array(v),f=Array(v-1),a=Array(v-1),s=Array(v-1);for(let o=0;o<v-1;o++)a[o]=c[o+1]-c[o],s[o]=l[o+1]-l[o],f[o]=a[o]/s[o];p[0]=f[0];for(let o=1;o<v-1;o++)f[o]===0||f[o-1]===0||f[o-1]>0!=f[o]>0?p[o]=0:(p[o]=3*(s[o-1]+s[o])/((2*s[o]+s[o-1])/f[o-1]+(s[o]+2*s[o-1])/f[o]),isFinite(p[o])||(p[o]=0));p[v-1]=f[v-2];for(let o=0;o<v-1;o++)M(x,l[o]+s[o]/3,c[o]+p[o]*s[o]/3,l[o+1]-s[o]/3,c[o+1]-p[o+1]*s[o]/3,l[o+1],c[o+1])}return x}const Mu=new Set;function fp(){for(let l of Mu)l.syncRect(!0)}bs&&(zo(ik,fs,fp),zo(rk,fs,fp,!0),zo(Za,fs,()=>{ni.pxRatio=Bt}));const k_=fm(),__=hm();function pp(l,c,e,u){return(u?[l[0],l[1]].concat(l.slice(2)):[l[0]].concat(l.slice(1))).map((b,v)=>$u(b,v,c,e))}function A_(l,c){return l.map((e,u)=>u==0?{}:kn({},c,e))}function $u(l,c,e,u){return kn({},c==0?e:u,l)}function pm(l,c,e){return c==null?ms:[c,e]}const M_=pm;function $_(l,c,e){return c==null?ms:Ja(c,e,Uu,!0)}function gm(l,c,e,u){return c==null?ms:cl(c,e,l.scales[u].log,!1)}const T_=gm;function mm(l,c,e,u){return c==null?ms:zu(c,e,l.scales[u].log,!1)}const L_=mm;function E_(l,c,e,u,M){let b=li(Kf(l),Kf(c)),v=c-l,x=hr(M/u*v,e);do{let p=e[x],f=u*p/v;if(f>=M&&b+(p<5?ho.get(p):0)<=17)return[p,f]}while(++x<e.length);return[0,0]}function gp(l){let c,e;return l=l.replace(/(\d+)px/,(u,M)=>(c=Nn((e=+M)*Bt))+"px"),[l,c,e]}function R_(l){l.show&&[l.font,l.labelFont].forEach(c=>{let e=Qt(c[2]*Bt,1);c[0]=c[0].replace(/[0-9.]+px/,e+"px"),c[1]=e})}function ni(l,c,e){const u={mode:Ft(l.mode,1)},M=u.mode;function b(j,Z,ie,oe){let pe=Z.valToPct(j);return oe+ie*(Z.dir==-1?1-pe:pe)}function v(j,Z,ie,oe){let pe=Z.valToPct(j);return oe+ie*(Z.dir==-1?pe:1-pe)}function x(j,Z,ie,oe){return Z.ori==0?b(j,Z,ie,oe):v(j,Z,ie,oe)}u.valToPosH=b,u.valToPosV=v;let p=!1;u.status=0;const f=u.root=Gi(BC);if(l.id!=null&&(f.id=l.id),Ri(f,l.class),l.title){let j=Gi(zC,f);j.textContent=l.title}const a=cr("canvas"),s=u.ctx=a.getContext("2d"),o=Gi(UC,f);zo("click",o,j=>{j.target===n&&(et!=Di||$t!=br)&&dn.click(u,j)},!0);const r=u.under=Gi(VC,o);o.appendChild(a);const n=u.over=Gi(jC,o);l=vs(l);const i=+Ft(l.pxAlign,1),h=hp(i);(l.plugins||[]).forEach(j=>{j.opts&&(l=j.opts(u,l)||l)});const m=l.ms||.001,y=u.series=M==1?pp(l.series||[],rp,cp,!1):A_(l.series||[null],lp),R=u.axes=pp(l.axes||[],ip,sp,!0),T=u.scales={},k=u.bands=l.bands||[];k.forEach(j=>{j.fill=Lt(j.fill||null),j.dir=Ft(j.dir,-1)});const w=M==2?y[1].facets[0].scale:y[0].scale,I={axes:eo,series:xo},D=(l.drawOrder||["axes","series"]).map(j=>I[j]);function E(j){const Z=j.distr==3?ie=>Kr(ie>0?ie:j.clamp(u,ie,j.min,j.max,j.key)):j.distr==4?ie=>Lc(ie,j.asinh):j.distr==100?ie=>j.fwd(ie):ie=>ie;return ie=>{let oe=Z(ie),{_min:pe,_max:be}=j,$e=be-pe;return(oe-pe)/$e}}function L(j){let Z=T[j];if(Z==null){let ie=(l.scales||Ys)[j]||Ys;if(ie.from!=null){L(ie.from);let oe=kn({},T[ie.from],ie,{key:j});oe.valToPct=E(oe),T[j]=oe}else{Z=T[j]=kn({},j==w?rm:p_,ie),Z.key=j;let oe=Z.time,pe=Z.range,be=co(pe);if((j!=w||M==2&&!oe)&&(be&&(pe[0]==null||pe[1]==null)&&(pe={min:pe[0]==null?Uf:{mode:1,hard:pe[0],soft:pe[0]},max:pe[1]==null?Uf:{mode:1,hard:pe[1],soft:pe[1]}},be=!1),!be&&hl(pe))){let $e=pe;pe=(Ne,Fe,We)=>Fe==null?ms:Ja(Fe,We,$e)}Z.range=Lt(pe||(oe?M_:j==w?Z.distr==3?T_:Z.distr==4?L_:pm:Z.distr==3?gm:Z.distr==4?mm:$_)),Z.auto=Lt(be?!1:Z.auto),Z.clamp=Lt(Z.clamp||f_),Z._min=Z._max=null,Z.valToPct=E(Z)}}}L("x"),L("y"),M==1&&y.forEach(j=>{L(j.scale)}),R.forEach(j=>{L(j.scale)});for(let j in l.scales)L(j);const z=T[w],F=z.distr;let O,A;z.ori==0?(Ri(f,WC),O=b,A=v):(Ri(f,HC),O=v,A=b);const S={};for(let j in T){let Z=T[j];(Z.min!=null||Z.max!=null)&&(S[j]={min:Z.min,max:Z.max},Z.min=Z.max=null)}const N=l.tzDate||(j=>new Date(Nn(j/m))),W=l.fmtDate||Ku,V=m==1?Wk(N):Uk(N),G=ep(N,Xf(m==1?Bk:zk,W)),Q=np(N,tp(jk,W)),te=[],le=u.legend=kn({},qk,l.legend),ne=u.cursor=kn({},e_,{drag:{y:M==2}},l.cursor),ue=le.show,he=ne.show,ce=le.markers;le.idxs=te,ce.width=Lt(ce.width),ce.dash=Lt(ce.dash),ce.stroke=Lt(ce.stroke),ce.fill=Lt(ce.fill);let me,_e,Ae,Me=[],Ye=[],Ve,it=!1,lt={};if(le.live){const j=y[1]?y[1].values:null;it=j!=null,Ve=it?j(u,1,0):{_:0};for(let Z in Ve)lt[Z]=Wu}if(ue)if(me=cr("table",ZC,f),Ae=cr("tbody",null,me),le.mount(u,me),it){_e=cr("thead",null,me,Ae);let j=cr("tr",null,_e);cr("th",null,j);for(var nt in Ve)cr("th",Lf,j).textContent=nt}else Ri(me,XC),le.live&&Ri(me,JC);const Ot={show:!0},bi={show:!1};function kt(j,Z){if(Z==0&&(it||!le.live||M==2))return ms;let ie=[],oe=cr("tr",ek,Ae,Ae.childNodes[Z]);Ri(oe,j.class),j.show||Ri(oe,Bo);let pe=cr("th",null,oe);if(ce.show){let Ne=Gi(tk,pe);if(Z>0){let Fe=ce.width(u,Z);Fe&&(Ne.style.border=Fe+"px "+ce.dash(u,Z)+" "+ce.stroke(u,Z)),Ne.style.background=ce.fill(u,Z)}}let be=Gi(Lf,pe);j.label instanceof HTMLElement?be.appendChild(j.label):be.textContent=j.label,Z>0&&(ce.show||(be.style.color=j.width>0?ce.stroke(u,Z):ce.fill(u,Z)),_n("click",pe,Ne=>{if(ne._lock)return;Zi(Ne);let Fe=y.indexOf(j);if((Ne.ctrlKey||Ne.metaKey)!=le.isolate){let We=y.some((ze,qe)=>qe>0&&qe!=Fe&&ze.show);y.forEach((ze,qe)=>{qe>0&&Sn(qe,We?qe==Fe?Ot:bi:Ot,!0,gt.setSeries)})}else Sn(Fe,{show:!j.show},!0,gt.setSeries)},!1),Ci&&_n(Of,pe,Ne=>{ne._lock||(Zi(Ne),Sn(y.indexOf(j),Bi,!0,gt.setSeries))},!1));for(var $e in Ve){let Ne=cr("td",nk,oe);Ne.textContent="--",ie.push(Ne)}return[oe,ie]}const ci=new Map;function _n(j,Z,ie,oe=!0){const pe=ci.get(Z)||{},be=ne.bind[j](u,Z,ie,oe);be&&(zo(j,Z,pe[j]=be),ci.set(Z,pe))}function ui(j,Z,ie){const oe=ci.get(Z)||{};for(let pe in oe)(j==null||pe==j)&&(Su(pe,Z,oe[pe]),delete oe[pe]);j==null&&ci.delete(Z)}let tn=0,Kn=0,ht=0,je=0,Et=0,sn=0,An=Et,Pn=sn,Gn=ht,an=je,Mn=0,Bn=0,jt=0,$n=0;u.bbox={};let Ar=!1,Yi=!1,xi=!1,Qi=!1,Mr=!1,qn=!1;function $r(j,Z,ie){(ie||j!=u.width||Z!=u.height)&&Tr(j,Z),nr(!1),xi=!0,Yi=!0,wr()}function Tr(j,Z){u.width=tn=ht=j,u.height=Kn=je=Z,Et=sn=0,Ko(),fo();let ie=u.bbox;Mn=ie.left=Fo(Et*Bt,.5),Bn=ie.top=Fo(sn*Bt,.5),jt=ie.width=Fo(ht*Bt,.5),$n=ie.height=Fo(je*Bt,.5)}const Cs=3;function Si(){let j=!1,Z=0;for(;!j;){Z++;let ie=Zo(Z),oe=Jo(Z);j=Z==Cs||ie&&oe,j||(Tr(u.width,u.height),Yi=!0)}}function ks({width:j,height:Z}){$r(j,Z)}u.setSize=ks;function Ko(){let j=!1,Z=!1,ie=!1,oe=!1;R.forEach((pe,be)=>{if(pe.show&&pe._show){let{side:$e,_size:Ne}=pe,Fe=$e%2,We=pe.label!=null?pe.labelSize:0,ze=Ne+We;ze>0&&(Fe?(ht-=ze,$e==3?(Et+=ze,oe=!0):ie=!0):(je-=ze,$e==0?(sn+=ze,j=!0):Z=!0))}}),Xi[0]=j,Xi[1]=ie,Xi[2]=Z,Xi[3]=oe,ht-=Yn[1]+Yn[3],Et+=Yn[3],je-=Yn[2]+Yn[0],sn+=Yn[0]}function fo(){let j=Et+ht,Z=sn+je,ie=Et,oe=sn;function pe(be,$e){switch(be){case 1:return j+=$e,j-$e;case 2:return Z+=$e,Z-$e;case 3:return ie-=$e,ie+$e;case 0:return oe-=$e,oe+$e}}R.forEach((be,$e)=>{if(be.show&&be._show){let Ne=be.side;be._pos=pe(Ne,be._size),be.label!=null&&(be._lpos=pe(Ne,be.labelSize))}})}if(ne.dataIdx==null){let j=ne.hover,Z=j.skip=new Set(j.skip??[]);Z.add(void 0);let ie=j.prox=Lt(j.prox),oe=j.bias??=0;ne.dataIdx=(pe,be,$e,Ne)=>{if(be==0)return $e;let Fe=$e,We=ie(pe,be,$e,Ne)??Yt,ze=We>=0&&We<Yt,qe=z.ori==0?ht:je,pt=ne.left,Nt=c[0],xt=c[be];if(Z.has(xt[$e])){Fe=null;let ut=null,rt=null,Je;if(oe==0||oe==-1)for(Je=$e;ut==null&&Je-- >0;)Z.has(xt[Je])||(ut=Je);if(oe==0||oe==1)for(Je=$e;rt==null&&Je++<xt.length;)Z.has(xt[Je])||(rt=Je);if(ut!=null||rt!=null)if(ze){let qt=ut==null?-1/0:O(Nt[ut],z,qe,0),on=rt==null?1/0:O(Nt[rt],z,qe,0),Cn=pt-qt,Ht=on-pt;Cn<=Ht?Cn<=We&&(Fe=ut):Ht<=We&&(Fe=rt)}else Fe=rt==null?ut:ut==null?rt:$e-ut<=rt-$e?ut:rt}else ze&&Dn(pt-O(Nt[$e],z,qe,0))>We&&(Fe=null);return Fe}}const Zi=j=>{ne.event=j};ne.idxs=te,ne._lock=!1;let mn=ne.points;mn.show=Lt(mn.show),mn.size=Lt(mn.size),mn.stroke=Lt(mn.stroke),mn.width=Lt(mn.width),mn.fill=Lt(mn.fill);const hi=u.focus=kn({},l.focus||{alpha:.3},ne.focus),Ci=hi.prox>=0,vn=Ci&&mn.one;let Wn=[],pr=[],Ji=[];function po(j,Z){let ie=mn.show(u,Z);if(ie instanceof HTMLElement)return Ri(ie,QC),Ri(ie,j.class),_r(ie,-10,-10,ht,je),n.insertBefore(ie,Wn[Z]),ie}function Go(j,Z){if(M==1||Z>0){let ie=M==1&&T[j.scale].time,oe=j.value;j.value=ie?Yf(oe)?np(N,tp(oe,W)):oe||Q:oe||u_,j.label=j.label||(ie?n_:t_)}if(vn||Z>0){j.width=j.width==null?1:j.width,j.paths=j.paths||k_||pk,j.fillTo=Lt(j.fillTo||g_),j.pxAlign=+Ft(j.pxAlign,i),j.pxRound=hp(j.pxAlign),j.stroke=Lt(j.stroke||null),j.fill=Lt(j.fill||null),j._stroke=j._fill=j._paths=j._focus=null;let ie=h_(li(1,j.width),1),oe=j.points=kn({},{size:ie,width:li(1,ie*.2),stroke:j.stroke,space:ie*2,paths:__,_stroke:null,_fill:null},j.points);oe.show=Lt(oe.show),oe.filter=Lt(oe.filter),oe.fill=Lt(oe.fill),oe.stroke=Lt(oe.stroke),oe.paths=Lt(oe.paths),oe.pxAlign=j.pxAlign}if(ue){let ie=kt(j,Z);Me.splice(Z,0,ie[0]),Ye.splice(Z,0,ie[1]),le.values.push(null)}if(he){te.splice(Z,0,null);let ie=null;vn?Z==0&&(ie=po(j,Z)):Z>0&&(ie=po(j,Z)),Wn.splice(Z,0,ie),pr.splice(Z,0,0),Ji.splice(Z,0,0)}Ke("addSeries",Z)}function _s(j,Z){Z=Z??y.length,j=M==1?$u(j,Z,rp,cp):$u(j,Z,{},lp),y.splice(Z,0,j),Go(y[Z],Z)}u.addSeries=_s;function qo(j){if(y.splice(j,1),ue){le.values.splice(j,1),Ye.splice(j,1);let Z=Me.splice(j,1)[0];ui(null,Z.firstChild),Z.remove()}he&&(te.splice(j,1),Wn.splice(j,1)[0].remove(),pr.splice(j,1),Ji.splice(j,1)),Ke("delSeries",j)}u.delSeries=qo;const Xi=[!1,!1,!1,!1];function Ni(j,Z){if(j._show=j.show,j.show){let ie=j.side%2,oe=T[j.scale];oe==null&&(j.scale=ie?y[1].scale:w,oe=T[j.scale]);let pe=oe.time;j.size=Lt(j.size),j.space=Lt(j.space),j.rotate=Lt(j.rotate),co(j.incrs)&&j.incrs.forEach($e=>{!ho.has($e)&&ho.set($e,Bg($e))}),j.incrs=Lt(j.incrs||(oe.distr==2?Dk:pe?m==1?Pk:Hk:Po)),j.splits=Lt(j.splits||(pe&&oe.distr==1?V:oe.distr==3?ku:oe.distr==4?o_:r_)),j.stroke=Lt(j.stroke),j.grid.stroke=Lt(j.grid.stroke),j.ticks.stroke=Lt(j.ticks.stroke),j.border.stroke=Lt(j.border.stroke);let be=j.values;j.values=co(be)&&!co(be[0])?Lt(be):pe?co(be)?ep(N,Xf(be,W)):Yf(be)?Vk(N,be):be||G:be||i_,j.filter=Lt(j.filter||(oe.distr>=3&&oe.log==10?l_:oe.distr==3&&oe.log==2?c_:Fg)),j.font=gp(j.font),j.labelFont=gp(j.labelFont),j._size=j.size(u,null,Z,0),j._space=j._rotate=j._incrs=j._found=j._splits=j._values=null,j._size>0&&(Xi[Z]=!0,j._el=Gi(KC,o))}}function _t(j,Z,ie,oe){let[pe,be,$e,Ne]=ie,Fe=Z%2,We=0;return Fe==0&&(Ne||be)&&(We=Z==0&&!pe||Z==2&&!$e?Nn(ip.size/3):0),Fe==1&&(pe||$e)&&(We=Z==1&&!be||Z==3&&!Ne?Nn(sp.size/2):0),We}const Yo=u.padding=(l.padding||[_t,_t,_t,_t]).map(j=>Lt(Ft(j,_t))),Yn=u._padding=Yo.map((j,Z)=>j(u,Z,Xi,0));let yn,Zt=null,hn=null;const Lr=M==1?y[0].idxs:null;let Tn=null,Er=!1;function er(j,Z){if(c=j??[],u.data=u._data=c,M==2){yn=0;for(let ie=1;ie<y.length;ie++)yn+=c[ie][0].length}else{c.length==0&&(u.data=u._data=c=[[]]),Tn=c[0],yn=Tn.length;let ie=c;if(F==2){ie=c.slice();let oe=ie[0]=Array(yn);for(let pe=0;pe<yn;pe++)oe[pe]=pe}u._data=c=ie}if(nr(!0),Ke("setData"),F==2&&(xi=!0),Z!==!1){let ie=z;ie.auto(u,Er)?go():Zn(w,ie.min,ie.max),Qi=Qi||ne.left>=0,qn=!0,wr()}}u.setData=er;function go(){Er=!0;let j,Z;M==1&&(yn>0?(Zt=Lr[0]=0,hn=Lr[1]=yn-1,j=c[0][Zt],Z=c[0][hn],F==2?(j=Zt,Z=hn):j==Z&&(F==3?[j,Z]=cl(j,j,z.log,!1):F==4?[j,Z]=zu(j,j,z.log,!1):z.time?Z=j+Nn(86400/m):[j,Z]=Ja(j,Z,Uu,!0))):(Zt=Lr[0]=j=null,hn=Lr[1]=Z=null)),Zn(w,j,Z)}let gr,ki,Rr,qr,ii,Yr,mo,vo,yo,Ln;function wo(j,Z,ie,oe,pe,be){j??=Rf,ie??=ju,oe??="butt",pe??=Rf,be??="round",j!=gr&&(s.strokeStyle=gr=j),pe!=ki&&(s.fillStyle=ki=pe),Z!=Rr&&(s.lineWidth=Rr=Z),be!=ii&&(s.lineJoin=ii=be),oe!=Yr&&(s.lineCap=Yr=oe),ie!=qr&&s.setLineDash(qr=ie)}function Qr(j,Z,ie,oe){Z!=ki&&(s.fillStyle=ki=Z),j!=mo&&(s.font=mo=j),ie!=vo&&(s.textAlign=vo=ie),oe!=yo&&(s.textBaseline=yo=oe)}function mr(j,Z,ie,oe,pe=0){if(oe.length>0&&j.auto(u,Er)&&(Z==null||Z.min==null)){let be=Ft(Zt,0),$e=Ft(hn,oe.length-1),Ne=ie.min==null?lk(oe,be,$e,pe,j.distr==3):[ie.min,ie.max];j.min=dr(j.min,ie.min=Ne[0]),j.max=li(j.max,ie.max=Ne[1])}}const bo={min:null,max:null};function Zr(){for(let oe in T){let pe=T[oe];S[oe]==null&&(pe.min==null||S[w]!=null&&pe.auto(u,Er))&&(S[oe]=bo)}for(let oe in T){let pe=T[oe];S[oe]==null&&pe.from!=null&&S[pe.from]!=null&&(S[oe]=bo)}S[w]!=null&&nr(!0);let j={};for(let oe in S){let pe=S[oe];if(pe!=null){let be=j[oe]=vs(T[oe],vk);if(pe.min!=null)kn(be,pe);else if(oe!=w||M==2)if(yn==0&&be.from==null){let $e=be.range(u,null,null,oe);be.min=$e[0],be.max=$e[1]}else be.min=Yt,be.max=-Yt}}if(yn>0){y.forEach((oe,pe)=>{if(M==1){let be=oe.scale,$e=S[be];if($e==null)return;let Ne=j[be];if(pe==0){let Fe=Ne.range(u,Ne.min,Ne.max,be);Ne.min=Fe[0],Ne.max=Fe[1],Zt=hr(Ne.min,c[0]),hn=hr(Ne.max,c[0]),hn-Zt>1&&(c[0][Zt]<Ne.min&&Zt++,c[0][hn]>Ne.max&&hn--),oe.min=Tn[Zt],oe.max=Tn[hn]}else oe.show&&oe.auto&&mr(Ne,$e,oe,c[pe],oe.sorted);oe.idxs[0]=Zt,oe.idxs[1]=hn}else if(pe>0&&oe.show&&oe.auto){let[be,$e]=oe.facets,Ne=be.scale,Fe=$e.scale,[We,ze]=c[pe],qe=j[Ne],pt=j[Fe];qe!=null&&mr(qe,S[Ne],be,We,be.sorted),pt!=null&&mr(pt,S[Fe],$e,ze,$e.sorted),oe.min=$e.min,oe.max=$e.max}});for(let oe in j){let pe=j[oe],be=S[oe];if(pe.from==null&&(be==null||be.min==null)){let $e=pe.range(u,pe.min==Yt?null:pe.min,pe.max==-Yt?null:pe.max,oe);pe.min=$e[0],pe.max=$e[1]}}}for(let oe in j){let pe=j[oe];if(pe.from!=null){let be=j[pe.from];if(be.min==null)pe.min=pe.max=null;else{let $e=pe.range(u,be.min,be.max,oe);pe.min=$e[0],pe.max=$e[1]}}}let Z={},ie=!1;for(let oe in j){let pe=j[oe],be=T[oe];if(be.min!=pe.min||be.max!=pe.max){be.min=pe.min,be.max=pe.max;let $e=be.distr;be._min=$e==3?Kr(be.min):$e==4?Lc(be.min,be.asinh):$e==100?be.fwd(be.min):be.min,be._max=$e==3?Kr(be.max):$e==4?Lc(be.max,be.asinh):$e==100?be.fwd(be.max):be.max,Z[oe]=ie=!0}}if(ie){y.forEach((oe,pe)=>{M==2?pe>0&&Z.y&&(oe._paths=null):Z[oe.scale]&&(oe._paths=null)});for(let oe in Z)xi=!0,Ke("setScale",oe);he&&ne.left>=0&&(Qi=qn=!0)}for(let oe in S)S[oe]=null}function Ir(j){let Z=Cu(Zt-1,0,yn-1),ie=Cu(hn+1,0,yn-1);for(;j[Z]==null&&Z>0;)Z--;for(;j[ie]==null&&ie<yn-1;)ie++;return[Z,ie]}function xo(){if(yn>0){let j=y.some(Z=>Z._focus)&&Ln!=hi.alpha;j&&(s.globalAlpha=Ln=hi.alpha),y.forEach((Z,ie)=>{if(ie>0&&Z.show&&(So(ie,!1),So(ie,!0),Z._paths==null)){let oe=Ln;Ln!=Z.alpha&&(s.globalAlpha=Ln=Z.alpha);let pe=M==2?[0,c[ie][0].length-1]:Ir(c[ie]);Z._paths=Z.paths(u,ie,pe[0],pe[1]),Ln!=oe&&(s.globalAlpha=Ln=oe)}}),y.forEach((Z,ie)=>{if(ie>0&&Z.show){let oe=Ln;Ln!=Z.alpha&&(s.globalAlpha=Ln=Z.alpha),Z._paths!=null&&Jr(ie,!1);{let pe=Z._paths!=null?Z._paths.gaps:null,be=Z.points.show(u,ie,Zt,hn,pe),$e=Z.points.filter(u,ie,be,pe);(be||$e)&&(Z.points._paths=Z.points.paths(u,ie,Zt,hn,$e),Jr(ie,!0))}Ln!=oe&&(s.globalAlpha=Ln=oe),Ke("drawSeries",ie)}}),j&&(s.globalAlpha=Ln=1)}}function So(j,Z){let ie=Z?y[j].points:y[j];ie._stroke=ie.stroke(u,j),ie._fill=ie.fill(u,j)}function Jr(j,Z){let ie=Z?y[j].points:y[j],{stroke:oe,fill:pe,clip:be,flags:$e,_stroke:Ne=ie._stroke,_fill:Fe=ie._fill,_width:We=ie.width}=ie._paths;We=Qt(We*Bt,3);let ze=null,qe=We%2/2;Z&&Fe==null&&(Fe=We>0?"#fff":Ne);let pt=ie.pxAlign==1&&qe>0;if(pt&&s.translate(qe,qe),!Z){let Nt=Mn-We/2,xt=Bn-We/2,ut=jt+We,rt=$n+We;ze=new Path2D,ze.rect(Nt,xt,ut,rt)}Z?Xr(Ne,We,ie.dash,ie.cap,Fe,oe,pe,$e,be):Qo(j,Ne,We,ie.dash,ie.cap,Fe,oe,pe,$e,ze,be),pt&&s.translate(-qe,-qe)}function Qo(j,Z,ie,oe,pe,be,$e,Ne,Fe,We,ze){let qe=!1;Fe!=0&&k.forEach((pt,Nt)=>{if(pt.series[0]==j){let xt=y[pt.series[1]],ut=c[pt.series[1]],rt=(xt._paths||Ys).band;co(rt)&&(rt=pt.dir==1?rt[0]:rt[1]);let Je,qt=null;xt.show&&rt&&uk(ut,Zt,hn)?(qt=pt.fill(u,Nt)||be,Je=xt._paths.clip):rt=null,Xr(Z,ie,oe,pe,qt,$e,Ne,Fe,We,ze,Je,rt),qe=!0}}),qe||Xr(Z,ie,oe,pe,be,$e,Ne,Fe,We,ze)}const vr=ys|Au;function Xr(j,Z,ie,oe,pe,be,$e,Ne,Fe,We,ze,qe){wo(j,Z,ie,oe,pe),(Fe||We||qe)&&(s.save(),Fe&&s.clip(Fe),We&&s.clip(We)),qe?(Ne&vr)==vr?(s.clip(qe),ze&&s.clip(ze),En(pe,$e),tr(j,be,Z)):Ne&Au?(En(pe,$e),s.clip(qe),tr(j,be,Z)):Ne&ys&&(s.save(),s.clip(qe),ze&&s.clip(ze),En(pe,$e),s.restore(),tr(j,be,Z)):(En(pe,$e),tr(j,be,Z)),(Fe||We||qe)&&s.restore()}function tr(j,Z,ie){ie>0&&(Z instanceof Map?Z.forEach((oe,pe)=>{s.strokeStyle=gr=pe,s.stroke(oe)}):Z!=null&&j&&s.stroke(Z))}function En(j,Z){Z instanceof Map?Z.forEach((ie,oe)=>{s.fillStyle=ki=oe,s.fill(ie)}):Z!=null&&j&&s.fill(Z)}function Co(j,Z,ie,oe){let pe=R[j],be;if(oe<=0)be=[0,0];else{let $e=pe._space=pe.space(u,j,Z,ie,oe),Ne=pe._incrs=pe.incrs(u,j,Z,ie,oe,$e);be=E_(Z,ie,Ne,oe,$e)}return pe._found=be}function ri(j,Z,ie,oe,pe,be,$e,Ne,Fe,We){let ze=$e%2/2;i==1&&s.translate(ze,ze),wo(Ne,$e,Fe,We,Ne),s.beginPath();let qe,pt,Nt,xt,ut=pe+(oe==0||oe==3?-be:be);ie==0?(pt=pe,xt=ut):(qe=pe,Nt=ut);for(let rt=0;rt<j.length;rt++)Z[rt]!=null&&(ie==0?qe=Nt=j[rt]:pt=xt=j[rt],s.moveTo(qe,pt),s.lineTo(Nt,xt));s.stroke(),i==1&&s.translate(-ze,-ze)}function Zo(j){let Z=!0;return R.forEach((ie,oe)=>{if(!ie.show)return;let pe=T[ie.scale];if(pe.min==null){ie._show&&(Z=!1,ie._show=!1,nr(!1));return}else ie._show||(Z=!1,ie._show=!0,nr(!1));let be=ie.side,$e=be%2,{min:Ne,max:Fe}=pe,[We,ze]=Co(oe,Ne,Fe,$e==0?ht:je);if(ze==0)return;let qe=pe.distr==2,pt=ie._splits=ie.splits(u,oe,Ne,Fe,We,ze,qe),Nt=pe.distr==2?pt.map(Je=>Tn[Je]):pt,xt=pe.distr==2?Tn[pt[1]]-Tn[pt[0]]:We,ut=ie._values=ie.values(u,ie.filter(u,Nt,oe,ze,xt),oe,ze,xt);ie._rotate=be==2?ie.rotate(u,ut,oe,ze):0;let rt=ie._size;ie._size=qi(ie.size(u,ut,oe,j)),rt!=null&&ie._size!=rt&&(Z=!1)}),Z}function Jo(j){let Z=!0;return Yo.forEach((ie,oe)=>{let pe=ie(u,oe,Xi,j);pe!=Yn[oe]&&(Z=!1),Yn[oe]=pe}),Z}function eo(){for(let j=0;j<R.length;j++){let Z=R[j];if(!Z.show||!Z._show)continue;let ie=Z.side,oe=ie%2,pe,be,$e=Z.stroke(u,j),Ne=ie==0||ie==3?-1:1,[Fe,We]=Z._found;if(Z.label!=null){let Un=Z.labelGap*Ne,Xt=Nn((Z._lpos+Un)*Bt);Qr(Z.labelFont[0],$e,"center",ie==2?Hs:Ef),s.save(),oe==1?(pe=be=0,s.translate(Xt,Nn(Bn+$n/2)),s.rotate((ie==3?-Ya:Ya)/2)):(pe=Nn(Mn+jt/2),be=Xt);let Wi=Ng(Z.label)?Z.label(u,j,Fe,We):Z.label;s.fillText(Wi,pe,be),s.restore()}if(We==0)continue;let ze=T[Z.scale],qe=oe==0?jt:$n,pt=oe==0?Mn:Bn,Nt=Z._splits,xt=ze.distr==2?Nt.map(Un=>Tn[Un]):Nt,ut=ze.distr==2?Tn[Nt[1]]-Tn[Nt[0]]:Fe,rt=Z.ticks,Je=Z.border,qt=rt.show?rt.size:0,on=Nn(qt*Bt),Cn=Nn((Z.alignTo==2?Z._size-qt-Z.gap:Z.gap)*Bt),Ht=Z._rotate*-Ya/180,Kt=h(Z._pos*Bt),ge=(on+Cn)*Ne,ke=Kt+ge;be=oe==0?ke:0,pe=oe==1?ke:0;let Se=Z.font[0],He=Z.align==1?hs:Z.align==2?Mc:Ht>0?hs:Ht<0?Mc:oe==0?"center":ie==3?Mc:hs,tt=Ht||oe==1?"middle":ie==2?Hs:Ef;Qr(Se,$e,He,tt);let mt=Z.font[1]*Z.lineGap,Dt=Nt.map(Un=>h(x(Un,ze,qe,pt))),St=Z._values;for(let Un=0;Un<St.length;Un++){let Xt=St[Un];if(Xt!=null){oe==0?pe=Dt[Un]:be=Dt[Un],Xt=""+Xt;let Wi=Xt.indexOf(`
1484
+ `)==-1?[Xt]:Xt.split(/\n/gm);for(let Vn=0;Vn<Wi.length;Vn++){let Fr=Wi[Vn];Ht?(s.save(),s.translate(pe,be+Vn*mt),s.rotate(Ht),s.fillText(Fr,0,0),s.restore()):s.fillText(Fr,pe,be+Vn*mt)}}}rt.show&&ri(Dt,rt.filter(u,xt,j,We,ut),oe,ie,Kt,on,Qt(rt.width*Bt,3),rt.stroke(u,j),rt.dash,rt.cap);let fi=Z.grid;fi.show&&ri(Dt,fi.filter(u,xt,j,We,ut),oe,oe==0?2:1,oe==0?Bn:Mn,oe==0?$n:jt,Qt(fi.width*Bt,3),fi.stroke(u,j),fi.dash,fi.cap),Je.show&&ri([Kt],[1],oe==0?1:0,oe==0?1:2,oe==1?Bn:Mn,oe==1?$n:jt,Qt(Je.width*Bt,3),Je.stroke(u,j),Je.dash,Je.cap)}Ke("drawAxes")}function nr(j){y.forEach((Z,ie)=>{ie>0&&(Z._paths=null,j&&(M==1?(Z.min=null,Z.max=null):Z.facets.forEach(oe=>{oe.min=null,oe.max=null})))})}let Or=!1,to=!1,yr=[];function Xo(){to=!1;for(let j=0;j<yr.length;j++)Ke(...yr[j]);yr.length=0}function wr(){Or||(kk(ko),Or=!0)}function De(j,Z=!1){Or=!0,to=Z,j(u),ko(),Z&&yr.length>0&&queueMicrotask(Xo)}u.batch=De;function ko(){if(Ar&&(Zr(),Ar=!1),xi&&(Si(),xi=!1),Yi){if(en(r,hs,Et),en(r,Hs,sn),en(r,js,ht),en(r,Ks,je),en(n,hs,Et),en(n,Hs,sn),en(n,js,ht),en(n,Ks,je),en(o,js,tn),en(o,Ks,Kn),a.width=Nn(tn*Bt),a.height=Nn(Kn*Bt),R.forEach(({_el:j,_show:Z,_size:ie,_pos:oe,side:pe})=>{if(j!=null)if(Z){let be=pe===3||pe===0?ie:0,$e=pe%2==1;en(j,$e?"left":"top",oe-be),en(j,$e?"width":"height",ie),en(j,$e?"top":"left",$e?sn:Et),en(j,$e?"height":"width",$e?je:ht),xu(j,Bo)}else Ri(j,Bo)}),gr=ki=Rr=ii=Yr=mo=vo=yo=qr=null,Ln=1,B(!0),Et!=An||sn!=Pn||ht!=Gn||je!=an){nr(!1);let j=ht/Gn,Z=je/an;if(he&&!Qi&&ne.left>=0){ne.left*=j,ne.top*=Z,ir&&_r(ir,Nn(ne.left),0,ht,je),cn&&_r(cn,0,Nn(ne.top),ht,je);for(let ie=0;ie<Wn.length;ie++){let oe=Wn[ie];oe!=null&&(pr[ie]*=j,Ji[ie]*=Z,_r(oe,qi(pr[ie]),qi(Ji[ie]),ht,je))}}if(ft.show&&!Mr&&ft.left>=0&&ft.width>0){ft.left*=j,ft.width*=j,ft.top*=Z,ft.height*=Z;for(let ie in Y)en(Qn,ie,ft[ie])}An=Et,Pn=sn,Gn=ht,an=je}Ke("setSize"),Yi=!1}tn>0&&Kn>0&&(s.clearRect(0,0,a.width,a.height),Ke("drawClear"),D.forEach(j=>j()),Ke("draw")),ft.show&&Mr&&(Pi(ft),Mr=!1),he&&Qi&&(C(null,!0,!1),Qi=!1),le.show&&le.live&&qn&&(g(),qn=!1),p||(p=!0,u.status=1,Ke("ready")),Er=!1,Or=!1}u.redraw=(j,Z)=>{xi=Z||!1,j!==!1?Zn(w,z.min,z.max):wr()};function Ie(j,Z){let ie=T[j];if(ie.from==null){if(yn==0){let oe=ie.range(u,Z.min,Z.max,j);Z.min=oe[0],Z.max=oe[1]}if(Z.min>Z.max){let oe=Z.min;Z.min=Z.max,Z.max=oe}if(yn>1&&Z.min!=null&&Z.max!=null&&Z.max-Z.min<1e-16)return;j==w&&ie.distr==2&&yn>0&&(Z.min=hr(Z.min,c[0]),Z.max=hr(Z.max,c[0]),Z.min==Z.max&&Z.max++),S[j]=Z,Ar=!0,wr()}}u.setScale=Ie;let ln,Nr,ir,cn,es,Dr,Di,br,_o,Pt,et,$t,Fi=!1;const dn=ne.drag;let Pe=dn.x,Jt=dn.y;he&&(ne.x&&(ln=Gi(qC,n)),ne.y&&(Nr=Gi(YC,n)),z.ori==0?(ir=ln,cn=Nr):(ir=Nr,cn=ln),et=ne.left,$t=ne.top);const ft=u.select=kn({show:!0,over:!0,left:0,width:0,top:0,height:0},l.select),Qn=ft.show?Gi(GC,ft.over?n:r):null;function Pi(j,Z){if(ft.show){for(let ie in j)ft[ie]=j[ie],ie in Y&&en(Qn,ie,j[ie]);Z!==!1&&Ke("setSelect")}}u.setSelect=Pi;function bt(j){if(y[j].show)ue&&xu(Me[j],Bo);else if(ue&&Ri(Me[j],Bo),he){let ie=vn?Wn[0]:Wn[j];ie!=null&&_r(ie,-10,-10,ht,je)}}function Zn(j,Z,ie){Ie(j,{min:Z,max:ie})}function Sn(j,Z,ie,oe){Z.focus!=null&&Ao(j),Z.show!=null&&y.forEach((pe,be)=>{be>0&&(j==be||j==null)&&(pe.show=Z.show,bt(be),M==2?(Zn(pe.facets[0].scale,null,null),Zn(pe.facets[1].scale,null,null)):Zn(pe.scale,null,null),wr())}),ie!==!1&&Ke("setSeries",j,Z),oe&&st("setSeries",u,j,Z)}u.setSeries=Sn;function rr(j,Z){kn(k[j],Z)}function _i(j,Z){j.fill=Lt(j.fill||null),j.dir=Ft(j.dir,-1),Z=Z??k.length,k.splice(Z,0,j)}function nn(j){j==null?k.length=0:k.splice(j,1)}u.addBand=_i,u.setBand=rr,u.delBand=nn;function no(j,Z){y[j].alpha=Z,he&&Wn[j]!=null&&(Wn[j].style.opacity=Z),ue&&Me[j]&&(Me[j].style.opacity=Z)}let fn,Ai,Mi;const Bi={focus:!0};function Ao(j){if(j!=Mi){let Z=j==null,ie=hi.alpha!=1;y.forEach((oe,pe)=>{if(M==1||pe>0){let be=Z||pe==0||pe==j;oe._focus=Z?null:be,ie&&no(pe,be?1:hi.alpha)}}),Mi=j,ie&&wr()}}ue&&Ci&&_n(Nf,me,j=>{ne._lock||(Zi(j),Mi!=null&&Sn(null,Bi,!0,gt.setSeries))});function Wt(j,Z,ie){let oe=T[Z];ie&&(j=j/Bt-(oe.ori==1?sn:Et));let pe=ht;oe.ori==1&&(pe=je,j=pe-j),oe.dir==-1&&(j=pe-j);let be=oe._min,$e=oe._max,Ne=j/pe,Fe=be+($e-be)*Ne,We=oe.distr;return We==3?gs(10,Fe):We==4?dk(Fe,oe.asinh):We==100?oe.bwd(Fe):Fe}function ts(j,Z){let ie=Wt(j,w,Z);return hr(ie,c[0],Zt,hn)}u.valToIdx=j=>hr(j,c[0]),u.posToIdx=ts,u.posToVal=Wt,u.valToPos=(j,Z,ie)=>T[Z].ori==0?b(j,T[Z],ie?jt:ht,ie?Mn:0):v(j,T[Z],ie?$n:je,ie?Bn:0),u.setCursor=(j,Z,ie)=>{et=j.left,$t=j.top,C(null,Z,ie)};function Rn(j,Z){en(Qn,hs,ft.left=j),en(Qn,js,ft.width=Z)}function Jn(j,Z){en(Qn,Hs,ft.top=j),en(Qn,Ks,ft.height=Z)}let xr=z.ori==0?Rn:Jn,zn=z.ori==1?Rn:Jn;function di(){if(ue&&le.live)for(let j=M==2?1:0;j<y.length;j++){if(j==0&&it)continue;let Z=le.values[j],ie=0;for(let oe in Z)Ye[j][ie++].firstChild.nodeValue=Z[oe]}}function g(j,Z){if(j!=null&&(j.idxs?j.idxs.forEach((ie,oe)=>{te[oe]=ie}):mk(j.idx)||te.fill(j.idx),le.idx=te[0]),ue&&le.live){for(let ie=0;ie<y.length;ie++)(ie>0||M==1&&!it)&&_(ie,te[ie]);di()}qn=!1,Z!==!1&&Ke("setLegend")}u.setLegend=g;function _(j,Z){let ie=y[j],oe=j==0&&F==2?Tn:c[j],pe;it?pe=ie.values(u,j,Z)??lt:(pe=ie.value(u,Z==null?null:oe[Z],j,Z),pe=pe==null?lt:{_:pe}),le.values[j]=pe}function C(j,Z,ie){_o=et,Pt=$t,[et,$t]=ne.move(u,et,$t),ne.left=et,ne.top=$t,he&&(ir&&_r(ir,Nn(et),0,ht,je),cn&&_r(cn,0,Nn($t),ht,je));let oe,pe=Zt>hn;fn=Yt,Ai=null;let be=z.ori==0?ht:je,$e=z.ori==1?ht:je;if(et<0||yn==0||pe){oe=ne.idx=null;for(let Ne=0;Ne<y.length;Ne++){let Fe=Wn[Ne];Fe!=null&&_r(Fe,-10,-10,ht,je)}Ci&&Sn(null,Bi,!0,j==null&&gt.setSeries),le.live&&(te.fill(oe),qn=!0)}else{let Ne,Fe,We;M==1&&(Ne=z.ori==0?et:$t,Fe=Wt(Ne,w),oe=ne.idx=hr(Fe,c[0],Zt,hn),We=O(c[0][oe],z,be,0));let ze=-10,qe=-10,pt=0,Nt=0,xt=!0,ut="",rt="";for(let Je=M==2?1:0;Je<y.length;Je++){let qt=y[Je],on=te[Je],Cn=on==null?null:M==1?c[Je][on]:c[Je][1][on],Ht=ne.dataIdx(u,Je,oe,Fe),Kt=Ht==null?null:M==1?c[Je][Ht]:c[Je][1][Ht];if(qn=qn||Kt!=Cn||Ht!=on,te[Je]=Ht,Je>0&&qt.show){let ge=Ht==null?-10:Ht==oe?We:O(M==1?c[0][Ht]:c[Je][0][Ht],z,be,0),ke=Kt==null?-10:A(Kt,M==1?T[qt.scale]:T[qt.facets[1].scale],$e,0);if(Ci&&Kt!=null){let Se=z.ori==1?et:$t,He=Dn(hi.dist(u,Je,Ht,ke,Se));if(He<fn){let tt=hi.bias;if(tt!=0){let mt=Wt(Se,qt.scale),Dt=Kt>=0?1:-1,St=mt>=0?1:-1;St==Dt&&(St==1?tt==1?Kt>=mt:Kt<=mt:tt==1?Kt<=mt:Kt>=mt)&&(fn=He,Ai=Je)}else fn=He,Ai=Je}}if(qn||vn){let Se,He;z.ori==0?(Se=ge,He=ke):(Se=ke,He=ge);let tt,mt,Dt,St,fi,Un,Xt=!0,Wi=mn.bbox;if(Wi!=null){Xt=!1;let Vn=Wi(u,Je);Dt=Vn.left,St=Vn.top,tt=Vn.width,mt=Vn.height}else Dt=Se,St=He,tt=mt=mn.size(u,Je);if(Un=mn.fill(u,Je),fi=mn.stroke(u,Je),vn)Je==Ai&&fn<=hi.prox&&(ze=Dt,qe=St,pt=tt,Nt=mt,xt=Xt,ut=Un,rt=fi);else{let Vn=Wn[Je];Vn!=null&&(pr[Je]=Dt,Ji[Je]=St,zf(Vn,tt,mt,Xt),Wf(Vn,Un,fi),_r(Vn,qi(Dt),qi(St),ht,je))}}}}if(vn){let Je=hi.prox,qt=Mi==null?fn<=Je:fn>Je||Ai!=Mi;if(qn||qt){let on=Wn[0];on!=null&&(pr[0]=ze,Ji[0]=qe,zf(on,pt,Nt,xt),Wf(on,ut,rt),_r(on,qi(ze),qi(qe),ht,je))}}}if(ft.show&&Fi)if(j!=null){let[Ne,Fe]=gt.scales,[We,ze]=gt.match,[qe,pt]=j.cursor.sync.scales,Nt=j.cursor.drag;if(Pe=Nt._x,Jt=Nt._y,Pe||Jt){let{left:xt,top:ut,width:rt,height:Je}=j.select,qt=j.scales[qe].ori,on=j.posToVal,Cn,Ht,Kt,ge,ke,Se=Ne!=null&&We(Ne,qe),He=Fe!=null&&ze(Fe,pt);Se&&Pe?(qt==0?(Cn=xt,Ht=rt):(Cn=ut,Ht=Je),Kt=T[Ne],ge=O(on(Cn,qe),Kt,be,0),ke=O(on(Cn+Ht,qe),Kt,be,0),xr(dr(ge,ke),Dn(ke-ge))):xr(0,be),He&&Jt?(qt==1?(Cn=xt,Ht=rt):(Cn=ut,Ht=Je),Kt=T[Fe],ge=A(on(Cn,pt),Kt,$e,0),ke=A(on(Cn+Ht,pt),Kt,$e,0),zn(dr(ge,ke),Dn(ke-ge))):zn(0,$e)}else J()}else{let Ne=Dn(_o-es),Fe=Dn(Pt-Dr);if(z.ori==1){let pt=Ne;Ne=Fe,Fe=pt}Pe=dn.x&&Ne>=dn.dist,Jt=dn.y&&Fe>=dn.dist;let We=dn.uni;We!=null?Pe&&Jt&&(Pe=Ne>=We,Jt=Fe>=We,!Pe&&!Jt&&(Fe>Ne?Jt=!0:Pe=!0)):dn.x&&dn.y&&(Pe||Jt)&&(Pe=Jt=!0);let ze,qe;Pe&&(z.ori==0?(ze=Di,qe=et):(ze=br,qe=$t),xr(dr(ze,qe),Dn(qe-ze)),Jt||zn(0,$e)),Jt&&(z.ori==1?(ze=Di,qe=et):(ze=br,qe=$t),zn(dr(ze,qe),Dn(qe-ze)),Pe||xr(0,be)),!Pe&&!Jt&&(xr(0,0),zn(0,0))}if(dn._x=Pe,dn._y=Jt,j==null){if(ie){if(It!=null){let[Ne,Fe]=gt.scales;gt.values[0]=Ne!=null?Wt(z.ori==0?et:$t,Ne):null,gt.values[1]=Fe!=null?Wt(z.ori==1?et:$t,Fe):null}st($c,u,et,$t,ht,je,oe)}if(Ci){let Ne=ie&&gt.setSeries,Fe=hi.prox;Mi==null?fn<=Fe&&Sn(Ai,Bi,!0,Ne):fn>Fe?Sn(null,Bi,!0,Ne):Ai!=Mi&&Sn(Ai,Bi,!0,Ne)}}qn&&(le.idx=oe,g()),Z!==!1&&Ke("setCursor")}let P=null;Object.defineProperty(u,"rect",{get(){return P==null&&B(!1),P}});function B(j=!1){j?P=null:(P=n.getBoundingClientRect(),Ke("syncRect",P))}function H(j,Z,ie,oe,pe,be,$e){ne._lock||Fi&&j!=null&&j.movementX==0&&j.movementY==0||(K(j,Z,ie,oe,pe,be,$e,!1,j!=null),j!=null?C(null,!0,!0):C(Z,!0,!1))}function K(j,Z,ie,oe,pe,be,$e,Ne,Fe){if(P==null&&B(!1),Zi(j),j!=null)ie=j.clientX-P.left,oe=j.clientY-P.top;else{if(ie<0||oe<0){et=-10,$t=-10;return}let[We,ze]=gt.scales,qe=Z.cursor.sync,[pt,Nt]=qe.values,[xt,ut]=qe.scales,[rt,Je]=gt.match,qt=Z.axes[0].side%2==1,on=z.ori==0?ht:je,Cn=z.ori==1?ht:je,Ht=qt?be:pe,Kt=qt?pe:be,ge=qt?oe:ie,ke=qt?ie:oe;if(xt!=null?ie=rt(We,xt)?x(pt,T[We],on,0):-10:ie=on*(ge/Ht),ut!=null?oe=Je(ze,ut)?x(Nt,T[ze],Cn,0):-10:oe=Cn*(ke/Kt),z.ori==1){let Se=ie;ie=oe,oe=Se}}Fe&&(Z==null||Z.cursor.event.type==$c)&&((ie<=1||ie>=ht-1)&&(ie=Fo(ie,ht)),(oe<=1||oe>=je-1)&&(oe=Fo(oe,je))),Ne?(es=ie,Dr=oe,[Di,br]=ne.move(u,ie,oe)):(et=ie,$t=oe)}const Y={width:0,height:0,left:0,top:0};function J(){Pi(Y,!1)}let re,se,ve,xe;function de(j,Z,ie,oe,pe,be,$e){Fi=!0,Pe=Jt=dn._x=dn._y=!1,K(j,Z,ie,oe,pe,be,$e,!0,!1),j!=null&&(_n(Tc,wu,we,!1),st(If,u,Di,br,ht,je,null));let{left:Ne,top:Fe,width:We,height:ze}=ft;re=Ne,se=Fe,ve=We,xe=ze}function we(j,Z,ie,oe,pe,be,$e){Fi=dn._x=dn._y=!1,K(j,Z,ie,oe,pe,be,$e,!1,!0);let{left:Ne,top:Fe,width:We,height:ze}=ft,qe=We>0||ze>0,pt=re!=Ne||se!=Fe||ve!=We||xe!=ze;if(qe&&pt&&Pi(ft),dn.setScale&&qe&&pt){let Nt=Ne,xt=We,ut=Fe,rt=ze;if(z.ori==1&&(Nt=Fe,xt=ze,ut=Ne,rt=We),Pe&&Zn(w,Wt(Nt,w),Wt(Nt+xt,w)),Jt)for(let Je in T){let qt=T[Je];Je!=w&&qt.from==null&&qt.min!=Yt&&Zn(Je,Wt(ut+rt,Je),Wt(ut,Je))}J()}else ne.lock&&(ne._lock=!ne._lock,C(Z,!0,j!=null));j!=null&&(ui(Tc,wu),st(Tc,u,et,$t,ht,je,null))}function Re(j,Z,ie,oe,pe,be,$e){if(ne._lock)return;Zi(j);let Ne=Fi;if(Fi){let Fe=!0,We=!0,ze=10,qe,pt;z.ori==0?(qe=Pe,pt=Jt):(qe=Jt,pt=Pe),qe&&pt&&(Fe=et<=ze||et>=ht-ze,We=$t<=ze||$t>=je-ze),qe&&Fe&&(et=et<Di?0:ht),pt&&We&&($t=$t<br?0:je),C(null,!0,!0),Fi=!1}et=-10,$t=-10,te.fill(null),C(null,!0,!0),Ne&&(Fi=Ne)}function Te(j,Z,ie,oe,pe,be,$e){ne._lock||(Zi(j),go(),J(),j!=null&&st(Df,u,et,$t,ht,je,null))}function Be(){R.forEach(R_),$r(u.width,u.height,!0)}zo(Za,fs,Be);const Xe={};Xe.mousedown=de,Xe.mousemove=H,Xe.mouseup=we,Xe.dblclick=Te,Xe.setSeries=(j,Z,ie,oe)=>{let pe=gt.match[2];ie=pe(u,Z,ie),ie!=-1&&Sn(ie,oe,!0,!1)},he&&(_n(If,n,de),_n($c,n,H),_n(Of,n,j=>{Zi(j),B(!1)}),_n(Nf,n,Re),_n(Df,n,Te),Mu.add(u),u.syncRect=B);const Qe=u.hooks=l.hooks||{};function Ke(j,Z,ie){to?yr.push([j,Z,ie]):j in Qe&&Qe[j].forEach(oe=>{oe.call(null,u,Z,ie)})}(l.plugins||[]).forEach(j=>{for(let Z in j.hooks)Qe[Z]=(Qe[Z]||[]).concat(j.hooks[Z])});const Gt=(j,Z,ie)=>ie,gt=kn({key:null,setSeries:!1,filters:{pub:Gf,sub:Gf},scales:[w,y[1]?y[1].scale:null],match:[qf,qf,Gt],values:[null,null]},ne.sync);gt.match.length==2&&gt.match.push(Gt),ne.sync=gt;const It=gt.key,At=om(It);function st(j,Z,ie,oe,pe,be,$e){gt.filters.pub(j,Z,ie,oe,pe,be,$e)&&At.pub(j,Z,ie,oe,pe,be,$e)}At.sub(u);function pn(j,Z,ie,oe,pe,be,$e){gt.filters.sub(j,Z,ie,oe,pe,be,$e)&&Xe[j](null,Z,ie,oe,pe,be,$e)}u.pub=pn;function In(){At.unsub(u),Mu.delete(u),ci.clear(),Su(Za,fs,Be),f.remove(),me?.remove(),Ke("destroy")}u.destroy=In;function rn(){Ke("init",l,c),er(c||l.data,!1),S[w]?Ie(w,S[w]):go(),Mr=ft.show&&(ft.width>0||ft.height>0),Qi=qn=!0,$r(l.width,l.height)}return y.forEach(Go),R.forEach(Ni),e?e instanceof HTMLElement?(e.appendChild(f),rn()):e(u,rn):rn(),u}ni.assign=kn;ni.fmtNum=Vu;ni.rangeNum=Ja;ni.rangeLog=cl;ni.rangeAsinh=zu;ni.orient=jo;ni.pxRatio=Bt;ni.join=Ck;ni.fmtDate=Ku,ni.tzDate=Ok;ni.sync=om;{ni.addGap=m_,ni.clipGaps=dl;let l=ni.paths={points:hm};l.linear=fm,l.stepped=w_,l.bars=b_,l.spline=S_}var Oc,mp;function I_(){return mp||(mp=1,Oc=function(l,c,e,u,M){var b,v;if(u===void 0)u=0;else if(u=u|0,u<0||u>=l.length)throw new RangeError("invalid lower bound");if(M===void 0)M=l.length-1;else if(M=M|0,M<u||M>=l.length)throw new RangeError("invalid upper bound");for(;u<=M;)if(b=u+(M-u>>>1),v=+e(l[b],c,b,l),v<0)u=b+1;else if(v>0)M=b-1;else return b;return~u}),Oc}var O_=I_();const N_=el(O_);var Nc,vp;function D_(){if(vp)return Nc;vp=1;function l(c,e,u){var M=-1,b=c.length;e<0&&(e=-e>b?0:b+e),u=u>b?b:u,u<0&&(u+=b),b=e>u?0:u-e>>>0,e>>>=0;for(var v=Array(b);++M<b;)v[M]=c[M+e];return v}return Nc=l,Nc}var Dc,yp;function F_(){if(yp)return Dc;yp=1;var l=D_();function c(e,u,M){var b=e.length;return M=M===void 0?b:M,!u&&M>=b?e:l(e,u,M)}return Dc=c,Dc}var Fc,wp;function vm(){if(wp)return Fc;wp=1;var l="\\ud800-\\udfff",c="\\u0300-\\u036f",e="\\ufe20-\\ufe2f",u="\\u20d0-\\u20ff",M=c+e+u,b="\\ufe0e\\ufe0f",v="\\u200d",x=RegExp("["+v+l+M+b+"]");function p(f){return x.test(f)}return Fc=p,Fc}var Pc,bp;function P_(){if(bp)return Pc;bp=1;function l(c){return c.split("")}return Pc=l,Pc}var Bc,xp;function B_(){if(xp)return Bc;xp=1;var l="\\ud800-\\udfff",c="\\u0300-\\u036f",e="\\ufe20-\\ufe2f",u="\\u20d0-\\u20ff",M=c+e+u,b="\\ufe0e\\ufe0f",v="["+l+"]",x="["+M+"]",p="\\ud83c[\\udffb-\\udfff]",f="(?:"+x+"|"+p+")",a="[^"+l+"]",s="(?:\\ud83c[\\udde6-\\uddff]){2}",o="[\\ud800-\\udbff][\\udc00-\\udfff]",r="\\u200d",n=f+"?",i="["+b+"]?",h="(?:"+r+"(?:"+[a,s,o].join("|")+")"+i+n+")*",m=i+n+h,y="(?:"+[a+x+"?",x,s,o,v].join("|")+")",R=RegExp(p+"(?="+p+")|"+y+m,"g");function T(k){return k.match(R)||[]}return Bc=T,Bc}var Wc,Sp;function W_(){if(Sp)return Wc;Sp=1;var l=P_(),c=vm(),e=B_();function u(M){return c(M)?e(M):l(M)}return Wc=u,Wc}var Hc,Cp;function H_(){if(Cp)return Hc;Cp=1;var l=typeof uo=="object"&&uo&&uo.Object===Object&&uo;return Hc=l,Hc}var zc,kp;function z_(){if(kp)return zc;kp=1;var l=H_(),c=typeof self=="object"&&self&&self.Object===Object&&self,e=l||c||Function("return this")();return zc=e,zc}var Uc,_p;function Xu(){if(_p)return Uc;_p=1;var l=z_(),c=l.Symbol;return Uc=c,Uc}var Vc,Ap;function U_(){if(Ap)return Vc;Ap=1;function l(c,e){for(var u=-1,M=c==null?0:c.length,b=Array(M);++u<M;)b[u]=e(c[u],u,c);return b}return Vc=l,Vc}var jc,Mp;function V_(){if(Mp)return jc;Mp=1;var l=Array.isArray;return jc=l,jc}var Kc,$p;function j_(){if($p)return Kc;$p=1;var l=Xu(),c=Object.prototype,e=c.hasOwnProperty,u=c.toString,M=l?l.toStringTag:void 0;function b(v){var x=e.call(v,M),p=v[M];try{v[M]=void 0;var f=!0}catch{}var a=u.call(v);return f&&(x?v[M]=p:delete v[M]),a}return Kc=b,Kc}var Gc,Tp;function K_(){if(Tp)return Gc;Tp=1;var l=Object.prototype,c=l.toString;function e(u){return c.call(u)}return Gc=e,Gc}var qc,Lp;function G_(){if(Lp)return qc;Lp=1;var l=Xu(),c=j_(),e=K_(),u="[object Null]",M="[object Undefined]",b=l?l.toStringTag:void 0;function v(x){return x==null?x===void 0?M:u:b&&b in Object(x)?c(x):e(x)}return qc=v,qc}var Yc,Ep;function q_(){if(Ep)return Yc;Ep=1;function l(c){return c!=null&&typeof c=="object"}return Yc=l,Yc}var Qc,Rp;function Y_(){if(Rp)return Qc;Rp=1;var l=G_(),c=q_(),e="[object Symbol]";function u(M){return typeof M=="symbol"||c(M)&&l(M)==e}return Qc=u,Qc}var Zc,Ip;function Q_(){if(Ip)return Zc;Ip=1;var l=Xu(),c=U_(),e=V_(),u=Y_(),M=l?l.prototype:void 0,b=M?M.toString:void 0;function v(x){if(typeof x=="string")return x;if(e(x))return c(x,v)+"";if(u(x))return b?b.call(x):"";var p=x+"";return p=="0"&&1/x==-1/0?"-0":p}return Zc=v,Zc}var Jc,Op;function ml(){if(Op)return Jc;Op=1;var l=Q_();function c(e){return e==null?"":l(e)}return Jc=c,Jc}var Xc,Np;function Z_(){if(Np)return Xc;Np=1;var l=F_(),c=vm(),e=W_(),u=ml();function M(b){return function(v){v=u(v);var x=c(v)?e(v):void 0,p=x?x[0]:v.charAt(0),f=x?l(x,1).join(""):v.slice(1);return p[b]()+f}}return Xc=M,Xc}var eu,Dp;function ym(){if(Dp)return eu;Dp=1;var l=Z_(),c=l("toUpperCase");return eu=c,eu}var J_=ym();const X_=el(J_);var tu,Fp;function eA(){if(Fp)return tu;Fp=1;var l=ml(),c=ym();function e(u){return c(l(u).toLowerCase())}return tu=e,tu}var nu,Pp;function tA(){if(Pp)return nu;Pp=1;function l(c,e,u,M){var b=-1,v=c==null?0:c.length;for(M&&v&&(u=c[++b]);++b<v;)u=e(u,c[b],b,c);return u}return nu=l,nu}var iu,Bp;function nA(){if(Bp)return iu;Bp=1;function l(c){return function(e){return c?.[e]}}return iu=l,iu}var ru,Wp;function iA(){if(Wp)return ru;Wp=1;var l=nA(),c={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},e=l(c);return ru=e,ru}var ou,Hp;function rA(){if(Hp)return ou;Hp=1;var l=iA(),c=ml(),e=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,u="\\u0300-\\u036f",M="\\ufe20-\\ufe2f",b="\\u20d0-\\u20ff",v=u+M+b,x="["+v+"]",p=RegExp(x,"g");function f(a){return a=c(a),a&&a.replace(e,l).replace(p,"")}return ou=f,ou}var su,zp;function oA(){if(zp)return su;zp=1;var l=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function c(e){return e.match(l)||[]}return su=c,su}var au,Up;function sA(){if(Up)return au;Up=1;var l=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function c(e){return l.test(e)}return au=c,au}var lu,Vp;function aA(){if(Vp)return lu;Vp=1;var l="\\ud800-\\udfff",c="\\u0300-\\u036f",e="\\ufe20-\\ufe2f",u="\\u20d0-\\u20ff",M=c+e+u,b="\\u2700-\\u27bf",v="a-z\\xdf-\\xf6\\xf8-\\xff",x="\\xac\\xb1\\xd7\\xf7",p="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",f="\\u2000-\\u206f",a=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",s="A-Z\\xc0-\\xd6\\xd8-\\xde",o="\\ufe0e\\ufe0f",r=x+p+f+a,n="['’]",i="["+r+"]",h="["+M+"]",m="\\d+",y="["+b+"]",R="["+v+"]",T="[^"+l+r+m+b+v+s+"]",k="\\ud83c[\\udffb-\\udfff]",w="(?:"+h+"|"+k+")",I="[^"+l+"]",D="(?:\\ud83c[\\udde6-\\uddff]){2}",E="[\\ud800-\\udbff][\\udc00-\\udfff]",L="["+s+"]",z="\\u200d",F="(?:"+R+"|"+T+")",O="(?:"+L+"|"+T+")",A="(?:"+n+"(?:d|ll|m|re|s|t|ve))?",S="(?:"+n+"(?:D|LL|M|RE|S|T|VE))?",N=w+"?",W="["+o+"]?",V="(?:"+z+"(?:"+[I,D,E].join("|")+")"+W+N+")*",G="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Q="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",te=W+N+V,le="(?:"+[y,D,E].join("|")+")"+te,ne=RegExp([L+"?"+R+"+"+A+"(?="+[i,L,"$"].join("|")+")",O+"+"+S+"(?="+[i,L+F,"$"].join("|")+")",L+"?"+F+"+"+A,L+"+"+S,Q,G,m,le].join("|"),"g");function ue(he){return he.match(ne)||[]}return lu=ue,lu}var cu,jp;function lA(){if(jp)return cu;jp=1;var l=oA(),c=sA(),e=ml(),u=aA();function M(b,v,x){return b=e(b),v=x?void 0:v,v===void 0?c(b)?u(b):l(b):b.match(v)||[]}return cu=M,cu}var uu,Kp;function cA(){if(Kp)return uu;Kp=1;var l=tA(),c=rA(),e=lA(),u="['’]",M=RegExp(u,"g");function b(v){return function(x){return l(e(c(x).replace(M,"")),v,"")}}return uu=b,uu}var hu,Gp;function uA(){if(Gp)return hu;Gp=1;var l=eA(),c=cA(),e=c(function(u,M,b){return M=M.toLowerCase(),u+(b?l(M):M)});return hu=e,hu}var hA=uA();const dA=el(hA),fA=Object.assign({"./ArrayWidget.vue":()=>Promise.resolve().then(()=>require("./ArrayWidget-BHjh3qLF.cjs")),"./ArrayplotWidget.vue":()=>Promise.resolve().then(()=>require("./ArrayplotWidget-BHD-TGQO.cjs")),"./BlockWidget.vue":()=>Promise.resolve().then(()=>require("./BlockWidget-Bi1PfS1k.cjs")),"./ButtonWidget.vue":()=>Promise.resolve().then(()=>require("./ButtonWidget-70hNWuEy.cjs")),"./CanvasWidget.vue":()=>Promise.resolve().then(()=>require("./CanvasWidget-DTEx-DpZ.cjs")),"./CanvasdotWidget.vue":()=>Promise.resolve().then(()=>require("./CanvasdotWidget-bbOquK8B.cjs")),"./CanvasimageWidget.vue":()=>Promise.resolve().then(()=>require("./CanvasimageWidget-D2EqsK7w.cjs")),"./CanvasimagevalueWidget.vue":()=>Promise.resolve().then(()=>require("./CanvasimagevalueWidget-By_DiQ75.cjs")),"./CanvaslabelWidget.vue":()=>Promise.resolve().then(()=>require("./CanvaslabelWidget-DiPxyXoX.cjs")),"./CanvaslabelvalueWidget.vue":()=>Promise.resolve().then(()=>require("./CanvaslabelvalueWidget-Cw5CCQTi.cjs")),"./CanvaslineWidget.vue":()=>Promise.resolve().then(()=>require("./CanvaslineWidget-BECtKTPL.cjs")),"./CanvaslinevalueWidget.vue":()=>Promise.resolve().then(()=>require("./CanvaslinevalueWidget-5duJ98qu.cjs")),"./CheckbuttonWidget.vue":()=>Promise.resolve().then(()=>require("./CheckbuttonWidget-CTMObPhX.cjs")),"./ComboboxWidget.vue":()=>Promise.resolve().then(()=>require("./ComboboxWidget-Cc0Acq9q.cjs")),"./DateWidget.vue":()=>Promise.resolve().then(()=>require("./DateWidget-Cle8FY8Q.cjs")),"./DynamicWidget.vue":()=>Promise.resolve().then(()=>require("./DynamicWidget-BtJYTmVo.cjs")),"./FilechecksumWidget.vue":()=>Promise.resolve().then(()=>require("./FilechecksumWidget-2ta-UvLp.cjs")),"./FiledisplayWidget.vue":()=>Promise.resolve().then(()=>require("./FiledisplayWidget-BUKXIQir.cjs")),"./FormatvalueWidget.vue":()=>Promise.resolve().then(()=>require("./FormatvalueWidget-BpFXnA_U.cjs")),"./HorizontalWidget.vue":()=>Promise.resolve().then(()=>require("./HorizontalWidget-BBQE-dP-.cjs")),"./HorizontalboxWidget.vue":()=>Promise.resolve().then(()=>require("./HorizontalboxWidget-CX7J8RdA.cjs")),"./HorizontallineWidget.vue":()=>Promise.resolve().then(()=>require("./HorizontallineWidget-odTFoB8u.cjs")),"./IframeWidget.vue":()=>Promise.resolve().then(()=>require("./IframeWidget-cTHu_Rmp.cjs")),"./ImageviewerWidget.vue":()=>Promise.resolve().then(()=>require("./ImageviewerWidget-CLAFwmaB.cjs")),"./LabelWidget.vue":()=>Promise.resolve().then(()=>require("./LabelWidget-CMmVq1mx.cjs")),"./LabelledWidget.vue":()=>Promise.resolve().then(()=>require("./LabelledWidget-CAqH0oWs.cjs")),"./LabelprogressbarWidget.vue":()=>Promise.resolve().then(()=>require("./LabelprogressbarWidget-BxLGmW9T.cjs")),"./LabelsparklineWidget.vue":()=>Promise.resolve().then(()=>require("./LabelsparklineWidget-BUXOpBeB.cjs")),"./LabelvalueWidget.vue":()=>Promise.resolve().then(()=>require("./LabelvalueWidget-bYqqgIGE.cjs")),"./LabelvaluedescWidget.vue":()=>Promise.resolve().then(()=>require("./LabelvaluedescWidget-B2dFZoDE.cjs")),"./LabelvaluelimitsbarWidget.vue":()=>Promise.resolve().then(()=>require("./LabelvaluelimitsbarWidget-BGag8V6k.cjs")),"./LabelvaluelimitscolumnWidget.vue":()=>Promise.resolve().then(()=>require("./LabelvaluelimitscolumnWidget-SHVJIgGJ.cjs")),"./LabelvaluerangebarWidget.vue":()=>Promise.resolve().then(()=>require("./LabelvaluerangebarWidget-Dbibpimv.cjs")),"./LedWidget.vue":()=>Promise.resolve().then(()=>require("./LedWidget-BaiKDozd.cjs")),"./LimitsbarWidget.vue":()=>Promise.resolve().then(()=>require("./LimitsbarWidget-ConP3qI5.cjs")),"./LimitscolorWidget.vue":()=>Promise.resolve().then(()=>require("./LimitscolorWidget-veWQ4NXl.cjs")),"./LimitscolumnWidget.vue":()=>Promise.resolve().then(()=>require("./LimitscolumnWidget-CJABAor8.cjs")),"./LinegraphWidget.vue":()=>Promise.resolve().then(()=>require("./LinegraphWidget-3E8L5CvM.cjs")),"./MatrixbycolumnsWidget.vue":()=>Promise.resolve().then(()=>require("./MatrixbycolumnsWidget-DICgiNQo.cjs")),"./ProgressbarWidget.vue":()=>Promise.resolve().then(()=>require("./ProgressbarWidget-DludJVUf.cjs")),"./RadiobuttonWidget.vue":()=>Promise.resolve().then(()=>require("./RadiobuttonWidget-DX4h94p1.cjs")),"./RadiogroupWidget.vue":()=>Promise.resolve().then(()=>require("./RadiogroupWidget-NqjBNUH6.cjs")),"./RangebarWidget.vue":()=>Promise.resolve().then(()=>require("./RangebarWidget-CRq2zpvw.cjs")),"./RollupWidget.vue":()=>Promise.resolve().then(()=>require("./RollupWidget-B7_Q_boi.cjs")),"./ScrollwindowWidget.vue":()=>Promise.resolve().then(()=>require("./ScrollwindowWidget-kS5QjP-v.cjs")),"./SignalWidget.vue":()=>Promise.resolve().then(()=>require("./SignalWidget-BagcB92r.cjs")),"./SpacerWidget.vue":()=>Promise.resolve().then(()=>require("./SpacerWidget-DWjBns9r.cjs")),"./SparklineWidget.vue":()=>Promise.resolve().then(()=>require("./SparklineWidget-xdPgolp3.cjs")),"./TabbookWidget.vue":()=>Promise.resolve().then(()=>require("./TabbookWidget-CUIYWHRH.cjs")),"./TextboxWidget.vue":()=>Promise.resolve().then(()=>require("./TextboxWidget-CXA9rR02.cjs")),"./TextfieldWidget.vue":()=>Promise.resolve().then(()=>require("./TextfieldWidget-D-H2fOZG.cjs")),"./TimeWidget.vue":()=>Promise.resolve().then(()=>require("./TimeWidget-CGk8Ze_I.cjs")),"./TitleWidget.vue":()=>Promise.resolve().then(()=>require("./TitleWidget-ClhWhUf3.cjs")),"./ValueWidget.vue":()=>Promise.resolve().then(()=>require("./ValueWidget-Bws1qOEI.cjs")),"./ValuelimitsbarWidget.vue":()=>Promise.resolve().then(()=>require("./ValuelimitsbarWidget-BoZSJvuq.cjs")),"./ValuelimitscolumnWidget.vue":()=>Promise.resolve().then(()=>require("./ValuelimitscolumnWidget-ta9i_tiy.cjs")),"./ValuerangebarWidget.vue":()=>Promise.resolve().then(()=>require("./ValuerangebarWidget-Ips-beG6.cjs")),"./VerticalWidget.vue":()=>Promise.resolve().then(()=>require("./VerticalWidget-BVt7QPjO.cjs")),"./VerticalboxWidget.vue":()=>Promise.resolve().then(()=>require("./VerticalboxWidget-CNoXT3YW.cjs"))}),pA=Object.entries(fA).reduce((l,[c,e])=>{c=c.split("/").pop();const u=X_(dA(c.replace(/\.\w+$/,"")));return{...l,[u]:Ge.defineAsyncComponent(e)}},{}),gA={components:pA};exports.DataViewerComponent=$g;exports.DataViewerHistoryComponent=DC;exports.Fr=mg;exports.WidgetComponents=gA;exports._=Lg;exports._i=jS;exports.aceExports=Ax;exports.bi=VS;exports.bs=N_;exports.lodashExports=Tg;exports.uPlot=ni;exports.yi=AC;exports.yt=vu;
1485
+ //# sourceMappingURL=UpgradeToEnterpriseDialog.vue_vue_type_style_index_0_scoped_c790a82f_lang-eKtA_EtD.cjs.map