@qitqode/qitqode-android-arm64 0.2.0 → 0.2.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 (414) hide show
  1. package/bundle/{chunk-cx7p4ezk.js → chunk-03mbn7nj.js} +2 -2
  2. package/bundle/{chunk-aw8af3ky.js → chunk-073ydjmk.js} +1 -1
  3. package/bundle/{chunk-rrd0jf5m.js → chunk-07s30fpb.js} +1 -1
  4. package/bundle/{chunk-yacccwf6.js → chunk-087tnr8a.js} +1 -1
  5. package/bundle/{chunk-kx2dp8ch.js → chunk-0f3ft9dh.js} +1 -1
  6. package/bundle/{chunk-rgxy4ngt.js → chunk-0gab4v98.js} +1 -1
  7. package/bundle/chunk-0xrr0k94.js +2 -0
  8. package/bundle/chunk-0yagj4ss.js +2 -0
  9. package/bundle/chunk-0ych0f5w.js +2 -0
  10. package/bundle/{chunk-2pzvcpv4.js → chunk-0z1cxvk1.js} +2 -2
  11. package/bundle/{chunk-rph9zj24.js → chunk-0zxwjsvz.js} +1 -1
  12. package/bundle/{chunk-pqnbdygz.js → chunk-1p6jjrea.js} +2 -2
  13. package/bundle/{chunk-9cw4cnz0.js → chunk-1q1cddy4.js} +1 -1
  14. package/bundle/{chunk-w9pdvcf9.js → chunk-1sfcxdbw.js} +2 -2
  15. package/bundle/chunk-22hr3ndh.js +2 -0
  16. package/bundle/chunk-23tyxyyj.js +2 -0
  17. package/bundle/chunk-28g1ndpx.js +2 -0
  18. package/bundle/chunk-29v1v357.js +2 -0
  19. package/bundle/{chunk-txqc7543.js → chunk-29zm623f.js} +2 -2
  20. package/bundle/{chunk-wm77svwm.js → chunk-2a9rzgk6.js} +1 -1
  21. package/bundle/chunk-2avxtbv3.js +2 -0
  22. package/bundle/{chunk-eaqfnwdj.js → chunk-2bgqy6z7.js} +1 -1
  23. package/bundle/{chunk-9zre5e54.js → chunk-2hv2c8d5.js} +1 -1
  24. package/bundle/{chunk-swcgsrbj.js → chunk-2jpmxt4v.js} +1 -1
  25. package/bundle/chunk-2qk0k2eb.js +2 -0
  26. package/bundle/{chunk-nsjp44fp.js → chunk-2qwmrp16.js} +1 -1
  27. package/bundle/{chunk-dykqn0nj.js → chunk-2xqqkf86.js} +2 -2
  28. package/bundle/{chunk-r0g5yyhf.js → chunk-3aq70t26.js} +1 -1
  29. package/bundle/{chunk-zfcfyagt.js → chunk-3h49k2ck.js} +1 -1
  30. package/bundle/{chunk-sv1s1qxd.js → chunk-3kn57y8d.js} +5 -5
  31. package/bundle/chunk-3ktj87g4.js +2 -0
  32. package/bundle/{chunk-52b1v7mn.js → chunk-3qfpw8f6.js} +1 -1
  33. package/bundle/{chunk-v3x5nrc4.js → chunk-3tmq81kq.js} +2 -2
  34. package/bundle/chunk-3wxvpvg4.js +3 -0
  35. package/bundle/{chunk-neqy8j4n.js → chunk-42r7z6sq.js} +1 -1
  36. package/bundle/chunk-42wdfks8.js +2 -0
  37. package/bundle/chunk-4f19vqxf.js +2 -0
  38. package/bundle/{chunk-d93z6hrn.js → chunk-4fk46ngj.js} +1 -1
  39. package/bundle/{chunk-njkserae.js → chunk-4hd3v58j.js} +1 -1
  40. package/bundle/chunk-4jq25vbc.js +2 -0
  41. package/bundle/chunk-4m3k1atq.js +2 -0
  42. package/bundle/{chunk-1wpjmwnh.js → chunk-4mvg7jt1.js} +1 -1
  43. package/bundle/chunk-4n2ytddp.js +2 -0
  44. package/bundle/{chunk-zesbm9k1.js → chunk-4sxg9cgr.js} +1 -1
  45. package/bundle/{chunk-8fgamz4y.js → chunk-4v61ysex.js} +1 -1
  46. package/bundle/chunk-4yg42p6y.js +2 -0
  47. package/bundle/chunk-4zx3ze68.js +2 -0
  48. package/bundle/chunk-57xbwzdn.js +3 -0
  49. package/bundle/{chunk-rexdr63q.js → chunk-5az84brc.js} +2 -2
  50. package/bundle/{chunk-y0ydzdfc.js → chunk-5t0w9ecw.js} +1 -1
  51. package/bundle/{chunk-nq495be3.js → chunk-5wwd40t3.js} +1 -1
  52. package/bundle/chunk-637sjdzq.js +2 -0
  53. package/bundle/{chunk-snt1kefv.js → chunk-64c8q9zg.js} +3 -3
  54. package/bundle/{chunk-g794ey6w.js → chunk-6avjq7my.js} +1 -1
  55. package/bundle/chunk-6bghztra.js +2 -0
  56. package/bundle/{chunk-n0trgp1c.js → chunk-6dfjtzqb.js} +2 -2
  57. package/bundle/chunk-6h8f89tt.js +2 -0
  58. package/bundle/{chunk-b0jh0rby.js → chunk-6j339s7a.js} +2 -2
  59. package/bundle/{chunk-8q6z6emx.js → chunk-6kf4vw2g.js} +1 -1
  60. package/bundle/{chunk-hgsykghj.js → chunk-6pcmv8vs.js} +2 -2
  61. package/bundle/chunk-6sjj203r.js +2 -0
  62. package/bundle/{chunk-6r8pg6ma.js → chunk-6y4mwmn4.js} +1 -1
  63. package/bundle/{chunk-kt0ej3nq.js → chunk-6ypafpg8.js} +1 -1
  64. package/bundle/{chunk-p8kpqyxb.js → chunk-732yr6qq.js} +2 -2
  65. package/bundle/{chunk-3sz6gw10.js → chunk-73fz0cf4.js} +2 -2
  66. package/bundle/chunk-79aka9xe.js +2 -0
  67. package/bundle/{chunk-8tp4whyw.js → chunk-7my2231h.js} +1 -1
  68. package/bundle/{chunk-xjhezxft.js → chunk-7myg8076.js} +3 -3
  69. package/bundle/{chunk-vvzbfv2f.js → chunk-7njz51r4.js} +1 -1
  70. package/bundle/chunk-7nqdhe7x.js +2 -0
  71. package/bundle/{chunk-zaan8jk6.js → chunk-7ntw4rrn.js} +1 -1
  72. package/bundle/chunk-7rhry8nv.js +2 -0
  73. package/bundle/chunk-7x88b2n2.js +2 -0
  74. package/bundle/{chunk-46ztrjw0.js → chunk-7zvawpe1.js} +1 -1
  75. package/bundle/{chunk-jgz1a29w.js → chunk-86jsqc7d.js} +3 -3
  76. package/bundle/{chunk-zbqzm65q.js → chunk-86yk21g4.js} +1 -1
  77. package/bundle/{chunk-w3bmf3zz.js → chunk-8e6gx3gg.js} +1 -1
  78. package/bundle/chunk-8mthftwc.js +2 -0
  79. package/bundle/{chunk-73ckx171.js → chunk-8q5ns61h.js} +1 -1
  80. package/bundle/{chunk-549ptbaj.js → chunk-8rh0femq.js} +1 -1
  81. package/bundle/chunk-8wdara3b.js +2 -0
  82. package/bundle/chunk-8xhzpnph.js +2 -0
  83. package/bundle/{chunk-kqhh2pm9.js → chunk-94qhpkfx.js} +1 -1
  84. package/bundle/{chunk-gxmxx8jb.js → chunk-99148b1k.js} +1 -1
  85. package/bundle/chunk-9akz8w0d.js +2 -0
  86. package/bundle/{chunk-7gbytqkn.js → chunk-9b4aqcde.js} +2 -2
  87. package/bundle/{chunk-tdmn21z0.js → chunk-9ea1n338.js} +2 -2
  88. package/bundle/chunk-9eg2ytjd.js +17 -0
  89. package/bundle/chunk-9etpppyv.js +3 -0
  90. package/bundle/{chunk-vgaxv70x.js → chunk-9jrxrjzt.js} +2 -2
  91. package/bundle/{chunk-3bkdbqjj.js → chunk-9jsgs71h.js} +1 -1
  92. package/bundle/{chunk-twhavv1m.js → chunk-9nn4jpb7.js} +1 -1
  93. package/bundle/{chunk-pxx2hz0g.js → chunk-9rxyq6f9.js} +2 -2
  94. package/bundle/chunk-9tk4wsn4.js +2 -0
  95. package/bundle/{chunk-9fkmhmh6.js → chunk-9y15zjxa.js} +1 -1
  96. package/bundle/chunk-a0rjp24v.js +2 -0
  97. package/bundle/{chunk-mdzzcrf9.js → chunk-a2dz9nqh.js} +2 -2
  98. package/bundle/chunk-a7p0x4sw.js +2 -0
  99. package/bundle/{chunk-ev3a2sxv.js → chunk-a92hh67a.js} +2 -2
  100. package/bundle/chunk-ae0a496j.js +2 -0
  101. package/bundle/{chunk-px8vtbmr.js → chunk-ahyqfbmq.js} +2 -2
  102. package/bundle/chunk-aq1j9y18.js +2 -0
  103. package/bundle/chunk-aq8nz9hp.js +2 -0
  104. package/bundle/{chunk-zxddasg8.js → chunk-as845ya4.js} +1 -1
  105. package/bundle/chunk-b4zy78be.js +2 -0
  106. package/bundle/{chunk-45mjcxqk.js → chunk-b50t4jc5.js} +1 -1
  107. package/bundle/chunk-basjzwqp.js +2 -0
  108. package/bundle/{chunk-d1rn44wz.js → chunk-bbbh69ys.js} +1 -1
  109. package/bundle/{chunk-mw2hr4pd.js → chunk-bcx2vkv4.js} +1 -1
  110. package/bundle/{chunk-72zxassf.js → chunk-bggybm9k.js} +1 -1
  111. package/bundle/{chunk-4gs87ghj.js → chunk-bgng3rdj.js} +2 -2
  112. package/bundle/chunk-bhetpmgq.js +3 -0
  113. package/bundle/{chunk-bnz0mxak.js → chunk-bk3z400e.js} +1 -1
  114. package/bundle/chunk-bm7xpjh6.js +2 -0
  115. package/bundle/{chunk-nhwhkx62.js → chunk-bzs2ep7s.js} +1 -1
  116. package/bundle/{chunk-7fawtcnn.js → chunk-c1g8n10t.js} +1 -1
  117. package/bundle/chunk-c2k556rk.js +2 -0
  118. package/bundle/{chunk-w03fdrxe.js → chunk-cbf1y12x.js} +1 -1
  119. package/bundle/{chunk-vc4e6xc4.js → chunk-cbmwhvxw.js} +2 -2
  120. package/bundle/{chunk-5bate758.js → chunk-cp39f96a.js} +1 -1
  121. package/bundle/{chunk-9nk0ts0s.js → chunk-d307vb2d.js} +1 -1
  122. package/bundle/chunk-d41mg7at.js +2 -0
  123. package/bundle/chunk-d50kpss6.js +2 -0
  124. package/bundle/chunk-day0rb5p.js +2 -0
  125. package/bundle/{chunk-dz3s882k.js → chunk-dj3525nn.js} +4 -4
  126. package/bundle/{chunk-qq2rcxv2.js → chunk-dknemkw2.js} +2 -2
  127. package/bundle/chunk-dp7cww4v.js +2 -0
  128. package/bundle/{chunk-yeq7b87a.js → chunk-drwqag0f.js} +1 -1
  129. package/bundle/{chunk-qdcf1ay5.js → chunk-e586sjb0.js} +2 -2
  130. package/bundle/{chunk-qs4wef8c.js → chunk-e6wp96vm.js} +1 -1
  131. package/bundle/{chunk-g8cfzzrs.js → chunk-e89zjjmj.js} +1 -1
  132. package/bundle/chunk-egae7vvg.js +2 -0
  133. package/bundle/chunk-erdjd9w3.js +2 -0
  134. package/bundle/chunk-ex93y6dw.js +2 -0
  135. package/bundle/chunk-eyr0vf92.js +2 -0
  136. package/bundle/{chunk-02xcb52z.js → chunk-ezfzb8qc.js} +2 -2
  137. package/bundle/{chunk-kp8nkm3m.js → chunk-f1bcz9yz.js} +1 -1
  138. package/bundle/chunk-f4zfk5ye.js +2 -0
  139. package/bundle/{chunk-ceefd2nj.js → chunk-f7rj6fck.js} +1 -1
  140. package/bundle/{chunk-4sazy0nq.js → chunk-f83wv08n.js} +1 -1
  141. package/bundle/{chunk-eb8nsk7e.js → chunk-faa0zxey.js} +2 -2
  142. package/bundle/{chunk-3dr4469n.js → chunk-fbm6qczy.js} +1 -1
  143. package/bundle/{chunk-0g25z230.js → chunk-fd7fmvyw.js} +1 -1
  144. package/bundle/chunk-fghqr4x8.js +8 -0
  145. package/bundle/{chunk-0z33en1a.js → chunk-fgn83bs7.js} +1 -1
  146. package/bundle/{chunk-dshnn54c.js → chunk-fpm2vgz6.js} +1 -1
  147. package/bundle/chunk-fvkwcx35.js +2 -0
  148. package/bundle/{chunk-w5940jxm.js → chunk-fvy24yhq.js} +1 -1
  149. package/bundle/{chunk-gt6tgm42.js → chunk-fymt1rym.js} +1 -1
  150. package/bundle/{chunk-dt899wbf.js → chunk-g3kd4957.js} +2 -2
  151. package/bundle/{chunk-v7q3d3n6.js → chunk-g5cgpvef.js} +2 -2
  152. package/bundle/{chunk-909fp6pm.js → chunk-g9end129.js} +1 -1
  153. package/bundle/chunk-gbmmbhy4.js +2 -0
  154. package/bundle/chunk-gp877cq5.js +2 -0
  155. package/bundle/{chunk-tgd5ctnt.js → chunk-gr4bctqj.js} +2 -2
  156. package/bundle/{chunk-dvxk6mr6.js → chunk-grw4gg9j.js} +2 -2
  157. package/bundle/{chunk-mvnxwwe7.js → chunk-gtjn3yc4.js} +2 -2
  158. package/bundle/chunk-hk8vvc10.js +2 -0
  159. package/bundle/{chunk-cxtxvt43.js → chunk-hmznf0ax.js} +1 -1
  160. package/bundle/{chunk-gnt982jr.js → chunk-hpa7e9va.js} +3 -3
  161. package/bundle/{chunk-hcy77w6t.js → chunk-hq9bgnqb.js} +1 -1
  162. package/bundle/{chunk-gkj4a27z.js → chunk-hrw5rmj1.js} +1 -1
  163. package/bundle/{chunk-n2ygpy76.js → chunk-hs3vfhar.js} +1 -1
  164. package/bundle/chunk-hwavzxdm.js +2 -0
  165. package/bundle/chunk-hwnc2sa5.js +2 -0
  166. package/bundle/chunk-j2gvpa15.js +2 -0
  167. package/bundle/{chunk-te5tfq79.js → chunk-j3jqk62r.js} +1 -1
  168. package/bundle/{chunk-jqn27885.js → chunk-j5ymkhry.js} +1 -1
  169. package/bundle/chunk-j7n8khk7.js +2 -0
  170. package/bundle/{chunk-ws3p9cya.js → chunk-jgtcfw96.js} +2 -2
  171. package/bundle/{chunk-5myxjxae.js → chunk-jjjs8p0t.js} +2 -2
  172. package/bundle/chunk-jkh98wby.js +2 -0
  173. package/bundle/{chunk-h7w35n7w.js → chunk-jv4th87b.js} +1 -1
  174. package/bundle/{chunk-j63fkt6n.js → chunk-jvjq554f.js} +1 -1
  175. package/bundle/{chunk-00sr2gwz.js → chunk-jw114bbt.js} +2 -2
  176. package/bundle/{chunk-ax1y4699.js → chunk-jwph7tpc.js} +1 -1
  177. package/bundle/{chunk-xdacgfba.js → chunk-k1gddnkm.js} +1 -1
  178. package/bundle/chunk-k5a652s4.js +2 -0
  179. package/bundle/{chunk-1mcsf4yb.js → chunk-k6cbfrzc.js} +2 -2
  180. package/bundle/chunk-k6w32q2p.js +2 -0
  181. package/bundle/{chunk-rtdym35y.js → chunk-kc1xmcc9.js} +141 -135
  182. package/bundle/{chunk-5kmfnkzv.js → chunk-kdcnder5.js} +1 -1
  183. package/bundle/chunk-ke5rqv5b.js +2 -0
  184. package/bundle/chunk-kghwk0yh.js +2 -0
  185. package/bundle/{chunk-r6ndvzd0.js → chunk-km1n4ttr.js} +1 -1
  186. package/bundle/{chunk-m0xsvzyd.js → chunk-knh01n2r.js} +2 -2
  187. package/bundle/{chunk-ydc6ypjt.js → chunk-ks1cs80p.js} +2 -2
  188. package/bundle/{chunk-08q55ya0.js → chunk-kxjrrdj0.js} +1 -1
  189. package/bundle/{chunk-jts0dma5.js → chunk-kzvvvj79.js} +2 -2
  190. package/bundle/chunk-mgadsp7r.js +2 -0
  191. package/bundle/chunk-mk2s9py8.js +2 -0
  192. package/bundle/{chunk-hb9mc5f9.js → chunk-mpe8zxc0.js} +1 -1
  193. package/bundle/{chunk-yykjvt7f.js → chunk-mswx4k75.js} +2 -2
  194. package/bundle/{chunk-z0tfsdb9.js → chunk-mx3jd1p9.js} +1 -1
  195. package/bundle/{chunk-sxy4hyyy.js → chunk-mxf9p0p9.js} +1 -1
  196. package/bundle/{chunk-std2bgv7.js → chunk-mxhb5adq.js} +2 -2
  197. package/bundle/{chunk-gwfx7tx7.js → chunk-my3cswnp.js} +2 -2
  198. package/bundle/chunk-n0k0pp4k.js +2 -0
  199. package/bundle/chunk-n393nnh5.js +2 -0
  200. package/bundle/chunk-n5vyed7w.js +2 -0
  201. package/bundle/{chunk-jf6ry79j.js → chunk-n7kqdqkh.js} +4 -4
  202. package/bundle/{chunk-tdxbm1nd.js → chunk-n90eh3e7.js} +1 -1
  203. package/bundle/{chunk-n7d9eemn.js → chunk-nb86kh94.js} +211 -211
  204. package/bundle/{chunk-s8mghr5a.js → chunk-ngvp6zc2.js} +2 -2
  205. package/bundle/{chunk-98effz12.js → chunk-nh044sjn.js} +1 -1
  206. package/bundle/{chunk-ypk3t1eh.js → chunk-nm6wnne9.js} +1 -1
  207. package/bundle/{chunk-mcc5ynma.js → chunk-p4ewy9xh.js} +3 -3
  208. package/bundle/{chunk-d9x9kqvy.js → chunk-p5mes2sh.js} +1 -1
  209. package/bundle/{chunk-vgnddhdj.js → chunk-p635phfw.js} +1 -1
  210. package/bundle/{chunk-dgx4rq86.js → chunk-p887g1xj.js} +1 -1
  211. package/bundle/{chunk-7jhrxzjx.js → chunk-p9mj4zyk.js} +2 -2
  212. package/bundle/chunk-pasm65wq.js +2 -0
  213. package/bundle/chunk-pfh34atn.js +2 -0
  214. package/bundle/{chunk-xdjwapwy.js → chunk-pfkm3j8g.js} +2 -2
  215. package/bundle/chunk-phpmxjf8.js +2 -0
  216. package/bundle/{chunk-9dh9bc9d.js → chunk-pp9neaaz.js} +1 -1
  217. package/bundle/{chunk-c72jajx9.js → chunk-pzefsndd.js} +1 -1
  218. package/bundle/{chunk-dh1h513y.js → chunk-q128vfc6.js} +1 -1
  219. package/bundle/{chunk-z7vv0ngm.js → chunk-q148vndn.js} +2 -2
  220. package/bundle/{chunk-4fa390yr.js → chunk-q4fn41ex.js} +2 -2
  221. package/bundle/{chunk-zrmx397j.js → chunk-q5abwn50.js} +1 -1
  222. package/bundle/{chunk-s2xdf6qh.js → chunk-q9ft590w.js} +2 -2
  223. package/bundle/{chunk-7vftsy04.js → chunk-qaz100ht.js} +1 -1
  224. package/bundle/{chunk-17pxm5d3.js → chunk-qeg0jnxq.js} +2 -2
  225. package/bundle/{chunk-871f8x99.js → chunk-qf1dqzra.js} +2 -2
  226. package/bundle/{chunk-qyjt0qnq.js → chunk-qg9bt0kx.js} +2 -2
  227. package/bundle/{chunk-pnq1h5az.js → chunk-qhnpq5gb.js} +2 -2
  228. package/bundle/{chunk-kb6v5hhm.js → chunk-qkh8697x.js} +2 -2
  229. package/bundle/chunk-qvzvxsjw.js +2 -0
  230. package/bundle/chunk-qzszrd0s.js +2 -0
  231. package/bundle/{chunk-yzwgvjzd.js → chunk-r0s28gnb.js} +1 -1
  232. package/bundle/{chunk-k7n1csxv.js → chunk-r2qns6yc.js} +1 -1
  233. package/bundle/{chunk-yj6rbe9p.js → chunk-rcyzqa3g.js} +2 -2
  234. package/bundle/{chunk-70pb4kcm.js → chunk-rdwma0de.js} +2 -2
  235. package/bundle/{chunk-25bp7pcm.js → chunk-rk2bk4s7.js} +2 -2
  236. package/bundle/{chunk-x6rr6ss1.js → chunk-rm5ntsvn.js} +1 -1
  237. package/bundle/{chunk-fyz7fngd.js → chunk-rnq5ezrt.js} +1 -1
  238. package/bundle/{chunk-xhbb8b5g.js → chunk-rp8asmq7.js} +1 -1
  239. package/bundle/{chunk-z1rshv6g.js → chunk-rpfhgncs.js} +1 -1
  240. package/bundle/{chunk-cagk1sjd.js → chunk-s0ptrw0z.js} +1 -1
  241. package/bundle/{chunk-yw9pfqxt.js → chunk-s0ty36qg.js} +1 -1
  242. package/bundle/{chunk-pr1ysgr3.js → chunk-s7yza695.js} +1 -1
  243. package/bundle/chunk-s99cvvc9.js +2 -0
  244. package/bundle/{chunk-v0yxkq99.js → chunk-sh76e256.js} +2 -2
  245. package/bundle/chunk-skpkjnyy.js +2 -0
  246. package/bundle/{chunk-8r3410c2.js → chunk-skv9ww0s.js} +1 -1
  247. package/bundle/chunk-snt4kwab.js +2 -0
  248. package/bundle/chunk-sq47t8f1.js +2 -0
  249. package/bundle/chunk-sqhgnvvs.js +2 -0
  250. package/bundle/chunk-t114r59h.js +2 -0
  251. package/bundle/chunk-t1f56k0j.js +2 -0
  252. package/bundle/{chunk-9s4whpg1.js → chunk-t1jgx17a.js} +2 -2
  253. package/bundle/chunk-t69jx6fz.js +2 -0
  254. package/bundle/{chunk-srxx88nb.js → chunk-t9zbp2qw.js} +1 -1
  255. package/bundle/{chunk-jcjaw7tk.js → chunk-ta7mfkms.js} +2 -2
  256. package/bundle/{chunk-aj3y2e86.js → chunk-tce12v85.js} +1 -1
  257. package/bundle/{chunk-fn8191ps.js → chunk-tczbhj0e.js} +1 -1
  258. package/bundle/{chunk-h1kg35mn.js → chunk-tge53d52.js} +1 -1
  259. package/bundle/chunk-tq1dqhes.js +2 -0
  260. package/bundle/chunk-tsb3jsx4.js +2 -0
  261. package/bundle/chunk-ttpbpzbh.js +2 -0
  262. package/bundle/{chunk-2dkrfc1s.js → chunk-v5z6sx6j.js} +1 -1
  263. package/bundle/chunk-v667egp5.js +2 -0
  264. package/bundle/{chunk-w8d9srv7.js → chunk-v7mg632n.js} +2 -2
  265. package/bundle/{chunk-60qyqqxx.js → chunk-v9rg0a8g.js} +1 -1
  266. package/bundle/{chunk-jngchw38.js → chunk-ve3np791.js} +1 -1
  267. package/bundle/{chunk-wev34grp.js → chunk-vhe92p7a.js} +2 -2
  268. package/bundle/{chunk-qpzspr9z.js → chunk-vjx0064q.js} +2 -2
  269. package/bundle/{chunk-atpzz901.js → chunk-vm1ek7yf.js} +1 -1
  270. package/bundle/{chunk-3mepk08v.js → chunk-vqpfpmha.js} +2 -2
  271. package/bundle/{chunk-cdh26622.js → chunk-vqss3e48.js} +2 -2
  272. package/bundle/{chunk-ewpzqnj4.js → chunk-w79jzf8w.js} +1 -1
  273. package/bundle/{chunk-yha554nm.js → chunk-w7em72p8.js} +2 -2
  274. package/bundle/chunk-wcqfr8vr.js +3 -0
  275. package/bundle/{chunk-r58gzg6m.js → chunk-wdaf713t.js} +1 -1
  276. package/bundle/{chunk-ymtcm4xd.js → chunk-wf4x5cjc.js} +1 -1
  277. package/bundle/{chunk-vsys768k.js → chunk-wfggztm4.js} +1 -1
  278. package/bundle/{chunk-j5kyf7vt.js → chunk-wp3dpt6d.js} +2 -2
  279. package/bundle/{chunk-acyj91wq.js → chunk-x2cavpa9.js} +1 -1
  280. package/bundle/{chunk-kmtfdky8.js → chunk-x3afqfww.js} +2 -2
  281. package/bundle/{chunk-qb35hqm4.js → chunk-x4pdpka8.js} +1 -1
  282. package/bundle/{chunk-vm58fkrv.js → chunk-xd3xc1vv.js} +1 -1
  283. package/bundle/{chunk-m6zxr0j8.js → chunk-xjpvv3vp.js} +2 -2
  284. package/bundle/chunk-xnhvt98g.js +5 -0
  285. package/bundle/{chunk-64s7vfj7.js → chunk-xny5ecn0.js} +2 -2
  286. package/bundle/chunk-xwgc2pw7.js +28 -0
  287. package/bundle/chunk-xxrtr6sd.js +2 -0
  288. package/bundle/chunk-y287zwkr.js +10 -0
  289. package/bundle/{chunk-ezrskm25.js → chunk-y3dfk6n5.js} +1 -1
  290. package/bundle/{chunk-t01bhw5h.js → chunk-y4e7e42x.js} +3 -3
  291. package/bundle/chunk-y8eggnrr.js +2 -0
  292. package/bundle/{chunk-9xvctnjr.js → chunk-yajd975f.js} +1 -1
  293. package/bundle/chunk-yck5h49c.js +2 -0
  294. package/bundle/{chunk-8yr682pv.js → chunk-yd2emszh.js} +2 -2
  295. package/bundle/{chunk-p9zrk16q.js → chunk-yd8bzhv6.js} +1 -1
  296. package/bundle/{chunk-ztnepaqc.js → chunk-yerfyz4w.js} +1 -1
  297. package/bundle/{chunk-x42w8ewc.js → chunk-yg0pfngv.js} +1 -1
  298. package/bundle/{chunk-y1b2h15z.js → chunk-ypcc3cnb.js} +1 -1
  299. package/bundle/{chunk-tzrbb0e8.js → chunk-yqb6cfed.js} +2 -2
  300. package/bundle/{chunk-qy1a2tpc.js → chunk-yr35q7q1.js} +1 -1
  301. package/bundle/{chunk-rcyhqkv5.js → chunk-yrfq22a5.js} +1 -1
  302. package/bundle/{chunk-gg7bg3ek.js → chunk-yvjke593.js} +1 -1
  303. package/bundle/{chunk-zfnbk5gy.js → chunk-ywkvq7zb.js} +1 -1
  304. package/bundle/{chunk-p3rp99na.js → chunk-yx1h0b5v.js} +1 -1
  305. package/bundle/chunk-yxeja9kg.js +2 -0
  306. package/bundle/{chunk-mzbr0m2v.js → chunk-yz0pwv2m.js} +1 -1
  307. package/bundle/{chunk-q81m4m9z.js → chunk-z2h1gxyx.js} +1 -1
  308. package/bundle/{chunk-qqne79vp.js → chunk-zdzxsyxs.js} +2 -2
  309. package/bundle/{chunk-yzh4rmrt.js → chunk-zek5c15t.js} +1 -1
  310. package/bundle/{chunk-8dxdeksr.js → chunk-zfd70p01.js} +1 -1
  311. package/bundle/{chunk-pnpre7ys.js → chunk-zqkv8796.js} +1 -1
  312. package/bundle/chunk-ztn2jv26.js +11 -0
  313. package/bundle/index.js +3 -3
  314. package/bundle/parser.worker.js +2 -2
  315. package/bundle/worker.js +1 -1
  316. package/package.json +1 -1
  317. package/bundle/chunk-092bx2yw.js +0 -2
  318. package/bundle/chunk-0jrgk6vk.js +0 -2
  319. package/bundle/chunk-0ne5m1n3.js +0 -2
  320. package/bundle/chunk-0qn52zsd.js +0 -2
  321. package/bundle/chunk-10accb7b.js +0 -2
  322. package/bundle/chunk-13kpdfr7.js +0 -2
  323. package/bundle/chunk-15s8zwgf.js +0 -2
  324. package/bundle/chunk-1bx2sjn6.js +0 -11
  325. package/bundle/chunk-1kgyfja6.js +0 -2
  326. package/bundle/chunk-4dtkj9zg.js +0 -2
  327. package/bundle/chunk-4e9p3e0a.js +0 -2
  328. package/bundle/chunk-4tbqsrsn.js +0 -2
  329. package/bundle/chunk-53kns5wy.js +0 -2
  330. package/bundle/chunk-559ek1ym.js +0 -2
  331. package/bundle/chunk-55wxgsga.js +0 -2
  332. package/bundle/chunk-5ke0yqqz.js +0 -8
  333. package/bundle/chunk-5q1fz2az.js +0 -2
  334. package/bundle/chunk-5sgpjgss.js +0 -10
  335. package/bundle/chunk-88emsbaz.js +0 -2
  336. package/bundle/chunk-8yn64y27.js +0 -2
  337. package/bundle/chunk-8ywa7az5.js +0 -2
  338. package/bundle/chunk-8ywdddts.js +0 -2
  339. package/bundle/chunk-92zjark4.js +0 -2
  340. package/bundle/chunk-a6z0fhta.js +0 -2
  341. package/bundle/chunk-akpssv2d.js +0 -2
  342. package/bundle/chunk-aq28ejhv.js +0 -2
  343. package/bundle/chunk-b10px5g4.js +0 -2
  344. package/bundle/chunk-bha3sbsj.js +0 -2
  345. package/bundle/chunk-bs020a3x.js +0 -2
  346. package/bundle/chunk-bs61sezq.js +0 -2
  347. package/bundle/chunk-cmdjkx32.js +0 -2
  348. package/bundle/chunk-de2rfsaf.js +0 -2
  349. package/bundle/chunk-dncnyzaa.js +0 -2
  350. package/bundle/chunk-dp6zktka.js +0 -2
  351. package/bundle/chunk-dvqdtdza.js +0 -2
  352. package/bundle/chunk-ebabnv33.js +0 -3
  353. package/bundle/chunk-ebdpg3cn.js +0 -2
  354. package/bundle/chunk-eyc6tb5h.js +0 -2
  355. package/bundle/chunk-eze57bty.js +0 -2
  356. package/bundle/chunk-fa47vzfc.js +0 -2
  357. package/bundle/chunk-fe397ph0.js +0 -2
  358. package/bundle/chunk-fr75ytdr.js +0 -2
  359. package/bundle/chunk-fw2tnbt6.js +0 -2
  360. package/bundle/chunk-fwr2qgqb.js +0 -2
  361. package/bundle/chunk-g204pt98.js +0 -2
  362. package/bundle/chunk-gcgmwqhh.js +0 -2
  363. package/bundle/chunk-grdfpd57.js +0 -2
  364. package/bundle/chunk-gw36mrg4.js +0 -2
  365. package/bundle/chunk-h36qec67.js +0 -2
  366. package/bundle/chunk-h9gtymfm.js +0 -2
  367. package/bundle/chunk-h9qn35pn.js +0 -2
  368. package/bundle/chunk-hd8q4msp.js +0 -2
  369. package/bundle/chunk-hhjkezfz.js +0 -2
  370. package/bundle/chunk-hnz570f9.js +0 -3
  371. package/bundle/chunk-jfz8wwk9.js +0 -2
  372. package/bundle/chunk-js6hqmq7.js +0 -2
  373. package/bundle/chunk-k70x182t.js +0 -2
  374. package/bundle/chunk-kwzawx7r.js +0 -2
  375. package/bundle/chunk-m0mek3es.js +0 -2
  376. package/bundle/chunk-m31d2n6h.js +0 -2
  377. package/bundle/chunk-n14qktbg.js +0 -2
  378. package/bundle/chunk-n38h109k.js +0 -17
  379. package/bundle/chunk-nzzsj54n.js +0 -2
  380. package/bundle/chunk-p19qfw59.js +0 -2
  381. package/bundle/chunk-p2yxj9s4.js +0 -2
  382. package/bundle/chunk-ps9p14y6.js +0 -2
  383. package/bundle/chunk-qagc6v17.js +0 -2
  384. package/bundle/chunk-qc0zhbhm.js +0 -2
  385. package/bundle/chunk-r78kfhvz.js +0 -2
  386. package/bundle/chunk-rnd5mnsm.js +0 -2
  387. package/bundle/chunk-schtpyjs.js +0 -2
  388. package/bundle/chunk-sp8ek94w.js +0 -5
  389. package/bundle/chunk-sxwqrvmy.js +0 -28
  390. package/bundle/chunk-syc4b8rt.js +0 -2
  391. package/bundle/chunk-tcs6wgna.js +0 -3
  392. package/bundle/chunk-tf4xwqz7.js +0 -2
  393. package/bundle/chunk-tzg4z74d.js +0 -2
  394. package/bundle/chunk-v8vcwx23.js +0 -2
  395. package/bundle/chunk-vftqwdpg.js +0 -3
  396. package/bundle/chunk-w6rf2knb.js +0 -2
  397. package/bundle/chunk-wh7r96t3.js +0 -2
  398. package/bundle/chunk-wnjqaxze.js +0 -2
  399. package/bundle/chunk-xc9se3c8.js +0 -2
  400. package/bundle/chunk-xfz698bh.js +0 -2
  401. package/bundle/chunk-xxj3sgd5.js +0 -2
  402. package/bundle/chunk-xxvqq7kc.js +0 -2
  403. package/bundle/chunk-ye0mkqb4.js +0 -2
  404. package/bundle/chunk-yfp9y71y.js +0 -2
  405. package/bundle/chunk-yjjh339w.js +0 -2
  406. package/bundle/chunk-yt6vd7a5.js +0 -2
  407. package/bundle/chunk-yzn08nx1.js +0 -2
  408. package/bundle/chunk-yzq3c3dq.js +0 -2
  409. package/bundle/chunk-z1j25911.js +0 -2
  410. package/bundle/chunk-z210dtw1.js +0 -3
  411. package/bundle/chunk-z29ahthm.js +0 -2
  412. package/bundle/chunk-zgre4gc2.js +0 -2
  413. package/bundle/chunk-zthkjx33.js +0 -2
  414. package/bundle/chunk-zwvwbrsc.js +0 -2
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{kQ as YJ}from"./chunk-4sazy0nq.js";import{EventEmitter as B1}from"events";import{Buffer as v1}from"buffer";import{Buffer as g0}from"buffer";import{EventEmitter as g5}from"events";import{mkdir as x5,writeFile as k5}from"fs/promises";import{dirname as n9,isAbsolute as E5,resolve as h5}from"path";import{fileURLToPath as P0}from"url";import{resolve as l7,isAbsolute as Z6,parse as $6}from"path";import{existsSync as H6}from"fs";import{basename as Q6,join as j6}from"path";import u7 from"os";import jZ from"path";import{EventEmitter as _6}from"events";import m7 from"path";import{createRequire as S6}from"module";import{fileURLToPath as R6}from"url";import{existsSync as d6,writeFileSync as a6}from"fs";import{EventEmitter as i6}from"events";import{EventEmitter as w8}from"events";import C8 from"util";import{EventEmitter as x8}from"events";import{EventEmitter as B$}from"events";import{Console as E8}from"console";import h8 from"fs";import b8 from"path";import P9 from"util";import{Writable as f8}from"stream";import{EventEmitter as p8}from"events";import{EventEmitter as C$}from"events";var D1=Object.defineProperty,Y1=(J)=>J;function _1(J,Z){this[J]=Y1.bind(null,Z)}var W1=(J,Z)=>{for(var $ in Z)D1(J,$,{get:Z[$],enumerable:!0,configurable:!0,set:_1.bind(Z,$)})};var X1={};W1(X1,{default:()=>T0,Wrap:()=>JZ,Unit:()=>VJ,PositionType:()=>eJ,Overflow:()=>rJ,NodeType:()=>w2,MeasureMode:()=>SJ,LogLevel:()=>zJ,Justify:()=>OJ,Gutter:()=>qJ,FlexDirection:()=>MJ,ExperimentalFeature:()=>w9,Errata:()=>VZ,Edge:()=>v,Display:()=>FJ,Direction:()=>yJ,Dimension:()=>qZ,BoxSizing:()=>zZ,Align:()=>e});var A1=(()=>{var J=import.meta.url;return function(Z){Z=Z||{};var $;$||($=typeof Z<"u"?Z:{});var H,Q;$.ready=new Promise(function(U,D){H=U,Q=D});var j=Object.assign({},$),G="";typeof document<"u"&&document.currentScript&&(G=document.currentScript.src),J&&(G=J),G.indexOf("blob:")!==0?G=G.substr(0,G.replace(/[?#].*/,"").lastIndexOf("/")+1):G="";var L=$.print||console.log.bind(console),Y=$.printErr||console.warn.bind(console);Object.assign($,j),j=null;var _;$.wasmBinary&&(_=$.wasmBinary);var W=$.noExitRuntime||!0;typeof WebAssembly!="object"&&i("no native wasm support detected");var K,q=!1;function N(U,D,X){X=D+X;for(var V="";!(D>=X);){var B=U[D++];if(!B)break;if(B&128){var S=U[D++]&63;if((B&224)==192)V+=String.fromCharCode((B&31)<<6|S);else{var M=U[D++]&63;B=(B&240)==224?(B&15)<<12|S<<6|M:(B&7)<<18|S<<12|M<<6|U[D++]&63,65536>B?V+=String.fromCharCode(B):(B-=65536,V+=String.fromCharCode(55296|B>>10,56320|B&1023))}}else V+=String.fromCharCode(B)}return V}var z,P,O,A,I,w,C,T,g;function F(){var U=K.buffer;z=U,$.HEAP8=P=new Int8Array(U),$.HEAP16=A=new Int16Array(U),$.HEAP32=w=new Int32Array(U),$.HEAPU8=O=new Uint8Array(U),$.HEAPU16=I=new Uint16Array(U),$.HEAPU32=C=new Uint32Array(U),$.HEAPF32=T=new Float32Array(U),$.HEAPF64=g=new Float64Array(U)}var R,f=[],c=[],u=[];function d(){var U=$.preRun.shift();f.unshift(U)}var p=0,m=null,ZJ=null;function i(U){if($.onAbort)$.onAbort(U);throw U="Aborted("+U+")",Y(U),q=!0,U=new WebAssembly.RuntimeError(U+". Build with -sASSERTIONS for more info."),Q(U),U}function t(U){return U.startsWith("data:application/octet-stream;base64,")}var jJ="data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMk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AWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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";if(!t(jJ)){var KZ=jJ;jJ=$.locateFile?$.locateFile(KZ,G):G+KZ}function $7(){var U=jJ;try{if(U==jJ&&_)return new Uint8Array(_);if(t(U))try{var D=L1(U.slice(37)),X=new Uint8Array(D.length);for(U=0;U<D.length;++U)X[U]=D.charCodeAt(U);var V=X}catch(S){throw Error("Converting base64 string to bytes failed.")}else V=void 0;var B=V;if(B)return B;throw"both async and sync fetching of the wasm failed"}catch(S){i(S)}}function y$(){return _||typeof fetch!="function"?Promise.resolve().then(function(){return $7()}):fetch(jJ,{credentials:"same-origin"}).then(function(U){if(!U.ok)throw"failed to load wasm binary file at '"+jJ+"'";return U.arrayBuffer()}).catch(function(){return $7()})}function f0(U){for(;0<U.length;)U.shift()($)}function H7(U){if(U===void 0)return"_unknown";U=U.replace(/[^a-zA-Z0-9_]/g,"$");var D=U.charCodeAt(0);return 48<=D&&57>=D?"_"+U:U}function p0(U,D){return U=H7(U),function(){return D.apply(this,arguments)}}var EJ=[{},{value:void 0},{value:null},{value:!0},{value:!1}],v0=[];function eZ(U){var D=Error,X=p0(U,function(V){this.name=U,this.message=V,V=Error(V).stack,V!==void 0&&(this.stack=this.toString()+`
2
+ import{PO as YJ}from"./chunk-f83wv08n.js";import{EventEmitter as B1}from"events";import{Buffer as v1}from"buffer";import{Buffer as g0}from"buffer";import{EventEmitter as g5}from"events";import{mkdir as x5,writeFile as k5}from"fs/promises";import{dirname as n9,isAbsolute as E5,resolve as h5}from"path";import{fileURLToPath as P0}from"url";import{resolve as l7,isAbsolute as Z6,parse as $6}from"path";import{existsSync as H6}from"fs";import{basename as Q6,join as j6}from"path";import u7 from"os";import jZ from"path";import{EventEmitter as _6}from"events";import m7 from"path";import{createRequire as S6}from"module";import{fileURLToPath as R6}from"url";import{existsSync as d6,writeFileSync as a6}from"fs";import{EventEmitter as i6}from"events";import{EventEmitter as w8}from"events";import C8 from"util";import{EventEmitter as x8}from"events";import{EventEmitter as B$}from"events";import{Console as E8}from"console";import h8 from"fs";import b8 from"path";import P9 from"util";import{Writable as f8}from"stream";import{EventEmitter as p8}from"events";import{EventEmitter as C$}from"events";var D1=Object.defineProperty,Y1=(J)=>J;function _1(J,Z){this[J]=Y1.bind(null,Z)}var W1=(J,Z)=>{for(var $ in Z)D1(J,$,{get:Z[$],enumerable:!0,configurable:!0,set:_1.bind(Z,$)})};var X1={};W1(X1,{default:()=>T0,Wrap:()=>JZ,Unit:()=>VJ,PositionType:()=>eJ,Overflow:()=>rJ,NodeType:()=>w2,MeasureMode:()=>SJ,LogLevel:()=>zJ,Justify:()=>OJ,Gutter:()=>qJ,FlexDirection:()=>MJ,ExperimentalFeature:()=>w9,Errata:()=>VZ,Edge:()=>v,Display:()=>FJ,Direction:()=>yJ,Dimension:()=>qZ,BoxSizing:()=>zZ,Align:()=>e});var A1=(()=>{var J=import.meta.url;return function(Z){Z=Z||{};var $;$||($=typeof Z<"u"?Z:{});var H,Q;$.ready=new Promise(function(U,D){H=U,Q=D});var j=Object.assign({},$),G="";typeof document<"u"&&document.currentScript&&(G=document.currentScript.src),J&&(G=J),G.indexOf("blob:")!==0?G=G.substr(0,G.replace(/[?#].*/,"").lastIndexOf("/")+1):G="";var L=$.print||console.log.bind(console),Y=$.printErr||console.warn.bind(console);Object.assign($,j),j=null;var _;$.wasmBinary&&(_=$.wasmBinary);var W=$.noExitRuntime||!0;typeof WebAssembly!="object"&&i("no native wasm support detected");var K,q=!1;function N(U,D,X){X=D+X;for(var V="";!(D>=X);){var B=U[D++];if(!B)break;if(B&128){var S=U[D++]&63;if((B&224)==192)V+=String.fromCharCode((B&31)<<6|S);else{var M=U[D++]&63;B=(B&240)==224?(B&15)<<12|S<<6|M:(B&7)<<18|S<<12|M<<6|U[D++]&63,65536>B?V+=String.fromCharCode(B):(B-=65536,V+=String.fromCharCode(55296|B>>10,56320|B&1023))}}else V+=String.fromCharCode(B)}return V}var z,P,O,A,I,w,C,T,g;function F(){var U=K.buffer;z=U,$.HEAP8=P=new Int8Array(U),$.HEAP16=A=new Int16Array(U),$.HEAP32=w=new Int32Array(U),$.HEAPU8=O=new Uint8Array(U),$.HEAPU16=I=new Uint16Array(U),$.HEAPU32=C=new Uint32Array(U),$.HEAPF32=T=new Float32Array(U),$.HEAPF64=g=new Float64Array(U)}var R,f=[],c=[],u=[];function d(){var U=$.preRun.shift();f.unshift(U)}var p=0,m=null,ZJ=null;function i(U){if($.onAbort)$.onAbort(U);throw U="Aborted("+U+")",Y(U),q=!0,U=new WebAssembly.RuntimeError(U+". Build with -sASSERTIONS for more info."),Q(U),U}function t(U){return U.startsWith("data:application/octet-stream;base64,")}var jJ="data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMk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AWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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";if(!t(jJ)){var KZ=jJ;jJ=$.locateFile?$.locateFile(KZ,G):G+KZ}function $7(){var U=jJ;try{if(U==jJ&&_)return new Uint8Array(_);if(t(U))try{var D=L1(U.slice(37)),X=new Uint8Array(D.length);for(U=0;U<D.length;++U)X[U]=D.charCodeAt(U);var V=X}catch(S){throw Error("Converting base64 string to bytes failed.")}else V=void 0;var B=V;if(B)return B;throw"both async and sync fetching of the wasm failed"}catch(S){i(S)}}function y$(){return _||typeof fetch!="function"?Promise.resolve().then(function(){return $7()}):fetch(jJ,{credentials:"same-origin"}).then(function(U){if(!U.ok)throw"failed to load wasm binary file at '"+jJ+"'";return U.arrayBuffer()}).catch(function(){return $7()})}function f0(U){for(;0<U.length;)U.shift()($)}function H7(U){if(U===void 0)return"_unknown";U=U.replace(/[^a-zA-Z0-9_]/g,"$");var D=U.charCodeAt(0);return 48<=D&&57>=D?"_"+U:U}function p0(U,D){return U=H7(U),function(){return D.apply(this,arguments)}}var EJ=[{},{value:void 0},{value:null},{value:!0},{value:!1}],v0=[];function eZ(U){var D=Error,X=p0(U,function(V){this.name=U,this.message=V,V=Error(V).stack,V!==void 0&&(this.stack=this.toString()+`
3
3
  `+V.replace(/^Error(:[^\n]*)?\n/,""))});return X.prototype=Object.create(D.prototype),X.prototype.constructor=X,X.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},X}var wZ=void 0;function n(U){throw new wZ(U)}var hZ=(U)=>{return U||n("Cannot use deleted val. handle = "+U),EJ[U].value},J0=(U)=>{switch(U){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var D=v0.length?v0.pop():EJ.length;return EJ[D]={ga:1,value:U},D}},Q7=void 0,j7=void 0;function WJ(U){for(var D="";O[U];)D+=j7[O[U++]];return D}var bZ=[];function y0(){for(;bZ.length;){var U=bZ.pop();U.M.$=!1,U.delete()}}var fZ=void 0,mJ={};function c0(U,D){for(D===void 0&&n("ptr should not be undefined");U.R;)D=U.ba(D),U=U.R;return D}var WZ={};function G7(U){U=V7(U);var D=WJ(U);return iJ(U),D}function L7(U,D){var X=WZ[U];return X===void 0&&n(D+" has unknown type "+G7(U)),X}function Z0(){}var l0=!1;function U7(U){--U.count.value,U.count.value===0&&(U.T?U.U.W(U.T):U.P.N.W(U.O))}function D7(U,D,X){if(D===X)return U;if(X.R===void 0)return null;return U=D7(U,D,X.R),U===null?null:X.na(U)}var Y7={};function c$(U,D){return D=c0(U,D),mJ[D]}var _7=void 0;function $0(U){throw new _7(U)}function H0(U,D){return D.P&&D.O||$0("makeClassHandle requires ptr and ptrType"),!!D.U!==!!D.T&&$0("Both smartPtrType and smartPtr must be specified"),D.count={value:1},FZ(Object.create(U,{M:{value:D}}))}function FZ(U){if(typeof FinalizationRegistry>"u")return FZ=(D)=>D,U;return l0=new FinalizationRegistry((D)=>{U7(D.M)}),FZ=(D)=>{var X=D.M;return X.T&&l0.register(D,{M:X},D),D},Z0=(D)=>{l0.unregister(D)},FZ(U)}var Q0={};function u0(U){for(;U.length;){var D=U.pop();U.pop()(D)}}function pZ(U){return this.fromWireType(w[U>>2])}var SZ={},j0={};function $Z(U,D,X){function V(x){x=X(x),x.length!==U.length&&$0("Mismatched type converter count");for(var E=0;E<U.length;++E)dJ(U[E],x[E])}U.forEach(function(x){j0[x]=D});var B=Array(D.length),S=[],M=0;D.forEach((x,E)=>{WZ.hasOwnProperty(x)?B[E]=WZ[x]:(S.push(x),SZ.hasOwnProperty(x)||(SZ[x]=[]),SZ[x].push(()=>{B[E]=WZ[x],++M,M===S.length&&V(B)}))}),S.length===0&&V(B)}function m0(U){switch(U){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw TypeError("Unknown type size: "+U)}}function dJ(U,D,X={}){if(!("argPackAdvance"in D))throw TypeError("registerType registeredInstance requires argPackAdvance");var V=D.name;if(U||n('type "'+V+'" must have a positive integer typeid pointer'),WZ.hasOwnProperty(U)){if(X.ua)return;n("Cannot register type '"+V+"' twice")}WZ[U]=D,delete j0[U],SZ.hasOwnProperty(U)&&(D=SZ[U],delete SZ[U],D.forEach((B)=>B()))}function d0(U){n(U.M.P.N.name+" instance already deleted")}function HZ(){}function a0(U,D,X){if(U[D].S===void 0){var V=U[D];U[D]=function(){return U[D].S.hasOwnProperty(arguments.length)||n("Function '"+X+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+U[D].S+")!"),U[D].S[arguments.length].apply(this,arguments)},U[D].S=[],U[D].S[V.Z]=V}}function l$(U,D){$.hasOwnProperty(U)?(n("Cannot register public name '"+U+"' twice"),a0($,U,U),$.hasOwnProperty(void 0)&&n("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),$[U].S[void 0]=D):$[U]=D}function u$(U,D,X,V,B,S,M,x){this.name=U,this.constructor=D,this.X=X,this.W=V,this.R=B,this.pa=S,this.ba=M,this.na=x,this.ja=[]}function i0(U,D,X){for(;D!==X;)D.ba||n("Expected null or instance of "+X.name+", got an instance of "+D.name),U=D.ba(U),D=D.R;return U}function m$(U,D){if(D===null)return this.ea&&n("null is not a valid "+this.name),0;return D.M||n('Cannot pass "'+t0(D)+'" as a '+this.name),D.M.O||n("Cannot pass deleted object as a pointer of type "+this.name),i0(D.M.O,D.M.P.N,this.N)}function d$(U,D){if(D===null){if(this.ea&&n("null is not a valid "+this.name),this.da){var X=this.fa();return U!==null&&U.push(this.W,X),X}return 0}if(D.M||n('Cannot pass "'+t0(D)+'" as a '+this.name),D.M.O||n("Cannot pass deleted object as a pointer of type "+this.name),!this.ca&&D.M.P.ca&&n("Cannot convert argument of type "+(D.M.U?D.M.U.name:D.M.P.name)+" to parameter type "+this.name),X=i0(D.M.O,D.M.P.N,this.N),this.da)switch(D.M.T===void 0&&n("Passing raw pointer to smart pointer is illegal"),this.Ba){case 0:D.M.U===this?X=D.M.T:n("Cannot convert argument of type "+(D.M.U?D.M.U.name:D.M.P.name)+" to parameter type "+this.name);break;case 1:X=D.M.T;break;case 2:if(D.M.U===this)X=D.M.T;else{var V=D.clone();X=this.xa(X,J0(function(){V.delete()})),U!==null&&U.push(this.W,X)}break;default:n("Unsupporting sharing policy")}return X}function a$(U,D){if(D===null)return this.ea&&n("null is not a valid "+this.name),0;return D.M||n('Cannot pass "'+t0(D)+'" as a '+this.name),D.M.O||n("Cannot pass deleted object as a pointer of type "+this.name),D.M.P.ca&&n("Cannot convert argument of type "+D.M.P.name+" to parameter type "+this.name),i0(D.M.O,D.M.P.N,this.N)}function aJ(U,D,X,V){this.name=U,this.N=D,this.ea=X,this.ca=V,this.da=!1,this.W=this.xa=this.fa=this.ka=this.Ba=this.wa=void 0,D.R!==void 0?this.toWireType=d$:(this.toWireType=V?m$:a$,this.V=null)}function i$(U,D){$.hasOwnProperty(U)||$0("Replacing nonexistant public symbol"),$[U]=D,$[U].Z=void 0}function n$(U,D){var X=[];return function(){if(X.length=0,Object.assign(X,arguments),U.includes("j")){var V=$["dynCall_"+U];V=X&&X.length?V.apply(null,[D].concat(X)):V.call(null,D)}else V=R.get(D).apply(null,X);return V}}function hJ(U,D){U=WJ(U);var X=U.includes("j")?n$(U,D):R.get(D);return typeof X!="function"&&n("unknown function pointer with signature "+U+": "+D),X}var W7=void 0;function G0(U,D){function X(S){B[S]||WZ[S]||(j0[S]?j0[S].forEach(X):(V.push(S),B[S]=!0))}var V=[],B={};throw D.forEach(X),new W7(U+": "+V.map(G7).join([", "]))}function n0(U,D,X,V,B){var S=D.length;2>S&&n("argTypes array size mismatch! Must at least get return value and 'this' types!");var M=D[1]!==null&&X!==null,x=!1;for(X=1;X<D.length;++X)if(D[X]!==null&&D[X].V===void 0){x=!0;break}var E=D[0].name!=="void",k=S-2,b=Array(k),l=[],r=[];return function(){if(arguments.length!==k&&n("function "+U+" called with "+arguments.length+" arguments, expected "+k+" args!"),r.length=0,l.length=M?2:1,l[0]=B,M){var UJ=D[1].toWireType(r,this);l[1]=UJ}for(var JJ=0;JJ<k;++JJ)b[JJ]=D[JJ+2].toWireType(r,arguments[JJ]),l.push(b[JJ]);if(JJ=V.apply(null,l),x)u0(r);else for(var wJ=M?1:2;wJ<D.length;wJ++){var bJ=wJ===1?UJ:b[wJ-2];D[wJ].V!==null&&D[wJ].V(bJ)}return UJ=E?D[0].fromWireType(JJ):void 0,UJ}}function s0(U,D){for(var X=[],V=0;V<U;V++)X.push(C[D+4*V>>2]);return X}function o0(U){4<U&&--EJ[U].ga===0&&(EJ[U]=void 0,v0.push(U))}function t0(U){if(U===null)return"null";var D=typeof U;return D==="object"||D==="array"||D==="function"?U.toString():""+U}function s$(U,D){switch(D){case 2:return function(X){return this.fromWireType(T[X>>2])};case 3:return function(X){return this.fromWireType(g[X>>3])};default:throw TypeError("Unknown float type: "+U)}}function o$(U,D,X){switch(D){case 0:return X?function(V){return P[V]}:function(V){return O[V]};case 1:return X?function(V){return A[V>>1]}:function(V){return I[V>>1]};case 2:return X?function(V){return w[V>>2]}:function(V){return C[V>>2]};default:throw TypeError("Unknown integer type: "+U)}}function t$(U,D){for(var X="",V=0;!(V>=D/2);++V){var B=A[U+2*V>>1];if(B==0)break;X+=String.fromCharCode(B)}return X}function r$(U,D,X){if(X===void 0&&(X=2147483647),2>X)return 0;X-=2;var V=D;X=X<2*U.length?X/2:U.length;for(var B=0;B<X;++B)A[D>>1]=U.charCodeAt(B),D+=2;return A[D>>1]=0,D-V}function e$(U){return 2*U.length}function J1(U,D){for(var X=0,V="";!(X>=D/4);){var B=w[U+4*X>>2];if(B==0)break;++X,65536<=B?(B-=65536,V+=String.fromCharCode(55296|B>>10,56320|B&1023)):V+=String.fromCharCode(B)}return V}function Z1(U,D,X){if(X===void 0&&(X=2147483647),4>X)return 0;var V=D;X=V+X-4;for(var B=0;B<U.length;++B){var S=U.charCodeAt(B);if(55296<=S&&57343>=S){var M=U.charCodeAt(++B);S=65536+((S&1023)<<10)|M&1023}if(w[D>>2]=S,D+=4,D+4>X)break}return w[D>>2]=0,D-V}function $1(U){for(var D=0,X=0;X<U.length;++X){var V=U.charCodeAt(X);55296<=V&&57343>=V&&++X,D+=4}return D}var H1={};function X7(U){var D=H1[U];return D===void 0?WJ(U):D}var L0=[];function Q1(U){var D=L0.length;return L0.push(U),D}function j1(U,D){for(var X=Array(U),V=0;V<U;++V)X[V]=L7(C[D+4*V>>2],"parameter "+V);return X}var A7=[],G1=[null,[],[]];wZ=$.BindingError=eZ("BindingError"),$.count_emval_handles=function(){for(var U=0,D=5;D<EJ.length;++D)EJ[D]!==void 0&&++U;return U},$.get_first_emval=function(){for(var U=5;U<EJ.length;++U)if(EJ[U]!==void 0)return EJ[U];return null},Q7=$.PureVirtualError=eZ("PureVirtualError");for(var N7=Array(256),U0=0;256>U0;++U0)N7[U0]=String.fromCharCode(U0);j7=N7,$.getInheritedInstanceCount=function(){return Object.keys(mJ).length},$.getLiveInheritedInstances=function(){var U=[],D;for(D in mJ)mJ.hasOwnProperty(D)&&U.push(mJ[D]);return U},$.flushPendingDeletes=y0,$.setDelayFunction=function(U){fZ=U,bZ.length&&fZ&&fZ(y0)},_7=$.InternalError=eZ("InternalError"),HZ.prototype.isAliasOf=function(U){if(!(this instanceof HZ&&U instanceof HZ))return!1;var D=this.M.P.N,X=this.M.O,V=U.M.P.N;for(U=U.M.O;D.R;)X=D.ba(X),D=D.R;for(;V.R;)U=V.ba(U),V=V.R;return D===V&&X===U},HZ.prototype.clone=function(){if(this.M.O||d0(this),this.M.aa)return this.M.count.value+=1,this;var U=FZ,D=Object,X=D.create,V=Object.getPrototypeOf(this),B=this.M;return U=U(X.call(D,V,{M:{value:{count:B.count,$:B.$,aa:B.aa,O:B.O,P:B.P,T:B.T,U:B.U}}})),U.M.count.value+=1,U.M.$=!1,U},HZ.prototype.delete=function(){this.M.O||d0(this),this.M.$&&!this.M.aa&&n("Object already scheduled for deletion"),Z0(this),U7(this.M),this.M.aa||(this.M.T=void 0,this.M.O=void 0)},HZ.prototype.isDeleted=function(){return!this.M.O},HZ.prototype.deleteLater=function(){return this.M.O||d0(this),this.M.$&&!this.M.aa&&n("Object already scheduled for deletion"),bZ.push(this),bZ.length===1&&fZ&&fZ(y0),this.M.$=!0,this},aJ.prototype.qa=function(U){return this.ka&&(U=this.ka(U)),U},aJ.prototype.ha=function(U){this.W&&this.W(U)},aJ.prototype.argPackAdvance=8,aJ.prototype.readValueFromPointer=pZ,aJ.prototype.deleteObject=function(U){if(U!==null)U.delete()},aJ.prototype.fromWireType=function(U){function D(){return this.da?H0(this.N.X,{P:this.wa,O:X,U:this,T:U}):H0(this.N.X,{P:this,O:U})}var X=this.qa(U);if(!X)return this.ha(U),null;var V=c$(this.N,X);if(V!==void 0){if(V.M.count.value===0)return V.M.O=X,V.M.T=U,V.clone();return V=V.clone(),this.ha(U),V}if(V=this.N.pa(X),V=Y7[V],!V)return D.call(this);V=this.ca?V.la:V.pointerType;var B=D7(X,this.N,V.N);return B===null?D.call(this):this.da?H0(V.N.X,{P:V,O:B,U:this,T:U}):H0(V.N.X,{P:V,O:B})},W7=$.UnboundTypeError=eZ("UnboundTypeError");var L1=typeof atob=="function"?atob:function(U){var D="",X=0;U=U.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var V="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(U.charAt(X++)),B="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(U.charAt(X++)),S="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(U.charAt(X++)),M="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(U.charAt(X++));V=V<<2|B>>4,B=(B&15)<<4|S>>2;var x=(S&3)<<6|M;D+=String.fromCharCode(V),S!==64&&(D+=String.fromCharCode(B)),M!==64&&(D+=String.fromCharCode(x))}while(X<U.length);return D},U1={l:function(U,D,X,V){i("Assertion failed: "+(U?N(O,U):"")+", at: "+[D?D?N(O,D):"":"unknown filename",X,V?V?N(O,V):"":"unknown function"])},q:function(U,D,X){U=WJ(U),D=L7(D,"wrapper"),X=hZ(X);var V=[].slice,B=D.N,S=B.X,M=B.R.X,x=B.R.constructor;U=p0(U,function(){B.R.ja.forEach(function(k){if(this[k]===M[k])throw new Q7("Pure virtual function "+k+" must be implemented in JavaScript")}.bind(this)),Object.defineProperty(this,"__parent",{value:S}),this.__construct.apply(this,V.call(arguments))}),S.__construct=function(){this===S&&n("Pass correct 'this' to __construct");var k=x.implement.apply(void 0,[this].concat(V.call(arguments)));Z0(k);var b=k.M;k.notifyOnDestruction(),b.aa=!0,Object.defineProperties(this,{M:{value:b}}),FZ(this),k=b.O,k=c0(B,k),mJ.hasOwnProperty(k)?n("Tried to register registered instance: "+k):mJ[k]=this},S.__destruct=function(){this===S&&n("Pass correct 'this' to __destruct"),Z0(this);var k=this.M.O;k=c0(B,k),mJ.hasOwnProperty(k)?delete mJ[k]:n("Tried to unregister unregistered instance: "+k)},U.prototype=Object.create(S);for(var E in X)U.prototype[E]=X[E];return J0(U)},j:function(U){var D=Q0[U];delete Q0[U];var{fa:X,W:V,ia:B}=D,S=B.map((M)=>M.ta).concat(B.map((M)=>M.za));$Z([U],S,(M)=>{var x={};return B.forEach((E,k)=>{var b=M[k],l=E.ra,r=E.sa,UJ=M[k+B.length],JJ=E.ya,wJ=E.Aa;x[E.oa]={read:(bJ)=>b.fromWireType(l(r,bJ)),write:(bJ,vZ)=>{var nJ=[];JJ(wJ,bJ,UJ.toWireType(nJ,vZ)),u0(nJ)}}}),[{name:D.name,fromWireType:function(E){var k={},b;for(b in x)k[b]=x[b].read(E);return V(E),k},toWireType:function(E,k){for(var b in x)if(!(b in k))throw TypeError('Missing field: "'+b+'"');var l=X();for(b in x)x[b].write(l,k[b]);return E!==null&&E.push(V,l),l},argPackAdvance:8,readValueFromPointer:pZ,V}]})},v:function(){},B:function(U,D,X,V,B){var S=m0(X);D=WJ(D),dJ(U,{name:D,fromWireType:function(M){return!!M},toWireType:function(M,x){return x?V:B},argPackAdvance:8,readValueFromPointer:function(M){if(X===1)var x=P;else if(X===2)x=A;else if(X===4)x=w;else throw TypeError("Unknown boolean type size: "+D);return this.fromWireType(x[M>>S])},V:null})},f:function(U,D,X,V,B,S,M,x,E,k,b,l,r){b=WJ(b),S=hJ(B,S),x&&(x=hJ(M,x)),k&&(k=hJ(E,k)),r=hJ(l,r);var UJ=H7(b);l$(UJ,function(){G0("Cannot construct "+b+" due to unbound types",[V])}),$Z([U,D,X],V?[V]:[],function(JJ){if(JJ=JJ[0],V)var wJ=JJ.N,bJ=wJ.X;else bJ=HZ.prototype;JJ=p0(UJ,function(){if(Object.getPrototypeOf(this)!==vZ)throw new wZ("Use 'new' to construct "+b);if(nJ.Y===void 0)throw new wZ(b+" has no accessible constructor");var q7=nJ.Y[arguments.length];if(q7===void 0)throw new wZ("Tried to invoke ctor of "+b+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(nJ.Y).toString()+") parameters instead!");return q7.apply(this,arguments)});var vZ=Object.create(bJ,{constructor:{value:JJ}});JJ.prototype=vZ;var nJ=new u$(b,JJ,vZ,r,wJ,S,x,k);wJ=new aJ(b,nJ,!0,!1),bJ=new aJ(b+"*",nJ,!1,!1);var z7=new aJ(b+" const*",nJ,!1,!0);return Y7[U]={pointerType:bJ,la:z7},i$(UJ,JJ),[wJ,bJ,z7]})},d:function(U,D,X,V,B,S,M){var x=s0(X,V);D=WJ(D),S=hJ(B,S),$Z([],[U],function(E){function k(){G0("Cannot call "+b+" due to unbound types",x)}E=E[0];var b=E.name+"."+D;D.startsWith("@@")&&(D=Symbol[D.substring(2)]);var l=E.N.constructor;return l[D]===void 0?(k.Z=X-1,l[D]=k):(a0(l,D,b),l[D].S[X-1]=k),$Z([],x,function(r){return r=n0(b,[r[0],null].concat(r.slice(1)),null,S,M),l[D].S===void 0?(r.Z=X-1,l[D]=r):l[D].S[X-1]=r,[]}),[]})},p:function(U,D,X,V,B,S){0<D||i();var M=s0(D,X);B=hJ(V,B),$Z([],[U],function(x){x=x[0];var E="constructor "+x.name;if(x.N.Y===void 0&&(x.N.Y=[]),x.N.Y[D-1]!==void 0)throw new wZ("Cannot register multiple constructors with identical number of parameters ("+(D-1)+") for class '"+x.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return x.N.Y[D-1]=()=>{G0("Cannot construct "+x.name+" due to unbound types",M)},$Z([],M,function(k){return k.splice(1,0,null),x.N.Y[D-1]=n0(E,k,null,B,S),[]}),[]})},a:function(U,D,X,V,B,S,M,x){var E=s0(X,V);D=WJ(D),S=hJ(B,S),$Z([],[U],function(k){function b(){G0("Cannot call "+l+" due to unbound types",E)}k=k[0];var l=k.name+"."+D;D.startsWith("@@")&&(D=Symbol[D.substring(2)]),x&&k.N.ja.push(D);var r=k.N.X,UJ=r[D];return UJ===void 0||UJ.S===void 0&&UJ.className!==k.name&&UJ.Z===X-2?(b.Z=X-2,b.className=k.name,r[D]=b):(a0(r,D,l),r[D].S[X-2]=b),$Z([],E,function(JJ){return JJ=n0(l,JJ,k,S,M),r[D].S===void 0?(JJ.Z=X-2,r[D]=JJ):r[D].S[X-2]=JJ,[]}),[]})},A:function(U,D){D=WJ(D),dJ(U,{name:D,fromWireType:function(X){var V=hZ(X);return o0(X),V},toWireType:function(X,V){return J0(V)},argPackAdvance:8,readValueFromPointer:pZ,V:null})},n:function(U,D,X){X=m0(X),D=WJ(D),dJ(U,{name:D,fromWireType:function(V){return V},toWireType:function(V,B){return B},argPackAdvance:8,readValueFromPointer:s$(D,X),V:null})},e:function(U,D,X,V,B){D=WJ(D),B===-1&&(B=4294967295),B=m0(X);var S=(x)=>x;if(V===0){var M=32-8*X;S=(x)=>x<<M>>>M}X=D.includes("unsigned")?function(x,E){return E>>>0}:function(x,E){return E},dJ(U,{name:D,fromWireType:S,toWireType:X,argPackAdvance:8,readValueFromPointer:o$(D,B,V!==0),V:null})},b:function(U,D,X){function V(S){S>>=2;var M=C;return new B(z,M[S+1],M[S])}var B=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][D];X=WJ(X),dJ(U,{name:X,fromWireType:V,argPackAdvance:8,readValueFromPointer:V},{ua:!0})},o:function(U,D){D=WJ(D);var X=D==="std::string";dJ(U,{name:D,fromWireType:function(V){var B=C[V>>2],S=V+4;if(X)for(var M=S,x=0;x<=B;++x){var E=S+x;if(x==B||O[E]==0){if(M=M?N(O,M,E-M):"",k===void 0)var k=M;else k+=String.fromCharCode(0),k+=M;M=E+1}}else{k=Array(B);for(x=0;x<B;++x)k[x]=String.fromCharCode(O[S+x]);k=k.join("")}return iJ(V),k},toWireType:function(V,B){B instanceof ArrayBuffer&&(B=new Uint8Array(B));var S,M=typeof B=="string";if(M||B instanceof Uint8Array||B instanceof Uint8ClampedArray||B instanceof Int8Array||n("Cannot pass non-string to std::string"),X&&M){var x=0;for(S=0;S<B.length;++S){var E=B.charCodeAt(S);127>=E?x++:2047>=E?x+=2:55296<=E&&57343>=E?(x+=4,++S):x+=3}S=x}else S=B.length;if(x=r0(4+S+1),E=x+4,C[x>>2]=S,X&&M){if(M=E,E=S+1,S=O,0<E){E=M+E-1;for(var k=0;k<B.length;++k){var b=B.charCodeAt(k);if(55296<=b&&57343>=b){var l=B.charCodeAt(++k);b=65536+((b&1023)<<10)|l&1023}if(127>=b){if(M>=E)break;S[M++]=b}else{if(2047>=b){if(M+1>=E)break;S[M++]=192|b>>6}else{if(65535>=b){if(M+2>=E)break;S[M++]=224|b>>12}else{if(M+3>=E)break;S[M++]=240|b>>18,S[M++]=128|b>>12&63}S[M++]=128|b>>6&63}S[M++]=128|b&63}}S[M]=0}}else if(M)for(M=0;M<S;++M)k=B.charCodeAt(M),255<k&&(iJ(E),n("String has UTF-16 code units that do not fit in 8 bits")),O[E+M]=k;else for(M=0;M<S;++M)O[E+M]=B[M];return V!==null&&V.push(iJ,x),x},argPackAdvance:8,readValueFromPointer:pZ,V:function(V){iJ(V)}})},i:function(U,D,X){if(X=WJ(X),D===2)var V=t$,B=r$,S=e$,M=()=>I,x=1;else D===4&&(V=J1,B=Z1,S=$1,M=()=>C,x=2);dJ(U,{name:X,fromWireType:function(E){for(var k=C[E>>2],b=M(),l,r=E+4,UJ=0;UJ<=k;++UJ){var JJ=E+4+UJ*D;if(UJ==k||b[JJ>>x]==0)r=V(r,JJ-r),l===void 0?l=r:(l+=String.fromCharCode(0),l+=r),r=JJ+D}return iJ(E),l},toWireType:function(E,k){typeof k!="string"&&n("Cannot pass non-string to C++ string type "+X);var b=S(k),l=r0(4+b+D);return C[l>>2]=b>>x,B(k,l+4,b+D),E!==null&&E.push(iJ,l),l},argPackAdvance:8,readValueFromPointer:pZ,V:function(E){iJ(E)}})},k:function(U,D,X,V,B,S){Q0[U]={name:WJ(D),fa:hJ(X,V),W:hJ(B,S),ia:[]}},h:function(U,D,X,V,B,S,M,x,E,k){Q0[U].ia.push({oa:WJ(D),ta:X,ra:hJ(V,B),sa:S,za:M,ya:hJ(x,E),Aa:k})},C:function(U,D){D=WJ(D),dJ(U,{va:!0,name:D,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},s:function(U,D,X,V,B){U=L0[U],D=hZ(D),X=X7(X);var S=[];return C[V>>2]=J0(S),U(D,X,S,B)},t:function(U,D,X,V){U=L0[U],D=hZ(D),X=X7(X),U(D,X,null,V)},g:o0,m:function(U,D){var X=j1(U,D),V=X[0];D=V.name+"_$"+X.slice(1).map(function(M){return M.name}).join("_")+"$";var B=A7[D];if(B!==void 0)return B;var S=Array(U-1);return B=Q1((M,x,E,k)=>{for(var b=0,l=0;l<U-1;++l)S[l]=X[l+1].readValueFromPointer(k+b),b+=X[l+1].argPackAdvance;M=M[x].apply(M,S);for(l=0;l<U-1;++l)X[l+1].ma&&X[l+1].ma(S[l]);if(!V.va)return V.toWireType(E,M)}),A7[D]=B},D:function(U){4<U&&(EJ[U].ga+=1)},r:function(U){var D=hZ(U);u0(D),o0(U)},c:function(){i("")},x:function(U,D,X){O.copyWithin(U,D,D+X)},w:function(U){var D=O.length;if(U>>>=0,2147483648<U)return!1;for(var X=1;4>=X;X*=2){var V=D*(1+0.2/X);V=Math.min(V,U+100663296);var B=Math;V=Math.max(U,V),B=B.min.call(B,2147483648,V+(65536-V%65536)%65536);J:{try{K.grow(B-z.byteLength+65535>>>16),F();var S=1;break J}catch(M){}S=void 0}if(S)return!0}return!1},z:function(){return 52},u:function(){return 70},y:function(U,D,X,V){for(var B=0,S=0;S<X;S++){var M=C[D>>2],x=C[D+4>>2];D+=8;for(var E=0;E<x;E++){var k=O[M+E],b=G1[U];k===0||k===10?((U===1?L:Y)(N(b,0)),b.length=0):b.push(k)}B+=x}return C[V>>2]=B,0}};(function(){function U(B){$.asm=B.exports,K=$.asm.E,F(),R=$.asm.J,c.unshift($.asm.F),p--,$.monitorRunDependencies&&$.monitorRunDependencies(p),p==0&&(m!==null&&(clearInterval(m),m=null),ZJ&&(B=ZJ,ZJ=null,B()))}function D(B){U(B.instance)}function X(B){return y$().then(function(S){return WebAssembly.instantiate(S,V)}).then(function(S){return S}).then(B,function(S){Y("failed to asynchronously prepare wasm: "+S),i(S)})}var V={a:U1};if(p++,$.monitorRunDependencies&&$.monitorRunDependencies(p),$.instantiateWasm)try{return $.instantiateWasm(V,U)}catch(B){Y("Module.instantiateWasm callback failed with error: "+B),Q(B)}return function(){return _||typeof WebAssembly.instantiateStreaming!="function"||t(jJ)||typeof fetch!="function"?X(D):fetch(jJ,{credentials:"same-origin"}).then(function(B){return WebAssembly.instantiateStreaming(B,V).then(D,function(S){return Y("wasm streaming compile failed: "+S),Y("falling back to ArrayBuffer instantiation"),X(D)})})}().catch(Q),{}})(),$.___wasm_call_ctors=function(){return($.___wasm_call_ctors=$.asm.F).apply(null,arguments)};var V7=$.___getTypeName=function(){return(V7=$.___getTypeName=$.asm.G).apply(null,arguments)};$.__embind_initialize_bindings=function(){return($.__embind_initialize_bindings=$.asm.H).apply(null,arguments)};var r0=$._malloc=function(){return(r0=$._malloc=$.asm.I).apply(null,arguments)},iJ=$._free=function(){return(iJ=$._free=$.asm.K).apply(null,arguments)};$.dynCall_jiji=function(){return($.dynCall_jiji=$.asm.L).apply(null,arguments)};var D0;ZJ=function U(){D0||O7(),D0||(ZJ=U)};function O7(){function U(){if(!D0&&(D0=!0,$.calledRun=!0,!q)){if(f0(c),H($),$.onRuntimeInitialized)$.onRuntimeInitialized();if($.postRun)for(typeof $.postRun=="function"&&($.postRun=[$.postRun]);$.postRun.length;){var D=$.postRun.shift();u.unshift(D)}f0(u)}}if(!(0<p)){if($.preRun)for(typeof $.preRun=="function"&&($.preRun=[$.preRun]);$.preRun.length;)d();f0(f),0<p||($.setStatus?($.setStatus("Running..."),setTimeout(function(){setTimeout(function(){$.setStatus("")},1),U()},1)):U())}}if($.preInit)for(typeof $.preInit=="function"&&($.preInit=[$.preInit]);0<$.preInit.length;)$.preInit.pop()();return O7(),Z.ready}})(),N1=A1,e=function(J){return J[J.Auto=0]="Auto",J[J.FlexStart=1]="FlexStart",J[J.Center=2]="Center",J[J.FlexEnd=3]="FlexEnd",J[J.Stretch=4]="Stretch",J[J.Baseline=5]="Baseline",J[J.SpaceBetween=6]="SpaceBetween",J[J.SpaceAround=7]="SpaceAround",J[J.SpaceEvenly=8]="SpaceEvenly",J}({}),zZ=function(J){return J[J.BorderBox=0]="BorderBox",J[J.ContentBox=1]="ContentBox",J}({}),qZ=function(J){return J[J.Width=0]="Width",J[J.Height=1]="Height",J}({}),yJ=function(J){return J[J.Inherit=0]="Inherit",J[J.LTR=1]="LTR",J[J.RTL=2]="RTL",J}({}),FJ=function(J){return J[J.Flex=0]="Flex",J[J.None=1]="None",J[J.Contents=2]="Contents",J}({}),v=function(J){return J[J.Left=0]="Left",J[J.Top=1]="Top",J[J.Right=2]="Right",J[J.Bottom=3]="Bottom",J[J.Start=4]="Start",J[J.End=5]="End",J[J.Horizontal=6]="Horizontal",J[J.Vertical=7]="Vertical",J[J.All=8]="All",J}({}),VZ=function(J){return J[J.None=0]="None",J[J.StretchFlexBasis=1]="StretchFlexBasis",J[J.AbsolutePositionWithoutInsetsExcludesPadding=2]="AbsolutePositionWithoutInsetsExcludesPadding",J[J.AbsolutePercentAgainstInnerSize=4]="AbsolutePercentAgainstInnerSize",J[J.All=2147483647]="All",J[J.Classic=2147483646]="Classic",J}({}),w9=function(J){return J[J.WebFlexBasis=0]="WebFlexBasis",J}({}),MJ=function(J){return J[J.Column=0]="Column",J[J.ColumnReverse=1]="ColumnReverse",J[J.Row=2]="Row",J[J.RowReverse=3]="RowReverse",J}({}),qJ=function(J){return J[J.Column=0]="Column",J[J.Row=1]="Row",J[J.All=2]="All",J}({}),OJ=function(J){return J[J.FlexStart=0]="FlexStart",J[J.Center=1]="Center",J[J.FlexEnd=2]="FlexEnd",J[J.SpaceBetween=3]="SpaceBetween",J[J.SpaceAround=4]="SpaceAround",J[J.SpaceEvenly=5]="SpaceEvenly",J}({}),zJ=function(J){return J[J.Error=0]="Error",J[J.Warn=1]="Warn",J[J.Info=2]="Info",J[J.Debug=3]="Debug",J[J.Verbose=4]="Verbose",J[J.Fatal=5]="Fatal",J}({}),SJ=function(J){return J[J.Undefined=0]="Undefined",J[J.Exactly=1]="Exactly",J[J.AtMost=2]="AtMost",J}({}),w2=function(J){return J[J.Default=0]="Default",J[J.Text=1]="Text",J}({}),rJ=function(J){return J[J.Visible=0]="Visible",J[J.Hidden=1]="Hidden",J[J.Scroll=2]="Scroll",J}({}),eJ=function(J){return J[J.Static=0]="Static",J[J.Relative=1]="Relative",J[J.Absolute=2]="Absolute",J}({}),VJ=function(J){return J[J.Undefined=0]="Undefined",J[J.Point=1]="Point",J[J.Percent=2]="Percent",J[J.Auto=3]="Auto",J}({}),JZ=function(J){return J[J.NoWrap=0]="NoWrap",J[J.Wrap=1]="Wrap",J[J.WrapReverse=2]="WrapReverse",J}({}),V1={ALIGN_AUTO:e.Auto,ALIGN_FLEX_START:e.FlexStart,ALIGN_CENTER:e.Center,ALIGN_FLEX_END:e.FlexEnd,ALIGN_STRETCH:e.Stretch,ALIGN_BASELINE:e.Baseline,ALIGN_SPACE_BETWEEN:e.SpaceBetween,ALIGN_SPACE_AROUND:e.SpaceAround,ALIGN_SPACE_EVENLY:e.SpaceEvenly,BOX_SIZING_BORDER_BOX:zZ.BorderBox,BOX_SIZING_CONTENT_BOX:zZ.ContentBox,DIMENSION_WIDTH:qZ.Width,DIMENSION_HEIGHT:qZ.Height,DIRECTION_INHERIT:yJ.Inherit,DIRECTION_LTR:yJ.LTR,DIRECTION_RTL:yJ.RTL,DISPLAY_FLEX:FJ.Flex,DISPLAY_NONE:FJ.None,DISPLAY_CONTENTS:FJ.Contents,EDGE_LEFT:v.Left,EDGE_TOP:v.Top,EDGE_RIGHT:v.Right,EDGE_BOTTOM:v.Bottom,EDGE_START:v.Start,EDGE_END:v.End,EDGE_HORIZONTAL:v.Horizontal,EDGE_VERTICAL:v.Vertical,EDGE_ALL:v.All,ERRATA_NONE:VZ.None,ERRATA_STRETCH_FLEX_BASIS:VZ.StretchFlexBasis,ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING:VZ.AbsolutePositionWithoutInsetsExcludesPadding,ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE:VZ.AbsolutePercentAgainstInnerSize,ERRATA_ALL:VZ.All,ERRATA_CLASSIC:VZ.Classic,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:w9.WebFlexBasis,FLEX_DIRECTION_COLUMN:MJ.Column,FLEX_DIRECTION_COLUMN_REVERSE:MJ.ColumnReverse,FLEX_DIRECTION_ROW:MJ.Row,FLEX_DIRECTION_ROW_REVERSE:MJ.RowReverse,GUTTER_COLUMN:qJ.Column,GUTTER_ROW:qJ.Row,GUTTER_ALL:qJ.All,JUSTIFY_FLEX_START:OJ.FlexStart,JUSTIFY_CENTER:OJ.Center,JUSTIFY_FLEX_END:OJ.FlexEnd,JUSTIFY_SPACE_BETWEEN:OJ.SpaceBetween,JUSTIFY_SPACE_AROUND:OJ.SpaceAround,JUSTIFY_SPACE_EVENLY:OJ.SpaceEvenly,LOG_LEVEL_ERROR:zJ.Error,LOG_LEVEL_WARN:zJ.Warn,LOG_LEVEL_INFO:zJ.Info,LOG_LEVEL_DEBUG:zJ.Debug,LOG_LEVEL_VERBOSE:zJ.Verbose,LOG_LEVEL_FATAL:zJ.Fatal,MEASURE_MODE_UNDEFINED:SJ.Undefined,MEASURE_MODE_EXACTLY:SJ.Exactly,MEASURE_MODE_AT_MOST:SJ.AtMost,NODE_TYPE_DEFAULT:w2.Default,NODE_TYPE_TEXT:w2.Text,OVERFLOW_VISIBLE:rJ.Visible,OVERFLOW_HIDDEN:rJ.Hidden,OVERFLOW_SCROLL:rJ.Scroll,POSITION_TYPE_STATIC:eJ.Static,POSITION_TYPE_RELATIVE:eJ.Relative,POSITION_TYPE_ABSOLUTE:eJ.Absolute,UNIT_UNDEFINED:VJ.Undefined,UNIT_POINT:VJ.Point,UNIT_PERCENT:VJ.Percent,UNIT_AUTO:VJ.Auto,WRAP_NO_WRAP:JZ.NoWrap,WRAP_WRAP:JZ.Wrap,WRAP_WRAP_REVERSE:JZ.WrapReverse},O1=V1;function z1(J){function Z(Q,j,G){let L=Q[j];Q[j]=function(){for(var Y=arguments.length,_=Array(Y),W=0;W<Y;W++)_[W]=arguments[W];return G.call(this,L,..._)}}for(let Q of["setPosition","setMargin","setFlexBasis","setWidth","setHeight","setMinWidth","setMinHeight","setMaxWidth","setMaxHeight","setPadding","setGap"]){let j={[VJ.Point]:J.Node.prototype[Q],[VJ.Percent]:J.Node.prototype[`${Q}Percent`],[VJ.Auto]:J.Node.prototype[`${Q}Auto`]};Z(J.Node.prototype,Q,function(G){for(var L=arguments.length,Y=Array(L>1?L-1:0),_=1;_<L;_++)Y[_-1]=arguments[_];let W=Y.pop(),K,q;if(W==="auto")K=VJ.Auto,q=void 0;else if(typeof W==="object")K=W.unit,q=W.valueOf();else if(K=typeof W==="string"&&W.endsWith("%")?VJ.Percent:VJ.Point,q=parseFloat(W),W!==void 0&&!Number.isNaN(W)&&Number.isNaN(q))throw Error(`Invalid value ${W} for ${Q}`);if(!j[K])throw Error(`Failed to execute "${Q}": Unsupported unit '${W}'`);if(q!==void 0)return j[K].call(this,...Y,q);else return j[K].call(this,...Y)})}function $(Q){return J.MeasureCallback.implement({measure:function(){let{width:j,height:G}=Q(...arguments);return{width:j??NaN,height:G??NaN}}})}Z(J.Node.prototype,"setMeasureFunc",function(Q,j){if(j)return Q.call(this,$(j));else return this.unsetMeasureFunc()});function H(Q){return J.DirtiedCallback.implement({dirtied:Q})}return Z(J.Node.prototype,"setDirtiedFunc",function(Q,j){Q.call(this,H(j))}),Z(J.Config.prototype,"free",function(){J.Config.destroy(this)}),Z(J.Node,"create",(Q,j)=>{return j?J.Node.createWithConfig(j):J.Node.createDefault()}),Z(J.Node.prototype,"free",function(){J.Node.destroy(this)}),Z(J.Node.prototype,"freeRecursive",function(){for(let Q=0,j=this.getChildCount();Q<j;++Q)this.getChild(0).freeRecursive();this.free()}),Z(J.Node.prototype,"calculateLayout",function(Q){let j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:NaN,G=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,L=arguments.length>3&&arguments[3]!==void 0?arguments[3]:yJ.LTR;return Q.call(this,j,G,L)}),{Config:J.Config,Node:J.Node,...O1}}var q1=z1(await N1()),T0=q1,F9=["single","double","rounded","heavy"];function P1(J){return typeof J==="string"&&F9.includes(J)}function F2(J,Z="single"){if(P1(J))return J;if(J!==void 0&&J!==null)console.warn(`Invalid borderStyle "${J}", falling back to "${Z}". Valid values are: ${F9.join(", ")}`);return Z}var Y0={single:{topLeft:"\u250C",topRight:"\u2510",bottomLeft:"\u2514",bottomRight:"\u2518",horizontal:"\u2500",vertical:"\u2502",topT:"\u252C",bottomT:"\u2534",leftT:"\u251C",rightT:"\u2524",cross:"\u253C"},double:{topLeft:"\u2554",topRight:"\u2557",bottomLeft:"\u255A",bottomRight:"\u255D",horizontal:"\u2550",vertical:"\u2551",topT:"\u2566",bottomT:"\u2569",leftT:"\u2560",rightT:"\u2563",cross:"\u256C"},rounded:{topLeft:"\u256D",topRight:"\u256E",bottomLeft:"\u2570",bottomRight:"\u256F",horizontal:"\u2500",vertical:"\u2502",topT:"\u252C",bottomT:"\u2534",leftT:"\u251C",rightT:"\u2524",cross:"\u253C"},heavy:{topLeft:"\u250F",topRight:"\u2513",bottomLeft:"\u2517",bottomRight:"\u251B",horizontal:"\u2501",vertical:"\u2503",topT:"\u2533",bottomT:"\u253B",leftT:"\u2523",rightT:"\u252B",cross:"\u254B"}};function kH(J){let Z=[];if(J.top)Z.push("top");if(J.right)Z.push("right");if(J.bottom)Z.push("bottom");if(J.left)Z.push("left");return Z.length>0?Z:!1}function e0(J){return J===!0?{top:!0,right:!0,bottom:!0,left:!0}:Array.isArray(J)?{top:J.includes("top"),right:J.includes("right"),bottom:J.includes("bottom"),left:J.includes("left")}:{top:!1,right:!1,bottom:!1,left:!1}}function xZ(J){let Z=new Uint32Array(11);return Z[0]=J.topLeft.codePointAt(0),Z[1]=J.topRight.codePointAt(0),Z[2]=J.bottomLeft.codePointAt(0),Z[3]=J.bottomRight.codePointAt(0),Z[4]=J.horizontal.codePointAt(0),Z[5]=J.vertical.codePointAt(0),Z[6]=J.topT.codePointAt(0),Z[7]=J.bottomT.codePointAt(0),Z[8]=J.leftT.codePointAt(0),Z[9]=J.rightT.codePointAt(0),Z[10]=J.cross.codePointAt(0),Z}var I1={single:xZ(Y0.single),double:xZ(Y0.double),rounded:xZ(Y0.rounded),heavy:xZ(Y0.heavy)};class q0{name;ctrl;meta;shift;option;sequence;number;raw;eventType;source;code;super;hyper;capsLock;numLock;baseCode;repeated;_defaultPrevented=!1;_propagationStopped=!1;constructor(J){this.name=J.name,this.ctrl=J.ctrl,this.meta=J.meta,this.shift=J.shift,this.option=J.option,this.sequence=J.sequence,this.number=J.number,this.raw=J.raw,this.eventType=J.eventType,this.source=J.source,this.code=J.code,this.super=J.super,this.hyper=J.hyper,this.capsLock=J.capsLock,this.numLock=J.numLock,this.baseCode=J.baseCode,this.repeated=J.repeated}get defaultPrevented(){return this._defaultPrevented}get propagationStopped(){return this._propagationStopped}preventDefault(){this._defaultPrevented=!0}stopPropagation(){this._propagationStopped=!0}}class S9{type="paste";bytes;metadata;_defaultPrevented=!1;_propagationStopped=!1;constructor(J,Z){this.bytes=J,this.metadata=Z}get defaultPrevented(){return this._defaultPrevented}get propagationStopped(){return this._propagationStopped}preventDefault(){this._defaultPrevented=!0}stopPropagation(){this._propagationStopped=!0}}class v2 extends B1{processParsedKey(J){try{switch(J.eventType){case"press":this.emit("keypress",new q0(J));break;case"release":this.emit("keyrelease",new q0(J));break;default:this.emit("keypress",new q0(J));break}}catch(Z){return console.error("[KeyHandler] Error processing parsed key:",Z),!0}return!0}processPaste(J,Z){try{this.emit("paste",new S9(J,Z))}catch($){console.error("[KeyHandler] Error processing paste:",$)}}}class y2 extends v2{renderableHandlers=new Map;emit(J,...Z){return this.emitWithPriority(J,...Z)}emitWithPriority(J,...Z){let $=!1,H=this.listeners(J);if(H.length>0){$=!0;for(let L of H){try{L(...Z)}catch(Y){console.error(`[KeyHandler] Error in global ${J} handler:`,Y)}if(J==="keypress"||J==="keyrelease"||J==="paste"){if(Z[0].propagationStopped)return $}}}let Q=this.renderableHandlers.get(J),j=Q&&Q.size>0?[...Q]:[],G=!1;if(Q&&Q.size>0){if(G=!0,J==="keypress"||J==="keyrelease"||J==="paste"){let L=Z[0];if(L.defaultPrevented)return $||G;if(L.propagationStopped)return $||G}for(let L of j){try{L(...Z)}catch(Y){console.error(`[KeyHandler] Error in renderable ${J} handler:`,Y)}if(J==="keypress"||J==="keyrelease"||J==="paste"){if(Z[0].propagationStopped)return $||G}}}return $||G}onInternal(J,Z){if(!this.renderableHandlers.has(J))this.renderableHandlers.set(J,new Set);this.renderableHandlers.get(J).add(Z)}offInternal(J,Z){let $=this.renderableHandlers.get(J);if($)$.delete(Z)}}var R9=[255,255,255],T9=[0,0,0],P7=0,I7=1,J2=2,B7=[[0,0,0],[128,0,0],[0,128,0],[128,128,0],[0,0,128],[128,0,128],[0,128,128],[192,192,192],[128,128,128],[255,0,0],[0,255,0],[255,255,0],[0,0,255],[255,0,255],[0,255,255],[255,255,255]],Z2=[0,95,135,175,215,255];function yZ(J,Z=0){return(Z&255|(J&255)<<8)>>>0}function QZ(J){return Math.round(Math.max(0,Math.min(1,Number.isFinite(J)?J:0))*255)}function _0(J){return Math.round(Math.max(0,Math.min(255,Number.isFinite(J)?J:0)))}function cZ(J,Z,$,H,Q){return new Uint16Array([_0(J)&255|(Q>>>0&255)<<8,_0(Z)&255|(Q>>>8&255)<<8,_0($)&255|(Q>>>16&255)<<8,_0(H)&255|(Q>>>24&255)<<8])}function K1(J){let[Z,$,H]=C9(J);return a.fromInts(Z,$,H)}function g9(J){if(!Number.isInteger(J)||J<0||J>255)throw RangeError(`Indexed color must be an integer in the range 0..255, got ${J}`);return J}function C9(J){let Z=g9(J);if(Z<B7.length)return B7[Z];if(Z<232){let H=Z-16,Q=Math.floor(H/36),j=Math.floor(H/6)%6,G=H%6;return[Z2[Q],Z2[j],Z2[G]]}let $=8+(Z-232)*10;return[$,$,$]}class a{buffer;constructor(J){this.buffer=new Uint16Array(4),this.buffer.set(J.subarray(0,4))}static fromArray(J){return new a(J)}static fromValues(J,Z,$,H=1){return new a(cZ(QZ(J),QZ(Z),QZ($),QZ(H),yZ(P7)))}static clone(J){return new a(J.buffer)}static fromInts(J,Z,$,H=255){return new a(cZ(J,Z,$,H,yZ(P7)))}static fromHex(J){return S2(J)}static fromIndex(J,Z){let $=g9(J),H=Z?y(Z):K1($),[Q,j,G,L]=H.toInts();return new a(cZ(Q,j,G,L,yZ(I7,$)))}static defaultForeground(J){let Z=J?y(J):a.fromInts(...R9),[$,H,Q,j]=Z.toInts();return new a(cZ($,H,Q,j,yZ(J2)))}static defaultBackground(J){let Z=J?y(J):a.fromInts(...T9),[$,H,Q,j]=Z.toInts();return new a(cZ($,H,Q,j,yZ(J2)))}toInts(){return[this.buffer[0]&255,this.buffer[1]&255,this.buffer[2]&255,this.buffer[3]&255]}get r(){return(this.buffer[0]&255)/255}set r(J){this.buffer[0]=this.buffer[0]&65280|QZ(J)}get g(){return(this.buffer[1]&255)/255}set g(J){this.buffer[1]=this.buffer[1]&65280|QZ(J)}get b(){return(this.buffer[2]&255)/255}set b(J){this.buffer[2]=this.buffer[2]&65280|QZ(J)}get a(){return(this.buffer[3]&255)/255}set a(J){this.buffer[3]=this.buffer[3]&65280|QZ(J)}get meta(){return(this.buffer[0]>>>8|this.buffer[1]>>>8<<8|this.buffer[2]>>>8<<16|this.buffer[3]>>>8<<24)>>>0}get intent(){switch(this.meta>>>8&255){case I7:return"indexed";case J2:return"default";default:return"rgb"}}get slot(){return this.meta&255}map(J){return[J(this.r),J(this.g),J(this.b),J(this.a)]}toString(){return`rgba(${this.r.toFixed(2)}, ${this.g.toFixed(2)}, ${this.b.toFixed(2)}, ${this.a.toFixed(2)})`}equals(J){if(!J)return!1;return this.buffer[0]===J.buffer[0]&&this.buffer[1]===J.buffer[1]&&this.buffer[2]===J.buffer[2]&&this.buffer[3]===J.buffer[3]}}function K7(J){if(J==null)return null;return{rgba:y(J)}}function S2(J){if(J=J.replace(/^#/,""),J.length===3)J=J[0]+J[0]+J[1]+J[1]+J[2]+J[2];else if(J.length===4)J=J[0]+J[0]+J[1]+J[1]+J[2]+J[2]+J[3]+J[3];if(!/^[0-9A-Fa-f]{6}$/.test(J)&&!/^[0-9A-Fa-f]{8}$/.test(J))return console.warn(`Invalid hex color: ${J}, defaulting to magenta`),a.fromValues(1,0,1,1);let Z=parseInt(J.substring(0,2),16),$=parseInt(J.substring(2,4),16),H=parseInt(J.substring(4,6),16),Q=J.length===8?parseInt(J.substring(6,8),16):255;return a.fromInts(Z,$,H,Q)}function hH(J){let[Z,$,H,Q]=J.toInts();return"#"+(Q===255?[Z,$,H]:[Z,$,H,Q]).map((G)=>G.toString(16).padStart(2,"0")).join("")}function bH(J,Z,$){let H=0,Q=0,j=0,G=Math.floor(J/60)%6,L=J/60-Math.floor(J/60),Y=$*(1-Z),_=$*(1-L*Z),W=$*(1-(1-L)*Z);switch(G){case 0:H=$,Q=W,j=Y;break;case 1:H=_,Q=$,j=Y;break;case 2:H=Y,Q=$,j=W;break;case 3:H=Y,Q=_,j=$;break;case 4:H=W,Q=Y,j=$;break;case 5:H=$,Q=Y,j=_;break}return a.fromValues(H,Q,j,1)}var w7={black:"#000000",white:"#FFFFFF",red:"#FF0000",green:"#008000",blue:"#0000FF",yellow:"#FFFF00",cyan:"#00FFFF",magenta:"#FF00FF",silver:"#C0C0C0",gray:"#808080",grey:"#808080",maroon:"#800000",olive:"#808000",lime:"#00FF00",aqua:"#00FFFF",teal:"#008080",navy:"#000080",fuchsia:"#FF00FF",purple:"#800080",orange:"#FFA500",brightblack:"#666666",brightred:"#FF6666",brightgreen:"#66FF66",brightblue:"#6666FF",brightyellow:"#FFFF66",brightcyan:"#66FFFF",brightmagenta:"#FF66FF",brightwhite:"#FFFFFF"};function y(J){if(typeof J==="string"){let Z=J.toLowerCase();if(Z==="transparent")return a.fromValues(0,0,0,0);if(w7[Z])return S2(w7[Z]);return S2(J)}return J}var w1={name:"block",version:"0.2.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:2,lines:6,buffer:["","","","","",""],letterspace:[" "," "," "," "," "," "],letterspace_size:1,chars:{A:[" <c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2> ","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],B:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],C:[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],D:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],E:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u255D </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],F:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u255D </c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c2>\u255A\u2550\u255D </c2>"],G:[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D </c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],H:["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],I:["<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D</c2>"],J:["<c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588 \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u255D </c2>"],K:["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],L:["<c1>\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],M:["<c1>\u2588\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2554</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2554</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551\u255A</c2><c1>\u2588\u2588</c1><c2>\u2554\u255D</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551 \u255A\u2550\u255D</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],N:["<c1>\u2588\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2554</c2><c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551\u255A</c2><c1>\u2588\u2588</c1><c2>\u2557</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551 \u255A</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D</c2>"],O:[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],P:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u255D </c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2>","<c2>\u255A\u2550\u255D </c2>"],Q:[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1>\u2584\u2584 \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550</c2><c1>\u2580\u2580</c1><c2>\u2550\u255D </c2>"],R:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],S:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],T:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u255D</c2>","<c1> \u2588\u2588</c1><c2>\u2551 </c2>","<c1> \u2588\u2588</c1><c2>\u2551 </c2>","<c1> \u2588\u2588</c1><c2>\u2551 </c2>","<c2> \u255A\u2550\u255D </c2>"],U:["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],V:["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c2> \u255A\u2550\u2550\u2550\u255D </c2>"],W:["<c1>\u2588\u2588</c1><c2>\u2557 </c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551 </c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1>\u2588\u2588\u2588</c1><c2>\u2557</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588</c1><c2>\u2554</c2><c1>\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u255D\u255A\u2550\u2550\u255D </c2>"],X:["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2557</c2><c1>\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A</c2><c1>\u2588\u2588\u2588</c1><c2>\u2554\u255D </c2>"," <c1>\u2588\u2588</c1><c2>\u2554</c2><c1>\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u255D</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],Y:["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c2> \u255A</c2><c1>\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c1> \u2588\u2588</c1><c2>\u2551 </c2>","<c2> \u255A\u2550\u255D </c2>"],Z:["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550</c2><c1>\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1> \u2588\u2588\u2588</c1><c2>\u2554\u255D </c2>"," <c1>\u2588\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],"0":[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1>\u2588\u2588</c1><c2>\u2554</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],"1":[" <c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>"," <c1>\u2588\u2588</c1><c2>\u2551</c2>"," <c1>\u2588\u2588</c1><c2>\u2551</c2>","<c2> \u255A\u2550\u255D</c2>"],"2":["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>"," <c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u255D </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],"3":["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>"," <c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],"4":["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1> \u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1> \u2588\u2588</c1><c2>\u2551</c2>","<c2> \u255A\u2550\u255D</c2>"],"5":["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],"6":[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],"7":["<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1> \u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1> \u2588\u2588</c1><c2>\u2554\u255D </c2>","<c1> \u2588\u2588</c1><c2>\u2551 </c2>","<c2> \u255A\u2550\u255D </c2>"],"8":[" <c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u255D </c2>"],"9":[" <c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2> \u255A\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>"," <c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u2550\u2550\u2550\u255D </c2>"],"!":["<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D</c2>"],"?":["<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1> \u2584\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1> \u2580\u2580</c1><c2>\u2550\u2550\u255D </c2>","<c1> \u2588\u2588</c1><c2>\u2557 </c2>","<c2> \u255A\u2550\u255D </c2>"],".":[" "," "," "," ","<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D</c2>"],"+":[" ","<c1> \u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2> \u255A</c2><c1>\u2588\u2588</c1><c2>\u2554\u2550\u255D</c2>","<c2> \u255A\u2550\u255D </c2>"," "],"-":[" "," ","<c1>\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u255D</c2>"," "," "],_:[" "," "," "," ","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D</c2>"],"=":[" ","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u255D</c2>"," "],"@":[" <c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1>\u2588\u2588</c1><c2>\u2557</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2551</c2><c1>\u2588\u2588</c1><c2>\u2551</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A</c2><c1>\u2588</c1><c2>\u2551</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u255D\u255A\u2550\u2550\u2550\u255D </c2>"],"#":[" <c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557 </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2554\u2550</c2><c1>\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2554\u2550</c2><c1>\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2> \u255A\u2550\u255D \u255A\u2550\u255D </c2>"],$:["<c1>\u2584\u2584\u2588\u2588\u2588\u2584\u2584</c1><c2>\xB7</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550\u2550\u2550\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u2550\u2550\u2550</c2><c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551</c2>","<c2>\u255A\u2550</c2><c1>\u2580\u2580\u2580</c1><c2>\u2550\u2550\u255D</c2>"],"%":["<c1>\u2588\u2588</c1><c2>\u2557</c2><c1> \u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D</c2><c1>\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1> \u2588\u2588</c1><c2>\u2554\u255D </c2>"," <c1>\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u255D</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D \u255A\u2550\u255D</c2>"],"&":["<c1> \u2588\u2588</c1><c2>\u2557 </c2>","<c1> \u2588\u2588</c1><c2>\u2551 </c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u2550</c2><c1>\u2588\u2588</c1><c2>\u2554\u2550\u255D</c2>","<c1>\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2551 </c2>","<c2>\u255A\u2550\u2550\u2550\u2550\u2550\u255D </c2>"],"(":[" <c1>\u2588\u2588</c1><c2>\u2557</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2551 ","<c1>\u2588\u2588</c1><c2>\u2551 ","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2> \u255A\u2550\u255D</c2>"],")":["<c1>\u2588\u2588</c1><c2>\u2557 </c2>","<c2>\u255A</c2><c1>\u2588\u2588</c1><c2>\u2557</c2>"," <c1>\u2588\u2588</c1><c2>\u2551</c2>"," <c1>\u2588\u2588</c1><c2>\u2551</c2>","<c1>\u2588\u2588</c1><c2>\u2554\u255D</c2>","<c2>\u255A\u2550\u255D </c2>"],"/":["<c1> \u2588\u2588</c1><c2>\u2557</c2>","<c1> \u2588\u2588</c1><c2>\u2554\u255D</c2>","<c1> \u2588\u2588</c1><c2>\u2554\u255D </c2>"," <c1>\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c1>\u2588\u2588</c1><c2>\u2554\u255D </c2>","<c2>\u255A\u2550\u255D </c2>"],":":[" ","<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D</c2>","<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D</c2>"," "],";":[" "," ","<c1>\u2588\u2588</c1><c2>\u2557</c2>","<c2>\u255A\u2550\u255D</c2>","<c1>\u2584\u2588</c1><c2>\u2557</c2>","<c1>\u2580</c1><c2>\u2550\u255D</c2>"],",":[" "," "," "," ","<c1>\u2584\u2588</c1><c2>\u2557</c2>","<c1>\u2580</c1><c2>\u2550\u255D</c2>"],"'":["<c1>\u2588</c1><c2>\u2557</c2> ","<c2>\u255A\u255D</c2> "," "," "," "," "],'"':["<c1>\u2588</c1><c2>\u2557</c2><c1>\u2588</c1><c2>\u2557</c2> ","<c2>\u255A\u255D\u255A\u255D</c2> "," "," "," "," "]," ":[" "," "," "," "," "," "]}},F1={name:"shade",version:"0.2.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:2,lines:8,buffer:["","","","","","","",""],letterspace:["<c2>\u2591</c2>","<c2>\u2591</c2>","<c2>\u2591</c2>","<c2>\u2591</c2>","<c2>\u2591</c2>","<c2>\u2591</c2>","<c2>\u2591</c2>","<c2>\u2591</c2>"],letterspace_size:1,chars:{A:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],B:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588\u2588\u2588</c1> ","<c1>\u2588 \u2588</c1>","<c1>\u2588\u2588\u2588</c1> "," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],C:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588</c1> ","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],D:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588\u2588</c1> "," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],E:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588</c1> ","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588</c1> <c2>\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],F:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588</c1> ","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588</c1> <c2>\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>"," <c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],G:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588\u2588</c1>","<c1>\u2588</c1> ","<c1>\u2588</c1><c2>\u2591</c2><c1>\u2588\u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2> <c1>\u2588</c1>","<c1>\u2588\u2588\u2588</c1> "," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],H:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],I:["<c2>\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1>"," <c1>\u2588</c1> ","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c1>\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591</c2>"],J:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>"," <c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>"," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],K:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588\u2588</c1> ","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],L:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],M:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],N:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588</c1><c2>\u2591</c2><c1>\u2588</c1>","<c1>\u2588 \u2588\u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2> <c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],O:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c1>\u2588\u2588</c1> ","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],P:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588\u2588\u2588</c1> ","<c1>\u2588</c1> <c2>\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>"," <c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],Q:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c1>\u2588\u2588\u2588</c1>","<c2>\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],R:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588\u2588\u2588</c1> ","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],S:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588\u2588</c1>","<c1>\u2588</c1> "," <c1>\u2588\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2> <c1>\u2588</c1>","<c1>\u2588\u2588\u2588</c1> "," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],T:["<c2>\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1>"," <c1>\u2588</c1> ","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591</c2>"],U:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c1>\u2588\u2588</c1> ","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],V:["<c2>\u2591\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>"," <c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1> ","<c2>\u2591</c2> <c1>\u2588</c1> <c2>\u2591</c2>","<c2>\u2591\u2591 \u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591\u2591</c2>"],W:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588 \u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],X:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c1>\u2588\u2588</c1> ","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588</c1>"," <c2>\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],Y:["<c2>\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1>","<c1>\u2588\u2588\u2588</c1>"," <c1>\u2588</c1> ","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591</c2>"],Z:["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u2588</c1> ","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>","<c1>\u2588</c1> <c2>\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],"0":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u258C\u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2> <c1>\u2588</c1>"," <c1>\u2588\u2588</c1> ","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"1":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588</c1><c2>\u2591\u2591</c2>"," <c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>"," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"2":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2590\u2588\u2588</c1><c2>\u2591</c2>"," <c1>\u2588</c1>","<c2>\u2591\u2591</c2><c1>\u2588</c1> ","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],"3":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u2588</c1>","<c2>\u2591\u2591</c2><c1>\u2588\u2588</c1>","<c2>\u2591\u2591</c2> <c1>\u2588</c1>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],"4":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u2588</c1>","<c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>","<c2>\u2591\u2591\u2591</c2> ","<c2>\u2591\u2591\u2591\u2591</c2>"],"5":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>","<c1>\u2588</c1> ","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>"," <c1>\u2588</c1>","<c1>\u2588\u2588\u2588</c1> "," <c2>\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"6":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588\u2588</c1>","<c1>\u2588</c1> ","<c1>\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>"," <c1>\u2588\u2588</c1> ","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"7":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u2588</c1>","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u2588</c1> ","<c1>\u2588</c1> <c2>\u2591\u2591</c2>"," <c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"8":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>"," <c1>\u2588\u2588</c1> ","<c1>\u2588 \u2588</c1>"," <c1>\u2588\u2588</c1> ","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"9":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>"," <c1>\u2588\u2588\u2588</c1>","<c2>\u2591</c2> <c1>\u2588</c1>","<c2>\u2591\u2591</c2><c1>\u2588</c1> ","<c2>\u2591\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"!":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c2>\u2591 \u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"?":["<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2590\u2588\u2588</c1><c2>\u2591</c2>"," <c1>\u2588</c1>","<c2>\u2591\u2591</c2><c1>\u2588</c1> ","<c2>\u2591\u2591 \u2591</c2>","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],".":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"+":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588\u2588</c1>","<c2>\u2591</c2> <c1>\u2588</c1> ","<c2>\u2591\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"-":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],_:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," "],"=":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c1>\u2588\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],"@":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588</c1><c2>\u2591</c2>","<c1>\u2588 \u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u258C\u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1> "," <c1>\u2588\u2588\u2588</c1>"," ","<c2>\u2591\u2591\u2591\u2591</c2>"],"#":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2>","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u258C\u2590</c1> ","<c1>\u2588\u2588\u2588\u2588</c1>"," <c1>\u258C\u2590</c1> ","<c2>\u2591 \u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],$:["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u258C</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588\u2588\u2588</c1>","<c1>\u2588 \u2588</c1> "," <c1>\u2588\u2588</c1><c2>\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u258C\u2588</c1>","<c1>\u2588\u2588\u2588</c1> "," <c2>\u2591</c2>"],"%":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1> "," <c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1>","<c1>\u2588</c1> <c2>\u2591</c2> "," <c2>\u2591\u2591\u2591</c2>"],"&":["<c2>\u2591\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>","<c1>\u2588\u2588\u2588\u2588\u2588</c1>","<c1>\u2588 \u2588</c1> ","<c1>\u2588\u2588\u2588\u2588</c1><c2>\u2591</c2>","<c2> </c2> ","<c2>\u2591\u2591\u2591\u2591\u2591</c2>"],"(":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>","<c1>\u2588</c1> <c2>\u2591\u2591</c2>","<c1>\u2588</c1><c2>\u2591\u2591\u2591</c2>"," <c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591</c2> <c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591\u2591 \u2591</c2>"],")":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591</c2> <c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591\u2591</c2> <c1>\u2588</c1>","<c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>","<c2>\u2591\u2591</c2><c1>\u2588</c1> ","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>","<c2>\u2591 \u2591\u2591</c2>"],"/":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2><c1>\u2588</c1>","<c2>\u2591\u2591</c2><c1>\u2588</c1> ","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c1>\u2588</c1> <c2>\u2591\u2591</c2>"," <c2>\u2591\u2591\u2591</c2>"],":":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591 \u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591 \u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],";":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591 \u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>"],",":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591</c2><c1>\u2588</c1><c2>\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1> <c2>\u2591</c2>"],"'":["<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591 \u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591</c2>"],'"':["<c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2>","<c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2><c1>\u2588</c1><c2>\u2591\u2591</c2>","<c2>\u2591 \u2591 \u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2>"]," ":["<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>","<c2>\u2591\u2591\u2591</c2>"]}},S1={name:"slick",version:"0.1.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:2,lines:6,buffer:["","","","","",""],letterspace:["<c2>\u2571</c2>","<c2>\u2571</c2>","<c2>\u2571</c2>","<c2>\u2571</c2>","<c2>\u2571</c2>","<c2>\u2571</c2>"],letterspace_size:1,chars:{A:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2570\u256F</c1><c2>\u2571</c2><c1>\u2570\u256F</c1>"],B:["<c1>\u256D\u2501\u2501\u256E</c1><c2>\u2571</c2>","<c1>\u2503\u256D\u256E\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2570\u256F\u2570\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],C:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2570\u256F</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],D:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2570\u256E\u256D\u256E\u2503</c1>","<c2>\u2571</c2><c1>\u2503\u2503\u2503\u2503</c1>","<c2>\u2571</c2><c1>\u2503\u2503\u2503\u2503</c1>","<c1>\u256D\u256F\u2570\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],E:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],F:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2503</c1><c2>\u2571\u2571\u2571</c2>","<c1>\u2570\u256F</c1><c2>\u2571\u2571\u2571</c2>"],G:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2570\u256F</c1>","<c1>\u2503\u2503\u256D\u2501\u256E</c1>","<c1>\u2503\u2570\u253B\u2501\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],H:["<c1>\u256D\u256E</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2570\u256F</c1><c2>\u2571</c2><c1>\u2570\u256F</c1>"],I:["<c1>\u256D\u2501\u2501\u256E</c1>","<c1>\u2570\u252B\u2523\u256F</c1>","<c2>\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571</c2>","<c1>\u256D\u252B\u2523\u256E</c1>","<c1>\u2570\u2501\u2501\u256F</c1>"],J:["<c2>\u2571\u2571</c2><c1>\u256D\u256E</c1>","<c2>\u2571\u2571</c2><c1>\u2503\u2503</c1>","<c2>\u2571\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u256D\u256E\u2503\u2503</c1>","<c1>\u2503\u2570\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u256F</c1>"],K:["<c1>\u256D\u256E\u256D\u2501\u256E</c1>","<c1>\u2503\u2503\u2503\u256D\u256F</c1>","<c1>\u2503\u2570\u256F\u256F</c1><c2>\u2571</c2>","<c1>\u2503\u256D\u256E\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2503\u2503\u2570\u256E</c1>","<c1>\u2570\u256F\u2570\u2501\u256F</c1>"],L:["<c1>\u256D\u256E</c1><c2>\u2571\u2571\u2571</c2>","<c1>\u2503\u2503</c1><c2>\u2571\u2571\u2571</c2>","<c1>\u2503\u2503</c1><c2>\u2571\u2571\u2571</c2>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],M:["<c1>\u256D\u2501\u256E\u256D\u2501\u256E</c1>","<c1>\u2503\u2503\u2570\u256F\u2503\u2503</c1>","<c1>\u2503\u256D\u256E\u256D\u256E\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2570\u256F\u2570\u256F\u2570\u256F</c1>"],N:["<c1>\u256D\u2501\u256E</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2503\u2570\u256E\u2503\u2503</c1>","<c1>\u2503\u256D\u256E\u2570\u256F\u2503</c1>","<c1>\u2503\u2503\u2570\u256E\u2503\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503\u2503</c1>","<c1>\u2570\u256F</c1><c2>\u2571</c2><c1>\u2570\u2501\u256F</c1>"],O:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],P:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2503</c1><c2>\u2571\u2571\u2571</c2>","<c1>\u2570\u256F</c1><c2>\u2571\u2571\u2571</c2>"],Q:["<c1>\u256D\u2501\u2501\u2501\u256E</c1><c2>\u2571</c2>","<c1>\u2503\u256D\u2501\u256E\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2570\u2501\u256F\u2503\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u2501\u256F</c1>"],R:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2503\u256D\u256E\u256D\u256F</c1>","<c1>\u2503\u2503\u2503\u2570\u256E</c1>","<c1>\u2570\u256F\u2570\u2501\u256F</c1>"],S:["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],T:["<c1>\u256D\u2501\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u256E\u256D\u256E\u2503</c1>","<c1>\u2570\u256F\u2503\u2503\u2570\u256F</c1>","<c2>\u2571\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571\u2571</c2>"],U:["<c1>\u256D\u256E</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],V:["<c1>\u256D\u256E</c1><c2>\u2571\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2570\u256E\u256D\u256F\u2503</c1>","<c1>\u2570\u256E\u2503\u2503\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u2503\u2570\u256F\u2503</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u2570\u256E\u256D\u256F</c1><c2>\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571\u2571</c2>"],W:["<c1>\u256D\u256E\u256D\u256E\u256D\u256E</c1>","<c1>\u2503\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2570\u256F\u2570\u256F\u2503</c1>","<c1>\u2570\u256E\u256D\u256E\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u2570\u256F\u2570\u256F</c1><c2>\u2571</c2>"],X:["<c1>\u256D\u2501\u256E\u256D\u2501\u256E</c1>","<c1>\u2570\u256E\u2570\u256F\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u2570\u256E\u256D\u256F</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u256D\u256F\u2570\u256E</c1><c2>\u2571</c2>","<c1>\u256D\u256F\u256D\u256E\u2570\u256E</c1>","<c1>\u2570\u2501\u256F\u2570\u2501\u256F</c1>"],Y:["<c1>\u256D\u256E</c1><c2>\u2571\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2570\u256E\u256D\u256F\u2503</c1>","<c1>\u2570\u256E\u2570\u256F\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u2570\u256E\u256D\u256F</c1><c2>\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571\u2571</c2>"],Z:["<c1>\u256D\u2501\u2501\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u256E\u2501\u2503</c1>","<c2>\u2571\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571</c2>","<c1>\u256D\u256F\u2501\u2570\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u2501\u256F</c1>"],"0":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"1":["<c2>\u2571</c2><c1>\u256D\u256E</c1><c2>\u2571</c2>","<c1>\u256D\u256F\u2503</c1><c2>\u2571</c2>","<c1>\u2570\u256E\u2503</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571</c2>","<c1>\u256D\u256F\u2570\u256E</c1>","<c1>\u2570\u2501\u2501\u256F</c1>"],"2":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2570\u256F\u256D\u256F\u2503</c1>","<c1>\u256D\u2501\u256F\u256D\u256F</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"3":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2570\u256F\u256D\u256F\u2503</c1>","<c1>\u256D\u256E\u2570\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"4":["<c1>\u256D\u256E</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2503\u2503</c1><c2>\u2571</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u256E\u2503</c1>","<c2>\u2571\u2571\u2571</c2><c1>\u2503\u2503</c1>","<c2>\u2571\u2571\u2571</c2><c1>\u2570\u256F</c1>"],"5":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u256E\u2503</c1>","<c1>\u256D\u2501\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"6":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u2501\u256F</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"7":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2570\u256F\u256D\u256F\u2503</c1>","<c2>\u2571\u2571</c2><c1>\u2503\u256D\u256F</c1>","<c2>\u2571\u2571</c2><c1>\u2503\u2503</c1><c2>\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571</c2>"],"8":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"9":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2503\u2570\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u256E\u2503</c1>","<c1>\u256D\u2501\u2501\u256F\u2503</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"!":["<c1>\u256D\u256E</c1>","<c1>\u2503\u2503</c1>","<c1>\u2503\u2503</c1>","<c1>\u2570\u256F</c1>","<c1>\u256D\u256E</c1>","<c1>\u2570\u256F</c1>"],"?":["<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2503\u256D\u2501\u256E\u2503</c1>","<c1>\u2570\u256F\u256D\u256F\u2503</c1>","<c2>\u2571\u2571</c2><c1>\u2503\u256D\u256F</c1>","<c2>\u2571\u2571</c2><c1>\u256D\u256E</c1><c2>\u2571</c2>","<c2>\u2571\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571</c2>"],".":["<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c1>\u256D\u256E</c1>","<c1>\u2570\u256F</c1>"],"+":["<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571</c2><c1>\u256D\u256E</c1><c2>\u2571</c2>","<c1>\u256D\u256F\u2570\u256E</c1>","<c1>\u2570\u256E\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571</c2>"],"-":["<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c1>\u256D\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u256F</c1>","<c2>\u2571\u2571\u2571\u2571</c2>"],_:["<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c1>\u256D\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u256F</c1>"],"=":["<c2>\u2571\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571\u2571</c2>","<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>","<c1>\u256D\u2501\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"@":["<c1>\u256D\u2501\u2501\u2501\u2501\u256E</c1><c2>\u2571</c2>","<c1>\u2503\u256D\u2501\u2501\u256E\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2503\u256D\u2501\u2503\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2503\u2570\u256F\u2503\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2570\u2501\u2501\u256F\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u2501\u2501\u256F</c1>"],"#":["<c2>\u2571</c2><c1>\u256D\u2501\u2501\u256E</c1><c2>\u2571</c2>","<c1>\u256D\u256F\u256D\u256E\u2570\u256E</c1>","<c1>\u2570\u256E\u2503\u2503\u256D\u256F</c1>","<c1>\u256D\u256F\u2503\u2503\u2570\u256E</c1>","<c1>\u2570\u256E\u2570\u256F\u256D\u256F</c1>","<c2>\u2571</c2><c1>\u2570\u2501\u2501\u256F</c1><c2>\u2571</c2>"],$:["<c2>\u2571\u2571</c2><c1>\u256D\u256E</c1><c2>\u2571</c2>","<c1>\u256D\u2501\u256F\u2570\u256E</c1>","<c1>\u2503\u2570\u2501\u2501\u256E</c1>","<c1>\u2570\u2501\u2501\u256E\u2503</c1>","<c1>\u2570\u256E\u256D\u2501\u256F</c1>","<c2>\u2571</c2><c1>\u2570\u256F</c1><c2>\u2571\u2571</c2>"],"%":["<c1>\u256D\u256E</c1><c2>\u2571\u2571</c2><c1>\u256D\u2501\u256E</c1>","<c1>\u2570\u256F</c1><c2>\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1>","<c2>\u2571\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571\u2571</c2>","<c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571</c2><c1>\u256D\u256E</c1>","<c1>\u2570\u2501\u256F</c1><c2>\u2571\u2571</c2><c1>\u2570\u256F</c1>"],"&":["<c2>\u2571</c2><c1>\u256D\u2501\u2501\u256E</c1>","<c2>\u2571</c2><c1>\u2503\u256D\u2501\u256F</c1>","<c1>\u256D\u256F\u2570\u256E</c1><c2>\u2571</c2>","<c1>\u2503\u256D\u256E\u2503</c1><c2>\u2571</c2>","<c1>\u2503\u2570\u256F\u2503\u256E</c1>","<c1>\u2570\u2501\u2501\u2501\u256F</c1>"],"(":["<c2>\u2571\u2571</c2><c1>\u256D\u2501\u256E</c1>","<c2>\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1>","<c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571</c2>","<c1>\u2570\u256E\u2570\u256E</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u2570\u256E\u2570\u256E</c1>","<c2>\u2571\u2571</c2><c1>\u2570\u2501\u256F</c1>"],")":["<c1>\u256D\u2501\u256E</c1><c2>\u2571\u2571</c2>","<c1>\u2570\u256E\u2570\u256E</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u2570\u256E\u2570\u256E</c1>","<c2>\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1>","<c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571</c2>","<c1>\u2570\u2501\u256F</c1><c2>\u2571\u2571</c2>"],"/":["<c2>\u2571\u2571\u2571\u2571</c2><c1>\u256D\u2501\u256E</c1>","<c2>\u2571\u2571\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1>","<c2>\u2571\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571</c2>","<c2>\u2571</c2><c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571\u2571</c2>","<c1>\u256D\u256F\u256D\u256F</c1><c2>\u2571\u2571\u2571</c2>","<c1>\u2570\u2501\u256F</c1><c2>\u2571\u2571\u2571\u2571</c2>"],":":["<c2>\u2571\u2571</c2>","<c1>\u256D\u256E</c1>","<c1>\u2570\u256F</c1>","<c1>\u256D\u256E</c1>","<c1>\u2570\u256F</c1>","<c2>\u2571\u2571</c2>"],";":["<c1>\u256D\u256E</c1>","<c1>\u2503\u2503</c1>","<c1>\u2570\u256F</c1>","<c1>\u256D\u256E</c1>","<c1>\u2570\u252B</c1>","<c2>\u2571</c2><c1>\u256F</c1>"],",":["<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c1>\u256D\u256E</c1>","<c1>\u2570\u252B</c1>","<c2>\u2571</c2><c1>\u256F</c1>"],"'":["<c1>\u256D\u256E</c1>","<c1>\u2570\u256F</c1>","<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>","<c2>\u2571\u2571</c2>"],'"':["<c1>\u256D\u256E\u256D\u256E</c1>","<c1>\u2570\u256F\u2570\u256F</c1>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571\u2571</c2>"]," ":["<c2>\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571</c2>","<c2>\u2571\u2571\u2571</c2>"]}},R1={name:"tiny",version:"0.2.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:1,lines:2,buffer:["",""],letterspace:[" "," "],letterspace_size:1,chars:{A:["\u2584\u2580\u2588","\u2588\u2580\u2588"],B:["\u2588\u2584\u2584","\u2588\u2584\u2588"],C:["\u2588\u2580\u2580","\u2588\u2584\u2584"],D:["\u2588\u2580\u2584","\u2588\u2584\u2580"],E:["\u2588\u2580\u2580","\u2588\u2588\u2584"],F:["\u2588\u2580\u2580","\u2588\u2580 "],G:["\u2588\u2580\u2580","\u2588\u2584\u2588"],H:["\u2588 \u2588","\u2588\u2580\u2588"],I:["\u2588","\u2588"],J:[" \u2588","\u2588\u2584\u2588"],K:["\u2588\u2584\u2580","\u2588 \u2588"],L:["\u2588 ","\u2588\u2584\u2584"],M:["\u2588\u2580\u2584\u2580\u2588","\u2588 \u2580 \u2588"],N:["\u2588\u2584 \u2588","\u2588 \u2580\u2588"],O:["\u2588\u2580\u2588","\u2588\u2584\u2588"],P:["\u2588\u2580\u2588","\u2588\u2580\u2580"],Q:["\u2588\u2580\u2588","\u2580\u2580\u2588"],R:["\u2588\u2580\u2588","\u2588\u2580\u2584"],S:["\u2588\u2580\u2580","\u2584\u2584\u2588"],T:["\u2580\u2588\u2580"," \u2588 "],U:["\u2588 \u2588","\u2588\u2584\u2588"],V:["\u2588 \u2588","\u2580\u2584\u2580"],W:["\u2588 \u2588 \u2588","\u2580\u2584\u2580\u2584\u2580"],X:["\u2580\u2584\u2580","\u2588 \u2588"],Y:["\u2588\u2584\u2588"," \u2588 "],Z:["\u2580\u2588","\u2588\u2584"],"0":["\u259E\u2588\u259A","\u259A\u2588\u259E"],"1":["\u2584\u2588"," \u2588"],"2":["\u2580\u2588","\u2588\u2584"],"3":["\u2580\u2580\u2588","\u2584\u2588\u2588"],"4":["\u2588 \u2588","\u2580\u2580\u2588"],"5":["\u2588\u2580","\u2584\u2588"],"6":["\u2588\u2584\u2584","\u2588\u2584\u2588"],"7":["\u2580\u2580\u2588"," \u2588"],"8":["\u2588\u2588\u2588","\u2588\u2584\u2588"],"9":["\u2588\u2580\u2588","\u2580\u2580\u2588"],"!":["\u2588","\u2584"],"?":["\u2580\u2588"," \u2584"],".":[" ","\u2584"],"+":["\u2584\u2588\u2584"," \u2580 "],"-":["\u2584\u2584"," "],_:[" ","\u2584\u2584"],"=":["\u2580\u2580","\u2580\u2580"],"@":["\u259B\u2588\u259C","\u2599\u259F\u2583"],"#":["\u259F\u2584\u2599","\u259C\u2580\u259B"],$:["\u2596\u2588\u2597","\u2598\u2588\u259D"],"%":["\u2580 \u2584\u2580","\u2584\u2580 \u2584"],"&":["\u2584\u2584\u2588","\u2588\u2584\u2588"],"(":["\u2584\u2580","\u2580\u2584"],")":["\u2580\u2584","\u2584\u2580"],"/":[" \u2584\u2580","\u2584\u2580 "],":":["\u2580","\u2584"],";":[" ","\u2584\u2580"],",":[" ","\u2588"],"'":["\u2580"," "],'"':["\u259B \u259C"," "]," ":[" "," "]}},T1={name:"huge",version:"0.2.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:2,lines:11,buffer:["","","","","","","","","","",""],letterspace:[" "," "," "," "," "," "," "," "," "," "," "],letterspace_size:1,chars:{A:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580</c1> "],B:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],C:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],D:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],E:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],F:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],G:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],H:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580</c1> "],I:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],J:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],K:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580</c1> "],L:[" <c1>\u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],M:[" <c1>\u2584\u2584 \u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2580 \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580</c1> "],N:[" <c1>\u2584\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580\u2580</c1> "],O:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],P:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],Q:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],R:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580</c1> "],S:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],T:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],U:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],V:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],W:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2584 \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580 \u2580\u2580</c1> "],X:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580 \u2580</c1> "],Y:[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],Z:[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"0":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> "," <c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"1":[" <c1>\u2584\u2584\u2584\u2584</c1> "," <c1>\u2584\u2588</c1><c2>\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580 \u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"2":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"3":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"4":[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2580</c1> "],"5":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"6":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"7":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],"8":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"9":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"!":[" <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580</c1> "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580</c1> "],"?":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> "," <c1>\u2584\u2588</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u2588\u2584</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580 \u2584\u2584\u2584\u2588</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2588</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u2588</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C\u2580\u2580\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580</c1> "," <c1>\u2584\u2584</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580</c1> "],".":[" "," "," "," "," "," "," "," "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580</c1> "],"+":[" "," "," <c1>\u2584\u2584</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2584\u2584\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2588</c1><c2>\u2591\u2591</c2><c1>\u2588\u2580\u2580</c1> "," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580</c1> "," "," "],"-":[" "," "," "," "," <c1>\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580</c1> "," "," "," "," "],_:[" "," "," "," "," "," "," "," <c1>\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580</c1> "," "],"=":[" "," "," <c1>\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580</c1> "," "," <c1>\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580</c1> "," "," "],"@":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2584\u2584\u2584\u2584 \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2588</c1><c2>\u2591\u2591\u2591\u2591</c2><c1>\u2588 \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u2588\u2588\u2588\u2588</c1><c2>\u2591</c2><c1>\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2588</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580</c1> "],"#":[" <c1>\u2584 \u2584</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580 \u2580</c1> "],$:[" <c1>\u2584</c1> "," <c1>\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580</c1> "," <c1>\u2580</c1> "],"%":[" <c1>\u2584</c1> "," <c1>\u2584 \u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580 \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2584</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2580</c1> "," <c1>\u2580</c1> "],"&":[" <c1>\u2584\u2584\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2580\u2580\u2580\u2580\u2588</c1><c2>\u2591</c2><c1>\u258C \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C \u2590</c1><c2>\u2591</c2><c1>\u2588</c1><c2>\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2588\u2584\u2584\u2584\u2584\u2588</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2580\u2580\u2580 \u2580</c1> "],"(":[" <c1>\u2584\u2584\u2584\u2584\u2584</c1> "," <c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u2588\u2580\u2580\u2580</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u2588\u2584\u2584\u2584</c1> "," <c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580\u2580\u2580\u2580</c1> "],")":[" <c1>\u2584\u2584\u2584\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2588</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2584\u2584\u2584\u2588</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>","<c1>\u2590</c1><c2>\u2591\u2591\u2591\u2591\u2591</c2><c1>\u258C</c1> "," <c1>\u2580\u2580\u2580\u2580\u2580</c1> "],"/":[" <c1>\u2584</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1>"," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u258C</c1> "," <c1>\u2580</c1> "],":":[" "," "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580</c1> "," "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580</c1> "," "," "],";":[" "," "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u2580</c1> "," "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u258C</c1> "," <c1>\u2580</c1> "," "],",":[" "," "," "," "," "," "," "," <c1>\u2584\u2584</c1> ","<c1>\u2590</c1><c2>\u2591\u2591</c2><c1>\u258C</c1>"," <c1>\u2580\u258C</c1> "," <c1>\u2580</c1> "],"'":[" <c1>\u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2590</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2590</c1>"," <c1>\u2580</c1> "," "," "," "," "," "," "," "],'"':[" <c1>\u2584 \u2584</c1> ","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2590\u2590</c1><c2>\u2591</c2><c1>\u2590</c1>","<c1>\u2590</c1><c2>\u2591</c2><c1>\u2590\u2590</c1><c2>\u2591</c2><c1>\u2590</c1>"," <c1>\u2580 \u2580</c1> "," "," "," "," "," "," "," "]," ":[" "," "," "," "," "," "," "," "," "," "," "]}},g1={name:"grid",version:"0.1.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:2,lines:6,buffer:["","","","","",""],letterspace:["<c2>\u254B</c2>","<c2>\u254B</c2>","<c2>\u254B</c2>","<c2>\u254B</c2>","<c2>\u254B</c2>","<c2>\u254B</c2>"],letterspace_size:1,chars:{A:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2517\u251B\u2517\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],B:["<c1>\u250F\u2513</c1><c2>\u254B\u254B</c2>","<c1>\u2503\u2517\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],C:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u251B</c1>","<c1>\u2503\u2517\u2501\u2513</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],D:["<c2>\u254B\u254B</c2><c1>\u250F\u2513</c1>","<c1>\u250F\u2501\u251B\u2503</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],E:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u2503\u2501\u252B</c1>","<c1>\u2503\u2503\u2501\u252B</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],F:["<c2>\u254B</c2><c1>\u250F\u2501\u2513</c1>","<c1>\u250F\u251B\u2517\u2513</c1>","<c1>\u2517\u2513\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2503\u2503</c1><c2>\u254B</c2>","<c2>\u254B</c2><c1>\u2517\u251B</c1><c2>\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>"],G:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2501\u2513\u2503</c1>","<c1>\u2517\u2501\u2501\u251B</c1>"],H:["<c1>\u250F\u2513</c1><c2>\u254B\u254B</c2>","<c1>\u2503\u2517\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2503\u2503\u2503</c1>","<c1>\u2517\u251B\u2517\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],I:["<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>","<c1>\u250F\u2513</c1>","<c1>\u2503\u2503</c1>","<c1>\u2517\u251B</c1>","<c2>\u254B\u254B</c2>"],J:["<c2>\u254B</c2><c1>\u250F\u2513</c1>","<c2>\u254B</c2><c1>\u2517\u251B</c1>","<c2>\u254B</c2><c1>\u250F\u2513</c1>","<c2>\u254B</c2><c1>\u2503\u2503</c1>","<c1>\u250F\u251B\u2503</c1>","<c1>\u2517\u2501\u251B</c1>"],K:["<c1>\u250F\u2513</c1><c2>\u254B\u254B</c2>","<c1>\u2503\u2503\u250F\u2513</c1>","<c1>\u2503\u2517\u251B\u251B</c1>","<c1>\u2503\u250F\u2513\u2513</c1>","<c1>\u2517\u251B\u2517\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],L:["<c1>\u250F\u2513</c1><c2>\u254B</c2>","<c1>\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u2503\u2517\u2513</c1>","<c1>\u2517\u2501\u251B</c1>","<c2>\u254B\u254B\u254B</c2>"],M:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2513\u250F\u2513</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2503\u2503\u2503\u2503</c1>","<c1>\u2517\u253B\u253B\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],N:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2513</c1><c2>\u254B</c2>","<c1>\u2503\u250F\u2513\u2513</c1>","<c1>\u2503\u2503\u2503\u2503</c1>","<c1>\u2517\u251B\u2517\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],O:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],P:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2503\u250F\u2501\u251B</c1>","<c1>\u2517\u251B</c1><c2>\u254B\u254B</c2>"],Q:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2513\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2501\u2513\u2503</c1>","<c2>\u254B\u254B</c2><c1>\u2517\u251B</c1>"],R:["<c2>\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2513</c1>","<c1>\u2503\u250F\u251B</c1>","<c1>\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u2517\u251B</c1><c2>\u254B</c2>","<c2>\u254B\u254B\u254B</c2>"],S:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2503\u2501\u2501\u252B</c1>","<c1>\u2523\u2501\u2501\u2503</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],T:["<c2>\u254B</c2><c1>\u250F\u2513</c1><c2>\u254B</c2>","<c1>\u250F\u251B\u2517\u2513</c1>","<c1>\u2517\u2513\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2503\u2517\u2513</c1>","<c2>\u254B</c2><c1>\u2517\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],U:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2513\u250F\u2513</c1>","<c1>\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],V:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2513\u250F\u2513</c1>","<c1>\u2503\u2517\u251B\u2503</c1>","<c1>\u2517\u2513\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2517\u251B</c1><c2>\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>"],W:["<c2>\u254B\u254B\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2513\u250F\u2513\u250F\u2513</c1>","<c1>\u2503\u2517\u251B\u2517\u251B\u2503</c1>","<c1>\u2517\u2513\u250F\u2513\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2517\u251B\u2517\u251B</c1><c2>\u254B</c2>","<c2>\u254B\u254B\u254B\u254B\u254B\u254B</c2>"],X:["<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2513\u250F\u2513</c1>","<c1>\u2517\u254B\u254B\u251B</c1>","<c1>\u250F\u254B\u254B\u2513</c1>","<c1>\u2517\u251B\u2517\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>"],Y:["<c2>\u254B\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2513</c1><c2>\u254B</c2><c1>\u250F\u2513</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2513\u250F\u251B</c1>","<c1>\u2517\u2501\u2501\u251B</c1><c2>\u254B</c2>","<c2>\u254B\u254B\u254B\u254B\u254B</c2>"],Z:["<c2>\u254B\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2523\u2501\u2501\u2503\u2503</c1>","<c1>\u2503\u2503\u2501\u2501\u252B</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B\u254B</c2>"],"0":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2503\u2503\u2503\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"1":["<c2>\u254B</c2><c1>\u250F\u2513</c1><c2>\u254B</c2>","<c1>\u250F\u251B\u2503</c1><c2>\u254B</c2>","<c1>\u2517\u2513\u2503</c1><c2>\u254B</c2>","<c2>\u254B</c2><c1>\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u250F\u251B\u2517\u2513</c1>","<c1>\u2517\u2501\u2501\u251B</c1>"],"2":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2517\u251B\u250F\u251B\u2503</c1>","<c1>\u250F\u2501\u251B\u250F\u251B</c1>","<c1>\u2503\u2517\u2501\u253B\u2513</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"3":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2517\u251B\u250F\u251B\u2503</c1>","<c1>\u250F\u2513\u2517\u2513\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"4":["<c1>\u250F\u2513</c1><c2>\u254B</c2><c1>\u250F\u2513</c1>","<c1>\u2503\u2503</c1><c2>\u254B</c2><c1>\u2503\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2513\u2503</c1>","<c2>\u254B\u254B\u254B</c2><c1>\u2503\u2503</c1>","<c2>\u254B\u254B\u254B</c2><c1>\u2517\u251B</c1>"],"5":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2501\u251B</c1>","<c1>\u2503\u2517\u2501\u2501\u2513</c1>","<c1>\u2517\u2501\u2501\u2513\u2503</c1>","<c1>\u250F\u2501\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"6":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2501\u251B</c1>","<c1>\u2503\u2517\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"7":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2517\u251B\u250F\u251B\u2503</c1>","<c2>\u254B\u254B</c2><c1>\u2503\u250F\u251B</c1>","<c2>\u254B\u254B</c2><c1>\u2503\u2503</c1><c2>\u254B</c2>","<c2>\u254B\u254B</c2><c1>\u2517\u251B</c1><c2>\u254B</c2>"],"8":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"9":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2503\u2517\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2513\u2503</c1>","<c1>\u250F\u2501\u2501\u251B\u2503</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>"],"!":["<c1>\u250F\u2513</c1>","<c1>\u2503\u2503</c1>","<c1>\u2503\u2503</c1>","<c1>\u2517\u251B</c1>","<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>"],"?":["<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2503\u250F\u2501\u2513\u2503</c1>","<c1>\u2517\u251B\u250F\u251B\u2503</c1>","<c2>\u254B\u254B</c2><c1>\u2503\u250F\u251B</c1>","<c2>\u254B\u254B</c2><c1>\u250F\u2513</c1><c2>\u254B</c2>","<c2>\u254B\u254B</c2><c1>\u2517\u251B</c1><c2>\u254B</c2>"],".":["<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>"],"+":["<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B</c2><c1>\u250F\u2513</c1><c2>\u254B</c2>","<c1>\u250F\u251B\u2517\u2513</c1>","<c1>\u2517\u2513\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2517\u251B</c1><c2>\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>"],"-":["<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2517\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>"],_:["<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2513</c1>","<c1>\u2517\u2501\u2501\u251B</c1>"],"=":["<c2>\u254B\u254B\u254B\u254B\u254B</c2>","<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>","<c1>\u250F\u2501\u2501\u2501\u2513</c1>","<c1>\u2517\u2501\u2501\u2501\u251B</c1>","<c2>\u254B\u254B\u254B\u254B\u254B</c2>"],"@":["<c1>\u250F\u2501\u2501\u2501\u2501\u2513</c1><c2>\u254B</c2>","<c1>\u2503\u250F\u2501\u2501\u2513\u2503</c1><c2>\u254B</c2>","<c1>\u2503\u2503\u250F\u2501\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u2503\u2503\u2517\u251B\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u2503\u2517\u2501\u2501\u251B\u2517\u2513</c1>","<c1>\u2517\u2501\u2501\u2501\u2501\u2501\u251B</c1>"],"#":["<c2>\u254B</c2><c1>\u250F\u2501\u2501\u2501\u2513</c1><c2>\u254B</c2>","<c1>\u250F\u251B\u250F\u2501\u2513\u2517\u2513</c1>","<c1>\u2517\u2513\u2503\u2503\u2503\u250F\u251B</c1>","<c1>\u250F\u251B\u2503\u2503\u2503\u2517\u2513</c1>","<c1>\u2517\u2513\u2517\u2501\u251B\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2517\u2501\u2501\u2501\u251B</c1><c2>\u254B</c2>"],$:["<c2>\u254B</c2><c1>\u250F\u2513</c1><c2>\u254B</c2>","<c1>\u250F\u251B\u2517\u2513</c1>","<c1>\u2503\u2501\u2501\u252B</c1>","<c1>\u2523\u2501\u2501\u2503</c1>","<c1>\u2517\u2513\u250F\u251B</c1>","<c2>\u254B</c2><c1>\u2517\u251B</c1><c2>\u254B</c2>"],"%":["<c1>\u250F\u2513</c1><c2>\u254B\u254B</c2><c1>\u250F\u2501\u2513</c1>","<c1>\u2517\u251B</c1><c2>\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1>","<c2>\u254B\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B</c2>","<c2>\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B\u254B</c2>","<c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B</c2><c1>\u250F\u2513</c1>","<c1>\u2517\u2501\u251B</c1><c2>\u254B\u254B</c2><c1>\u2517\u251B</c1>"],"&":["<c2>\u254B\u254B</c2><c1>\u250F\u2513</c1><c2>\u254B</c2>","<c2>\u254B\u254B</c2><c1>\u2503\u2503</c1><c2>\u254B</c2>","<c1>\u250F\u2501\u251B\u2517\u2513</c1>","<c1>\u2503\u250F\u2513\u250F\u251B</c1>","<c1>\u2503\u2517\u251B\u2503</c1><c2>\u254B</c2>","<c1>\u2517\u2501\u2501\u251B</c1><c2>\u254B</c2>"],"(":["<c2>\u254B\u254B</c2><c1>\u250F\u2501\u2513</c1>","<c2>\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1>","<c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B</c2>","<c1>\u2517\u2513\u2517\u2513</c1><c2>\u254B</c2>","<c2>\u254B</c2><c1>\u2517\u2513\u2517\u2513</c1>","<c2>\u254B\u254B</c2><c1>\u2517\u2501\u251B</c1>"],")":["<c1>\u250F\u2501\u2513</c1><c2>\u254B\u254B</c2>","<c1>\u2517\u2513\u2517\u2513</c1><c2>\u254B</c2>","<c2>\u254B</c2><c1>\u2517\u2513\u2517\u2513</c1>","<c2>\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1>","<c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B</c2>","<c1>\u2517\u2501\u251B</c1><c2>\u254B\u254B</c2>"],"/":["<c2>\u254B\u254B\u254B\u254B</c2><c1>\u250F\u2501\u2513</c1>","<c2>\u254B\u254B\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1>","<c2>\u254B\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B</c2>","<c2>\u254B</c2><c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B\u254B</c2>","<c1>\u250F\u251B\u250F\u251B</c1><c2>\u254B\u254B\u254B</c2>","<c1>\u2517\u2501\u251B</c1><c2>\u254B\u254B\u254B\u254B</c2>"],":":["<c2>\u254B\u254B</c2>","<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>","<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>","<c2>\u254B\u254B</c2>"],";":["<c2>\u254B\u254B</c2>","<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>","<c2>\u254B\u254B</c2>","<c1>\u250F\u2513</c1>","<c1>\u2517\u252B</c1>"],",":["<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c1>\u250F\u2513</c1>","<c1>\u2517\u252B</c1>"],"'":["<c1>\u250F\u2513</c1>","<c1>\u2517\u251B</c1>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>"],'"':["<c1>\u250F\u2513\u250F\u2513</c1>","<c1>\u2517\u251B\u2517\u251B</c1>","<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>","<c2>\u254B\u254B\u254B\u254B</c2>"]," ":["<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>","<c2>\u254B\u254B</c2>"]}},C1={name:"pallet",version:"0.1.0",homepage:"https://github.com/dominikwilkowski/cfonts",colors:2,lines:6,buffer:["","","","","",""],letterspace:["<c2>\u2500</c2>","<c2>\u2500</c2>","<c2>\u2500</c2>","<c2>\u2500</c2>","<c2>\u2500</c2>","<c2>\u2500</c2>"],letterspace_size:1,chars:{A:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u255A\u255D</c1><c2>\u2500</c2><c1>\u255A\u255D</c1>"],B:["<c1>\u2554\u2550\u2550\u2557</c1><c2>\u2500</c2>","<c1>\u2551\u2554\u2557\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u255A\u255D\u255A\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],C:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u255A\u255D</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],D:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u255A\u2557\u2554\u2557\u2551</c1>","<c2>\u2500</c2><c1>\u2551\u2551\u2551\u2551</c1>","<c2>\u2500</c2><c1>\u2551\u2551\u2551\u2551</c1>","<c1>\u2554\u255D\u255A\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],E:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],F:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u2551</c1><c2>\u2500\u2500\u2500</c2>","<c1>\u255A\u255D</c1><c2>\u2500\u2500\u2500</c2>"],G:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u255A\u255D</c1>","<c1>\u2551\u2551\u2554\u2550\u2557</c1>","<c1>\u2551\u255A\u2569\u2550\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],H:["<c1>\u2554\u2557</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u255A\u255D</c1><c2>\u2500</c2><c1>\u255A\u255D</c1>"],I:["<c1>\u2554\u2550\u2550\u2557</c1>","<c1>\u255A\u2563\u2560\u255D</c1>","<c2>\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2554\u2563\u2560\u2557</c1>","<c1>\u255A\u2550\u2550\u255D</c1>"],J:["<c2>\u2500\u2500</c2><c1>\u2554\u2557</c1>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2554\u2557\u2551\u2551</c1>","<c1>\u2551\u255A\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u255D</c1>"],K:["<c1>\u2554\u2557\u2554\u2550\u2557</c1>","<c1>\u2551\u2551\u2551\u2554\u255D</c1>","<c1>\u2551\u255A\u255D\u255D</c1><c2>\u2500</c2>","<c1>\u2551\u2554\u2557\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u2551\u2551\u255A\u2557</c1>","<c1>\u255A\u255D\u255A\u2550\u255D</c1>"],L:["<c1>\u2554\u2557</c1><c2>\u2500\u2500\u2500</c2>","<c1>\u2551\u2551</c1><c2>\u2500\u2500\u2500</c2>","<c1>\u2551\u2551</c1><c2>\u2500\u2500\u2500</c2>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],M:["<c1>\u2554\u2550\u2557\u2554\u2550\u2557</c1>","<c1>\u2551\u2551\u255A\u255D\u2551\u2551</c1>","<c1>\u2551\u2554\u2557\u2554\u2557\u2551</c1>","<c1>\u2551\u2551\u2551\u2551\u2551\u2551</c1>","<c1>\u2551\u2551\u2551\u2551\u2551\u2551</c1>","<c1>\u255A\u255D\u255A\u255D\u255A\u255D</c1>"],N:["<c1>\u2554\u2550\u2557</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u2551\u255A\u2557\u2551\u2551</c1>","<c1>\u2551\u2554\u2557\u255A\u255D\u2551</c1>","<c1>\u2551\u2551\u255A\u2557\u2551\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551\u2551</c1>","<c1>\u255A\u255D</c1><c2>\u2500</c2><c1>\u255A\u2550\u255D</c1>"],O:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],P:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u2551</c1><c2>\u2500\u2500\u2500</c2>","<c1>\u255A\u255D</c1><c2>\u2500\u2500\u2500</c2>"],Q:["<c1>\u2554\u2550\u2550\u2550\u2557</c1><c2>\u2500</c2>","<c1>\u2551\u2554\u2550\u2557\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u255A\u2550\u255D\u2560\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u2550\u255D</c1>"],R:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u2551\u2554\u2557\u2554\u255D</c1>","<c1>\u2551\u2551\u2551\u255A\u2557</c1>","<c1>\u255A\u255D\u255A\u2550\u255D</c1>"],S:["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],T:["<c1>\u2554\u2550\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2557\u2554\u2557\u2551</c1>","<c1>\u255A\u255D\u2551\u2551\u255A\u255D</c1>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u255A\u255D</c1><c2>\u2500\u2500</c2>"],U:["<c1>\u2554\u2557</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],V:["<c1>\u2554\u2557</c1><c2>\u2500\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u255A\u2557\u2554\u255D\u2551</c1>","<c1>\u255A\u2557\u2551\u2551\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u2551\u255A\u255D\u2551</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u255A\u2557\u2554\u255D</c1><c2>\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u255A\u255D</c1><c2>\u2500\u2500</c2>"],W:["<c1>\u2554\u2557\u2554\u2557\u2554\u2557</c1>","<c1>\u2551\u2551\u2551\u2551\u2551\u2551</c1>","<c1>\u2551\u2551\u2551\u2551\u2551\u2551</c1>","<c1>\u2551\u255A\u255D\u255A\u255D\u2551</c1>","<c1>\u255A\u2557\u2554\u2557\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u255A\u255D\u255A\u255D</c1><c2>\u2500</c2>"],X:["<c1>\u2554\u2550\u2557\u2554\u2550\u2557</c1>","<c1>\u255A\u2557\u255A\u255D\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u255A\u2557\u2554\u255D</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u2554\u255D\u255A\u2557</c1><c2>\u2500</c2>","<c1>\u2554\u255D\u2554\u2557\u255A\u2557</c1>","<c1>\u255A\u2550\u255D\u255A\u2550\u255D</c1>"],Y:["<c1>\u2554\u2557</c1><c2>\u2500\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u255A\u2557\u2554\u255D\u2551</c1>","<c1>\u255A\u2557\u255A\u255D\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u255A\u2557\u2554\u255D</c1><c2>\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u255A\u255D</c1><c2>\u2500\u2500</c2>"],Z:["<c1>\u2554\u2550\u2550\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2557\u2550\u2551</c1>","<c2>\u2500\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500</c2>","<c1>\u2554\u255D\u2550\u255A\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u2550\u255D</c1>"],"0":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u2551\u2551\u2551\u2551</c1>","<c1>\u2551\u2551\u2551\u2551\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"1":["<c2>\u2500</c2><c1>\u2554\u2557</c1><c2>\u2500</c2>","<c1>\u2554\u255D\u2551</c1><c2>\u2500</c2>","<c1>\u255A\u2557\u2551</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2554\u255D\u255A\u2557</c1>","<c1>\u255A\u2550\u2550\u255D</c1>"],"2":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u255A\u255D\u2554\u255D\u2551</c1>","<c1>\u2554\u2550\u255D\u2554\u255D</c1>","<c1>\u2551\u2551\u255A\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"3":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u255A\u255D\u2554\u255D\u2551</c1>","<c1>\u2554\u2557\u255A\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"4":["<c1>\u2554\u2557</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u2551\u2551</c1><c2>\u2500</c2><c1>\u2551\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2557\u2551</c1>","<c2>\u2500\u2500\u2500</c2><c1>\u2551\u2551</c1>","<c2>\u2500\u2500\u2500</c2><c1>\u255A\u255D</c1>"],"5":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2557\u2551</c1>","<c1>\u2554\u2550\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"6":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2550\u255D</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"7":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u255A\u255D\u2554\u255D\u2551</c1>","<c2>\u2500\u2500</c2><c1>\u2551\u2554\u255D</c1>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u255A\u255D</c1><c2>\u2500</c2>"],"8":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"9":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2557\u2551</c1>","<c1>\u2554\u2550\u2550\u255D\u2551</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>"],"!":["<c1>\u2554\u2557</c1>","<c1>\u2551\u2551</c1>","<c1>\u2551\u2551</c1>","<c1>\u255A\u255D</c1>","<c1>\u2554\u2557</c1>","<c1>\u255A\u255D</c1>"],"?":["<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u255A\u255D\u2554\u255D\u2551</c1>","<c2>\u2500\u2500</c2><c1>\u2551\u2554\u255D</c1>","<c2>\u2500\u2500</c2><c1>\u2554\u2557</c1><c2>\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u255A\u255D</c1><c2>\u2500</c2>"],".":["<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>","<c1>\u2554\u2557</c1>","<c1>\u255A\u255D</c1>"],"+":["<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500</c2><c1>\u2554\u2557</c1><c2>\u2500</c2>","<c1>\u2554\u255D\u255A\u2557</c1>","<c1>\u255A\u2557\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u255A\u255D</c1><c2>\u2500</c2>"],"-":["<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>","<c1>\u2554\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u255D</c1>","<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>"],_:["<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>","<c1>\u2554\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u255D</c1>"],"=":["<c2>\u2500\u2500\u2500\u2500\u2500</c2>","<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>","<c1>\u2554\u2550\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u255D</c1>","<c2>\u2500\u2500\u2500\u2500\u2500</c2>"],"@":["<c1>\u2554\u2550\u2550\u2550\u2550\u2557</c1><c2>\u2500</c2>","<c1>\u2551\u2554\u2550\u2550\u2557\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u2551\u2554\u2550\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u2551\u255A\u255D\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2551\u255A\u2550\u2550\u255D\u2560\u2557</c1>","<c1>\u255A\u2550\u2550\u2550\u2550\u2550\u255D</c1>"],"#":["<c2>\u2500</c2><c1>\u2554\u2569\u2569\u2569\u2557</c1><c2>\u2500</c2>","<c1>\u2554\u255D\u2554\u2550\u2557\u255A\u2557</c1>","<c1>\u255A\u2557\u2560\u2550\u2563\u2554\u255D</c1>","<c1>\u2554\u255D\u2560\u2550\u2563\u255A\u2557</c1>","<c1>\u255A\u2557\u255A\u2550\u255D\u2554\u255D</c1>","<c2>\u2500</c2><c1>\u255A\u2566\u2566\u2566\u255D</c1><c2>\u2500</c2>"],$:["<c1>\u2554\u255D\u2569\u255A\u2557</c1>","<c1>\u2551\u2554\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u2550\u2557</c1>","<c1>\u255A\u2550\u2550\u2557\u2551</c1>","<c1>\u2551\u255A\u2550\u255D\u2551</c1>","<c1>\u255A\u2557\u2566\u2554\u255D</c1>"],"%":["<c1>\u2554\u2557</c1><c2>\u2500\u2500</c2><c1>\u2554\u2550\u2557</c1>","<c1>\u255A\u255D</c1><c2>\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1>","<c2>\u2500\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500\u2500</c2>","<c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500</c2><c1>\u2554\u2557</c1>","<c1>\u255A\u2550\u255D</c1><c2>\u2500\u2500</c2><c1>\u255A\u255D</c1>"],"&":["<c2>\u2500\u2500</c2><c1>\u2554\u2557</c1><c2>\u2500</c2>","<c2>\u2500\u2500</c2><c1>\u2551\u2551</c1><c2>\u2500</c2>","<c1>\u2554\u2550\u255D\u255A\u2557</c1>","<c1>\u2551\u2554\u2557\u2554\u255D</c1>","<c1>\u2551\u255A\u255D\u2551</c1><c2>\u2500</c2>","<c1>\u255A\u2550\u2550\u255D</c1><c2>\u2500</c2>"],"(":["<c2>\u2500\u2500</c2><c1>\u2554\u2550\u2557</c1>","<c2>\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1>","<c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500</c2>","<c1>\u255A\u2557\u255A\u2557</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u255A\u2557\u255A\u2557</c1>","<c2>\u2500\u2500</c2><c1>\u255A\u2550\u255D</c1>"],")":["<c1>\u2554\u2550\u2557</c1><c2>\u2500\u2500</c2>","<c1>\u255A\u2557\u255A\u2557</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u255A\u2557\u255A\u2557</c1>","<c2>\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1>","<c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500</c2>","<c1>\u255A\u2550\u255D</c1><c2>\u2500\u2500</c2>"],"/":["<c2>\u2500\u2500\u2500\u2500</c2><c1>\u2554\u2550\u2557</c1>","<c2>\u2500\u2500\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1>","<c2>\u2500\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500</c2>","<c2>\u2500</c2><c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500\u2500</c2>","<c1>\u2554\u255D\u2554\u255D</c1><c2>\u2500\u2500\u2500</c2>","<c1>\u255A\u2550\u255D</c1><c2>\u2500\u2500\u2500\u2500</c2>"],":":["<c2>\u2500\u2500</c2>","<c1>\u2554\u2557</c1>","<c1>\u255A\u255D</c1>","<c1>\u2554\u2557</c1>","<c1>\u255A\u255D</c1>","<c2>\u2500\u2500</c2>"],";":["<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>","<c1>\u2554\u2557</c1>","<c1>\u255A\u2563</c1>","<c2>\u2500</c2><c1>\u255D</c1>"],",":["<c1>\u2554\u2557</c1>","<c1>\u2551\u2551</c1>","<c1>\u255A\u255D</c1>","<c1>\u2554\u2557</c1>","<c1>\u255A\u2563</c1>","<c2>\u2500</c2><c1>\u255D</c1>"],"'":["<c1>\u2554\u2557</c1>","<c1>\u2551\u2551</c1>","<c1>\u255A\u255D</c1>","<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>","<c2>\u2500\u2500</c2>"],'"':["<c1>\u2554\u2557\u2554\u2557</c1>","<c1>\u2551\u2551\u2551\u2551</c1>","<c1>\u255A\u255D\u255A\u255D</c1>","<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500\u2500</c2>"]," ":["<c2>\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500</c2>","<c2>\u2500\u2500\u2500</c2>"]}},M1={tiny:R1,block:w1,shade:F1,slick:S1,huge:T1,grid:g1,pallet:C1},$2={};function x1(J){let Z=[],$=0,H=/<c(\d+)>(.*?)<\/c\d+>/g,Q=0,j;while((j=H.exec(J))!==null){if(j.index>Q){let Y=J.slice(Q,j.index);if(Y)Z.push({text:Y,colorIndex:0})}let G=parseInt(j[1])-1,L=j[2];Z.push({text:L,colorIndex:Math.max(0,G)}),Q=j.index+j[0].length}if(Q<J.length){let G=J.slice(Q);if(G)Z.push({text:G,colorIndex:0})}return Z}function c2(J){if(!$2[J]){let Z=M1[J],$={};for(let[H,Q]of Object.entries(Z.chars))$[H]=Q.map((j)=>x1(j));$2[J]={...Z,colors:Z.colors||1,chars:$}}return $2[J]}function fH({text:J,font:Z="tiny"}){let $=c2(Z);if(!$)return console.warn(`Font '${Z}' not found`),{width:0,height:0};let H=0;for(let Q=0;Q<J.length;Q++){let j=J[Q].toUpperCase(),G=$.chars[j];if(!G){let Y=$.chars[" "];if(Y&&Y[0]){let _=0;for(let W of Y[0])_+=W.text.length;H+=_}else H+=1;continue}let L=0;if(G[0])for(let Y of G[0])L+=Y.text.length;if(H+=L,Q<J.length-1)H+=$.letterspace_size}return{width:H,height:$.lines}}function k1(J,Z="tiny"){let $=c2(Z);if(!$)return[0];let H=[0],Q=0;for(let j=0;j<J.length;j++){let G=J[j].toUpperCase(),L=$.chars[G],Y=0;if(!L){let _=$.chars[" "];if(_&&_[0])for(let W of _[0])Y+=W.text.length;else Y=1}else if(L[0])for(let _ of L[0])Y+=_.text.length;if(Q+=Y,j<J.length-1)Q+=$.letterspace_size;H.push(Q)}return H}function H2(J,Z,$="tiny"){let H=k1(Z,$);if(J<0)return 0;for(let Q=0;Q<H.length-1;Q++){let j=H[Q],G=H[Q+1];if(J>=j&&J<G){let L=j+(G-j)/2;return J<L?Q:Q+1}}if(H.length>0&&J>=H[H.length-1])return Z.length;return 0}function pH(J,{text:Z,x:$=0,y:H=0,color:Q=[a.fromInts(255,255,255,255)],backgroundColor:j=a.fromInts(0,0,0,255),font:G="tiny"}){let{width:L,height:Y}=J,_=c2(G);if(!_)return console.warn(`Font '${G}' not found`),{width:0,height:0};let W=Array.isArray(Q)?Q:[Q];if(H<0||H+_.lines>Y)return{width:0,height:_.lines};let K=$,q=$;for(let N=0;N<Z.length;N++){let z=Z[N].toUpperCase(),P=_.chars[z];if(!P){let A=_.chars[" "];if(A&&A[0]){let I=0;for(let w of A[0])I+=w.text.length;K+=I}else K+=1;continue}let O=0;if(P[0])for(let A of P[0])O+=A.text.length;if(K>=L)break;if(K+O<0){K+=O+_.letterspace_size;continue}for(let A=0;A<_.lines&&A<P.length;A++){let I=P[A],w=H+A;if(w>=0&&w<Y){let C=K;for(let T of I){let g=W[T.colorIndex]||W[0];for(let F=0;F<T.text.length;F++){let R=C+F;if(R>=0&&R<L){let f=T.text[F];if(f!==" ")J.setCellWithAlphaBlending(R,w,f,y(g),y(j))}}C+=T.text.length}}}if(K+=O,N<Z.length-1)K+=_.letterspace_size}return{width:K-q,height:_.lines}}var sJ={NONE:0,BOLD:1,DIM:2,ITALIC:4,UNDERLINE:8,BLINK:16,INVERSE:32,HIDDEN:64,STRIKETHROUGH:128},vH=8,E1=255;function yH(J){return J&E1}var h1;((J)=>{J[J.topLeft=0]="topLeft",J[J.topRight=1]="topRight",J[J.bottomLeft=2]="bottomLeft",J[J.bottomRight=3]="bottomRight"})(h1||={});var b1;((J)=>{J[J.FG=1]="FG",J[J.BG=2]="BG",J[J.Both=3]="Both"})(b1||={});function YZ({bold:J=!1,italic:Z=!1,underline:$=!1,dim:H=!1,blink:Q=!1,inverse:j=!1,hidden:G=!1,strikethrough:L=!1}={}){let Y=sJ.NONE;if(J)Y|=sJ.BOLD;if(Z)Y|=sJ.ITALIC;if($)Y|=sJ.UNDERLINE;if(H)Y|=sJ.DIM;if(Q)Y|=sJ.BLINK;if(j)Y|=sJ.INVERSE;if(G)Y|=sJ.HIDDEN;if(L)Y|=sJ.STRIKETHROUGH;return Y}var f1=255,M9=8,x9=16777215;function cH(J,Z){let $=J&f1,H=(Z&x9)<<M9;return $|H}function lH(J){return J>>>M9&x9}function uH(J,Z=10){function $(Q,j="",G="",L=!0,Y=0){if(Y>=Z)return[`${j}${Q.id} ... (max depth reached)`];let _=[],W=Q.getChildren();if(_.push(`${j}${Q.id}`),W.length>0){let K=W.length-1;W.forEach((q,N)=>{let z=N===K,P=z?"\u2514\u2500\u2500 ":"\u251C\u2500\u2500 ",O=G+(L?" ":"\u2502 "),A=$(q,O+P,O,z,Y+1);_.push(...A)})}return _}let H=$(J);console.log(`Renderable Tree:
4
4
  `+H.join(`
5
5
  `))}var k9=Symbol.for("@opentui/core/StyledText");function p1(J){return J&&J[k9]}class ZZ{[k9]=!0;chunks;constructor(J){this.chunks=J}}function Q2(J){return new ZZ([{__isChunk:!0,text:J}])}function o(J,Z){if(typeof J==="object"&&"__isChunk"in J){let $=J,H=Z.fg?y(Z.fg):$.fg,Q=Z.bg?y(Z.bg):$.bg,j=YZ(Z),G=$.attributes?$.attributes|j:j;return{__isChunk:!0,text:$.text,fg:H,bg:Q,attributes:G,link:$.link}}else{let $=String(J),H=Z.fg?y(Z.fg):void 0,Q=Z.bg?y(Z.bg):void 0,j=YZ(Z);return{__isChunk:!0,text:$,fg:H,bg:Q,attributes:j}}}var mH=(J)=>o(J,{fg:"black"}),dH=(J)=>o(J,{fg:"red"}),aH=(J)=>o(J,{fg:"green"}),iH=(J)=>o(J,{fg:"yellow"}),nH=(J)=>o(J,{fg:"blue"}),sH=(J)=>o(J,{fg:"magenta"}),oH=(J)=>o(J,{fg:"cyan"}),tH=(J)=>o(J,{fg:"white"}),rH=(J)=>o(J,{fg:"brightBlack"}),eH=(J)=>o(J,{fg:"brightRed"}),JQ=(J)=>o(J,{fg:"brightGreen"}),ZQ=(J)=>o(J,{fg:"brightYellow"}),$Q=(J)=>o(J,{fg:"brightBlue"}),HQ=(J)=>o(J,{fg:"brightMagenta"}),QQ=(J)=>o(J,{fg:"brightCyan"}),jQ=(J)=>o(J,{fg:"brightWhite"}),GQ=(J)=>o(J,{bg:"black"}),LQ=(J)=>o(J,{bg:"red"}),UQ=(J)=>o(J,{bg:"green"}),DQ=(J)=>o(J,{bg:"yellow"}),YQ=(J)=>o(J,{bg:"blue"}),_Q=(J)=>o(J,{bg:"magenta"}),WQ=(J)=>o(J,{bg:"cyan"}),XQ=(J)=>o(J,{bg:"white"}),AQ=(J)=>o(J,{bold:!0}),NQ=(J)=>o(J,{italic:!0}),VQ=(J)=>o(J,{underline:!0}),OQ=(J)=>o(J,{strikethrough:!0}),zQ=(J)=>o(J,{dim:!0}),qQ=(J)=>o(J,{reverse:!0}),PQ=(J)=>o(J,{blink:!0}),IQ=(J)=>(Z)=>o(Z,{fg:J}),BQ=(J)=>(Z)=>o(Z,{bg:J}),KQ=(J)=>(Z)=>{return{...typeof Z==="object"&&"__isChunk"in Z?Z:{__isChunk:!0,text:String(Z)},link:{url:J}}};function wQ(J,...Z){let $=[];for(let H=0;H<J.length;H++){let Q=J[H];if(Q)$.push({__isChunk:!0,text:Q,attributes:0});let j=Z[H];if(typeof j==="object"&&"__isChunk"in j)$.push(j);else if(j!==void 0){let G=String(j);$.push({__isChunk:!0,text:G,attributes:0})}}return new ZZ($)}function E9(J,Z,$=[]){let H=[];if(J.type==="text"){let Q=$.length>0?$:["default"],j=Z.mergeStyles(...Q);H.push({__isChunk:!0,text:J.value,fg:j.fg,bg:j.bg,attributes:j.attributes})}else if(J.type==="element"){let Q=[...$];if(J.properties?.className){let j=J.properties.className.split(" ");for(let G of j)Q.push(G)}for(let j of J.children)H.push(...E9(j,Z,Q))}return H}function FQ(J,Z){let $=E9(J,Z);return new ZZ($)}class nZ{now(){if(!globalThis.performance||typeof globalThis.performance.now!=="function")throw Error("SystemClock requires globalThis.performance.now()");return globalThis.performance.now()}setTimeout(J,Z){return globalThis.setTimeout(J,Z)}clearTimeout(J){globalThis.clearTimeout(J)}setInterval(J,Z){return globalThis.setInterval(J,Z)}clearInterval(J){globalThis.clearInterval(J)}}var R2={27:"escape",9:"tab",13:"return",127:"backspace",57344:"escape",57345:"return",57346:"tab",57347:"backspace",57348:"insert",57349:"delete",57350:"left",57351:"right",57352:"up",57353:"down",57354:"pageup",57355:"pagedown",57356:"home",57357:"end",57358:"capslock",57359:"scrolllock",57360:"numlock",57361:"printscreen",57362:"pause",57363:"menu",57364:"f1",57365:"f2",57366:"f3",57367:"f4",57368:"f5",57369:"f6",57370:"f7",57371:"f8",57372:"f9",57373:"f10",57374:"f11",57375:"f12",57376:"f13",57377:"f14",57378:"f15",57379:"f16",57380:"f17",57381:"f18",57382:"f19",57383:"f20",57384:"f21",57385:"f22",57386:"f23",57387:"f24",57388:"f25",57389:"f26",57390:"f27",57391:"f28",57392:"f29",57393:"f30",57394:"f31",57395:"f32",57396:"f33",57397:"f34",57398:"f35",57399:"kp0",57400:"kp1",57401:"kp2",57402:"kp3",57403:"kp4",57404:"kp5",57405:"kp6",57406:"kp7",57407:"kp8",57408:"kp9",57409:"kpdecimal",57410:"kpdivide",57411:"kpmultiply",57412:"kpminus",57413:"kpplus",57414:"kpenter",57415:"kpequal",57416:"kpseparator",57417:"kpleft",57418:"kpright",57419:"kpup",57420:"kpdown",57421:"kppageup",57422:"kppagedown",57423:"kphome",57424:"kpend",57425:"kpinsert",57426:"kpdelete",57427:"clear",57428:"mediaplay",57429:"mediapause",57430:"mediaplaypause",57431:"mediareverse",57432:"mediastop",57433:"mediafastforward",57434:"mediarewind",57435:"medianext",57436:"mediaprev",57437:"mediarecord",57438:"volumedown",57439:"volumeup",57440:"mute",57441:"leftshift",57442:"leftctrl",57443:"leftalt",57444:"leftsuper",57445:"lefthyper",57446:"leftmeta",57447:"rightshift",57448:"rightctrl",57449:"rightalt",57450:"rightsuper",57451:"righthyper",57452:"rightmeta",57453:"iso_level3_shift",57454:"iso_level5_shift"},y1=[...new Set(Object.values(R2))],c1={kp0:"0",kp1:"1",kp2:"2",kp3:"3",kp4:"4",kp5:"5",kp6:"6",kp7:"7",kp8:"8",kp9:"9",kpdecimal:".",kpdivide:"/",kpmultiply:"*",kpminus:"-",kpplus:"+",kpequal:"=",kpseparator:","};function l1(J){return c1[J.name]}function h9(J){return{shift:!!(J&1),alt:!!(J&2),ctrl:!!(J&4),super:!!(J&8),hyper:!!(J&16),meta:!!(J&32),capsLock:!!(J&64),numLock:!!(J&128)}}var u1={A:"up",B:"down",C:"right",D:"left",H:"home",F:"end",E:"clear",P:"f1",Q:"f2",S:"f4"},m1={"1":"home","2":"insert","3":"delete","4":"end","5":"pageup","6":"pagedown","7":"home","8":"end","11":"f1","12":"f2","13":"f3","14":"f4","15":"f5","17":"f6","18":"f7","19":"f8","20":"f9","21":"f10","23":"f11","24":"f12","29":"menu","57427":"clear"};function d1(J){let $=/^\x1b\[(\d+);(\d+):(\d+)([A-Z~])$/.exec(J);if(!$)return null;let H=$[1],Q=$[2],j=$[3],G=$[4],L;if(G==="~")L=m1[H];else{if(H!=="1")return null;L=u1[G]}if(!L)return null;let Y={name:L,ctrl:!1,meta:!1,shift:!1,option:!1,number:!1,sequence:J,raw:J,eventType:"press",source:"kitty",super:!1,hyper:!1,capsLock:!1,numLock:!1};if(Q){let _=parseInt(Q,10);if(!isNaN(_)&&_>1){let W=h9(_-1);Y.shift=W.shift,Y.ctrl=W.ctrl,Y.meta=W.alt||W.meta,Y.option=W.alt,Y.super=W.super,Y.hyper=W.hyper,Y.capsLock=W.capsLock,Y.numLock=W.numLock}}if(j==="1"||!j)Y.eventType="press";else if(j==="2")Y.eventType="press",Y.repeated=!0;else if(j==="3")Y.eventType="release";return Y}function a1(J){let Z=d1(J);if(Z)return Z;let H=/^\x1b\[([^\x1b]+)u$/.exec(J);if(!H)return null;let j=H[1].split(";");if(j.length<1)return null;let G={name:"",ctrl:!1,meta:!1,shift:!1,option:!1,number:!1,sequence:J,raw:J,eventType:"press",source:"kitty",super:!1,hyper:!1,capsLock:!1,numLock:!1},L="",Y=j[0]?.split(":")||[],_=Y[0];if(!_)return null;let W=parseInt(_,10);if(isNaN(W))return null;let K,q;if(Y[1]){let z=parseInt(Y[1],10);if(!isNaN(z)&&z>0&&z<=1114111)K=z}if(Y[2]){let z=parseInt(Y[2],10);if(!isNaN(z)&&z>0&&z<=1114111)q=z}let N=R2[W];if(N)G.name=N,G.code=`[${W}u`;else if(W===0)G.name="";else if(W>0&&W<=1114111){let z=String.fromCodePoint(W);if(G.name=z===" "?"space":z,q)G.baseCode=q}else return null;if(j[1]){let z=j[1].split(":"),P=z[0],O=z[1];if(P){let A=parseInt(P,10);if(!isNaN(A)&&A>1){let I=h9(A-1);G.shift=I.shift,G.ctrl=I.ctrl,G.meta=I.alt||I.meta,G.option=I.alt,G.super=I.super,G.hyper=I.hyper,G.capsLock=I.capsLock,G.numLock=I.numLock}}if(O==="1"||!O)G.eventType="press";else if(O==="2")G.eventType="press",G.repeated=!0;else if(O==="3")G.eventType="release";else G.eventType="press"}if(j[2]){let z=j[2].split(":");for(let P of z){let O=parseInt(P,10);if(!isNaN(O)&&O>0&&O<=1114111)L+=String.fromCodePoint(O)}}if(L==="")L=l1(G)??"";if(L===""){if(G.name.length>0&&!R2[W])if(W===32)L=" ";else if(G.shift&&K)L=String.fromCodePoint(K);else if(G.shift&&G.name.length===1)L=G.name.toLocaleUpperCase();else L=G.name}if(L){if(W===0)G.name=L;G.sequence=L}if(W===0&&L==="")return null;return G}var i1=/^(?:\x1b)([a-zA-Z0-9])$/,n1=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,b9={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[29~":"menu","[57427~":"clear","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home","[P":"f1","[Q":"f2","[S":"f4",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home",OM:"return",Oj:"*",Ok:"+",Ol:",",Om:"-",On:".",Oo:"/",Op:"0",Oq:"1",Or:"2",Os:"3",Ot:"4",Ou:"5",Ov:"6",Ow:"7",Ox:"8",Oy:"9",OX:"=","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear",f:"right",b:"left",p:"up",n:"down","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"},s1=[...Object.values(b9),"backspace"],RQ=[...new Set(["return","linefeed","tab","escape","space",...s1,...y1])],o1=(J)=>{return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(J)},t1=(J)=>{return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(J)},F7=(J)=>{if(J===0)return"space";if(J>=1&&J<=26)return String.fromCharCode(J+97-1);if(J>=28&&J<=31)return String.fromCharCode(J+64);return},r1={Op:"0",Oq:"1",Or:"2",Os:"3",Ot:"4",Ou:"5",Ov:"6",Ow:"7",Ox:"8",Oy:"9",Oj:"*",Ok:"+",Ol:",",Om:"-",On:".",Oo:"/",OX:"="},e1=/^\x1b\[27;(\d+);(\d+)~$/,S7=(J="",Z={})=>{let $;if(v1.isBuffer(J))if(J[0]>127&&J[1]===void 0)J[0]-=128,J="\x1B"+String(J);else J=String(J);else if(J!==void 0&&typeof J!=="string")J=String(J);else if(!J)J="";if(/^\x1b\[<\d+;\d+;\d+[Mm]$/.test(J))return null;if(/^\[<\d+;\d+;\d+[Mm]$/.test(J))return null;if(/^\x1b\[<[\d;]*$/.test(J))return null;if(/^\[<[\d;]*$/.test(J))return null;if(J.startsWith("\x1B[M")&&J.length>=6)return null;if(/^\x1b\[\d+;\d+;\d+t$/.test(J))return null;if(/^\x1b\[\d+;\d+R$/.test(J))return null;if(/^\x1b\[\?[\d;]+c$/.test(J))return null;if(/^\x1b\[\?[\d;]+\$y$/.test(J))return null;if(J==="\x1B[I"||J==="\x1B[O")return null;if(/^\x1b\][\d;].*(\x1b\\|\x07)$/.test(J))return null;if(J==="\x1B[200~"||J==="\x1B[201~")return null;let H={name:"",ctrl:!1,meta:!1,shift:!1,option:!1,number:!1,sequence:J,raw:J,eventType:"press",source:"raw"};H.sequence=H.sequence||J||H.name;let Q=J.length===1?F7(J.charCodeAt(0)):void 0,j=J.length===2&&J[0]==="\x1B"?F7(J.charCodeAt(1)):void 0;if(Z.useKittyKeyboard){let L=a1(J);if(L)return L}let G=e1.exec(J);if(G){let L=parseInt(G[1],10)-1,Y=parseInt(G[2],10);if(H.ctrl=!!(L&4),H.meta=!!(L&2),H.shift=!!(L&1),H.option=!!(L&2),H.super=!!(L&8),H.hyper=!!(L&16),Y===13)H.name="return";else if(Y===27)H.name="escape";else if(Y===9)H.name="tab";else if(Y===32)H.name="space";else if(Y===127||Y===8)H.name="backspace";else{let _=String.fromCharCode(Y);if(H.name=_,H.sequence=_,Y>=48&&Y<=57)H.number=!0}return H}if(J==="\r"||J==="\x1B\r")H.name="return",H.meta=J.length===2;else if(J===`
@@ -31,12 +31,12 @@ No environment variables registered.
31
31
  `}else Z+=`\x1B[32mDefault:\x1B[0m \x1B[31mRequired\x1B[0m
32
32
  `;Z+=`
33
33
  `}return Z}var QJ=new Proxy({},{get(J,Z){if(typeof Z!=="string")return;return uZ.get(Z)},has(J,Z){return uZ.has(Z)},ownKeys(){return Object.keys(_Z)},getOwnPropertyDescriptor(J,Z){if(uZ.has(Z))return{enumerable:!0,configurable:!0,get:()=>uZ.get(Z)};return}}),L5=20,U5=65536,K0=256,AJ=27,D5=7,j2=g0.from("\x1B[200~"),G2=g0.from("\x1B[201~"),u2=new Uint8Array(0),Y5=new TextDecoder,_5={kittyKeyboardEnabled:!1,privateCapabilityRepliesActive:!1,pixelResolutionQueryActive:!1,explicitWidthCprActive:!1,startupCursorCprActive:!1},W5=/^\x1b\[\d+\$$/,X5=new nZ;class c9{buf;start=0;end=0;constructor(J=K0){this.buf=new Uint8Array(J)}get length(){return this.end-this.start}get capacity(){return this.buf.length}view(){return this.buf.subarray(this.start,this.end)}take(){let J=this.view();return this.start=0,this.end=0,J}append(J){if(J.length===0)return;this.ensureCapacity(this.length+J.length),this.buf.set(J,this.end),this.end+=J.length}consume(J){if(J<=0)return;if(J>=this.length){this.start=0,this.end=0;return}if(this.start+=J,this.start>=this.buf.length/2)this.buf.copyWithin(0,this.start,this.end),this.end-=this.start,this.start=0}clear(){this.start=0,this.end=0}reset(J=K0){this.buf=new Uint8Array(J),this.start=0,this.end=0}ensureCapacity(J){let Z=this.length;if(J<=this.buf.length){if(this.buf.length-this.end>=J-Z)return;if(this.buf.copyWithin(0,this.start,this.end),this.end=Z,this.start=0,J<=this.buf.length)return}let $=this.buf.length;while($<J)$*=2;let H=new Uint8Array($);H.set(this.view(),0),this.buf=H,this.start=0,this.end=Z}}function E7(J,Z){if(typeof J!=="number"||!Number.isFinite(J)||J<=0)return Z;return Math.floor(J)}function A5(J){if(J<128)return 1;if(J>=194&&J<=223)return 2;if(J>=224&&J<=239)return 3;if(J>=240&&J<=244)return 4;return 0}function N5(J,Z){if(J.length!==Z.length)return!1;for(let $=0;$<J.length;$+=1)if(J[$]!==Z[$])return!1;return!0}function L2(J){if(J.length<7)return!1;if(J[0]!==AJ||J[1]!==91||J[2]!==60)return!1;let Z=J[J.length-1];if(Z!==77&&Z!==109)return!1;let $=0,H=!1;for(let Q=3;Q<J.length-1;Q+=1){let j=J[Q];if(j>=48&&j<=57){H=!0;continue}if(j===59&&H&&$<2){$+=1,H=!1;continue}return!1}return $===2&&H}function uJ(J){return J>=48&&J<=57}function l9(J,Z,$){if(Z>=$)return null;let H=0,Q=!1;for(let j=Z;j<$;j+=1){let G=J[j];if(!uJ(G))return null;Q=!0,H=H*10+(G-48)}return Q?H:null}function V5(J,Z,$){if(Z>=$)return null;let H=-1;for(let j=Z;j<$;j+=1)if(J[j]===58){H=j;break}if(H===-1)return null;let Q=l9(J,Z,H);if(Q===null)return null;for(let j=H+1;j<$;j+=1){let G=J[j];if(G!==58&&!uJ(G))return null}return Q}function O5(J){return J.semicolons>=1}function z5(J){return J.semicolons===1&&J.segments>1}function u9(J){return J.firstParamValue===1&&J.semicolons===1}function q5(J){return J.semicolons===1}function P5(J){return J.segments===1&&J.semicolons<=1}function I5(J){return J.firstParamValue===4&&J.semicolons===2}function h7(J,Z){return Z.kittyKeyboardEnabled&&(O5(J)||z5(J))||Z.explicitWidthCprActive&&u9(J)||Z.startupCursorCprActive&&q5(J)||Z.pixelResolutionQueryActive&&I5(J)}function B5(J,Z,$){if($.kittyKeyboardEnabled){if(J.hasDigit&&Z===117)return!0;if(J.hasDigit&&J.semicolons===1&&J.segments>1&&(Z===126||Z>=65&&Z<=90))return!0}if($.explicitWidthCprActive&&J.hasDigit&&J.firstParamValue===1&&J.semicolons===1&&Z===82)return!0;if($.startupCursorCprActive&&J.hasDigit&&J.semicolons===1&&Z===82)return!0;if($.pixelResolutionQueryActive&&J.hasDigit&&J.firstParamValue===4&&J.semicolons===2&&Z===116)return!0;return!1}function K5(J,Z){if(Z===82&&J.semicolons===1&&J.segments===1&&J.hasDigit)return"cpr";return"csi"}function b7(J){return J.privateCapabilityRepliesActive}function w5(J,Z,$){if(!$.privateCapabilityRepliesActive)return!1;if(J.sawDollar)return J.hasDigit&&Z===121;if(Z===99)return J.hasDigit||J.semicolons>0;if(Z===110)return J.hasDigit;return J.hasDigit&&Z===117}function F5(J,Z){if(J.length===0)return Z;if(Z.length===0)return J;let $=new Uint8Array(J.length+Z.length);return $.set(J,0),$.set(Z,J.length),$}function f7(J){let Z=new Uint8Array(J.length+1);return Z[0]=AJ,Z.set(J,1),Z}function p7(J,Z){if(Z.length===0)return 0;let $=J.length-Z.length;for(let H=0;H<=$;H+=1){let Q=!0;for(let j=0;j<Z.length;j+=1)if(J[H+j]!==Z[j]){Q=!1;break}if(Q)return H}return-1}function v7(J){return g0.from(J.buffer,J.byteOffset,J.byteLength).toString("latin1")}function fJ(J){return Y5.decode(J)}function S5(){return{tail:u2,parts:[],totalLength:0}}function R5(J,Z){if(Z===0)return u2;if(J.length===1)return J[0];let $=new Uint8Array(Z),H=0;for(let Q of J)$.set(Q,H),H+=Q.length;return $}class m9{pending=new c9(K0);events=[];timeoutMs;maxPendingBytes;armTimeouts;onTimeoutFlush;useKittyKeyboard;mouseParser=new B0;clock;protocolContext;timeoutId=null;destroyed=!1;pendingSinceMs=null;forceFlush=!1;justFlushedEsc=!1;state={tag:"ground"};cursor=0;unitStart=0;paste=null;constructor(J={}){this.timeoutMs=E7(J.timeoutMs,L5),this.maxPendingBytes=E7(J.maxPendingBytes,U5),this.armTimeouts=J.armTimeouts??!0,this.onTimeoutFlush=J.onTimeoutFlush??null,this.useKittyKeyboard=J.useKittyKeyboard??!0,this.clock=J.clock??X5,this.protocolContext={..._5,kittyKeyboardEnabled:J.protocolContext?.kittyKeyboardEnabled??!1,privateCapabilityRepliesActive:J.protocolContext?.privateCapabilityRepliesActive??!1,pixelResolutionQueryActive:J.protocolContext?.pixelResolutionQueryActive??!1,explicitWidthCprActive:J.protocolContext?.explicitWidthCprActive??!1,startupCursorCprActive:J.protocolContext?.startupCursorCprActive??!1}}get bufferCapacity(){return this.pending.capacity}updateProtocolContext(J){this.ensureAlive(),this.protocolContext={...this.protocolContext,...J},this.reconcileDeferredStateWithProtocolContext(),this.reconcileTimeoutState()}getAbortableStartupCursorCprState(){if(this.pending.length===0)return null;switch(this.state.tag){case"csi":{let J=this.pending.view(),Z=this.unitStart+2;if(this.cursor<Z)return null;let $=null;for(let H=Z;H<this.cursor;H+=1){let Q=J[H];if(!uJ(Q))return null;$=($??0)*10+(Q-48)}return{tag:"csi_parametric_ignored",semicolons:0,segments:1,hasDigit:this.cursor>Z,firstParamValue:$}}case"csi_parametric":case"csi_parametric_deferred":if(!P5(this.state)||this.protocolContext.explicitWidthCprActive&&u9(this.state))return null;return{tag:"csi_parametric_ignored",semicolons:this.state.semicolons,segments:this.state.segments,hasDigit:this.state.hasDigit,firstParamValue:this.state.firstParamValue}}return null}abortPendingStartupCursorCpr(){this.ensureAlive();let J=this.getAbortableStartupCursorCprState();if(!J)return;if(this.state=J,this.pendingSinceMs===null)this.markPending();this.forceFlush=!1,this.reconcileTimeoutState()}push(J){if(this.ensureAlive(),J.length===0){this.emitKeyOrResponse("unknown","");return}let Z=J;while(Z.length>0){if(this.paste){Z=this.consumePasteBytes(Z);continue}let $=this.state.tag==="ground"&&this.pending.length===0?p7(Z,j2):-1,H=$===-1?Z.length:$+j2.length;if(this.pending.append(Z.subarray(0,H)),Z=Z.subarray(H),this.scanPending(),this.paste&&this.pending.length>0){Z=this.consumePasteBytes(this.takePendingBytes());continue}if(!this.paste&&this.pending.length>this.maxPendingBytes){if(this.flushPendingOverflow(),this.scanPending(),this.paste&&this.pending.length>0)Z=this.consumePasteBytes(this.takePendingBytes())}}this.reconcileTimeoutState()}read(){if(this.ensureAlive(),this.events.length===0&&this.forceFlush)this.scanPending(),this.reconcileTimeoutState();return this.events.shift()??null}drain(J){this.ensureAlive();while(!0){if(this.destroyed)return;let Z=this.read();if(!Z)return;J(Z)}}flushTimeout(J=this.clock.now()){if(this.ensureAlive(),this.pendingSinceMs!==null&&(J<this.pendingSinceMs||J-this.pendingSinceMs<this.timeoutMs))return;this.tryForceFlush()}tryForceFlush(){if(this.paste||this.pendingSinceMs===null||this.pending.length===0)return;this.forceFlush=!0}reset(){if(this.destroyed)return;this.clearTimeout(),this.resetState()}resetMouseState(){this.ensureAlive(),this.mouseParser.reset()}destroy(){if(this.destroyed)return;this.clearTimeout(),this.destroyed=!0,this.resetState()}ensureAlive(){if(this.destroyed)throw Error("StdinParser has been destroyed")}scanPending(){while(!this.paste){let J=this.pending.view();if(this.state.tag==="ground"&&this.cursor>=J.length){this.pending.clear(),this.cursor=0,this.unitStart=0,this.pendingSinceMs=null,this.forceFlush=!1;return}let Z=this.cursor<J.length?J[this.cursor]:-1;switch(this.state.tag){case"ground":{if(this.unitStart=this.cursor,this.justFlushedEsc){if(Z===91){this.justFlushedEsc=!1,this.cursor+=1,this.state={tag:"esc_recovery"};continue}this.justFlushedEsc=!1}if(Z===AJ){this.cursor+=1,this.state={tag:"esc"};continue}if(Z<128){this.emitKeyOrResponse("unknown",fJ(J.subarray(this.cursor,this.cursor+1))),this.consumePrefix(this.cursor+1);continue}let $=A5(Z);if($===0){if(!this.forceFlush&&this.cursor+1===J.length){this.markPending();return}this.emitLegacyHighByte(Z),this.consumePrefix(this.cursor+1);continue}this.cursor+=1,this.state={tag:"utf8",expected:$,seen:1};continue}case"utf8":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitLegacyHighByte(J[this.unitStart]),this.state={tag:"ground"},this.consumePrefix(this.unitStart+1);continue}if((Z&192)!==128){this.emitLegacyHighByte(J[this.unitStart]),this.state={tag:"ground"},this.consumePrefix(this.unitStart+1);continue}let $=this.state.seen+1;if(this.cursor+=1,$<this.state.expected){this.state={tag:"utf8",expected:this.state.expected,seen:$};continue}this.emitKeyOrResponse("unknown",fJ(J.subarray(this.unitStart,this.cursor))),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"esc":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}let $=this.cursor===this.unitStart+1&&J[this.unitStart]===AJ;this.emitKeyOrResponse("unknown",fJ(J.subarray(this.unitStart,this.cursor))),this.justFlushedEsc=$,this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}switch(Z){case 91:this.cursor+=1,this.state={tag:"csi"};continue;case 79:this.cursor+=1,this.state={tag:"ss3"};continue;case 93:this.cursor+=1,this.state={tag:"osc",sawEsc:!1};continue;case 80:this.cursor+=1,this.state={tag:"dcs",sawEsc:!1};continue;case 95:this.cursor+=1,this.state={tag:"apc",sawEsc:!1};continue;case AJ:this.cursor+=1;continue;default:this.cursor+=1,this.emitKeyOrResponse("unknown",fJ(J.subarray(this.unitStart,this.cursor))),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}}case"ss3":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}this.cursor+=1,this.emitKeyOrResponse("unknown",fJ(J.subarray(this.unitStart,this.cursor))),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"esc_recovery":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitKeyOrResponse("unknown",fJ(J.subarray(this.unitStart,this.cursor))),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===60){this.cursor+=1,this.state={tag:"esc_less_mouse"};continue}if(Z===77){this.cursor+=1,this.state={tag:"esc_less_x10_mouse"};continue}this.emitKeyOrResponse("unknown",fJ(J.subarray(this.unitStart,this.unitStart+1))),this.state={tag:"ground"},this.consumePrefix(this.unitStart+1);continue}case"csi":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===77&&this.cursor===this.unitStart+2){let $=this.cursor+4;if(J.length<$){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,J.length)),this.state={tag:"ground"},this.consumePrefix(J.length);continue}this.emitMouse(J.subarray(this.unitStart,$),"x10"),this.state={tag:"ground"},this.consumePrefix($);continue}if(Z===36){let $=this.cursor+1,H=fJ(J.subarray(this.unitStart,$));if(W5.test(H)){this.emitKeyOrResponse("csi",H),this.state={tag:"ground"},this.consumePrefix($);continue}if(!this.forceFlush&&$>=J.length){this.markPending();return}}if(Z===60&&this.cursor===this.unitStart+2){this.cursor+=1,this.state={tag:"csi_sgr_mouse",part:0,hasDigit:!1};continue}if(Z===91&&this.cursor===this.unitStart+2){this.cursor+=1;continue}if(Z===63&&this.cursor===this.unitStart+2){this.cursor+=1,this.state={tag:"csi_private_reply",semicolons:0,hasDigit:!1,sawDollar:!1};continue}if(Z===59){let $=this.unitStart+2,H=this.cursor,Q=l9(J,$,H);if(Q===null&&this.protocolContext.kittyKeyboardEnabled)Q=V5(J,$,H);if(Q!==null){this.cursor+=1,this.state={tag:"csi_parametric",semicolons:1,segments:1,hasDigit:!1,firstParamValue:Q};continue}}if(Z>=64&&Z<=126){let $=this.cursor+1,H=J.subarray(this.unitStart,$);if(N5(H,j2)){this.state={tag:"ground"},this.consumePrefix($),this.paste=S5();continue}if(L2(H)){this.emitMouse(H,"sgr"),this.state={tag:"ground"},this.consumePrefix($);continue}this.emitKeyOrResponse("csi",fJ(H)),this.state={tag:"ground"},this.consumePrefix($);continue}this.cursor+=1;continue}case"csi_sgr_mouse":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.state={tag:"csi_sgr_mouse_deferred",part:this.state.part,hasDigit:this.state.hasDigit},this.pendingSinceMs=null,this.forceFlush=!1;return}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)){this.cursor+=1,this.state={tag:"csi_sgr_mouse",part:this.state.part,hasDigit:!0};continue}if(Z===59&&this.state.hasDigit&&this.state.part<2){this.cursor+=1,this.state={tag:"csi_sgr_mouse",part:this.state.part+1,hasDigit:!1};continue}if(Z>=64&&Z<=126){let $=this.cursor+1,H=J.subarray(this.unitStart,$);if(L2(H))this.emitMouse(H,"sgr");else this.emitKeyOrResponse("csi",fJ(H));this.state={tag:"ground"},this.consumePrefix($);continue}this.state={tag:"csi"};continue}case"csi_sgr_mouse_deferred":{if(this.cursor>=J.length){this.pendingSinceMs=null,this.forceFlush=!1;return}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)||Z===59||Z===77||Z===109){this.state={tag:"csi_sgr_mouse",part:this.state.part,hasDigit:this.state.hasDigit};continue}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"csi_parametric":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}if(h7(this.state,this.protocolContext)){this.state={tag:"csi_parametric_deferred",semicolons:this.state.semicolons,segments:this.state.segments,hasDigit:this.state.hasDigit,firstParamValue:this.state.firstParamValue},this.pendingSinceMs=null,this.forceFlush=!1;return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)){this.cursor+=1,this.state={tag:"csi_parametric",semicolons:this.state.semicolons,segments:this.state.segments,hasDigit:!0,firstParamValue:this.state.firstParamValue};continue}if(Z===58&&this.state.hasDigit&&this.state.segments<3){this.cursor+=1,this.state={tag:"csi_parametric",semicolons:this.state.semicolons,segments:this.state.segments+1,hasDigit:!1,firstParamValue:this.state.firstParamValue};continue}if(Z===59&&this.state.semicolons<2){this.cursor+=1,this.state={tag:"csi_parametric",semicolons:this.state.semicolons+1,segments:1,hasDigit:!1,firstParamValue:this.state.firstParamValue};continue}if(Z>=64&&Z<=126){let $=this.cursor+1,H=K5(this.state,Z);this.emitKeyOrResponse(H,fJ(J.subarray(this.unitStart,$))),this.state={tag:"ground"},this.consumePrefix($);continue}this.state={tag:"csi"};continue}case"csi_parametric_deferred":{if(this.cursor>=J.length){this.pendingSinceMs=null,this.forceFlush=!1;return}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)||Z===58||Z===59){this.state={tag:"csi_parametric",semicolons:this.state.semicolons,segments:this.state.segments,hasDigit:this.state.hasDigit,firstParamValue:this.state.firstParamValue};continue}if(B5(this.state,Z,this.protocolContext)){this.state={tag:"csi_parametric",semicolons:this.state.semicolons,segments:this.state.segments,hasDigit:this.state.hasDigit,firstParamValue:this.state.firstParamValue};continue}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"csi_parametric_ignored":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===AJ){this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)){this.cursor+=1,this.state={tag:"csi_parametric_ignored",semicolons:this.state.semicolons,segments:this.state.segments,hasDigit:!0,firstParamValue:this.state.semicolons===0?(this.state.firstParamValue??0)*10+(Z-48):this.state.firstParamValue};continue}if(Z===59&&this.state.semicolons===0&&this.state.hasDigit){if(this.protocolContext.explicitWidthCprActive&&this.state.firstParamValue===1){this.state={tag:"csi"};continue}this.cursor+=1,this.state={tag:"csi_parametric_ignored",semicolons:1,segments:1,hasDigit:!1,firstParamValue:this.state.firstParamValue};continue}if(Z===82&&this.state.semicolons===1&&this.state.hasDigit){let $=this.cursor+1;this.state={tag:"ground"},this.consumePrefix($);continue}if(this.state.semicolons===0){this.state={tag:"csi"};continue}this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"csi_private_reply":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}if(b7(this.protocolContext)){this.state={tag:"csi_private_reply_deferred",semicolons:this.state.semicolons,hasDigit:this.state.hasDigit,sawDollar:this.state.sawDollar},this.pendingSinceMs=null,this.forceFlush=!1;return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)){this.cursor+=1,this.state={tag:"csi_private_reply",semicolons:this.state.semicolons,hasDigit:!0,sawDollar:this.state.sawDollar};continue}if(Z===59){this.cursor+=1,this.state={tag:"csi_private_reply",semicolons:this.state.semicolons+1,hasDigit:!1,sawDollar:!1};continue}if(Z===36&&this.state.hasDigit&&!this.state.sawDollar){this.cursor+=1,this.state={tag:"csi_private_reply",semicolons:this.state.semicolons,hasDigit:!0,sawDollar:!0};continue}if(Z>=64&&Z<=126){let $=this.cursor+1;this.emitOpaqueResponse("csi",J.subarray(this.unitStart,$)),this.state={tag:"ground"},this.consumePrefix($);continue}this.state={tag:"csi"};continue}case"csi_private_reply_deferred":{if(this.cursor>=J.length){this.pendingSinceMs=null,this.forceFlush=!1;return}if(Z===AJ){this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(uJ(Z)||Z===59||Z===36){this.state={tag:"csi_private_reply",semicolons:this.state.semicolons,hasDigit:this.state.hasDigit,sawDollar:this.state.sawDollar};continue}if(w5(this.state,Z,this.protocolContext)){this.state={tag:"csi_private_reply",semicolons:this.state.semicolons,hasDigit:this.state.hasDigit,sawDollar:this.state.sawDollar};continue}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"osc":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(this.state.sawEsc){if(Z===92){let $=this.cursor+1;this.emitOpaqueResponse("osc",J.subarray(this.unitStart,$)),this.state={tag:"ground"},this.consumePrefix($);continue}this.state={tag:"osc",sawEsc:!1};continue}if(Z===D5){let $=this.cursor+1;this.emitOpaqueResponse("osc",J.subarray(this.unitStart,$)),this.state={tag:"ground"},this.consumePrefix($);continue}if(Z===AJ){this.cursor+=1,this.state={tag:"osc",sawEsc:!0};continue}this.cursor+=1;continue}case"dcs":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(this.state.sawEsc){if(Z===92){let $=this.cursor+1;this.emitOpaqueResponse("dcs",J.subarray(this.unitStart,$)),this.state={tag:"ground"},this.consumePrefix($);continue}this.state={tag:"dcs",sawEsc:!1};continue}if(Z===AJ){this.cursor+=1,this.state={tag:"dcs",sawEsc:!0};continue}this.cursor+=1;continue}case"apc":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(this.state.sawEsc){if(Z===92){let $=this.cursor+1;this.emitOpaqueResponse("apc",J.subarray(this.unitStart,$)),this.state={tag:"ground"},this.consumePrefix($);continue}this.state={tag:"apc",sawEsc:!1};continue}if(Z===AJ){this.cursor+=1,this.state={tag:"apc",sawEsc:!0};continue}this.cursor+=1;continue}case"esc_less_mouse":{if(this.cursor>=J.length){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}if(Z>=48&&Z<=57||Z===59){this.cursor+=1;continue}if(Z===77||Z===109){let $=this.cursor+1,H=J.subarray(this.unitStart,$),Q=f7(H);if(L2(Q))this.emitMouse(Q,"sgr");else this.emitOpaqueResponse("unknown",H);this.state={tag:"ground"},this.consumePrefix($);continue}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);continue}case"esc_less_x10_mouse":{let $=this.unitStart+5;if(J.length<$){if(!this.forceFlush){this.markPending();return}this.emitOpaqueResponse("unknown",J.subarray(this.unitStart,J.length)),this.state={tag:"ground"},this.consumePrefix(J.length);continue}let H=J.subarray(this.unitStart,$);this.emitMouse(f7(H),"x10"),this.state={tag:"ground"},this.consumePrefix($);continue}}}}emitKeyOrResponse(J,Z){let $=S7(Z,{useKittyKeyboard:this.useKittyKeyboard});if($){this.events.push({type:"key",raw:$.raw,key:$});return}this.events.push({type:"response",protocol:J,sequence:Z})}emitMouse(J,Z){let $=this.mouseParser.parseMouseEvent(J);if(!$){this.emitOpaqueResponse("unknown",J);return}this.events.push({type:"mouse",raw:v7(J),encoding:Z,event:$})}emitLegacyHighByte(J){let Z=S7(g0.from([J]),{useKittyKeyboard:this.useKittyKeyboard});if(Z){this.events.push({type:"key",raw:Z.raw,key:Z});return}this.events.push({type:"response",protocol:"unknown",sequence:String.fromCharCode(J)})}emitOpaqueResponse(J,Z){this.events.push({type:"response",protocol:J,sequence:v7(Z)})}consumePrefix(J){this.pending.consume(J),this.cursor=0,this.unitStart=0,this.pendingSinceMs=null,this.forceFlush=!1}takePendingBytes(){let J=this.pending.take();return this.cursor=0,this.unitStart=0,this.pendingSinceMs=null,this.forceFlush=!1,J}flushPendingOverflow(){if(this.pending.length===0)return;this.emitOpaqueResponse("unknown",this.pending.view()),this.pending.clear(),this.cursor=0,this.unitStart=0,this.pendingSinceMs=null,this.forceFlush=!1,this.state={tag:"ground"}}markPending(){this.pendingSinceMs=this.clock.now()}consumePasteBytes(J){let Z=this.paste,$=F5(Z.tail,J),H=p7($,G2);if(H!==-1)return this.pushPasteBytes($.subarray(0,H)),this.events.push({type:"paste",bytes:R5(Z.parts,Z.totalLength)}),this.paste=null,$.subarray(H+G2.length);let Q=Math.min(G2.length-1,$.length),j=$.length-Q;if(j>0)this.pushPasteBytes($.subarray(0,j));return Z.tail=Uint8Array.from($.subarray(j)),u2}pushPasteBytes(J){if(J.length===0)return;this.paste.parts.push(Uint8Array.from(J)),this.paste.totalLength+=J.length}reconcileDeferredStateWithProtocolContext(){switch(this.state.tag){case"csi_parametric_deferred":if(!h7(this.state,this.protocolContext))this.emitOpaqueResponse("unknown",this.pending.view().subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);return;case"csi_private_reply_deferred":if(!b7(this.protocolContext))this.emitOpaqueResponse("unknown",this.pending.view().subarray(this.unitStart,this.cursor)),this.state={tag:"ground"},this.consumePrefix(this.cursor);return}}reconcileTimeoutState(){if(!this.armTimeouts)return;if(this.paste||this.pendingSinceMs===null||this.pending.length===0){this.clearTimeout();return}this.clearTimeout(),this.timeoutId=this.clock.setTimeout(()=>{if(this.timeoutId=null,this.destroyed)return;try{this.tryForceFlush(),this.onTimeoutFlush?.()}catch(J){console.error("stdin parser timeout flush failed",J)}},this.timeoutMs)}clearTimeout(){if(!this.timeoutId)return;this.clock.clearTimeout(this.timeoutId),this.timeoutId=null}resetState(){this.pending.reset(K0),this.events.length=0,this.pendingSinceMs=null,this.forceFlush=!1,this.justFlushedEsc=!1,this.state={tag:"ground"},this.cursor=0,this.unitStart=0,this.paste=null,this.mouseParser.reset()}}DJ({name:"OTUI_TS_STYLE_WARN",default:!1,description:"Enable warnings for missing syntax styles"});function y7(J){return J.split(".").length}function T5(J,Z){if(Z?.isInjection)return!1;return J==="markup.raw.block"}function d9(J,Z,$,H){let Q=[],j=$.getStyle("default"),G=H?.enabled??!0,L=H?.baseHighlight?$.getStyle(H.baseHighlight):void 0,Y=[],_=[];for(let q=0;q<Z.length;q++){let[N,z,,P]=Z[q];if(N===z)continue;if(P?.containsInjection)Y.push({start:N,end:z});_.push({offset:N,type:"start",highlightIndex:q}),_.push({offset:z,type:"end",highlightIndex:q})}_.sort((q,N)=>{if(q.offset!==N.offset)return q.offset-N.offset;if(q.type==="end"&&N.type==="start")return-1;if(q.type==="start"&&N.type==="end")return 1;return 0});let W=new Set,K=0;for(let q=0;q<_.length;q++){let N=_[q];if(K<N.offset&&W.size>0){let z=J.slice(K,N.offset),P=[];for(let A of W){let[,,I,w]=Z[A];P.push({group:I,meta:w,index:A})}let O=G?P.find((A)=>A.meta?.conceal!==void 0||A.group==="conceal"||A.group.startsWith("conceal.")):void 0;if(O){let A="";if(O.meta?.conceal!==void 0)A=O.meta.conceal;else if(O.group==="conceal.with.space")A=" ";if(A)Q.push({__isChunk:!0,text:A,fg:j?.fg,bg:j?.bg,attributes:j?YZ({bold:j.bold,italic:j.italic,underline:j.underline,dim:j.dim}):0})}else{let A=Y.some((g)=>K>=g.start&&K<g.end),w=P.filter((g)=>{if(A&&T5(g.group,g.meta))return!1;return!0}).sort((g,F)=>{let R=y7(g.group),f=y7(F.group);if(R!==f)return R-f;return g.index-F.index}),C=L?{...L}:{};for(let{group:g}of w){let F=$.getStyle(g);if(!F&&g.includes(".")){let R=g.split(".")[0];F=$.getStyle(R)}if(F){if(F.fg!==void 0)C.fg=F.fg;if(F.bg!==void 0)C.bg=F.bg;if(F.bold!==void 0)C.bold=F.bold;if(F.italic!==void 0)C.italic=F.italic;if(F.underline!==void 0)C.underline=F.underline;if(F.dim!==void 0)C.dim=F.dim}else if(g.includes(".")){let R=g.split(".")[0];if(QJ.OTUI_TS_STYLE_WARN)console.warn(`Syntax style not found for group "${g}" or base scope "${R}", using default style`)}else if(QJ.OTUI_TS_STYLE_WARN)console.warn(`Syntax style not found for group "${g}", using default style`)}let T=Object.keys(C).length>0?C:j;Q.push({__isChunk:!0,text:z,fg:T?.fg,bg:T?.bg,attributes:T?YZ({bold:T.bold,italic:T.italic,underline:T.underline,dim:T.dim}):0})}}else if(K<N.offset){let z=J.slice(K,N.offset),P=L??j;Q.push({__isChunk:!0,text:z,fg:P?.fg,bg:P?.bg,attributes:P?YZ({bold:P.bold,italic:P.italic,underline:P.underline,dim:P.dim}):0})}if(N.type==="start")W.add(N.highlightIndex);else if(W.delete(N.highlightIndex),G){let[,,z,P]=Z[N.highlightIndex];if(P?.concealLines!==void 0){if(N.offset<J.length&&J[N.offset]===`
34
- `){K=N.offset+1;continue}}if(P?.conceal!==void 0){if(P.conceal===" "){if(N.offset<J.length&&J[N.offset]===" "){K=N.offset+1;continue}}else if(P.conceal===""&&z==="conceal"&&!P.isInjection){if(N.offset<J.length&&J[N.offset]===" "){K=N.offset+1;continue}}}}K=N.offset}if(K<J.length){let q=J.slice(K),N=L??j;Q.push({__isChunk:!0,text:q,fg:N?.fg,bg:N?.bg,attributes:N?YZ({bold:N.bold,italic:N.italic,underline:N.underline,dim:N.dim}):0})}return Q}async function cQ(J,Z,$,H,Q){let j=await H.highlightOnce(J,Z);if(j.highlights&&j.highlights.length>0||Q?.baseHighlight){let G=d9(J,j.highlights??[],$,{enabled:Q?.conceal?.enabled??!0,baseHighlight:Q?.baseHighlight});return new ZZ(G)}else{let G=$.mergeStyles("default"),L=[{__isChunk:!0,text:J,fg:G.fg,bg:G.bg,attributes:G.attributes}];return new ZZ(L)}}var gZ=new Map;class a9{scopeId;constructor(J){if(this.scopeId=J,!gZ.has(this.scopeId))gZ.set(this.scopeId,new Map)}debounce(J,Z,$){let H=gZ.get(this.scopeId);return new Promise((Q,j)=>{if(H.has(J))clearTimeout(H.get(J));let G=setTimeout(()=>{try{Q($())}catch(L){j(L)}H.delete(J)},Z);H.set(J,G)})}clearDebounce(J){let Z=gZ.get(this.scopeId);if(Z&&Z.has(J))clearTimeout(Z.get(J)),Z.delete(J)}clear(){let J=gZ.get(this.scopeId);if(J)J.forEach((Z)=>clearTimeout(Z)),J.clear()}}function C5(J){return new a9(J)}function M5(J){let Z=gZ.get(J);if(Z)Z.forEach(($)=>clearTimeout($)),Z.clear()}class i9{processor;queue=[];processing=!1;autoProcess=!0;constructor(J,Z=!0){this.processor=J,this.autoProcess=Z}enqueue(J){if(this.queue.push(J),!this.processing&&this.autoProcess)this.processQueue()}processQueue(){if(this.queue.length===0)return;this.processing=!0,queueMicrotask(async()=>{if(this.queue.length===0){this.processing=!1;return}let J=this.queue.shift();try{await this.processor(J)}catch(Z){console.error("Error processing queue item:",Z)}if(this.queue.length>0)this.processQueue();else this.processing=!1})}clear(){this.queue=[]}isProcessing(){return this.processing}size(){return this.queue.length}}function b5({onlyFirst:J=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",J?void 0:"g")}var f5=b5();function s9(J){if(typeof J!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof J}\``);return J.replace(f5,"")}function p5(J){return J===161||J===164||J===167||J===168||J===170||J===173||J===174||J>=176&&J<=180||J>=182&&J<=186||J>=188&&J<=191||J===198||J===208||J===215||J===216||J>=222&&J<=225||J===230||J>=232&&J<=234||J===236||J===237||J===240||J===242||J===243||J>=247&&J<=250||J===252||J===254||J===257||J===273||J===275||J===283||J===294||J===295||J===299||J>=305&&J<=307||J===312||J>=319&&J<=322||J===324||J>=328&&J<=331||J===333||J===338||J===339||J===358||J===359||J===363||J===462||J===464||J===466||J===468||J===470||J===472||J===474||J===476||J===593||J===609||J===708||J===711||J>=713&&J<=715||J===717||J===720||J>=728&&J<=731||J===733||J===735||J>=768&&J<=879||J>=913&&J<=929||J>=931&&J<=937||J>=945&&J<=961||J>=963&&J<=969||J===1025||J>=1040&&J<=1103||J===1105||J===8208||J>=8211&&J<=8214||J===8216||J===8217||J===8220||J===8221||J>=8224&&J<=8226||J>=8228&&J<=8231||J===8240||J===8242||J===8243||J===8245||J===8251||J===8254||J===8308||J===8319||J>=8321&&J<=8324||J===8364||J===8451||J===8453||J===8457||J===8467||J===8470||J===8481||J===8482||J===8486||J===8491||J===8531||J===8532||J>=8539&&J<=8542||J>=8544&&J<=8555||J>=8560&&J<=8569||J===8585||J>=8592&&J<=8601||J===8632||J===8633||J===8658||J===8660||J===8679||J===8704||J===8706||J===8707||J===8711||J===8712||J===8715||J===8719||J===8721||J===8725||J===8730||J>=8733&&J<=8736||J===8739||J===8741||J>=8743&&J<=8748||J===8750||J>=8756&&J<=8759||J===8764||J===8765||J===8776||J===8780||J===8786||J===8800||J===8801||J>=8804&&J<=8807||J===8810||J===8811||J===8814||J===8815||J===8834||J===8835||J===8838||J===8839||J===8853||J===8857||J===8869||J===8895||J===8978||J>=9312&&J<=9449||J>=9451&&J<=9547||J>=9552&&J<=9587||J>=9600&&J<=9615||J>=9618&&J<=9621||J===9632||J===9633||J>=9635&&J<=9641||J===9650||J===9651||J===9654||J===9655||J===9660||J===9661||J===9664||J===9665||J>=9670&&J<=9672||J===9675||J>=9678&&J<=9681||J>=9698&&J<=9701||J===9711||J===9733||J===9734||J===9737||J===9742||J===9743||J===9756||J===9758||J===9792||J===9794||J===9824||J===9825||J>=9827&&J<=9829||J>=9831&&J<=9834||J===9836||J===9837||J===9839||J===9886||J===9887||J===9919||J>=9926&&J<=9933||J>=9935&&J<=9939||J>=9941&&J<=9953||J===9955||J===9960||J===9961||J>=9963&&J<=9969||J===9972||J>=9974&&J<=9977||J===9979||J===9980||J===9982||J===9983||J===10045||J>=10102&&J<=10111||J>=11094&&J<=11097||J>=12872&&J<=12879||J>=57344&&J<=63743||J>=65024&&J<=65039||J===65533||J>=127232&&J<=127242||J>=127248&&J<=127277||J>=127280&&J<=127337||J>=127344&&J<=127373||J===127375||J===127376||J>=127387&&J<=127404||J>=917760&&J<=917999||J>=983040&&J<=1048573||J>=1048576&&J<=1114109}function v5(J){return J===12288||J>=65281&&J<=65376||J>=65504&&J<=65510}function y5(J){return J>=4352&&J<=4447||J===8986||J===8987||J===9001||J===9002||J>=9193&&J<=9196||J===9200||J===9203||J===9725||J===9726||J===9748||J===9749||J>=9776&&J<=9783||J>=9800&&J<=9811||J===9855||J>=9866&&J<=9871||J===9875||J===9889||J===9898||J===9899||J===9917||J===9918||J===9924||J===9925||J===9934||J===9940||J===9962||J===9970||J===9971||J===9973||J===9978||J===9981||J===9989||J===9994||J===9995||J===10024||J===10060||J===10062||J>=10067&&J<=10069||J===10071||J>=10133&&J<=10135||J===10160||J===10175||J===11035||J===11036||J===11088||J===11093||J>=11904&&J<=11929||J>=11931&&J<=12019||J>=12032&&J<=12245||J>=12272&&J<=12287||J>=12289&&J<=12350||J>=12353&&J<=12438||J>=12441&&J<=12543||J>=12549&&J<=12591||J>=12593&&J<=12686||J>=12688&&J<=12773||J>=12783&&J<=12830||J>=12832&&J<=12871||J>=12880&&J<=42124||J>=42128&&J<=42182||J>=43360&&J<=43388||J>=44032&&J<=55203||J>=63744&&J<=64255||J>=65040&&J<=65049||J>=65072&&J<=65106||J>=65108&&J<=65126||J>=65128&&J<=65131||J>=94176&&J<=94180||J>=94192&&J<=94198||J>=94208&&J<=101589||J>=101631&&J<=101662||J>=101760&&J<=101874||J>=110576&&J<=110579||J>=110581&&J<=110587||J===110589||J===110590||J>=110592&&J<=110882||J===110898||J>=110928&&J<=110930||J===110933||J>=110948&&J<=110951||J>=110960&&J<=111355||J>=119552&&J<=119638||J>=119648&&J<=119670||J===126980||J===127183||J===127374||J>=127377&&J<=127386||J>=127488&&J<=127490||J>=127504&&J<=127547||J>=127552&&J<=127560||J===127568||J===127569||J>=127584&&J<=127589||J>=127744&&J<=127776||J>=127789&&J<=127797||J>=127799&&J<=127868||J>=127870&&J<=127891||J>=127904&&J<=127946||J>=127951&&J<=127955||J>=127968&&J<=127984||J===127988||J>=127992&&J<=128062||J===128064||J>=128066&&J<=128252||J>=128255&&J<=128317||J>=128331&&J<=128334||J>=128336&&J<=128359||J===128378||J===128405||J===128406||J===128420||J>=128507&&J<=128591||J>=128640&&J<=128709||J===128716||J>=128720&&J<=128722||J>=128725&&J<=128728||J>=128732&&J<=128735||J===128747||J===128748||J>=128756&&J<=128764||J>=128992&&J<=129003||J===129008||J>=129292&&J<=129338||J>=129340&&J<=129349||J>=129351&&J<=129535||J>=129648&&J<=129660||J>=129664&&J<=129674||J>=129678&&J<=129734||J===129736||J>=129741&&J<=129756||J>=129759&&J<=129770||J>=129775&&J<=129784||J>=131072&&J<=196605||J>=196608&&J<=262141}function c5(J){if(!Number.isSafeInteger(J))throw TypeError(`Expected a code point, got \`${typeof J}\`.`)}function l5(J,{ambiguousAsWide:Z=!1}={}){if(c5(J),v5(J)||y5(J)||Z&&p5(J))return 2;return 1}var u5=()=>{return/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g},m5=new Intl.Segmenter,d5=/^\p{Default_Ignorable_Code_Point}$/u;function a5(J,Z={}){if(typeof J!=="string"||J.length===0)return 0;let{ambiguousIsNarrow:$=!0,countAnsiEscapeCodes:H=!1}=Z;if(!H)J=s9(J);if(J.length===0)return 0;let Q=0,j={ambiguousAsWide:!$};for(let{segment:G}of m5.segment(J)){let L=G.codePointAt(0);if(L<=31||L>=127&&L<=159)continue;if(L>=8203&&L<=8207||L===65279)continue;if(L>=768&&L<=879||L>=6832&&L<=6911||L>=7616&&L<=7679||L>=8400&&L<=8447||L>=65056&&L<=65071)continue;if(L>=55296&&L<=57343)continue;if(L>=65024&&L<=65039)continue;if(d5.test(G))continue;if(u5().test(G)){Q+=2;continue}Q+=l5(L,j)}return Q}var i5=new TextEncoder,sZ=globalThis.Bun,n5=sZ?.sleep??t5,c7=sZ?.stringWidth??a5,s5=sZ?.stripANSI??s9,o5=sZ?.write??r5;async function pJ(J,Z,$){if(!sZ){let Q=typeof Z==="function"?Z():Z;return P0(Q instanceof URL?Q:new URL(Q,$))}let H=(await J()).default;if(H.startsWith("file:"))return P0(H);if(E5(H))return H;return h5(n9(P0($)),H)}function t5(J){let Z=J instanceof Date?J.getTime()-Date.now():J;return new Promise(($)=>setTimeout($,Z))}async function r5(J,Z,$){let H=J instanceof URL?P0(J):J;if($?.createPath)await x5(n9(H),{recursive:!0});let Q=typeof Z==="string"?i5.encode(Z):new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength);return await k5(H,Q,{mode:$?.mode}),Q.byteLength}var U2;function e5(){if(!U2)U2=J6();return U2}async function J6(){let J=await pJ(()=>import("./chunk-10accb7b.js",{with:{type:"file"}}),"./assets/javascript/highlights.scm",import.meta.url),Z=await pJ(()=>import("./chunk-bs020a3x.js",{with:{type:"file"}}),"./assets/javascript/tree-sitter-javascript.wasm",import.meta.url),$=await pJ(()=>import("./chunk-qc0zhbhm.js",{with:{type:"file"}}),"./assets/typescript/highlights.scm",import.meta.url),H=await pJ(()=>import("./chunk-b10px5g4.js",{with:{type:"file"}}),"./assets/typescript/tree-sitter-typescript.wasm",import.meta.url),Q=await pJ(()=>import("./chunk-fa47vzfc.js",{with:{type:"file"}}),"./assets/markdown/highlights.scm",import.meta.url),j=await pJ(()=>import("./chunk-nzzsj54n.js",{with:{type:"file"}}),"./assets/markdown/tree-sitter-markdown.wasm",import.meta.url),G=await pJ(()=>import("./chunk-p19qfw59.js",{with:{type:"file"}}),"./assets/markdown/injections.scm",import.meta.url),L=await pJ(()=>import("./chunk-92zjark4.js",{with:{type:"file"}}),"./assets/markdown_inline/highlights.scm",import.meta.url),Y=await pJ(()=>import("./chunk-0qn52zsd.js",{with:{type:"file"}}),"./assets/markdown_inline/tree-sitter-markdown_inline.wasm",import.meta.url),_=await pJ(()=>import("./chunk-gcgmwqhh.js",{with:{type:"file"}}),"./assets/zig/highlights.scm",import.meta.url),W=await pJ(()=>import("./chunk-yt6vd7a5.js",{with:{type:"file"}}),"./assets/zig/tree-sitter-zig.wasm",import.meta.url);return[{filetype:"javascript",aliases:["javascriptreact"],queries:{highlights:[J]},wasm:Z},{filetype:"typescript",aliases:["typescriptreact"],queries:{highlights:[$]},wasm:H},{filetype:"markdown",queries:{highlights:[Q],injections:[G]},wasm:j,injectionMapping:{nodeTypes:{inline:"markdown_inline",pipe_table_cell:"markdown_inline"},infoStringMap:{javascript:"javascript",js:"javascript",jsx:"javascriptreact",javascriptreact:"javascriptreact",typescript:"typescript",ts:"typescript",tsx:"typescriptreact",typescriptreact:"typescriptreact",markdown:"markdown",md:"markdown"}}},{filetype:"markdown_inline",queries:{highlights:[L]},wasm:Y},{filetype:"zig",queries:{highlights:[_]},wasm:W}]}function o9(J){return J.includes("$bunfs")||/^B:[\\/]~BUN/i.test(J)}function G6(){return process.platform==="win32"?"B:\\~BUN\\root":"/$bunfs/root"}function L6(J){return j6(G6(),Q6(J))}var U6="OpenTUI tree-sitter workers are not available for this runtime yet.";class t9{constructor(){throw Error(U6)}}var D6=globalThis.Worker??t9;DJ({name:"OTUI_TREE_SITTER_WORKER_PATH",description:"Path to the TreeSitter worker entry script",type:"string",default:""});var w0=[];function sQ(J){for(let Z of J)w0=[...w0.filter(($)=>$.filetype!==Z.filetype),Z]}var Y6=(J)=>J.startsWith("http://")||J.startsWith("https://");class C0 extends g5{initialized=!1;worker;buffers=new Map;initializePromise;initializeResolvers;messageCallbacks=new Map;messageIdCounter=0;editQueues=new Map;debouncer;options;constructor(J){super();this.options=J,this.debouncer=C5("tree-sitter-client"),this.startWorker()}emitError(J,Z){if(this.listenerCount("error")>0)this.emit("error",J,Z)}emitWarning(J,Z){if(this.listenerCount("warning")>0)this.emit("warning",J,Z)}startWorker(){if(this.worker)return;let J=this.resolveWorkerPath();this.worker=new D6(J),this.worker.onmessage=this.handleWorkerMessage.bind(this),this.worker.onerror=(Z)=>{if(console.error("TreeSitter worker error:",Z.message),this.initializeResolvers)clearTimeout(this.initializeResolvers.timeoutId),this.initializeResolvers.reject(Error(`Worker error: ${Z.message}`)),this.initializeResolvers=void 0;this.emitError(`Worker error: ${Z.message}`)}}resolveWorkerPath(){if(QJ.OTUI_TREE_SITTER_WORKER_PATH)return QJ.OTUI_TREE_SITTER_WORKER_PATH;if(typeof globalThis.OTUI_TREE_SITTER_WORKER_PATH<"u")return globalThis.OTUI_TREE_SITTER_WORKER_PATH;if(this.options.workerPath)return this.options.workerPath;let J=new URL("./parser.worker.js",import.meta.url).href;if(!H6(l7(import.meta.dirname,"parser.worker.js")))J=new URL("./parser.worker.ts",import.meta.url).href;return J}stopWorker(){if(!this.worker)return;this.worker.terminate(),this.worker=void 0}handleReset(){return this.buffers.clear(),this.stopWorker(),this.startWorker(),this.initialized=!1,this.initializePromise=void 0,this.initializeResolvers=void 0,this.initialize()}async initialize(){if(this.initializePromise)return this.initializePromise;return this.initializePromise=this.initializeClient(),this.initializePromise}async initializeClient(){await new Promise((J,Z)=>{let $=this.options.initTimeout??1e4,H=setTimeout(()=>{let Q=Error("Worker initialization timed out");console.error("TreeSitter client:",Q.message),this.initializeResolvers=void 0,Z(Q)},$);this.initializeResolvers={resolve:J,reject:Z,timeoutId:H},this.worker?.postMessage({type:"INIT",dataPath:this.options.dataPath})}),await this.registerDefaultParsers(),this.initialized=!0}async registerDefaultParsers(){let J=await e5(),Z=new Set(w0.map(($)=>$.filetype));for(let $ of[...J.filter((H)=>!Z.has(H.filetype)),...w0])this.addFiletypeParser($)}resolvePath(J){if(Y6(J))return J;if(o9(J))return L6($6(J).base);if(!Z6(J))return l7(J);return J}addFiletypeParser(J){let Z={...J,aliases:J.aliases?[...new Set(J.aliases.filter(($)=>$!==J.filetype))]:void 0,wasm:this.resolvePath(J.wasm),queries:{highlights:J.queries.highlights.map(($)=>this.resolvePath($)),injections:J.queries.injections?.map(($)=>this.resolvePath($))}};this.worker?.postMessage({type:"ADD_FILETYPE_PARSER",filetypeParser:Z})}async getPerformance(){let J=`performance_${this.messageIdCounter++}`;return new Promise((Z)=>{this.messageCallbacks.set(J,Z),this.worker?.postMessage({type:"GET_PERFORMANCE",messageId:J})})}async highlightOnce(J,Z){if(!this.initialized)try{await this.initialize()}catch(H){return{error:"Could not highlight because of initialization error"}}let $=`oneshot_${this.messageIdCounter++}`;return new Promise((H)=>{this.messageCallbacks.set($,H),this.worker?.postMessage({type:"ONESHOT_HIGHLIGHT",content:J,filetype:Z,messageId:$})})}handleWorkerMessage(J){let{type:Z,bufferId:$,error:H,highlights:Q,warning:j,messageId:G,hasParser:L,performance:Y,version:_}=J.data;if(Z==="HIGHLIGHT_RESPONSE"){let W=this.buffers.get($);if(!W||!W.hasParser)return;if(W.version!==_){this.resetBuffer($,W.version,W.content);return}this.emit("highlights:response",$,_,Q)}if(Z==="INIT_RESPONSE"){if(this.initializeResolvers){if(clearTimeout(this.initializeResolvers.timeoutId),H)console.error("TreeSitter client initialization failed:",H),this.initializeResolvers.reject(Error(H));else this.initializeResolvers.resolve();this.initializeResolvers=void 0;return}}if(Z==="PARSER_INIT_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({hasParser:L,warning:j,error:H});return}if(Z==="PRELOAD_PARSER_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({hasParser:L});return}if(Z==="BUFFER_DISPOSED"){let W=this.messageCallbacks.get(`dispose_${$}`);if(W)this.messageCallbacks.delete(`dispose_${$}`),W(!0);this.emit("buffer:disposed",$);return}if(Z==="PERFORMANCE_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W(Y);return}if(Z==="ONESHOT_HIGHLIGHT_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({highlights:Q,warning:j,error:H});return}if(Z==="UPDATE_DATA_PATH_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({error:H});return}if(Z==="CLEAR_CACHE_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({error:H});return}if(j){this.emitWarning(j,$);return}if(H){this.emitError(H,$);return}if(Z==="WORKER_LOG"){let{logType:W,data:K}=J.data,q=K.join(" ");this.emit("worker:log",W,q);return}}async preloadParser(J){let Z=`has_parser_${this.messageIdCounter++}`;return(await new Promise((H)=>{this.messageCallbacks.set(Z,H),this.worker?.postMessage({type:"PRELOAD_PARSER",filetype:J,messageId:Z})})).hasParser}async createBuffer(J,Z,$,H=1,Q=!0){if(!this.initialized){if(!Q)return this.emitError("Could not create buffer because client is not initialized"),!1;try{await this.initialize()}catch(Y){return this.emitError("Could not create buffer because of initialization error"),!1}}if(this.buffers.has(J))throw Error(`Buffer with id ${J} already exists`);this.buffers.set(J,{id:J,content:Z,filetype:$,version:H,hasParser:!1});let j=`init_${this.messageIdCounter++}`,G=await new Promise((Y)=>{this.messageCallbacks.set(j,Y),this.worker?.postMessage({type:"INITIALIZE_PARSER",bufferId:J,version:H,content:Z,filetype:$,messageId:j})});if(!G.hasParser){if(this.emit("buffer:initialized",J,!1),$!=="plaintext")this.emitWarning(G.warning||G.error||"Buffer has no parser",J);return!1}let L={id:J,content:Z,filetype:$,version:H,hasParser:!0};return this.buffers.set(J,L),this.emit("buffer:initialized",J,!0),!0}async updateBuffer(J,Z,$,H){if(!this.initialized)return;let Q=this.buffers.get(J);if(!Q||!Q.hasParser)return;if(this.buffers.set(J,{...Q,content:$,version:H}),!this.editQueues.has(J))this.editQueues.set(J,new i9((G)=>this.processEdit(J,G.edits,G.newContent,G.version,G.isReset)));this.editQueues.get(J).enqueue({edits:Z,newContent:$,version:H})}async processEdit(J,Z,$,H,Q=!1){this.worker?.postMessage({type:Q?"RESET_BUFFER":"HANDLE_EDITS",bufferId:J,version:H,content:$,edits:Z})}async removeBuffer(J){if(!this.initialized)return;if(this.buffers.delete(J),this.editQueues.has(J))this.editQueues.get(J)?.clear(),this.editQueues.delete(J);if(this.worker)await new Promise((Z)=>{let $=`dispose_${J}`;this.messageCallbacks.set($,Z);try{this.worker.postMessage({type:"DISPOSE_BUFFER",bufferId:J})}catch(H){console.error("Error disposing buffer",H),Z(!1)}setTimeout(()=>{if(this.messageCallbacks.has($))this.messageCallbacks.delete($),console.warn({bufferId:J},"Timed out waiting for buffer to be disposed"),Z(!1)},3000)});this.debouncer.clearDebounce(`reset-${J}`)}async destroy(){if(this.initializeResolvers)clearTimeout(this.initializeResolvers.timeoutId),this.initializeResolvers.reject(Error("Client destroyed during initialization")),this.initializeResolvers=void 0;for(let[J,Z]of this.messageCallbacks.entries())if(typeof Z==="function")try{Z({error:"Client destroyed"})}catch($){}this.messageCallbacks.clear(),M5("tree-sitter-client"),this.debouncer.clear(),this.editQueues.clear(),this.buffers.clear(),this.stopWorker(),this.initialized=!1,this.initializePromise=void 0}async resetBuffer(J,Z,$){if(!this.initialized)return;let H=this.buffers.get(J);if(!H||!H.hasParser){this.emitError("Cannot reset buffer with no parser",J);return}this.buffers.set(J,{...H,content:$,version:Z}),this.debouncer.debounce(`reset-${J}`,10,()=>this.processEdit(J,[],$,Z,!0))}getBuffer(J){return this.buffers.get(J)}getAllBuffers(){return Array.from(this.buffers.values())}isInitialized(){return this.initialized}async setDataPath(J){if(this.options.dataPath===J)return;if(this.options.dataPath=J,this.initialized&&this.worker){let Z=`update_datapath_${this.messageIdCounter++}`;return new Promise(($,H)=>{this.messageCallbacks.set(Z,(Q)=>{if(Q.error)H(Error(Q.error));else $()}),this.worker.postMessage({type:"UPDATE_DATA_PATH",dataPath:J,messageId:Z})})}}async clearCache(){if(!this.initialized||!this.worker)throw Error("Cannot clear cache: client is not initialized");let J=`clear_cache_${this.messageIdCounter++}`;return new Promise((Z,$)=>{this.messageCallbacks.set(J,(H)=>{if(H.error)$(Error(H.error));else Z()}),this.worker.postMessage({type:"CLEAR_CACHE",messageId:J})})}}function W6(J){if(!J||typeof J!=="string")return!1;if(J.trim().length===0)return!1;if(["CON","PRN","AUX","NUL","COM1","COM2","COM3","COM4","COM5","COM6","COM7","COM8","COM9","LPT1","LPT2","LPT3","LPT4","LPT5","LPT6","LPT7","LPT8","LPT9"].includes(J.toUpperCase()))return!1;if(/[<>:"|?*/\\\x00-\x1f]/.test(J))return!1;if(J.endsWith(".")||J.endsWith(" "))return!1;if(J==="."||J==="..")return!1;return!0}DJ({name:"XDG_CONFIG_HOME",description:"Base directory for user-specific configuration files",type:"string",default:""});DJ({name:"XDG_DATA_HOME",description:"Base directory for user-specific data files",type:"string",default:""});class r9 extends _6{_appName;_globalConfigPath;_globalConfigFile;_localConfigFile;_globalDataPath;constructor(){super();this._appName="opentui"}get appName(){return this._appName}set appName(J){if(!W6(J))throw Error(`Invalid app name "${J}": must be a valid directory name`);if(this._appName!==J)this._appName=J,this._globalConfigPath=void 0,this._globalConfigFile=void 0,this._localConfigFile=void 0,this._globalDataPath=void 0,this.emit("paths:changed",this.toObject())}get globalConfigPath(){if(this._globalConfigPath===void 0){let J=u7.homedir(),$=QJ.XDG_CONFIG_HOME||jZ.join(J,".config");this._globalConfigPath=jZ.join($,this._appName)}return this._globalConfigPath}get globalConfigFile(){if(this._globalConfigFile===void 0)this._globalConfigFile=jZ.join(this.globalConfigPath,"init.ts");return this._globalConfigFile}get localConfigFile(){if(this._localConfigFile===void 0)this._localConfigFile=jZ.join(process.cwd(),`.${this._appName}.ts`);return this._localConfigFile}get globalDataPath(){if(this._globalDataPath===void 0){let J=u7.homedir(),$=QJ.XDG_DATA_HOME||jZ.join(J,".local/share");this._globalDataPath=jZ.join($,this._appName)}return this._globalDataPath}toObject(){return{globalConfigPath:this.globalConfigPath,globalConfigFile:this.globalConfigFile,localConfigFile:this.localConfigFile,globalDataPath:this.globalDataPath}}}function X6(){return IZ("data-paths-opentui",()=>new r9)}var A6=new Map([["astro","astro"],["bash","bash"],["c","c"],["cc","cpp"],["cjs","javascript"],["clj","clojure"],["cljs","clojure"],["cljc","clojure"],["cpp","cpp"],["cxx","cpp"],["cs","csharp"],["cts","typescript"],["ctsx","typescriptreact"],["dart","dart"],["diff","diff"],["edn","clojure"],["go","go"],["gemspec","ruby"],["groovy","groovy"],["h","c"],["handlebars","handlebars"],["hbs","handlebars"],["hpp","cpp"],["hxx","cpp"],["h++","cpp"],["hh","cpp"],["hrl","erlang"],["hs","haskell"],["htm","html"],["html","html"],["ini","ini"],["js","javascript"],["jsx","javascriptreact"],["jl","julia"],["json","json"],["ksh","bash"],["kt","kotlin"],["kts","kotlin"],["latex","latex"],["less","less"],["lua","lua"],["markdown","markdown"],["md","markdown"],["mdown","markdown"],["mkd","markdown"],["mjs","javascript"],["ml","ocaml"],["mli","ocaml"],["mts","typescript"],["mtsx","typescriptreact"],["patch","diff"],["php","php"],["pl","perl"],["pm","perl"],["ps1","powershell"],["psm1","powershell"],["py","python"],["pyi","python"],["r","r"],["rb","ruby"],["rake","ruby"],["rs","rust"],["ru","ruby"],["sass","sass"],["sc","scala"],["scala","scala"],["scss","scss"],["sh","bash"],["sql","sql"],["svelte","svelte"],["swift","swift"],["ts","typescript"],["tsx","typescriptreact"],["tex","latex"],["toml","toml"],["vue","vue"],["vim","vim"],["xml","xml"],["xsl","xsl"],["yaml","yaml"],["yml","yaml"],["zig","zig"],["zon","zig"],["zsh","bash"],["c++","cpp"],["erl","erlang"],["exs","elixir"],["ex","elixir"],["elm","elm"],["fsharp","fsharp"],["fs","fsharp"],["fsx","fsharp"],["fsscript","fsharp"],["fsi","fsharp"],["java","java"],["css","css"]]),T2=new Map([[".bash_aliases","bash"],[".bash_logout","bash"],[".bash_profile","bash"],[".bashrc","bash"],[".kshrc","bash"],[".profile","bash"],[".vimrc","vim"],[".zlogin","bash"],[".zlogout","bash"],[".zprofile","bash"],[".zshenv","bash"],[".zshrc","bash"],["appfile","ruby"],["berksfile","ruby"],["brewfile","ruby"],["cheffile","ruby"],["containerfile","dockerfile"],["dockerfile","dockerfile"],["fastfile","ruby"],["gemfile","ruby"],["gnumakefile","make"],["gvimrc","vim"],["guardfile","ruby"],["makefile","make"],["podfile","ruby"],["rakefile","ruby"],["thorfile","ruby"],["vagrantfile","ruby"]]);function e9(J){return J.trim().replace(/^\./,"").toLowerCase()||void 0}function N6(J){let Z=J.trim().replaceAll("\\","/");if(!Z)return;return m7.posix.basename(Z).toLowerCase()||void 0}function J$(J){let Z=e9(J);if(!Z)return;return A6.get(Z)}function V6(J){if(typeof J!=="string")return;let Z=N6(J);if(!Z)return;let $=T2.get(Z);if($)return $;let H=Z.lastIndexOf(".");if(H===-1||H===Z.length-1)return;let Q=Z.substring(H+1);return J$(Q)}function J4(J){if(typeof J!=="string")return;let Z=J.trim().split(/\s+/,1)[0],$=T2.get(Z.toLowerCase());if($)return $;let H=e9(Z);if(!H)return;return T2.get(H)??V6(H)??J$(H)??H}function Z$(){let J=X6(),Z={dataPath:J.globalDataPath};return IZ("tree-sitter-client",()=>{let $=new C0(Z);return J.on("paths:changed",(H)=>{$.setDataPath(H.globalDataPath)}),$})}class $${undoStack=[];redoStack=[];saveSnapshot(J,Z){let $={extmarks:new Map(Array.from(J.entries()).map(([H,Q])=>[H,{...Q}])),nextId:Z};this.undoStack.push($),this.redoStack=[]}undo(){if(this.undoStack.length===0)return null;return this.undoStack.pop()}redo(){if(this.redoStack.length===0)return null;return this.redoStack.pop()}pushRedo(J){this.redoStack.push(J)}pushUndo(J){this.undoStack.push(J)}clear(){this.undoStack=[],this.redoStack=[]}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}}class H${editBuffer;editorView;extmarks=new Map;extmarksByTypeId=new Map;metadata=new Map;nextId=1;destroyed=!1;history=new $$;typeNameToId=new Map;typeIdToName=new Map;nextTypeId=1;originalMoveCursorLeft;originalMoveCursorRight;originalSetCursorByOffset;originalMoveUpVisual;originalMoveDownVisual;originalDeleteCharBackward;originalDeleteChar;originalInsertText;originalInsertChar;originalDeleteRange;originalSetText;originalReplaceText;originalClear;originalNewLine;originalDeleteLine;originalEditorViewDeleteSelectedText;originalUndo;originalRedo;constructor(J,Z){this.editBuffer=J,this.editorView=Z,this.originalMoveCursorLeft=J.moveCursorLeft.bind(J),this.originalMoveCursorRight=J.moveCursorRight.bind(J),this.originalSetCursorByOffset=J.setCursorByOffset.bind(J),this.originalMoveUpVisual=Z.moveUpVisual.bind(Z),this.originalMoveDownVisual=Z.moveDownVisual.bind(Z),this.originalDeleteCharBackward=J.deleteCharBackward.bind(J),this.originalDeleteChar=J.deleteChar.bind(J),this.originalInsertText=J.insertText.bind(J),this.originalInsertChar=J.insertChar.bind(J),this.originalDeleteRange=J.deleteRange.bind(J),this.originalSetText=J.setText.bind(J),this.originalReplaceText=J.replaceText.bind(J),this.originalClear=J.clear.bind(J),this.originalNewLine=J.newLine.bind(J),this.originalDeleteLine=J.deleteLine.bind(J),this.originalEditorViewDeleteSelectedText=Z.deleteSelectedText.bind(Z),this.originalUndo=J.undo.bind(J),this.originalRedo=J.redo.bind(J),this.wrapCursorMovement(),this.wrapDeletion(),this.wrapInsertion(),this.wrapEditorViewDeleteSelectedText(),this.wrapUndoRedo(),this.setupContentChangeListener()}wrapCursorMovement(){this.editBuffer.moveCursorLeft=()=>{if(this.destroyed){this.originalMoveCursorLeft();return}let J=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalMoveCursorLeft();return}let $=J-1;if($<0){this.originalMoveCursorLeft();return}let H=this.findVirtualExtmarkContaining($);if(H&&J>=H.end){this.editBuffer.setCursorByOffset(H.start-1);return}this.originalMoveCursorLeft()},this.editBuffer.moveCursorRight=()=>{if(this.destroyed){this.originalMoveCursorRight();return}let J=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalMoveCursorRight();return}let $=J+1,H=this.editBuffer.getText().length;if($>H){this.originalMoveCursorRight();return}let Q=this.findVirtualExtmarkContaining($);if(Q&&J<=Q.start){this.editBuffer.setCursorByOffset(Q.end);return}this.originalMoveCursorRight()},this.editorView.moveUpVisual=()=>{if(this.destroyed){this.originalMoveUpVisual();return}if(this.editorView.hasSelection()){this.originalMoveUpVisual();return}let Z=this.editorView.getVisualCursor().offset;this.originalMoveUpVisual();let $=this.editorView.getVisualCursor().offset,H=this.findVirtualExtmarkContaining($);if(H){let Q=$-H.start,j=H.end-$;if(Q<j)this.editorView.setCursorByOffset(H.start-1);else this.editorView.setCursorByOffset(H.end)}},this.editorView.moveDownVisual=()=>{if(this.destroyed){this.originalMoveDownVisual();return}if(this.editorView.hasSelection()){this.originalMoveDownVisual();return}let Z=this.editorView.getVisualCursor().offset;this.originalMoveDownVisual();let $=this.editorView.getVisualCursor().offset,H=this.findVirtualExtmarkContaining($);if(H){let Q=$-H.start,j=H.end-$;if(Q<j){let G=H.start-1,L=G<=Z?H.end:G;this.editorView.setCursorByOffset(L)}else this.editorView.setCursorByOffset(H.end)}},this.editBuffer.setCursorByOffset=(J)=>{if(this.destroyed){this.originalSetCursorByOffset(J);return}let Z=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalSetCursorByOffset(J);return}if(J>Z){let Q=this.findVirtualExtmarkContaining(J);if(Q&&Z<=Q.start){this.originalSetCursorByOffset(Q.end);return}}else for(let Q of this.extmarks.values())if(Q.virtual&&Z>=Q.end&&J<Q.end&&J>=Q.start){this.originalSetCursorByOffset(Q.start-1);return}this.originalSetCursorByOffset(J)}}wrapDeletion(){this.editBuffer.deleteCharBackward=()=>{if(this.destroyed){this.originalDeleteCharBackward();return}this.saveSnapshot();let J=this.editorView.getVisualCursor().offset,Z=this.editorView.hasSelection();if(J===0){this.originalDeleteCharBackward();return}if(Z){this.originalDeleteCharBackward();return}let $=J-1,H=this.findVirtualExtmarkContaining($);if(H&&J===H.end){let G=this.offsetToPosition(H.start),L=this.offsetToPosition(H.end),Y=H.start,_=H.end-H.start;this.deleteExtmarkById(H.id),this.originalDeleteRange(G.row,G.col,L.row,L.col),this.adjustExtmarksAfterDeletion(Y,_),this.updateHighlights();return}this.originalDeleteCharBackward();let Q=this.editorView.getVisualCursor().offset,j=J-Q;if(j>0)this.adjustExtmarksAfterDeletion(Q,j)},this.editBuffer.deleteChar=()=>{if(this.destroyed){this.originalDeleteChar();return}this.saveSnapshot();let J=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalDeleteChar();return}let $=J,H=this.findVirtualExtmarkContaining($);if(H&&J===H.start){let G=this.offsetToPosition(H.start),L=this.offsetToPosition(H.end),Y=H.start,_=H.end-H.start;this.deleteExtmarkById(H.id),this.originalDeleteRange(G.row,G.col,L.row,L.col),this.adjustExtmarksAfterDeletion(Y,_),this.updateHighlights();return}let j=this.getNextCursorOffset(J)-J;if(this.originalDeleteChar(),j>0)this.adjustExtmarksAfterDeletion(J,j)},this.editBuffer.deleteRange=(J,Z,$,H)=>{if(this.destroyed){this.originalDeleteRange(J,Z,$,H);return}this.saveSnapshot();let Q=this.positionToOffset(J,Z),G=this.positionToOffset($,H)-Q;this.originalDeleteRange(J,Z,$,H),this.adjustExtmarksAfterDeletion(Q,G)},this.editBuffer.deleteLine=()=>{if(this.destroyed){this.originalDeleteLine();return}this.saveSnapshot();let J=this.editBuffer.getText(),Z=this.editorView.getVisualCursor().offset,$=0;for(let j=Z-1;j>=0;j--)if(J[j]===`
34
+ `){K=N.offset+1;continue}}if(P?.conceal!==void 0){if(P.conceal===" "){if(N.offset<J.length&&J[N.offset]===" "){K=N.offset+1;continue}}else if(P.conceal===""&&z==="conceal"&&!P.isInjection){if(N.offset<J.length&&J[N.offset]===" "){K=N.offset+1;continue}}}}K=N.offset}if(K<J.length){let q=J.slice(K),N=L??j;Q.push({__isChunk:!0,text:q,fg:N?.fg,bg:N?.bg,attributes:N?YZ({bold:N.bold,italic:N.italic,underline:N.underline,dim:N.dim}):0})}return Q}async function cQ(J,Z,$,H,Q){let j=await H.highlightOnce(J,Z);if(j.highlights&&j.highlights.length>0||Q?.baseHighlight){let G=d9(J,j.highlights??[],$,{enabled:Q?.conceal?.enabled??!0,baseHighlight:Q?.baseHighlight});return new ZZ(G)}else{let G=$.mergeStyles("default"),L=[{__isChunk:!0,text:J,fg:G.fg,bg:G.bg,attributes:G.attributes}];return new ZZ(L)}}var gZ=new Map;class a9{scopeId;constructor(J){if(this.scopeId=J,!gZ.has(this.scopeId))gZ.set(this.scopeId,new Map)}debounce(J,Z,$){let H=gZ.get(this.scopeId);return new Promise((Q,j)=>{if(H.has(J))clearTimeout(H.get(J));let G=setTimeout(()=>{try{Q($())}catch(L){j(L)}H.delete(J)},Z);H.set(J,G)})}clearDebounce(J){let Z=gZ.get(this.scopeId);if(Z&&Z.has(J))clearTimeout(Z.get(J)),Z.delete(J)}clear(){let J=gZ.get(this.scopeId);if(J)J.forEach((Z)=>clearTimeout(Z)),J.clear()}}function C5(J){return new a9(J)}function M5(J){let Z=gZ.get(J);if(Z)Z.forEach(($)=>clearTimeout($)),Z.clear()}class i9{processor;queue=[];processing=!1;autoProcess=!0;constructor(J,Z=!0){this.processor=J,this.autoProcess=Z}enqueue(J){if(this.queue.push(J),!this.processing&&this.autoProcess)this.processQueue()}processQueue(){if(this.queue.length===0)return;this.processing=!0,queueMicrotask(async()=>{if(this.queue.length===0){this.processing=!1;return}let J=this.queue.shift();try{await this.processor(J)}catch(Z){console.error("Error processing queue item:",Z)}if(this.queue.length>0)this.processQueue();else this.processing=!1})}clear(){this.queue=[]}isProcessing(){return this.processing}size(){return this.queue.length}}function b5({onlyFirst:J=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",J?void 0:"g")}var f5=b5();function s9(J){if(typeof J!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof J}\``);return J.replace(f5,"")}function p5(J){return J===161||J===164||J===167||J===168||J===170||J===173||J===174||J>=176&&J<=180||J>=182&&J<=186||J>=188&&J<=191||J===198||J===208||J===215||J===216||J>=222&&J<=225||J===230||J>=232&&J<=234||J===236||J===237||J===240||J===242||J===243||J>=247&&J<=250||J===252||J===254||J===257||J===273||J===275||J===283||J===294||J===295||J===299||J>=305&&J<=307||J===312||J>=319&&J<=322||J===324||J>=328&&J<=331||J===333||J===338||J===339||J===358||J===359||J===363||J===462||J===464||J===466||J===468||J===470||J===472||J===474||J===476||J===593||J===609||J===708||J===711||J>=713&&J<=715||J===717||J===720||J>=728&&J<=731||J===733||J===735||J>=768&&J<=879||J>=913&&J<=929||J>=931&&J<=937||J>=945&&J<=961||J>=963&&J<=969||J===1025||J>=1040&&J<=1103||J===1105||J===8208||J>=8211&&J<=8214||J===8216||J===8217||J===8220||J===8221||J>=8224&&J<=8226||J>=8228&&J<=8231||J===8240||J===8242||J===8243||J===8245||J===8251||J===8254||J===8308||J===8319||J>=8321&&J<=8324||J===8364||J===8451||J===8453||J===8457||J===8467||J===8470||J===8481||J===8482||J===8486||J===8491||J===8531||J===8532||J>=8539&&J<=8542||J>=8544&&J<=8555||J>=8560&&J<=8569||J===8585||J>=8592&&J<=8601||J===8632||J===8633||J===8658||J===8660||J===8679||J===8704||J===8706||J===8707||J===8711||J===8712||J===8715||J===8719||J===8721||J===8725||J===8730||J>=8733&&J<=8736||J===8739||J===8741||J>=8743&&J<=8748||J===8750||J>=8756&&J<=8759||J===8764||J===8765||J===8776||J===8780||J===8786||J===8800||J===8801||J>=8804&&J<=8807||J===8810||J===8811||J===8814||J===8815||J===8834||J===8835||J===8838||J===8839||J===8853||J===8857||J===8869||J===8895||J===8978||J>=9312&&J<=9449||J>=9451&&J<=9547||J>=9552&&J<=9587||J>=9600&&J<=9615||J>=9618&&J<=9621||J===9632||J===9633||J>=9635&&J<=9641||J===9650||J===9651||J===9654||J===9655||J===9660||J===9661||J===9664||J===9665||J>=9670&&J<=9672||J===9675||J>=9678&&J<=9681||J>=9698&&J<=9701||J===9711||J===9733||J===9734||J===9737||J===9742||J===9743||J===9756||J===9758||J===9792||J===9794||J===9824||J===9825||J>=9827&&J<=9829||J>=9831&&J<=9834||J===9836||J===9837||J===9839||J===9886||J===9887||J===9919||J>=9926&&J<=9933||J>=9935&&J<=9939||J>=9941&&J<=9953||J===9955||J===9960||J===9961||J>=9963&&J<=9969||J===9972||J>=9974&&J<=9977||J===9979||J===9980||J===9982||J===9983||J===10045||J>=10102&&J<=10111||J>=11094&&J<=11097||J>=12872&&J<=12879||J>=57344&&J<=63743||J>=65024&&J<=65039||J===65533||J>=127232&&J<=127242||J>=127248&&J<=127277||J>=127280&&J<=127337||J>=127344&&J<=127373||J===127375||J===127376||J>=127387&&J<=127404||J>=917760&&J<=917999||J>=983040&&J<=1048573||J>=1048576&&J<=1114109}function v5(J){return J===12288||J>=65281&&J<=65376||J>=65504&&J<=65510}function y5(J){return J>=4352&&J<=4447||J===8986||J===8987||J===9001||J===9002||J>=9193&&J<=9196||J===9200||J===9203||J===9725||J===9726||J===9748||J===9749||J>=9776&&J<=9783||J>=9800&&J<=9811||J===9855||J>=9866&&J<=9871||J===9875||J===9889||J===9898||J===9899||J===9917||J===9918||J===9924||J===9925||J===9934||J===9940||J===9962||J===9970||J===9971||J===9973||J===9978||J===9981||J===9989||J===9994||J===9995||J===10024||J===10060||J===10062||J>=10067&&J<=10069||J===10071||J>=10133&&J<=10135||J===10160||J===10175||J===11035||J===11036||J===11088||J===11093||J>=11904&&J<=11929||J>=11931&&J<=12019||J>=12032&&J<=12245||J>=12272&&J<=12287||J>=12289&&J<=12350||J>=12353&&J<=12438||J>=12441&&J<=12543||J>=12549&&J<=12591||J>=12593&&J<=12686||J>=12688&&J<=12773||J>=12783&&J<=12830||J>=12832&&J<=12871||J>=12880&&J<=42124||J>=42128&&J<=42182||J>=43360&&J<=43388||J>=44032&&J<=55203||J>=63744&&J<=64255||J>=65040&&J<=65049||J>=65072&&J<=65106||J>=65108&&J<=65126||J>=65128&&J<=65131||J>=94176&&J<=94180||J>=94192&&J<=94198||J>=94208&&J<=101589||J>=101631&&J<=101662||J>=101760&&J<=101874||J>=110576&&J<=110579||J>=110581&&J<=110587||J===110589||J===110590||J>=110592&&J<=110882||J===110898||J>=110928&&J<=110930||J===110933||J>=110948&&J<=110951||J>=110960&&J<=111355||J>=119552&&J<=119638||J>=119648&&J<=119670||J===126980||J===127183||J===127374||J>=127377&&J<=127386||J>=127488&&J<=127490||J>=127504&&J<=127547||J>=127552&&J<=127560||J===127568||J===127569||J>=127584&&J<=127589||J>=127744&&J<=127776||J>=127789&&J<=127797||J>=127799&&J<=127868||J>=127870&&J<=127891||J>=127904&&J<=127946||J>=127951&&J<=127955||J>=127968&&J<=127984||J===127988||J>=127992&&J<=128062||J===128064||J>=128066&&J<=128252||J>=128255&&J<=128317||J>=128331&&J<=128334||J>=128336&&J<=128359||J===128378||J===128405||J===128406||J===128420||J>=128507&&J<=128591||J>=128640&&J<=128709||J===128716||J>=128720&&J<=128722||J>=128725&&J<=128728||J>=128732&&J<=128735||J===128747||J===128748||J>=128756&&J<=128764||J>=128992&&J<=129003||J===129008||J>=129292&&J<=129338||J>=129340&&J<=129349||J>=129351&&J<=129535||J>=129648&&J<=129660||J>=129664&&J<=129674||J>=129678&&J<=129734||J===129736||J>=129741&&J<=129756||J>=129759&&J<=129770||J>=129775&&J<=129784||J>=131072&&J<=196605||J>=196608&&J<=262141}function c5(J){if(!Number.isSafeInteger(J))throw TypeError(`Expected a code point, got \`${typeof J}\`.`)}function l5(J,{ambiguousAsWide:Z=!1}={}){if(c5(J),v5(J)||y5(J)||Z&&p5(J))return 2;return 1}var u5=()=>{return/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g},m5=new Intl.Segmenter,d5=/^\p{Default_Ignorable_Code_Point}$/u;function a5(J,Z={}){if(typeof J!=="string"||J.length===0)return 0;let{ambiguousIsNarrow:$=!0,countAnsiEscapeCodes:H=!1}=Z;if(!H)J=s9(J);if(J.length===0)return 0;let Q=0,j={ambiguousAsWide:!$};for(let{segment:G}of m5.segment(J)){let L=G.codePointAt(0);if(L<=31||L>=127&&L<=159)continue;if(L>=8203&&L<=8207||L===65279)continue;if(L>=768&&L<=879||L>=6832&&L<=6911||L>=7616&&L<=7679||L>=8400&&L<=8447||L>=65056&&L<=65071)continue;if(L>=55296&&L<=57343)continue;if(L>=65024&&L<=65039)continue;if(d5.test(G))continue;if(u5().test(G)){Q+=2;continue}Q+=l5(L,j)}return Q}var i5=new TextEncoder,sZ=globalThis.Bun,n5=sZ?.sleep??t5,c7=sZ?.stringWidth??a5,s5=sZ?.stripANSI??s9,o5=sZ?.write??r5;async function pJ(J,Z,$){if(!sZ){let Q=typeof Z==="function"?Z():Z;return P0(Q instanceof URL?Q:new URL(Q,$))}let H=(await J()).default;if(H.startsWith("file:"))return P0(H);if(E5(H))return H;return h5(n9(P0($)),H)}function t5(J){let Z=J instanceof Date?J.getTime()-Date.now():J;return new Promise(($)=>setTimeout($,Z))}async function r5(J,Z,$){let H=J instanceof URL?P0(J):J;if($?.createPath)await x5(n9(H),{recursive:!0});let Q=typeof Z==="string"?i5.encode(Z):new Uint8Array(Z.buffer,Z.byteOffset,Z.byteLength);return await k5(H,Q,{mode:$?.mode}),Q.byteLength}var U2;function e5(){if(!U2)U2=J6();return U2}async function J6(){let J=await pJ(()=>import("./chunk-t114r59h.js",{with:{type:"file"}}),"./assets/javascript/highlights.scm",import.meta.url),Z=await pJ(()=>import("./chunk-aq8nz9hp.js",{with:{type:"file"}}),"./assets/javascript/tree-sitter-javascript.wasm",import.meta.url),$=await pJ(()=>import("./chunk-2avxtbv3.js",{with:{type:"file"}}),"./assets/typescript/highlights.scm",import.meta.url),H=await pJ(()=>import("./chunk-yck5h49c.js",{with:{type:"file"}}),"./assets/typescript/tree-sitter-typescript.wasm",import.meta.url),Q=await pJ(()=>import("./chunk-6sjj203r.js",{with:{type:"file"}}),"./assets/markdown/highlights.scm",import.meta.url),j=await pJ(()=>import("./chunk-jkh98wby.js",{with:{type:"file"}}),"./assets/markdown/tree-sitter-markdown.wasm",import.meta.url),G=await pJ(()=>import("./chunk-4m3k1atq.js",{with:{type:"file"}}),"./assets/markdown/injections.scm",import.meta.url),L=await pJ(()=>import("./chunk-a7p0x4sw.js",{with:{type:"file"}}),"./assets/markdown_inline/highlights.scm",import.meta.url),Y=await pJ(()=>import("./chunk-hk8vvc10.js",{with:{type:"file"}}),"./assets/markdown_inline/tree-sitter-markdown_inline.wasm",import.meta.url),_=await pJ(()=>import("./chunk-d41mg7at.js",{with:{type:"file"}}),"./assets/zig/highlights.scm",import.meta.url),W=await pJ(()=>import("./chunk-n5vyed7w.js",{with:{type:"file"}}),"./assets/zig/tree-sitter-zig.wasm",import.meta.url);return[{filetype:"javascript",aliases:["javascriptreact"],queries:{highlights:[J]},wasm:Z},{filetype:"typescript",aliases:["typescriptreact"],queries:{highlights:[$]},wasm:H},{filetype:"markdown",queries:{highlights:[Q],injections:[G]},wasm:j,injectionMapping:{nodeTypes:{inline:"markdown_inline",pipe_table_cell:"markdown_inline"},infoStringMap:{javascript:"javascript",js:"javascript",jsx:"javascriptreact",javascriptreact:"javascriptreact",typescript:"typescript",ts:"typescript",tsx:"typescriptreact",typescriptreact:"typescriptreact",markdown:"markdown",md:"markdown"}}},{filetype:"markdown_inline",queries:{highlights:[L]},wasm:Y},{filetype:"zig",queries:{highlights:[_]},wasm:W}]}function o9(J){return J.includes("$bunfs")||/^B:[\\/]~BUN/i.test(J)}function G6(){return process.platform==="win32"?"B:\\~BUN\\root":"/$bunfs/root"}function L6(J){return j6(G6(),Q6(J))}var U6="OpenTUI tree-sitter workers are not available for this runtime yet.";class t9{constructor(){throw Error(U6)}}var D6=globalThis.Worker??t9;DJ({name:"OTUI_TREE_SITTER_WORKER_PATH",description:"Path to the TreeSitter worker entry script",type:"string",default:""});var w0=[];function sQ(J){for(let Z of J)w0=[...w0.filter(($)=>$.filetype!==Z.filetype),Z]}var Y6=(J)=>J.startsWith("http://")||J.startsWith("https://");class C0 extends g5{initialized=!1;worker;buffers=new Map;initializePromise;initializeResolvers;messageCallbacks=new Map;messageIdCounter=0;editQueues=new Map;debouncer;options;constructor(J){super();this.options=J,this.debouncer=C5("tree-sitter-client"),this.startWorker()}emitError(J,Z){if(this.listenerCount("error")>0)this.emit("error",J,Z)}emitWarning(J,Z){if(this.listenerCount("warning")>0)this.emit("warning",J,Z)}startWorker(){if(this.worker)return;let J=this.resolveWorkerPath();this.worker=new D6(J),this.worker.onmessage=this.handleWorkerMessage.bind(this),this.worker.onerror=(Z)=>{if(console.error("TreeSitter worker error:",Z.message),this.initializeResolvers)clearTimeout(this.initializeResolvers.timeoutId),this.initializeResolvers.reject(Error(`Worker error: ${Z.message}`)),this.initializeResolvers=void 0;this.emitError(`Worker error: ${Z.message}`)}}resolveWorkerPath(){if(QJ.OTUI_TREE_SITTER_WORKER_PATH)return QJ.OTUI_TREE_SITTER_WORKER_PATH;if(typeof globalThis.OTUI_TREE_SITTER_WORKER_PATH<"u")return globalThis.OTUI_TREE_SITTER_WORKER_PATH;if(this.options.workerPath)return this.options.workerPath;let J=new URL("./parser.worker.js",import.meta.url).href;if(!H6(l7(import.meta.dirname,"parser.worker.js")))J=new URL("./parser.worker.ts",import.meta.url).href;return J}stopWorker(){if(!this.worker)return;this.worker.terminate(),this.worker=void 0}handleReset(){return this.buffers.clear(),this.stopWorker(),this.startWorker(),this.initialized=!1,this.initializePromise=void 0,this.initializeResolvers=void 0,this.initialize()}async initialize(){if(this.initializePromise)return this.initializePromise;return this.initializePromise=this.initializeClient(),this.initializePromise}async initializeClient(){await new Promise((J,Z)=>{let $=this.options.initTimeout??1e4,H=setTimeout(()=>{let Q=Error("Worker initialization timed out");console.error("TreeSitter client:",Q.message),this.initializeResolvers=void 0,Z(Q)},$);this.initializeResolvers={resolve:J,reject:Z,timeoutId:H},this.worker?.postMessage({type:"INIT",dataPath:this.options.dataPath})}),await this.registerDefaultParsers(),this.initialized=!0}async registerDefaultParsers(){let J=await e5(),Z=new Set(w0.map(($)=>$.filetype));for(let $ of[...J.filter((H)=>!Z.has(H.filetype)),...w0])this.addFiletypeParser($)}resolvePath(J){if(Y6(J))return J;if(o9(J))return L6($6(J).base);if(!Z6(J))return l7(J);return J}addFiletypeParser(J){let Z={...J,aliases:J.aliases?[...new Set(J.aliases.filter(($)=>$!==J.filetype))]:void 0,wasm:this.resolvePath(J.wasm),queries:{highlights:J.queries.highlights.map(($)=>this.resolvePath($)),injections:J.queries.injections?.map(($)=>this.resolvePath($))}};this.worker?.postMessage({type:"ADD_FILETYPE_PARSER",filetypeParser:Z})}async getPerformance(){let J=`performance_${this.messageIdCounter++}`;return new Promise((Z)=>{this.messageCallbacks.set(J,Z),this.worker?.postMessage({type:"GET_PERFORMANCE",messageId:J})})}async highlightOnce(J,Z){if(!this.initialized)try{await this.initialize()}catch(H){return{error:"Could not highlight because of initialization error"}}let $=`oneshot_${this.messageIdCounter++}`;return new Promise((H)=>{this.messageCallbacks.set($,H),this.worker?.postMessage({type:"ONESHOT_HIGHLIGHT",content:J,filetype:Z,messageId:$})})}handleWorkerMessage(J){let{type:Z,bufferId:$,error:H,highlights:Q,warning:j,messageId:G,hasParser:L,performance:Y,version:_}=J.data;if(Z==="HIGHLIGHT_RESPONSE"){let W=this.buffers.get($);if(!W||!W.hasParser)return;if(W.version!==_){this.resetBuffer($,W.version,W.content);return}this.emit("highlights:response",$,_,Q)}if(Z==="INIT_RESPONSE"){if(this.initializeResolvers){if(clearTimeout(this.initializeResolvers.timeoutId),H)console.error("TreeSitter client initialization failed:",H),this.initializeResolvers.reject(Error(H));else this.initializeResolvers.resolve();this.initializeResolvers=void 0;return}}if(Z==="PARSER_INIT_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({hasParser:L,warning:j,error:H});return}if(Z==="PRELOAD_PARSER_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({hasParser:L});return}if(Z==="BUFFER_DISPOSED"){let W=this.messageCallbacks.get(`dispose_${$}`);if(W)this.messageCallbacks.delete(`dispose_${$}`),W(!0);this.emit("buffer:disposed",$);return}if(Z==="PERFORMANCE_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W(Y);return}if(Z==="ONESHOT_HIGHLIGHT_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({highlights:Q,warning:j,error:H});return}if(Z==="UPDATE_DATA_PATH_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({error:H});return}if(Z==="CLEAR_CACHE_RESPONSE"){let W=this.messageCallbacks.get(G);if(W)this.messageCallbacks.delete(G),W({error:H});return}if(j){this.emitWarning(j,$);return}if(H){this.emitError(H,$);return}if(Z==="WORKER_LOG"){let{logType:W,data:K}=J.data,q=K.join(" ");this.emit("worker:log",W,q);return}}async preloadParser(J){let Z=`has_parser_${this.messageIdCounter++}`;return(await new Promise((H)=>{this.messageCallbacks.set(Z,H),this.worker?.postMessage({type:"PRELOAD_PARSER",filetype:J,messageId:Z})})).hasParser}async createBuffer(J,Z,$,H=1,Q=!0){if(!this.initialized){if(!Q)return this.emitError("Could not create buffer because client is not initialized"),!1;try{await this.initialize()}catch(Y){return this.emitError("Could not create buffer because of initialization error"),!1}}if(this.buffers.has(J))throw Error(`Buffer with id ${J} already exists`);this.buffers.set(J,{id:J,content:Z,filetype:$,version:H,hasParser:!1});let j=`init_${this.messageIdCounter++}`,G=await new Promise((Y)=>{this.messageCallbacks.set(j,Y),this.worker?.postMessage({type:"INITIALIZE_PARSER",bufferId:J,version:H,content:Z,filetype:$,messageId:j})});if(!G.hasParser){if(this.emit("buffer:initialized",J,!1),$!=="plaintext")this.emitWarning(G.warning||G.error||"Buffer has no parser",J);return!1}let L={id:J,content:Z,filetype:$,version:H,hasParser:!0};return this.buffers.set(J,L),this.emit("buffer:initialized",J,!0),!0}async updateBuffer(J,Z,$,H){if(!this.initialized)return;let Q=this.buffers.get(J);if(!Q||!Q.hasParser)return;if(this.buffers.set(J,{...Q,content:$,version:H}),!this.editQueues.has(J))this.editQueues.set(J,new i9((G)=>this.processEdit(J,G.edits,G.newContent,G.version,G.isReset)));this.editQueues.get(J).enqueue({edits:Z,newContent:$,version:H})}async processEdit(J,Z,$,H,Q=!1){this.worker?.postMessage({type:Q?"RESET_BUFFER":"HANDLE_EDITS",bufferId:J,version:H,content:$,edits:Z})}async removeBuffer(J){if(!this.initialized)return;if(this.buffers.delete(J),this.editQueues.has(J))this.editQueues.get(J)?.clear(),this.editQueues.delete(J);if(this.worker)await new Promise((Z)=>{let $=`dispose_${J}`;this.messageCallbacks.set($,Z);try{this.worker.postMessage({type:"DISPOSE_BUFFER",bufferId:J})}catch(H){console.error("Error disposing buffer",H),Z(!1)}setTimeout(()=>{if(this.messageCallbacks.has($))this.messageCallbacks.delete($),console.warn({bufferId:J},"Timed out waiting for buffer to be disposed"),Z(!1)},3000)});this.debouncer.clearDebounce(`reset-${J}`)}async destroy(){if(this.initializeResolvers)clearTimeout(this.initializeResolvers.timeoutId),this.initializeResolvers.reject(Error("Client destroyed during initialization")),this.initializeResolvers=void 0;for(let[J,Z]of this.messageCallbacks.entries())if(typeof Z==="function")try{Z({error:"Client destroyed"})}catch($){}this.messageCallbacks.clear(),M5("tree-sitter-client"),this.debouncer.clear(),this.editQueues.clear(),this.buffers.clear(),this.stopWorker(),this.initialized=!1,this.initializePromise=void 0}async resetBuffer(J,Z,$){if(!this.initialized)return;let H=this.buffers.get(J);if(!H||!H.hasParser){this.emitError("Cannot reset buffer with no parser",J);return}this.buffers.set(J,{...H,content:$,version:Z}),this.debouncer.debounce(`reset-${J}`,10,()=>this.processEdit(J,[],$,Z,!0))}getBuffer(J){return this.buffers.get(J)}getAllBuffers(){return Array.from(this.buffers.values())}isInitialized(){return this.initialized}async setDataPath(J){if(this.options.dataPath===J)return;if(this.options.dataPath=J,this.initialized&&this.worker){let Z=`update_datapath_${this.messageIdCounter++}`;return new Promise(($,H)=>{this.messageCallbacks.set(Z,(Q)=>{if(Q.error)H(Error(Q.error));else $()}),this.worker.postMessage({type:"UPDATE_DATA_PATH",dataPath:J,messageId:Z})})}}async clearCache(){if(!this.initialized||!this.worker)throw Error("Cannot clear cache: client is not initialized");let J=`clear_cache_${this.messageIdCounter++}`;return new Promise((Z,$)=>{this.messageCallbacks.set(J,(H)=>{if(H.error)$(Error(H.error));else Z()}),this.worker.postMessage({type:"CLEAR_CACHE",messageId:J})})}}function W6(J){if(!J||typeof J!=="string")return!1;if(J.trim().length===0)return!1;if(["CON","PRN","AUX","NUL","COM1","COM2","COM3","COM4","COM5","COM6","COM7","COM8","COM9","LPT1","LPT2","LPT3","LPT4","LPT5","LPT6","LPT7","LPT8","LPT9"].includes(J.toUpperCase()))return!1;if(/[<>:"|?*/\\\x00-\x1f]/.test(J))return!1;if(J.endsWith(".")||J.endsWith(" "))return!1;if(J==="."||J==="..")return!1;return!0}DJ({name:"XDG_CONFIG_HOME",description:"Base directory for user-specific configuration files",type:"string",default:""});DJ({name:"XDG_DATA_HOME",description:"Base directory for user-specific data files",type:"string",default:""});class r9 extends _6{_appName;_globalConfigPath;_globalConfigFile;_localConfigFile;_globalDataPath;constructor(){super();this._appName="opentui"}get appName(){return this._appName}set appName(J){if(!W6(J))throw Error(`Invalid app name "${J}": must be a valid directory name`);if(this._appName!==J)this._appName=J,this._globalConfigPath=void 0,this._globalConfigFile=void 0,this._localConfigFile=void 0,this._globalDataPath=void 0,this.emit("paths:changed",this.toObject())}get globalConfigPath(){if(this._globalConfigPath===void 0){let J=u7.homedir(),$=QJ.XDG_CONFIG_HOME||jZ.join(J,".config");this._globalConfigPath=jZ.join($,this._appName)}return this._globalConfigPath}get globalConfigFile(){if(this._globalConfigFile===void 0)this._globalConfigFile=jZ.join(this.globalConfigPath,"init.ts");return this._globalConfigFile}get localConfigFile(){if(this._localConfigFile===void 0)this._localConfigFile=jZ.join(process.cwd(),`.${this._appName}.ts`);return this._localConfigFile}get globalDataPath(){if(this._globalDataPath===void 0){let J=u7.homedir(),$=QJ.XDG_DATA_HOME||jZ.join(J,".local/share");this._globalDataPath=jZ.join($,this._appName)}return this._globalDataPath}toObject(){return{globalConfigPath:this.globalConfigPath,globalConfigFile:this.globalConfigFile,localConfigFile:this.localConfigFile,globalDataPath:this.globalDataPath}}}function X6(){return IZ("data-paths-opentui",()=>new r9)}var A6=new Map([["astro","astro"],["bash","bash"],["c","c"],["cc","cpp"],["cjs","javascript"],["clj","clojure"],["cljs","clojure"],["cljc","clojure"],["cpp","cpp"],["cxx","cpp"],["cs","csharp"],["cts","typescript"],["ctsx","typescriptreact"],["dart","dart"],["diff","diff"],["edn","clojure"],["go","go"],["gemspec","ruby"],["groovy","groovy"],["h","c"],["handlebars","handlebars"],["hbs","handlebars"],["hpp","cpp"],["hxx","cpp"],["h++","cpp"],["hh","cpp"],["hrl","erlang"],["hs","haskell"],["htm","html"],["html","html"],["ini","ini"],["js","javascript"],["jsx","javascriptreact"],["jl","julia"],["json","json"],["ksh","bash"],["kt","kotlin"],["kts","kotlin"],["latex","latex"],["less","less"],["lua","lua"],["markdown","markdown"],["md","markdown"],["mdown","markdown"],["mkd","markdown"],["mjs","javascript"],["ml","ocaml"],["mli","ocaml"],["mts","typescript"],["mtsx","typescriptreact"],["patch","diff"],["php","php"],["pl","perl"],["pm","perl"],["ps1","powershell"],["psm1","powershell"],["py","python"],["pyi","python"],["r","r"],["rb","ruby"],["rake","ruby"],["rs","rust"],["ru","ruby"],["sass","sass"],["sc","scala"],["scala","scala"],["scss","scss"],["sh","bash"],["sql","sql"],["svelte","svelte"],["swift","swift"],["ts","typescript"],["tsx","typescriptreact"],["tex","latex"],["toml","toml"],["vue","vue"],["vim","vim"],["xml","xml"],["xsl","xsl"],["yaml","yaml"],["yml","yaml"],["zig","zig"],["zon","zig"],["zsh","bash"],["c++","cpp"],["erl","erlang"],["exs","elixir"],["ex","elixir"],["elm","elm"],["fsharp","fsharp"],["fs","fsharp"],["fsx","fsharp"],["fsscript","fsharp"],["fsi","fsharp"],["java","java"],["css","css"]]),T2=new Map([[".bash_aliases","bash"],[".bash_logout","bash"],[".bash_profile","bash"],[".bashrc","bash"],[".kshrc","bash"],[".profile","bash"],[".vimrc","vim"],[".zlogin","bash"],[".zlogout","bash"],[".zprofile","bash"],[".zshenv","bash"],[".zshrc","bash"],["appfile","ruby"],["berksfile","ruby"],["brewfile","ruby"],["cheffile","ruby"],["containerfile","dockerfile"],["dockerfile","dockerfile"],["fastfile","ruby"],["gemfile","ruby"],["gnumakefile","make"],["gvimrc","vim"],["guardfile","ruby"],["makefile","make"],["podfile","ruby"],["rakefile","ruby"],["thorfile","ruby"],["vagrantfile","ruby"]]);function e9(J){return J.trim().replace(/^\./,"").toLowerCase()||void 0}function N6(J){let Z=J.trim().replaceAll("\\","/");if(!Z)return;return m7.posix.basename(Z).toLowerCase()||void 0}function J$(J){let Z=e9(J);if(!Z)return;return A6.get(Z)}function V6(J){if(typeof J!=="string")return;let Z=N6(J);if(!Z)return;let $=T2.get(Z);if($)return $;let H=Z.lastIndexOf(".");if(H===-1||H===Z.length-1)return;let Q=Z.substring(H+1);return J$(Q)}function J4(J){if(typeof J!=="string")return;let Z=J.trim().split(/\s+/,1)[0],$=T2.get(Z.toLowerCase());if($)return $;let H=e9(Z);if(!H)return;return T2.get(H)??V6(H)??J$(H)??H}function Z$(){let J=X6(),Z={dataPath:J.globalDataPath};return IZ("tree-sitter-client",()=>{let $=new C0(Z);return J.on("paths:changed",(H)=>{$.setDataPath(H.globalDataPath)}),$})}class $${undoStack=[];redoStack=[];saveSnapshot(J,Z){let $={extmarks:new Map(Array.from(J.entries()).map(([H,Q])=>[H,{...Q}])),nextId:Z};this.undoStack.push($),this.redoStack=[]}undo(){if(this.undoStack.length===0)return null;return this.undoStack.pop()}redo(){if(this.redoStack.length===0)return null;return this.redoStack.pop()}pushRedo(J){this.redoStack.push(J)}pushUndo(J){this.undoStack.push(J)}clear(){this.undoStack=[],this.redoStack=[]}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}}class H${editBuffer;editorView;extmarks=new Map;extmarksByTypeId=new Map;metadata=new Map;nextId=1;destroyed=!1;history=new $$;typeNameToId=new Map;typeIdToName=new Map;nextTypeId=1;originalMoveCursorLeft;originalMoveCursorRight;originalSetCursorByOffset;originalMoveUpVisual;originalMoveDownVisual;originalDeleteCharBackward;originalDeleteChar;originalInsertText;originalInsertChar;originalDeleteRange;originalSetText;originalReplaceText;originalClear;originalNewLine;originalDeleteLine;originalEditorViewDeleteSelectedText;originalUndo;originalRedo;constructor(J,Z){this.editBuffer=J,this.editorView=Z,this.originalMoveCursorLeft=J.moveCursorLeft.bind(J),this.originalMoveCursorRight=J.moveCursorRight.bind(J),this.originalSetCursorByOffset=J.setCursorByOffset.bind(J),this.originalMoveUpVisual=Z.moveUpVisual.bind(Z),this.originalMoveDownVisual=Z.moveDownVisual.bind(Z),this.originalDeleteCharBackward=J.deleteCharBackward.bind(J),this.originalDeleteChar=J.deleteChar.bind(J),this.originalInsertText=J.insertText.bind(J),this.originalInsertChar=J.insertChar.bind(J),this.originalDeleteRange=J.deleteRange.bind(J),this.originalSetText=J.setText.bind(J),this.originalReplaceText=J.replaceText.bind(J),this.originalClear=J.clear.bind(J),this.originalNewLine=J.newLine.bind(J),this.originalDeleteLine=J.deleteLine.bind(J),this.originalEditorViewDeleteSelectedText=Z.deleteSelectedText.bind(Z),this.originalUndo=J.undo.bind(J),this.originalRedo=J.redo.bind(J),this.wrapCursorMovement(),this.wrapDeletion(),this.wrapInsertion(),this.wrapEditorViewDeleteSelectedText(),this.wrapUndoRedo(),this.setupContentChangeListener()}wrapCursorMovement(){this.editBuffer.moveCursorLeft=()=>{if(this.destroyed){this.originalMoveCursorLeft();return}let J=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalMoveCursorLeft();return}let $=J-1;if($<0){this.originalMoveCursorLeft();return}let H=this.findVirtualExtmarkContaining($);if(H&&J>=H.end){this.editBuffer.setCursorByOffset(H.start-1);return}this.originalMoveCursorLeft()},this.editBuffer.moveCursorRight=()=>{if(this.destroyed){this.originalMoveCursorRight();return}let J=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalMoveCursorRight();return}let $=J+1,H=this.editBuffer.getText().length;if($>H){this.originalMoveCursorRight();return}let Q=this.findVirtualExtmarkContaining($);if(Q&&J<=Q.start){this.editBuffer.setCursorByOffset(Q.end);return}this.originalMoveCursorRight()},this.editorView.moveUpVisual=()=>{if(this.destroyed){this.originalMoveUpVisual();return}if(this.editorView.hasSelection()){this.originalMoveUpVisual();return}let Z=this.editorView.getVisualCursor().offset;this.originalMoveUpVisual();let $=this.editorView.getVisualCursor().offset,H=this.findVirtualExtmarkContaining($);if(H){let Q=$-H.start,j=H.end-$;if(Q<j)this.editorView.setCursorByOffset(H.start-1);else this.editorView.setCursorByOffset(H.end)}},this.editorView.moveDownVisual=()=>{if(this.destroyed){this.originalMoveDownVisual();return}if(this.editorView.hasSelection()){this.originalMoveDownVisual();return}let Z=this.editorView.getVisualCursor().offset;this.originalMoveDownVisual();let $=this.editorView.getVisualCursor().offset,H=this.findVirtualExtmarkContaining($);if(H){let Q=$-H.start,j=H.end-$;if(Q<j){let G=H.start-1,L=G<=Z?H.end:G;this.editorView.setCursorByOffset(L)}else this.editorView.setCursorByOffset(H.end)}},this.editBuffer.setCursorByOffset=(J)=>{if(this.destroyed){this.originalSetCursorByOffset(J);return}let Z=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalSetCursorByOffset(J);return}if(J>Z){let Q=this.findVirtualExtmarkContaining(J);if(Q&&Z<=Q.start){this.originalSetCursorByOffset(Q.end);return}}else for(let Q of this.extmarks.values())if(Q.virtual&&Z>=Q.end&&J<Q.end&&J>=Q.start){this.originalSetCursorByOffset(Q.start-1);return}this.originalSetCursorByOffset(J)}}wrapDeletion(){this.editBuffer.deleteCharBackward=()=>{if(this.destroyed){this.originalDeleteCharBackward();return}this.saveSnapshot();let J=this.editorView.getVisualCursor().offset,Z=this.editorView.hasSelection();if(J===0){this.originalDeleteCharBackward();return}if(Z){this.originalDeleteCharBackward();return}let $=J-1,H=this.findVirtualExtmarkContaining($);if(H&&J===H.end){let G=this.offsetToPosition(H.start),L=this.offsetToPosition(H.end),Y=H.start,_=H.end-H.start;this.deleteExtmarkById(H.id),this.originalDeleteRange(G.row,G.col,L.row,L.col),this.adjustExtmarksAfterDeletion(Y,_),this.updateHighlights();return}this.originalDeleteCharBackward();let Q=this.editorView.getVisualCursor().offset,j=J-Q;if(j>0)this.adjustExtmarksAfterDeletion(Q,j)},this.editBuffer.deleteChar=()=>{if(this.destroyed){this.originalDeleteChar();return}this.saveSnapshot();let J=this.editorView.getVisualCursor().offset;if(this.editorView.hasSelection()){this.originalDeleteChar();return}let $=J,H=this.findVirtualExtmarkContaining($);if(H&&J===H.start){let G=this.offsetToPosition(H.start),L=this.offsetToPosition(H.end),Y=H.start,_=H.end-H.start;this.deleteExtmarkById(H.id),this.originalDeleteRange(G.row,G.col,L.row,L.col),this.adjustExtmarksAfterDeletion(Y,_),this.updateHighlights();return}let j=this.getNextCursorOffset(J)-J;if(this.originalDeleteChar(),j>0)this.adjustExtmarksAfterDeletion(J,j)},this.editBuffer.deleteRange=(J,Z,$,H)=>{if(this.destroyed){this.originalDeleteRange(J,Z,$,H);return}this.saveSnapshot();let Q=this.positionToOffset(J,Z),G=this.positionToOffset($,H)-Q;this.originalDeleteRange(J,Z,$,H),this.adjustExtmarksAfterDeletion(Q,G)},this.editBuffer.deleteLine=()=>{if(this.destroyed){this.originalDeleteLine();return}this.saveSnapshot();let J=this.editBuffer.getText(),Z=this.editorView.getVisualCursor().offset,$=0;for(let j=Z-1;j>=0;j--)if(J[j]===`
35
35
  `){$=j+1;break}let H=J.length;for(let j=Z;j<J.length;j++)if(J[j]===`
36
36
  `){H=j+1;break}let Q=H-$;this.originalDeleteLine(),this.adjustExtmarksAfterDeletion($,Q)}}wrapInsertion(){this.editBuffer.insertText=(J)=>{if(this.destroyed){this.originalInsertText(J);return}this.saveSnapshot();let Z=this.editorView.getVisualCursor().offset;this.originalInsertText(J);let $=this.editorView.getVisualCursor().offset-Z;if($>0)this.adjustExtmarksAfterInsertion(Z,$)},this.editBuffer.insertChar=(J)=>{if(this.destroyed){this.originalInsertChar(J);return}this.saveSnapshot();let Z=this.editorView.getVisualCursor().offset;this.originalInsertChar(J);let $=this.editorView.getVisualCursor().offset-Z;if($>0)this.adjustExtmarksAfterInsertion(Z,$)},this.editBuffer.setText=(J)=>{if(this.destroyed){this.originalSetText(J);return}this.clear(),this.originalSetText(J)},this.editBuffer.replaceText=(J)=>{if(this.destroyed){this.originalReplaceText(J);return}this.saveSnapshot(),this.clear(),this.originalReplaceText(J)},this.editBuffer.clear=()=>{if(this.destroyed){this.originalClear();return}this.saveSnapshot(),this.clear(),this.originalClear()},this.editBuffer.newLine=()=>{if(this.destroyed){this.originalNewLine();return}this.saveSnapshot();let J=this.editorView.getVisualCursor().offset;this.originalNewLine(),this.adjustExtmarksAfterInsertion(J,1)}}wrapEditorViewDeleteSelectedText(){this.editorView.deleteSelectedText=()=>{if(this.destroyed){this.originalEditorViewDeleteSelectedText();return}this.saveSnapshot();let J=this.editorView.getSelection();if(!J){this.originalEditorViewDeleteSelectedText();return}let Z=Math.min(J.start,J.end),$=Math.abs(J.end-J.start);if(this.originalEditorViewDeleteSelectedText(),$>0)this.adjustExtmarksAfterDeletion(Z,$)}}setupContentChangeListener(){this.editBuffer.on("content-changed",()=>{if(this.destroyed)return;this.updateHighlights()})}deleteExtmarkById(J){let Z=this.extmarks.get(J);if(Z)this.extmarks.delete(J),this.extmarksByTypeId.get(Z.typeId)?.delete(J),this.metadata.delete(J)}findVirtualExtmarkContaining(J){for(let Z of this.extmarks.values())if(Z.virtual&&J>=Z.start&&J<Z.end)return Z;return null}adjustExtmarksAfterInsertion(J,Z){for(let $ of this.extmarks.values())if($.start>=J)$.start+=Z,$.end+=Z;else if($.end>J)$.end+=Z;this.updateHighlights()}adjustExtmarksAfterDeletion(J,Z){let $=[];for(let H of this.extmarks.values()){if(H.end<=J)continue;if(H.start>=J+Z)H.start-=Z,H.end-=Z;else if(H.start>=J&&H.end<=J+Z)$.push(H.id);else if(H.start<J&&H.end>J+Z)H.end-=Z;else if(H.start<J&&H.end>J)H.end-=Math.min(H.end,J+Z)-J;else if(H.start<J+Z&&H.end>J+Z){let Q=J+Z-H.start;H.start=J,H.end-=Z}}for(let H of $)this.deleteExtmarkById(H);this.updateHighlights()}offsetToPosition(J){let Z=this.editBuffer.offsetToPosition(J);if(!Z)return{row:0,col:0};return Z}positionToOffset(J,Z){return this.editBuffer.positionToOffset(J,Z)}getNextCursorOffset(J){this.originalMoveCursorRight();let Z=this.editorView.getVisualCursor().offset;return this.originalSetCursorByOffset(J),Z}updateHighlights(){this.editBuffer.clearAllHighlights();for(let J of this.extmarks.values())if(J.styleId!==void 0){let Z=this.offsetExcludingNewlines(J.start),$=this.offsetExcludingNewlines(J.end);this.editBuffer.addHighlightByCharRange({start:Z,end:$,styleId:J.styleId,priority:J.priority??0,hlRef:J.id})}}offsetExcludingNewlines(J){let Z=this.editBuffer.getText(),$=0,H=0,Q=0;while(Q<Z.length&&$<J)if(Z[Q]===`
37
37
  `)$++,H++,Q++;else{let j=Q;while(j<Z.length&&Z[j]!==`
38
38
  `)j++;let G=Z.substring(Q,j),L=c7(G);if($+L<J)$+=L,Q=j;else{for(let Y=Q;Y<j&&$<J;Y++){let _=c7(Z[Y]);$+=_}break}}return J-H}create(J){if(this.destroyed)throw Error("ExtmarksController is destroyed");let Z=this.nextId++,$=J.typeId??0,H={id:Z,start:J.start,end:J.end,virtual:J.virtual??!1,styleId:J.styleId,priority:J.priority,data:J.data,typeId:$};if(this.extmarks.set(Z,H),!this.extmarksByTypeId.has($))this.extmarksByTypeId.set($,new Set);if(this.extmarksByTypeId.get($).add(Z),J.metadata!==void 0)this.metadata.set(Z,J.metadata);return this.updateHighlights(),Z}delete(J){if(this.destroyed)throw Error("ExtmarksController is destroyed");if(!this.extmarks.get(J))return!1;return this.deleteExtmarkById(J),this.updateHighlights(),!0}get(J){if(this.destroyed)return null;return this.extmarks.get(J)??null}getAll(){if(this.destroyed)return[];return Array.from(this.extmarks.values())}getVirtual(){if(this.destroyed)return[];return Array.from(this.extmarks.values()).filter((J)=>J.virtual)}getAtOffset(J){if(this.destroyed)return[];return Array.from(this.extmarks.values()).filter((Z)=>J>=Z.start&&J<Z.end)}getAllForTypeId(J){if(this.destroyed)return[];let Z=this.extmarksByTypeId.get(J);if(!Z)return[];return Array.from(Z).map(($)=>this.extmarks.get($)).filter(($)=>$!==void 0)}clear(){if(this.destroyed)return;this.extmarks.clear(),this.extmarksByTypeId.clear(),this.metadata.clear(),this.updateHighlights()}saveSnapshot(){this.history.saveSnapshot(this.extmarks,this.nextId)}restoreSnapshot(J){this.extmarks=new Map(Array.from(J.extmarks.entries()).map(([Z,$])=>[Z,{...$}])),this.nextId=J.nextId,this.updateHighlights()}wrapUndoRedo(){this.editBuffer.undo=()=>{if(this.destroyed)return this.originalUndo();if(!this.history.canUndo())return this.originalUndo();let J={extmarks:new Map(Array.from(this.extmarks.entries()).map(([$,H])=>[$,{...H}])),nextId:this.nextId};this.history.pushRedo(J);let Z=this.history.undo();return this.restoreSnapshot(Z),this.originalUndo()},this.editBuffer.redo=()=>{if(this.destroyed)return this.originalRedo();if(!this.history.canRedo())return this.originalRedo();let J={extmarks:new Map(Array.from(this.extmarks.entries()).map(([$,H])=>[$,{...H}])),nextId:this.nextId};this.history.pushUndo(J);let Z=this.history.redo();return this.restoreSnapshot(Z),this.originalRedo()}}registerType(J){if(this.destroyed)throw Error("ExtmarksController is destroyed");let Z=this.typeNameToId.get(J);if(Z!==void 0)return Z;let $=this.nextTypeId++;return this.typeNameToId.set(J,$),this.typeIdToName.set($,J),$}getTypeId(J){if(this.destroyed)return null;return this.typeNameToId.get(J)??null}getTypeName(J){if(this.destroyed)return null;return this.typeIdToName.get(J)??null}getMetadataFor(J){if(this.destroyed)return;return this.metadata.get(J)}destroy(){if(this.destroyed)return;this.editBuffer.moveCursorLeft=this.originalMoveCursorLeft,this.editBuffer.moveCursorRight=this.originalMoveCursorRight,this.editBuffer.setCursorByOffset=this.originalSetCursorByOffset,this.editorView.moveUpVisual=this.originalMoveUpVisual,this.editorView.moveDownVisual=this.originalMoveDownVisual,this.editBuffer.deleteCharBackward=this.originalDeleteCharBackward,this.editBuffer.deleteChar=this.originalDeleteChar,this.editBuffer.insertText=this.originalInsertText,this.editBuffer.insertChar=this.originalInsertChar,this.editBuffer.deleteRange=this.originalDeleteRange,this.editBuffer.setText=this.originalSetText,this.editBuffer.replaceText=this.originalReplaceText,this.editBuffer.clear=this.originalClear,this.editBuffer.newLine=this.originalNewLine,this.editBuffer.deleteLine=this.originalDeleteLine,this.editorView.deleteSelectedText=this.originalEditorViewDeleteSelectedText,this.editBuffer.undo=this.originalUndo,this.editBuffer.redo=this.originalRedo,this.extmarks.clear(),this.extmarksByTypeId.clear(),this.metadata.clear(),this.typeNameToId.clear(),this.typeIdToName.clear(),this.history.clear(),this.destroyed=!0}}function O6(J,Z){return new H$(J,Z)}var z6=new nZ;DJ({name:"OTUI_PALETTE_IDLE_TIMEOUT_MS",description:"Milliseconds of silence after palette queries before using fallback colors.",type:"number",default:300});var W0=/\x1b]4;(\d+);(?:(?:rgb:)([0-9a-fA-F]+)\/([0-9a-fA-F]+)\/([0-9a-fA-F]+)|#([0-9a-fA-F]{6}))(?:\x07|\x1b\\)/g,d7=/\x1b](\d+);(?:(?:rgb:)([0-9a-fA-F]+)\/([0-9a-fA-F]+)\/([0-9a-fA-F]+)|#([0-9a-fA-F]{6}))(?:\x07|\x1b\\)/g;function D2(J){let Z=parseInt(J,16),$=(1<<4*J.length)-1;return Math.round(Z/$*255).toString(16).padStart(2,"0")}function a7(J,Z,$,H){if(H)return`#${H.toLowerCase()}`;if(J&&Z&&$)return`#${D2(J)}${D2(Z)}${D2($)}`;return"#000000"}function q6(J){return`\x1BPtmux;${J.replace(/\x1b/g,"\x1B\x1B")}\x1B\\`}class Q${stdin;stdout;writeFn;activeQuerySessions=[];inLegacyTmux;inTmux;oscSource;clock;constructor(J){let{stdin:Z,stdout:$,writeFn:H,isLegacyTmux:Q,isTmux:j,oscSource:G,clock:L}=J;this.stdin=Z,this.stdout=$,this.writeFn=H||((Y)=>$.write(Y)),this.inLegacyTmux=Q??!1,this.inTmux=j??this.inLegacyTmux,this.oscSource=G,this.clock=L??z6}writeOsc(J,Z=!1){let $=Z&&this.inLegacyTmux?q6(J):J;return this.writeFn($)}cleanup(){for(let J of[...this.activeQuerySessions])J();this.activeQuerySessions=[]}subscribeInput(J){if(this.oscSource)return this.oscSource.subscribeOsc((Z)=>{J(Z)});return this.stdin.on("data",J),()=>{this.stdin.removeListener("data",J)}}createQuerySession(){let J=new Set,Z=new Set,$=!1,H=()=>{if($)return;$=!0;for(let j of J)this.clock.clearTimeout(j);J.clear();for(let j of Z)j();Z.clear();let Q=this.activeQuerySessions.indexOf(H);if(Q!==-1)this.activeQuerySessions.splice(Q,1)};return this.activeQuerySessions.push(H),{setTimer:(Q,j)=>{let G=this.clock.setTimeout(Q,j);return J.add(G),G},resetTimer:(Q,j,G)=>{if(Q)this.clock.clearTimeout(Q),J.delete(Q);let L=this.clock.setTimeout(j,G);return J.add(L),L},subscribeInput:(Q)=>{let j=this.subscribeInput(Q);return Z.add(j),()=>{if(!Z.has(j))return;Z.delete(j),j()}},cleanup:H}}async detectOSCSupport(J=300){if(!this.stdout.isTTY||!this.stdin.isTTY)return!1;return new Promise(($)=>{let H=this.createQuerySession(),Q="",j=!1,G=(Y)=>{if(j)return;j=!0,H.cleanup(),$(Y)},L=(Y)=>{if(Q+=Y.toString(),W0.lastIndex=0,W0.test(Q))G(!0)};H.setTimer(()=>{G(!1)},J),H.subscribeInput(L),this.writeOsc("\x1B]4;0;?\x07",!0)})}async queryPalette(J,Z=1200,$=QJ.OTUI_PALETTE_IDLE_TIMEOUT_MS){let H=this.stdout,Q=new Map;if(J.forEach((j)=>Q.set(j,null)),!H.isTTY||!this.stdin.isTTY)return Q;return new Promise((j)=>{let G=this.createQuerySession(),L="",Y=null,_=!1,W=()=>{if(_)return;_=!0,G.cleanup(),j(Q)},K=(q)=>{L+=q.toString();let N;W0.lastIndex=0;while(N=W0.exec(L)){let P=parseInt(N[1],10);if(Q.has(P))Q.set(P,a7(N[2],N[3],N[4],N[5]))}if(L.length>8192)L=L.slice(-4096);if([...Q.values()].filter((P)=>P!==null).length===Q.size){W();return}Y=G.resetTimer(Y,W,$)};G.setTimer(W,Z),G.subscribeInput(K),this.writeOsc(J.map((q)=>`\x1B]4;${q};?\x07`).join(""),!0),Y=G.resetTimer(Y,W,$)})}async querySpecialColors(J=1200,Z=QJ.OTUI_PALETTE_IDLE_TIMEOUT_MS){let $=this.stdout,H={10:null,11:null,12:null,13:null,14:null,15:null,16:null,17:null,19:null},Q=this.inTmux?[10,11,12]:[10,11,12,13,14,15,16,17,19];if(!$.isTTY||!this.stdin.isTTY)return H;return new Promise((j)=>{let G=this.createQuerySession(),L="",Y=null,_=!1,W=()=>{if(_)return;_=!0,G.cleanup(),j(H)},K=(q)=>{L+=q.toString();let N=!1,z;d7.lastIndex=0;while(z=d7.exec(L)){let P=parseInt(z[1],10);if(P in H)H[P]=a7(z[2],z[3],z[4],z[5]),N=!0}if(L.length>8192)L=L.slice(-4096);if(Q.every((P)=>H[P]!==null)){W();return}if(!N)return;Y=G.resetTimer(Y,W,Z)};G.setTimer(W,J),G.subscribeInput(K),this.writeOsc(Q.map((q)=>`\x1B]${q};?\x07`).join("")),Y=G.resetTimer(Y,W,Z)})}async detect(J){let{timeout:Z=5000,size:$=16}=J||{};if(!await this.detectOSCSupport())return{palette:Array($).fill(null),defaultForeground:null,defaultBackground:null,cursorColor:null,mouseForeground:null,mouseBackground:null,tekForeground:null,tekBackground:null,highlightBackground:null,highlightForeground:null};let Q=[...Array($).keys()],j=QJ.OTUI_PALETTE_IDLE_TIMEOUT_MS,[G,L]=await Promise.all([this.queryPalette(Q,Z,j),this.querySpecialColors(Z,j)]);return{palette:[...Array($).keys()].map((Y)=>G.get(Y)??null),defaultForeground:L[10],defaultBackground:L[11],cursorColor:L[12],mouseForeground:L[13],mouseBackground:L[14],tekForeground:L[15],tekBackground:L[16],highlightBackground:L[17],highlightForeground:L[19]}}}function P6(J){return new Q$(J)}var I6=a.fromInts(...R9),B6=a.fromInts(...T9),Y2=null;function K6(){if(!Y2)Y2=Array.from({length:256},(J,Z)=>{let[$,H,Q]=C9(Z);return a.fromInts($,H,Q)});return Y2}function j$(J){let Z=K6();return{palette:Array.from({length:256},($,H)=>{let Q=J?.palette[H];return Q?a.fromHex(Q):a.clone(Z[H])}),defaultForeground:J?.defaultForeground?a.fromHex(J.defaultForeground):a.clone(I6),defaultBackground:J?.defaultBackground?a.fromHex(J.defaultBackground):a.clone(B6)}}function i7(J){let Z=j$(J);return[Z.palette.map((H)=>H.toInts().join(",")).join(";"),Z.defaultForeground.toInts().join(","),Z.defaultBackground.toInts().join(",")].join("|")}var w6=new TextDecoder;function Z4(J){return w6.decode(J)}function $4(J){return s5(J)}var F6=["markup.link.url","string.special.url"];function H4(J,Z){let{content:$,highlights:H}=Z,Q=[];for(let G=0;G<H.length;G++){let[L,Y,_]=H[G];if(!F6.includes(_))continue;let W=$.slice(L,Y);Q.push({start:L,end:Y,url:W});for(let K=G-1;K>=0;K--){let[q,N,z]=H[K];if(z==="markup.link.label"){Q.push({start:q,end:N,url:W});break}if(!z.startsWith("markup.link"))break}}if(Q.length===0)return J;let j=0;for(let G of J){if(G.text.length<=1)continue;let L=$.indexOf(G.text,j);if(L<0)continue;for(let Y of Q)if(L<Y.end&&L+G.text.length>Y.start){G.link={url:Y.url};break}j=L+G.text.length}return J}var s={char:"char",int8_t:"int8_t",i8:"i8",uint8_t:"uint8_t",u8:"u8",int16_t:"int16_t",i16:"i16",uint16_t:"uint16_t",u16:"u16",int32_t:"int32_t",i32:"i32",int:"int",uint32_t:"uint32_t",u32:"u32",int64_t:"int64_t",i64:"i64",uint64_t:"uint64_t",u64:"u64",double:"double",f64:"f64",float:"float",f32:"f32",bool:"bool",ptr:"ptr",pointer:"pointer",void:"void",cstring:"cstring",function:"function",usize:"usize",callback:"callback",napi_env:"napi_env",napi_value:"napi_value",buffer:"buffer"},T6="OpenTUI native FFI is not available for this runtime yet",g6="Bun FFI backend does not support dlopen(null)",G$="Cannot create FFI callback after library.close() has been called",C6="Node FFI callbacks are same-thread only and do not support threadsafe callbacks",M6="Node FFI backend does not support Bun N-API FFI types",x6="Node FFI backend does not support FFIFunction.ptr overrides",n7="node:ffi ptr() only supports ArrayBuffer and ArrayBufferView values backed by ArrayBuffer",k6="Node FFI backend does not normalize string return values (yet)",E6="Node FFI backend does not support usize until (yet)",m2="Pointer must be non-negative",L$="Pointer exceeds safe integer range";function _2(J){throw Error(T6,{cause:J})}function h6(J){return{dlopen(){return _2(J)},ptr(){return _2(J)},suffix:"",toArrayBuffer(){return _2(J)}}}var g2=typeof process<"u"&&typeof process.versions==="object"&&process.versions!==null&&typeof process.versions.bun==="string",s7=S6(import.meta.url),M0=globalThis.QITQODE_FFI_BACKEND??b6();function b6(){if(g2)return p6(s7("bun:ffi"));try{let J=s7("node:ffi");return v6(J.default??J)}catch(J){return h6(J)}}function C2(J){if(g2&&typeof J==="bigint")return U$(J);if(!g2&&typeof J==="number")return D$(J);return J}function HJ(J){return J?1:0}function U$(J){if(J<0n)throw Error(m2);if(J>BigInt(Number.MAX_SAFE_INTEGER))throw Error(L$);return Number(J)}function D$(J){if(J<0)throw Error(m2);if(!Number.isSafeInteger(J))throw Error(L$);return BigInt(J)}function Y$(J,Z){let $=J.ptr,H=!1,Q={get ptr(){return $},get threadsafe(){return J.threadsafe},close(){if(H)return;H=!0,Z.delete(Q);try{J.close()}finally{$=null}}};return Z.add(Q),Q}function f6(J){return Object.fromEntries(Object.entries(J).map(([Z,$])=>[Z,_$($)]))}function _$(J){return{args:J.args,returns:J.returns,ptr:J.ptr==null?void 0:W$(J.ptr),threadsafe:J.threadsafe}}function W$(J){return typeof J==="bigint"?U$(J):J}function p6(J){return{dlopen(Z,$){if(Z===null)throw Error(g6);let H=J.dlopen(Z,f6($)),Q=new Set,j=!1;return{symbols:H.symbols,createCallback(G,L){if(j)throw Error(G$);let Y=new J.JSCallback(G,_$(L));return Y$(Y,Q)},close(){if(j)return;j=!0;try{H.close()}finally{for(let G of[...Q])G.close()}}}},ptr:J.ptr,suffix:J.suffix,toArrayBuffer(Z,$,H){return J.toArrayBuffer(W$(Z),$,H)}}}function v6(J){return{dlopen(Z,$){let{lib:H,functions:Q}=J.dlopen(y6(Z),c6($)),j=new Set,G=!1,L=!1;return{symbols:Q,createCallback(Y,_){if(G)throw Error(G$);if(_.threadsafe)throw Error(C6);let W=H.registerCallback(X$(_),Y);return Y$({ptr:W,threadsafe:!1,close(){if(!L)H.unregisterCallback(W)}},j)},close(){if(G)return;G=!0;try{L=!0,H.close()}finally{for(let Y of[...j])Y.close()}}}},ptr(Z){if(ArrayBuffer.isView(Z)){if(!(Z.buffer instanceof ArrayBuffer))throw TypeError(n7);return J.getRawPointer(Z.buffer)+BigInt(Z.byteOffset)}if(Z instanceof ArrayBuffer)return J.getRawPointer(Z);throw TypeError(n7)},suffix:J.suffix,toArrayBuffer(Z,$,H){return J.toArrayBuffer(u6(Z)+BigInt($??0),H,!1)}}}function y6(J){return J instanceof URL?R6(J):J}function c6(J){return Object.fromEntries(Object.entries(J).map(([Z,$])=>[Z,X$($)]))}function X$(J){if(J.ptr!=null)throw Error(x6);return{parameters:(J.args??[]).map((Z)=>o7(Z,"parameter")),result:o7(J.returns??s.void,"result")}}function o7(J,Z){switch(J){case s.char:return"char";case s.int8_t:case s.i8:return"i8";case s.uint8_t:case s.u8:return"u8";case s.int16_t:case s.i16:return"i16";case s.uint16_t:case s.u16:return"u16";case s.int32_t:case s.int:case s.i32:return"i32";case s.uint32_t:case s.u32:return"u32";case s.int64_t:case s.i64:return"i64";case s.uint64_t:case s.u64:return"u64";case s.double:case s.f64:return"f64";case s.float:case s.f32:return"f32";case s.bool:return"bool";case s.ptr:case s.pointer:return"pointer";case s.void:return"void";case s.cstring:if(Z==="result")throw Error(k6);return"string";case s.function:case s.callback:return"pointer";case s.usize:throw Error(E6);case s.napi_env:case s.napi_value:throw Error(M6);case s.buffer:return"buffer";default:return l6(J)}}function l6(J){throw Error(`Unsupported FFIType for node:ffi: ${String(J)}`)}function u6(J){if(typeof J==="bigint"){if(J<0n)throw Error(m2);return J}return D$(J)}var{dlopen:m6,ptr:h,suffix:G4,toArrayBuffer:RJ}=M0;function n6(J,Z,$,H){let Q=0;if(J===!0)Q|=15;else if(Array.isArray(J)){if(J.includes("top"))Q|=8;if(J.includes("right"))Q|=4;if(J.includes("bottom"))Q|=2;if(J.includes("left"))Q|=1}if(Z)Q|=16;let j={left:0,center:1,right:2},G=j[$],L=j[H];return Q|=G<<5,Q|=L<<7,Q}class xJ{static fbIdCounter=0;id;lib;bufferPtr;_width;_height;_widthMethod;respectAlpha=!1;_rawBuffers=null;_destroyed=!1;get ptr(){return this.bufferPtr}guard(){if(this._destroyed)throw Error(`Buffer ${this.id} is destroyed`)}ensureRawBufferViews(){if(this._rawBuffers!==null)return;let J=this._width*this._height,Z=this.lib.bufferGetCharPtr(this.bufferPtr),$=this.lib.bufferGetFgPtr(this.bufferPtr),H=this.lib.bufferGetBgPtr(this.bufferPtr),Q=this.lib.bufferGetAttributesPtr(this.bufferPtr);this._rawBuffers={char:new Uint32Array(RJ(Z,0,J*4)),fg:new Uint16Array(RJ($,0,J*4*2)),bg:new Uint16Array(RJ(H,0,J*4*2)),attributes:new Uint32Array(RJ(Q,0,J*4))}}get buffers(){return this.guard(),this.ensureRawBufferViews(),this._rawBuffers}constructor(J,Z,$,H,Q){this.id=Q.id||`fb_${xJ.fbIdCounter++}`,this.lib=J,this.respectAlpha=Q.respectAlpha||!1,this._width=$,this._height=H,this._widthMethod=Q.widthMethod||"unicode",this.bufferPtr=Z}static create(J,Z,$,H={}){let Q=TJ(),j=H.respectAlpha||!1,G=H.id&&H.id.trim()!==""?H.id:"unnamed buffer";return Q.createOptimizedBuffer(J,Z,$,j,G)}get widthMethod(){return this._widthMethod}get width(){return this._width}get height(){return this._height}setRespectAlpha(J){this.guard(),this.lib.bufferSetRespectAlpha(this.bufferPtr,J),this.respectAlpha=J}getNativeId(){return this.guard(),this.lib.bufferGetId(this.bufferPtr)}getRealCharBytes(J=!1){this.guard();let Z=this.lib.bufferGetRealCharSize(this.bufferPtr),$=new Uint8Array(Z),H=this.lib.bufferWriteResolvedChars(this.bufferPtr,$,J);return $.slice(0,H)}getSpanLines(){this.guard();let{char:J,fg:Z,bg:$,attributes:H}=this.buffers,Q=[],j=-1073741824,G=-1073741824,L=this.getRealCharBytes(!0),Y=new TextDecoder().decode(L).split(`
39
- `);for(let _=0;_<this._height;_++){let W=[],K=null,q=[...Y[_]||""],N=0;for(let z=0;z<this._width;z++){let P=_*this._width+z,O=J[P],A=a.fromArray(Z.slice(P*4,P*4+4)),I=a.fromArray($.slice(P*4,P*4+4)),w=H[P]&255,T=(O&G)===j?"":q[N++]??" ";if(K&&K.fg.equals(A)&&K.bg.equals(I)&&K.attributes===w)K.text+=T,K.width+=1;else{if(K)W.push(K);K={text:T,fg:A,bg:I,attributes:w,width:1}}}if(K)W.push(K);Q.push({spans:W})}return Q}clear(J=a.fromValues(0,0,0,1)){this.guard(),this.lib.bufferClear(this.bufferPtr,J)}setCell(J,Z,$,H,Q,j=0){this.guard(),this.lib.bufferSetCell(this.bufferPtr,J,Z,$,H,Q,j)}setCellWithAlphaBlending(J,Z,$,H,Q,j=0){this.guard(),this.lib.bufferSetCellWithAlphaBlending(this.bufferPtr,J,Z,$,H,Q,j)}drawText(J,Z,$,H,Q,j=0,G){if(this.guard(),!G){this.lib.bufferDrawText(this.bufferPtr,J,Z,$,H,Q,j);return}let{start:L,end:Y}=G,_,W;if(G.bgColor)_=G.bgColor,W=G.fgColor||H;else{let K=Q||a.fromValues(0,0,0,0);W=K.a>0?K:a.fromValues(0,0,0,1),_=H}if(L>0){let K=J.slice(0,L);this.lib.bufferDrawText(this.bufferPtr,K,Z,$,H,Q,j)}if(Y>L){let K=J.slice(L,Y);this.lib.bufferDrawText(this.bufferPtr,K,Z+L,$,W,_,j)}if(Y<J.length){let K=J.slice(Y);this.lib.bufferDrawText(this.bufferPtr,K,Z+Y,$,H,Q,j)}}fillRect(J,Z,$,H,Q){this.guard(),this.lib.bufferFillRect(this.bufferPtr,J,Z,$,H,Q)}colorMatrix(J,Z,$=1,H=3){if(this.guard(),J.length!==16)throw RangeError(`colorMatrix matrix must have length 16, got ${J.length}`);let Q=Math.floor(Z.length/3);this.lib.bufferColorMatrix(this.bufferPtr,h(J),h(Z),Q,$,H)}colorMatrixUniform(J,Z=1,$=3){if(this.guard(),J.length!==16)throw RangeError(`colorMatrixUniform matrix must have length 16, got ${J.length}`);if(Z===0)return;this.lib.bufferColorMatrixUniform(this.bufferPtr,h(J),Z,$)}drawFrameBuffer(J,Z,$,H,Q,j,G){this.guard(),this.lib.drawFrameBuffer(this.bufferPtr,J,Z,$.ptr,H,Q,j,G)}destroy(){if(this._destroyed)return;this._destroyed=!0,this._rawBuffers=null,this.lib.destroyOptimizedBuffer(this.bufferPtr)}drawTextBuffer(J,Z,$){this.guard(),this.lib.bufferDrawTextBufferView(this.bufferPtr,J.ptr,Z,$)}drawEditorView(J,Z,$){this.guard(),this.lib.bufferDrawEditorView(this.bufferPtr,J.ptr,Z,$)}drawSuperSampleBuffer(J,Z,$,H,Q,j){this.guard(),this.lib.bufferDrawSuperSampleBuffer(this.bufferPtr,J,Z,C2($),H,Q,j)}drawPackedBuffer(J,Z,$,H,Q,j){this.guard(),this.lib.bufferDrawPackedBuffer(this.bufferPtr,C2(J),Z,$,H,Q,j)}drawGrayscaleBuffer(J,Z,$,H,Q,j=null,G=null){this.guard(),this.lib.bufferDrawGrayscaleBuffer(this.bufferPtr,J,Z,h($),H,Q,j,G)}drawGrayscaleBufferSupersampled(J,Z,$,H,Q,j=null,G=null){this.guard(),this.lib.bufferDrawGrayscaleBufferSupersampled(this.bufferPtr,J,Z,h($),H,Q,j,G)}resize(J,Z){if(this.guard(),this._width===J&&this._height===Z)return;this._width=J,this._height=Z,this._rawBuffers=null,this.lib.bufferResize(this.bufferPtr,J,Z)}drawBox(J){this.guard();let Z=F2(J.borderStyle,"single"),$=J.customBorderChars??I1[Z],H=n6(J.border,J.shouldFill??!1,J.titleAlignment||"left",J.bottomTitleAlignment||"left");this.lib.bufferDrawBox(this.bufferPtr,J.x,J.y,J.width,J.height,$,H,J.borderColor,J.backgroundColor,J.titleColor??J.borderColor,J.title??null,J.bottomTitle??null)}pushScissorRect(J,Z,$,H){this.guard(),this.lib.bufferPushScissorRect(this.bufferPtr,J,Z,$,H)}popScissorRect(){this.guard(),this.lib.bufferPopScissorRect(this.bufferPtr)}clearScissorRects(){this.guard(),this.lib.bufferClearScissorRects(this.bufferPtr)}pushOpacity(J){this.guard(),this.lib.bufferPushOpacity(this.bufferPtr,Math.max(0,Math.min(1,J)))}popOpacity(){this.guard(),this.lib.bufferPopOpacity(this.bufferPtr)}getCurrentOpacity(){return this.guard(),this.lib.bufferGetCurrentOpacity(this.bufferPtr)}clearOpacity(){this.guard(),this.lib.bufferClearOpacity(this.bufferPtr)}encodeUnicode(J){return this.guard(),this.lib.encodeUnicode(J,this._widthMethod)}freeUnicode(J){this.guard(),this.lib.freeUnicode(J)}drawGrid(J){this.guard();let Z=Math.max(0,J.columnOffsets.length-1),$=Math.max(0,J.rowOffsets.length-1);this.lib.bufferDrawGrid(this.bufferPtr,J.borderChars,J.borderFg,J.borderBg,J.columnOffsets,Z,J.rowOffsets,$,{drawInner:J.drawInner,drawOuter:J.drawOuter})}drawChar(J,Z,$,H,Q,j=0){this.guard(),this.lib.bufferDrawChar(this.bufferPtr,J,Z,$,H,Q,j)}}var s6="bun-ffi-structs requires Bun or Node.js with node:ffi enabled (--experimental-ffi --allow-ffi).",A$=await o6();async function o6(){if(typeof process<"u"&&"bun"in process.versions)return t6(await t7("bun:ffi"));try{return r6(await t7("node:ffi"))}catch(J){throw Error(s6,{cause:J instanceof Error?J:void 0})}}function t7(J){return import(J).then((Z)=>Z.default??Z)}function t6(J){return{ptr:J.ptr,toArrayBuffer(Z,$,H){return J.toArrayBuffer(J8(Z),$,H)}}}function r6(J){return{ptr(Z){if(ArrayBuffer.isView(Z))return J.getRawPointer(Z.buffer)+BigInt(Z.byteOffset);if(Z instanceof ArrayBuffer)return J.getRawPointer(Z);throw TypeError("node:ffi ptr() only supports ArrayBuffer and ArrayBufferView values.")},toArrayBuffer(Z,$,H){return J.toArrayBuffer(e6(Z)+BigInt($??0),H,!1)}}}function e6(J){return typeof J==="bigint"?J:BigInt(J)}function J8(J){return typeof J==="bigint"?Number(J):J}var{ptr:XZ,toArrayBuffer:W2}=A$;function CZ(...J){let Z=J.join(" ");throw console.error("FATAL ERROR:",Z),Error(Z)}var NJ=process.arch==="x64"||process.arch==="arm64"?8:4,Z8=typeof process<"u"&&"bun"in process.versions,OZ={u8:1,bool_u8:1,bool_u32:4,u16:2,i16:2,u32:4,u64:8,f32:4,f64:8,pointer:NJ,i32:4,i64:8},$8=Object.keys(OZ);function X0(J){return typeof J==="string"&&$8.includes(J)}var r7={...OZ},H8={u8:(J,Z)=>J.getUint8(Z),bool_u8:(J,Z)=>Boolean(J.getUint8(Z)),bool_u32:(J,Z)=>Boolean(J.getUint32(Z,!0)),u16:(J,Z)=>J.getUint16(Z,!0),i16:(J,Z)=>J.getInt16(Z,!0),u32:(J,Z)=>J.getUint32(Z,!0),u64:(J,Z)=>J.getBigUint64(Z,!0),f32:(J,Z)=>J.getFloat32(Z,!0),f64:(J,Z)=>J.getFloat64(Z,!0),i32:(J,Z)=>J.getInt32(Z,!0),i64:(J,Z)=>J.getBigInt64(Z,!0),pointer:(J,Z)=>NJ===8?J.getBigUint64(Z,!0):BigInt(J.getUint32(Z,!0))};function e7(J){return typeof J==="object"&&J!==null&&J.__type==="objectPointer"}function J9(J,Z){return J+(Z-1)&~(Z-1)}function Z9(J){throw TypeError(`Invalid enum value: ${J}`)}function d2(J,Z="u32"){let $=Object.fromEntries(Object.entries(J).map(([H,Q])=>[Q,H]));return{__type:"enum",type:Z,to(H){return typeof H==="number"?H:J[H]??Z9(String(H))},from(H){return $[H]??Z9(String(H))},enum:J}}function $9(J){return typeof J==="object"&&J.__type==="enum"}function X2(J){return typeof J==="object"&&J.__type==="struct"}function MZ(J){let Z,$;switch(J){case"u8":Z=(H,Q,j)=>H.setUint8(Q,j),$=(H,Q)=>H.getUint8(Q);break;case"bool_u8":Z=(H,Q,j)=>H.setUint8(Q,j?1:0),$=(H,Q)=>Boolean(H.getUint8(Q));break;case"bool_u32":Z=(H,Q,j)=>H.setUint32(Q,j?1:0,!0),$=(H,Q)=>Boolean(H.getUint32(Q,!0));break;case"u16":Z=(H,Q,j)=>H.setUint16(Q,j,!0),$=(H,Q)=>H.getUint16(Q,!0);break;case"i16":Z=(H,Q,j)=>H.setInt16(Q,j,!0),$=(H,Q)=>H.getInt16(Q,!0);break;case"u32":Z=(H,Q,j)=>H.setUint32(Q,j,!0),$=(H,Q)=>H.getUint32(Q,!0);break;case"i32":Z=(H,Q,j)=>H.setInt32(Q,j,!0),$=(H,Q)=>H.getInt32(Q,!0);break;case"i64":Z=(H,Q,j)=>H.setBigInt64(Q,BigInt(j),!0),$=(H,Q)=>H.getBigInt64(Q,!0);break;case"u64":Z=(H,Q,j)=>H.setBigUint64(Q,BigInt(j),!0),$=(H,Q)=>H.getBigUint64(Q,!0);break;case"f32":Z=(H,Q,j)=>H.setFloat32(Q,j,!0),$=(H,Q)=>H.getFloat32(Q,!0);break;case"f64":Z=(H,Q,j)=>H.setFloat64(Q,j,!0),$=(H,Q)=>H.getFloat64(Q,!0);break;case"pointer":Z=(H,Q,j)=>{NJ===8?H.setBigUint64(Q,j?BigInt(j):0n,!0):H.setUint32(Q,j?Number(j):0,!0)},$=(H,Q)=>{if(NJ===8){let j=H.getBigUint64(Q,!0);return Z8?Number(j):j}return H.getUint32(Q,!0)};break;default:CZ(`Unsupported primitive type: ${J}`)}return{pack:Z,unpack:$}}var{pack:XJ,unpack:RZ}=MZ("pointer"),M2=new WeakMap;function DZ(J,Z){let $=M2.get(J);if($)$.push(Z);else M2.set(J,[Z])}function Q8(J,Z){if(M2.has(Z))DZ(J,Z)}function lZ(J){return J==null||J===0||J===0n}function A2(J){return typeof J==="bigint"?Number(J):J}function j8(J){let Z=new ArrayBuffer(J.length*NJ),$=new DataView(Z);for(let H=0;H<J.length;H++){let j=J[H]?.ptr??null;XJ($,H*NJ,j)}return $}var H9=new TextEncoder,G8=new TextDecoder;function GJ(J,Z){let $=0,H=1,Q=[],j={},G=[],L={};for(let[q,N,z={}]of J){if(z.condition&&!z.condition())continue;let P=0,O=0,A,I,w=!1,C=null;if(X0(N))P=OZ[N],O=r7[N],{pack:A,unpack:I}=MZ(N);else if(typeof N==="string"&&N==="cstring")P=NJ,O=NJ,A=(F,R,f)=>{if(!f){XJ(F,R,null);return}let c=H9.encode(f+"\x00"),u=XZ(c);XJ(F,R,u),DZ(F.buffer,c)},I=(F,R)=>{return RZ(F,R)};else if(typeof N==="string"&&N==="char*")P=NJ,O=NJ,A=(F,R,f)=>{if(!f){XJ(F,R,null);return}let c=H9.encode(f),u=XZ(c);XJ(F,R,u),DZ(F.buffer,c)},I=(F,R)=>{return RZ(F,R)},w=!0;else if($9(N)){let F=N.type;P=OZ[F],O=r7[F];let{pack:R}=MZ(F);A=(f,c,u)=>{let d=N.to(u);R(f,c,d)},I=(f,c)=>{let u=H8[F](f,c);return N.from(u)}}else if(X2(N))if(z.asPointer===!0)P=NJ,O=NJ,A=(F,R,f,c,u)=>{if(!f){XJ(F,R,null);return}let d=N.pack(f,u);XJ(F,R,XZ(d)),DZ(F.buffer,d)},I=(F,R)=>{throw Error("Not implemented yet")};else P=N.size,O=N.align,A=(F,R,f,c,u)=>{let d=N.pack(f,u),p=new Uint8Array(d);new Uint8Array(F.buffer).set(p,R),Q8(F.buffer,d)},I=(F,R)=>{let f=F.buffer.slice(R,R+P);return N.unpack(f)};else if(e7(N))P=NJ,O=NJ,A=(F,R,f)=>{let c=f?.ptr??null;if(c===void 0)console.warn(`Field '${q}' expected object with '.ptr' property, but got undefined pointer value from:`,f),XJ(F,R,null);else XJ(F,R,c)},I=(F,R)=>{return RZ(F,R)};else if(Array.isArray(N)&&N.length===1&&N[0]!==void 0){let[F]=N;P=NJ,O=NJ;let R;if($9(F))R=OZ[F.type],A=(c,u,d,p)=>{if(!d||d.length===0){XJ(c,u,null);return}let m=new ArrayBuffer(d.length*R),ZJ=new DataView(m);for(let i=0;i<d.length;i++){let t=F.to(d[i]);ZJ.setUint32(i*R,t,!0)}XJ(c,u,XZ(m)),DZ(c.buffer,m)},I=null,w=!0,C=F;else if(X2(F))R=F.size,A=(c,u,d,p,m)=>{if(!d||d.length===0){XJ(c,u,null);return}let ZJ=new ArrayBuffer(d.length*R),i=new DataView(ZJ);for(let t=0;t<d.length;t++)F.packInto(d[t],i,t*R,m);XJ(c,u,XZ(ZJ)),DZ(c.buffer,ZJ)},I=(c,u)=>{throw Error("Not implemented yet")};else if(X0(F)){R=OZ[F];let{pack:c}=MZ(F);A=(u,d,p)=>{if(!p||p.length===0){XJ(u,d,null);return}let m=new ArrayBuffer(p.length*R),ZJ=new DataView(m);for(let i=0;i<p.length;i++)c(ZJ,i*R,p[i]);XJ(u,d,XZ(m)),DZ(u.buffer,m)},I=null,w=!0,C=F}else if(e7(F))R=NJ,A=(c,u,d)=>{if(!d||d.length===0){XJ(c,u,null);return}let p=j8(d);XJ(c,u,XZ(p.buffer)),DZ(c.buffer,p.buffer)},I=()=>{throw Error("not implemented yet")};else throw Error(`Unsupported array element type for ${q}: ${JSON.stringify(F)}`);let f=Object.values(j).find((c)=>c.lengthOf===q);if(f&&X0(f.type)){let{pack:c}=MZ(f.type);L[q]={elementSize:R,arrayOffset:$,lengthOffset:f.offset,lengthPack:c}}}else throw Error(`Unsupported field type for ${q}: ${JSON.stringify(N)}`);if($=J9($,O),z.unpackTransform){let F=I;I=(R,f)=>z.unpackTransform(F(R,f))}if(z.packTransform){let F=A;A=(R,f,c,u,d)=>F(R,f,z.packTransform(c),u,d)}if(z.optional){let F=A;if(X2(N)&&!z.asPointer)A=(R,f,c,u,d)=>{if(c||z.mapOptionalInline)F(R,f,c,u,d)};else A=(R,f,c,u,d)=>F(R,f,c??0,u,d)}if(z.lengthOf){let F=A;A=(R,f,c,u,d)=>{let p=u[z.lengthOf],m=0;if(p)if(typeof p==="string")m=Buffer.byteLength(p);else m=p.length;return F(R,f,m,u,d)}}let T;if(z.validate)T=Array.isArray(z.validate)?z.validate:[z.validate];let g={name:q,offset:$,size:P,align:O,validate:T,optional:!!z.optional||!!z.lengthOf||z.default!==void 0,default:z.default,pack:A,unpack:I,type:N,lengthOf:z.lengthOf};if(Q.push(g),z.lengthOf)j[z.lengthOf]=g;if(w){let F=typeof N==="string"&&N==="char*"?"char*":C;if(!F)CZ(`Internal error: needsLengthOf=true but def is null for ${q}`);G.push({requester:g,def:F})}$+=P,H=Math.max(H,O)}for(let{requester:q,def:N}of G){let z=j[q.name];if(!z){if(N==="char*")continue;throw Error(`lengthOf field not found for array field ${q.name}`)}if(N==="char*"){let P=z.offset-q.offset;q.unpack=(O,A)=>{let I=RZ(O,A),w=z.unpack(O,A+P);if(lZ(I))return null;let C=A2(w);if(C===0)return"";let T=W2(I,0,C);return G8.decode(T)}}else if(X0(N)){let P=OZ[N],{unpack:O}=MZ(N),A=z.offset-q.offset;q.unpack=(I,w)=>{let C=[],T=z.unpack(I,w+A),g=A2(T),F=RZ(I,w);if(lZ(F)&&g>0)throw Error(`Array field ${q.name} has null pointer but length ${T}.`);if(lZ(F)||g===0)return[];let R=W2(F,0,g*P),f=new DataView(R);for(let c=0;c<g;c++)C.push(O(f,c*P));return C}}else{let P=N.type==="u32"?4:8,O=z.offset-q.offset;q.unpack=(A,I)=>{let w=[],C=z.unpack(A,I+O),T=A2(C),g=RZ(A,I);if(lZ(g)&&T>0)throw Error(`Array field ${q.name} has null pointer but length ${C}.`);if(lZ(g)||T===0)return[];let F=W2(g,0,T*P),R=new DataView(F);for(let f=0;f<T;f++)w.push(N.from(R.getUint32(f*P,!0)));return w}}}let Y=J9($,H),_=Q.map((q)=>({name:q.name,offset:q.offset,size:q.size,align:q.align,optional:q.optional,type:q.type,lengthOf:q.lengthOf})),W=new Map(_.map((q)=>[q.name,q])),K=new Map(Object.entries(L));return{__type:"struct",size:Y,align:H,hasMapValue:!!Z?.mapValue,layoutByName:W,arrayFields:K,pack(q,N){let z=new ArrayBuffer(Y),P=new DataView(z),O=q;if(Z?.mapValue)O=Z.mapValue(q);for(let A of Q){let I=O[A.name]??A.default;if(!A.optional&&I===void 0)CZ(`Packing non-optional field '${A.name}' but value is undefined (and no default provided)`);if(A.validate)for(let w of A.validate)w(I,A.name,{hints:N?.validationHints,input:O});A.pack(P,A.offset,I,O,N)}return P.buffer},packInto(q,N,z,P){let O=q;if(Z?.mapValue)O=Z.mapValue(q);for(let A of Q){let I=O[A.name]??A.default;if(!A.optional&&I===void 0)console.warn(`packInto missing value for non-optional field '${A.name}' at offset ${z+A.offset}. Writing default or zero.`);if(A.validate)for(let w of A.validate)w(I,A.name,{hints:P?.validationHints,input:O});A.pack(N,z+A.offset,I,O,P)}},unpack(q){if(q.byteLength<Y)CZ(`Buffer size (${q.byteLength}) is smaller than struct size (${Y}) for unpacking.`);let N=new DataView(q),z=Z?.default?{...Z.default}:{};for(let P of Q){if(!P.unpack)continue;try{z[P.name]=P.unpack(N,P.offset)}catch(O){throw console.error(`Error unpacking field '${P.name}' at offset ${P.offset}:`,O),O}}if(Z?.reduceValue)return Z.reduceValue(z);return z},packList(q,N){if(q.length===0)return new ArrayBuffer(0);let z=new ArrayBuffer(Y*q.length),P=new DataView(z);for(let O=0;O<q.length;O++){let A=q[O];if(Z?.mapValue)A=Z.mapValue(q[O]);for(let I of Q){let w=A[I.name]??I.default;if(!I.optional&&w===void 0)CZ(`Packing non-optional field '${I.name}' at index ${O} but value is undefined (and no default provided)`);if(I.validate)for(let C of I.validate)C(w,I.name,{hints:N?.validationHints,input:A});I.pack(P,O*Y+I.offset,w,A,N)}}return z},unpackList(q,N){if(N===0)return[];let z=Y*N;if(q.byteLength<z)CZ(`Buffer size (${q.byteLength}) is smaller than expected size (${z}) for unpacking ${N} structs.`);let P=new DataView(q),O=[];for(let A=0;A<N;A++){let I=A*Y,w=Z?.default?{...Z.default}:{};for(let C of Q){if(!C.unpack)continue;try{w[C.name]=C.unpack(P,I+C.offset)}catch(T){throw console.error(`Error unpacking field '${C.name}' at index ${A}, offset ${I+C.offset}:`,T),T}}if(Z?.reduceValue)O.push(Z.reduceValue(w));else O.push(w)}return O},describe(){return _}}}var x2=(J)=>J?h(J.buffer):null,k2=(J)=>J?a.fromArray(new Uint16Array(RJ(J,0,8))):void 0,Q9=GJ([["text","char*"],["text_len","u64",{lengthOf:"text"}],["fg","pointer",{optional:!0,packTransform:x2,unpackTransform:k2}],["bg","pointer",{optional:!0,packTransform:x2,unpackTransform:k2}],["attributes","u32",{default:0}],["link","char*",{default:""}],["link_len","u64",{lengthOf:"link"}]],{mapValue:(J)=>{let Z=K7(J.fg??null),$=K7(J.bg??null);if(!J.link||typeof J.link==="string")return{...J,fg:Z?.rgba??null,bg:$?.rgba??null};return{...J,fg:Z?.rgba??null,bg:$?.rgba??null,link:J.link.url}}}),A0=GJ([["start","u32"],["end","u32"],["styleId","u32"],["priority","u8",{default:0}],["hlRef","u16",{default:0}]]),lJ=GJ([["row","u32"],["col","u32"],["offset","u32"]]),CJ=GJ([["visualRow","u32"],["visualCol","u32"],["logicalRow","u32"],["logicalCol","u32"],["offset","u32"]]),L8=d2({wcwidth:0,unicode:1},"u8"),U8=d2({none:0,tmux:1,zellij:2,screen:3,unknown:4},"u8"),j9=GJ([["kitty_keyboard","bool_u8"],["kitty_graphics","bool_u8"],["rgb","bool_u8"],["ansi256","bool_u8"],["unicode",L8],["sgr_pixels","bool_u8"],["color_scheme_updates","bool_u8"],["explicit_width","bool_u8"],["scaled_text","bool_u8"],["sixel","bool_u8"],["focus_tracking","bool_u8"],["sync","bool_u8"],["bracketed_paste","bool_u8"],["hyperlinks","bool_u8"],["osc52","bool_u8"],["notifications","bool_u8"],["explicit_cursor_positioning","bool_u8"],["remote","bool_u8"],["multiplexer",U8],["term_name","char*"],["term_name_len","u64",{lengthOf:"term_name"}],["term_version","char*"],["term_version_len","u64",{lengthOf:"term_version"}],["term_from_xtversion","bool_u8"]]),G9=GJ([["width","u8"],["char","u32"]]),GZ=GJ([["startCols",["u32"]],["startColsLen","u32",{lengthOf:"startCols"}],["widthCols",["u32"]],["widthColsLen","u32",{lengthOf:"widthCols"}],["sources",["u32"]],["sourcesLen","u32",{lengthOf:"sources"}],["wraps",["u32"]],["wrapsLen","u32",{lengthOf:"wraps"}],["widthColsMax","u32"]]),L9=GJ([["lineCount","u32"],["widthColsMax","u32"]]),U9=GJ([["x","u32"],["y","u32"],["visible","bool_u8"],["style","u8"],["blinking","bool_u8"],["r","f32"],["g","f32"],["b","f32"],["a","f32"]]),D8=GJ([["style","u8",{default:255}],["blinking","u8",{default:255}],["color","pointer",{optional:!0,packTransform:x2,unpackTransform:k2}],["cursor","u8",{default:255}]]),Y8=GJ([["drawInner","bool_u8",{default:!0}],["drawOuter","bool_u8",{default:!0}]]),D9=GJ([["gpaSafeStats","bool_u8"],["gpaMemoryLimitTracking","bool_u8"]]),Y9=GJ([["totalRequestedBytes","u64"],["activeAllocations","u64"],["smallAllocations","u64"],["largeAllocations","u64"],["requestedBytesValid","bool_u8"]]),_9=GJ([["lastFrameTime","f64"],["averageFrameTime","f64"],["renderTime","f64"],["stdoutWriteTime","f64"],["frameCount","u64"],["cellsUpdated","u32"],["averageCellsUpdated","u32"],["renderTimeValid","bool_u8"],["stdoutWriteTimeValid","bool_u8"]]),_8=d2({grow:0,block:1},"u8"),W9=GJ([["chunkSize","u32",{default:65536}],["initialChunks","u32",{default:2}],["maxBytes","u64",{default:0n}],["growthPolicy",_8,{default:"grow"}],["autoCommitOnFull","bool_u8",{default:!0}],["spanQueueCapacity","u32",{default:0}]]),X9=GJ([["bytesWritten","u64"],["spansCommitted","u64"],["chunks","u32"],["pendingSpans","u32"]]),N2=GJ([["chunkPtr","pointer"],["offset","u32"],["len","u32"],["chunkIndex","u32"],["reserved","u32",{default:0}]],{reduceValue:(J)=>({chunkPtr:J.chunkPtr,offset:J.offset,len:J.len,chunkIndex:J.chunkIndex})}),A9=GJ([["ptr","pointer"],["len","u32"],["reserved","u32",{default:0}]],{reduceValue:(J)=>({ptr:J.ptr,len:J.len})}),W8=GJ([["sampleRate","u32",{default:48000}],["playbackChannels","u32",{default:2}]]),X8=GJ([["periodSizeInFrames","u32",{default:0}],["periodSizeInMilliseconds","u32",{default:0}],["periods","u32",{default:0}],["performanceProfile","u8",{default:0}],["shareMode","u8",{default:0}],["noPreSilencedOutputBuffer","bool_u8",{default:!1}],["noClip","bool_u8",{default:!1}],["noDisableDenormals","bool_u8",{default:!1}],["noFixedSizedCallback","bool_u8",{default:!1}],["wasapiNoAutoConvertSrc","bool_u8",{default:!1}],["wasapiNoDefaultQualitySrc","bool_u8",{default:!1}],["alsaNoMMap","bool_u8",{default:!1}],["alsaNoAutoFormat","bool_u8",{default:!1}],["alsaNoAutoChannels","bool_u8",{default:!1}],["alsaNoAutoResample","bool_u8",{default:!1}]]),A8=GJ([["volume","f32",{default:1}],["pan","f32",{default:0}],["loop","bool_u8",{default:!1}],["groupId","u32",{default:0}]]),N9=GJ([["soundsLoaded","u32"],["voicesActive","u32"],["framesMixed","u64"],["lockMisses","u32"],["lastPeak","f32"],["lastRms","f32"]]);DJ({name:"OPENTUI_LIBC",description:"Select Linux native libc package. Supported values: glibc, musl.",type:"string",default:""});function N8(){let J=process.env.OPENTUI_LIBC;if(J===void 0||J===""||J==="glibc"||J==="musl")return;throw Error(`On Linux, OPENTUI_LIBC must be unset, empty, "glibc", or "musl", got "${J}"`)}async function V8(){if(process.platform==="darwin"){if(process.arch==="x64")return await import("./chunk-8yn64y27.js");if(process.arch==="arm64")return await import("./chunk-qagc6v17.js")}if(process.platform==="linux"){if(N8(),process.arch==="x64")if(process.env.OPENTUI_LIBC==="musl")return await import("./chunk-zgre4gc2.js");else return await import("./chunk-n14qktbg.js");if(process.arch==="arm64")if(process.env.OPENTUI_LIBC==="musl")return await import("./chunk-hhjkezfz.js");else return await import("./chunk-0jrgk6vk.js")}if(process.platform==="win32"){if(process.arch==="x64")return await import("./chunk-xxj3sgd5.js");if(process.arch==="arm64")return await import("./chunk-zthkjx33.js")}{const __qlib=process.env.QITQODE_OTUI_LIB;if(__qlib)return{default:__qlib};throw Error(`opentui is not supported on the current platform: ${process.platform}-${process.arch}`)}}var O8=await V8(),dZ=O8.default;if(o9(dZ))dZ=dZ.replace("../","");if(!d6(dZ))throw Error(`opentui is not supported on the current platform: ${process.platform}-${process.arch}`);DJ({name:"OTUI_DEBUG_FFI",description:"Enable debug logging for the FFI bindings.",type:"boolean",default:!1});DJ({name:"OTUI_TRACE_FFI",description:"Enable tracing for the FFI bindings.",type:"boolean",default:!1});DJ({name:"OPENTUI_FORCE_WCWIDTH",description:"Use wcwidth for character width calculations",type:"boolean",default:!1});DJ({name:"OPENTUI_FORCE_UNICODE",description:"Force Mode 2026 Unicode support in terminal capabilities",type:"boolean",default:!1});DJ({name:"OPENTUI_GRAPHICS",description:"Enable Kitty graphics protocol detection",type:"boolean",default:!0});DJ({name:"OPENTUI_FORCE_NOZWJ",description:"Use no_zwj width method (Unicode without ZWJ joining)",type:"boolean",default:!1});var z8={block:0,line:1,underline:2,default:3},q8=["block","line","underline","default"],P8={default:0,pointer:1,text:2,crosshair:3,move:4,"not-allowed":5},AZ=null,N0=null,V9=!1;function NZ(J){return typeof J==="bigint"?Number(J):J}function LJ(J){return h(J.buffer)}function $J(J){return J?LJ(J):null}function I8(J){let $=m6(J||dZ,{setLogCallback:{args:["ptr"],returns:"void"},createEventSink:{args:["ptr"],returns:"u32"},destroyEventSink:{args:["u32"],returns:"void"},createRenderer:{args:["u32","u32","u8","u8","ptr"],returns:"u32"},setTerminalEnvVar:{args:["u32","ptr","usize","ptr","usize"],returns:"bool"},destroyRenderer:{args:["u32"],returns:"void"},setUseThread:{args:["u32","bool"],returns:"void"},setClearOnShutdown:{args:["u32","bool"],returns:"void"},setBackgroundColor:{args:["u32","ptr"],returns:"void"},setRenderOffset:{args:["u32","u32"],returns:"void"},resetSplitScrollback:{args:["u32","u32","u32"],returns:"u32"},syncSplitScrollback:{args:["u32","u32"],returns:"u32"},getSplitOutputOffset:{args:["u32","u32"],returns:"u32"},setPendingSplitFooterTransition:{args:["u32","u8","u32","u32","u32","u32","u32"],returns:"void"},clearPendingSplitFooterTransition:{args:["u32"],returns:"void"},updateStats:{args:["u32","f64","u32","f64"],returns:"void"},updateMemoryStats:{args:["u32","u32","u32","u32"],returns:"void"},getRenderStats:{args:["u32","ptr"],returns:"void"},render:{args:["u32","bool"],returns:"u8"},repaintSplitFooter:{args:["u32","u32","bool"],returns:"u64"},commitSplitFooterSnapshot:{args:["u32","u32","u32","bool","bool","u32","bool","bool","bool"],returns:"u64"},getNextBuffer:{args:["u32"],returns:"u32"},getCurrentBuffer:{args:["u32"],returns:"u32"},rendererSetPaletteState:{args:["u32","ptr","usize","ptr","ptr","u32"],returns:"void"},queryPixelResolution:{args:["u32"],returns:"void"},queryThemeColors:{args:["u32"],returns:"void"},createOptimizedBuffer:{args:["u32","u32","bool","u8","ptr","usize"],returns:"u32"},destroyOptimizedBuffer:{args:["u32"],returns:"void"},drawFrameBuffer:{args:["u32","i32","i32","u32","u32","u32","u32","u32"],returns:"void"},getBufferWidth:{args:["u32"],returns:"u32"},getBufferHeight:{args:["u32"],returns:"u32"},bufferClear:{args:["u32","ptr"],returns:"void"},bufferGetCharPtr:{args:["u32"],returns:"ptr"},bufferGetFgPtr:{args:["u32"],returns:"ptr"},bufferGetBgPtr:{args:["u32"],returns:"ptr"},bufferGetAttributesPtr:{args:["u32"],returns:"ptr"},bufferGetRespectAlpha:{args:["u32"],returns:"bool"},bufferSetRespectAlpha:{args:["u32","bool"],returns:"void"},bufferGetId:{args:["u32","ptr","usize"],returns:"usize"},bufferGetRealCharSize:{args:["u32"],returns:"u32"},bufferWriteResolvedChars:{args:["u32","ptr","usize","bool"],returns:"u32"},bufferDrawText:{args:["u32","ptr","u32","u32","u32","ptr","ptr","u32"],returns:"void"},bufferSetCellWithAlphaBlending:{args:["u32","u32","u32","u32","ptr","ptr","u32"],returns:"void"},bufferSetCell:{args:["u32","u32","u32","u32","ptr","ptr","u32"],returns:"void"},bufferFillRect:{args:["u32","u32","u32","u32","u32","ptr"],returns:"void"},bufferColorMatrix:{args:["u32","ptr","ptr","usize","f32","u8"],returns:"void"},bufferColorMatrixUniform:{args:["u32","ptr","f32","u8"],returns:"void"},bufferResize:{args:["u32","u32","u32"],returns:"void"},linkAlloc:{args:["ptr","u32"],returns:"u32"},linkGetUrl:{args:["u32","ptr","u32"],returns:"u32"},attributesWithLink:{args:["u32","u32"],returns:"u32"},attributesGetLinkId:{args:["u32"],returns:"u32"},resizeRenderer:{args:["u32","u32","u32"],returns:"void"},setCursorPosition:{args:["u32","i32","i32","bool"],returns:"void"},setCursorColor:{args:["u32","ptr"],returns:"void"},getCursorState:{args:["u32","ptr"],returns:"void"},setCursorStyleOptions:{args:["u32","ptr"],returns:"void"},setDebugOverlay:{args:["u32","bool","u8"],returns:"void"},clearTerminal:{args:["u32"],returns:"void"},setTerminalTitle:{args:["u32","ptr","usize"],returns:"void"},copyToClipboardOSC52:{args:["u32","u8","ptr","usize"],returns:"bool"},clearClipboardOSC52:{args:["u32","u8"],returns:"bool"},triggerNotification:{args:["u32","ptr","usize","ptr","usize"],returns:"bool"},bufferDrawSuperSampleBuffer:{args:["u32","u32","u32","ptr","usize","u8","u32"],returns:"void"},bufferDrawPackedBuffer:{args:["u32","ptr","usize","u32","u32","u32","u32"],returns:"void"},bufferDrawGrayscaleBuffer:{args:["u32","i32","i32","ptr","u32","u32","ptr","ptr"],returns:"void"},bufferDrawGrayscaleBufferSupersampled:{args:["u32","i32","i32","ptr","u32","u32","ptr","ptr"],returns:"void"},bufferDrawGrid:{args:["u32","ptr","ptr","ptr","ptr","u32","ptr","u32","ptr"],returns:"void"},bufferDrawBox:{args:["u32","i32","i32","u32","u32","ptr","u32","ptr","ptr","ptr","ptr","u32","ptr","u32"],returns:"void"},bufferPushScissorRect:{args:["u32","i32","i32","u32","u32"],returns:"void"},bufferPopScissorRect:{args:["u32"],returns:"void"},bufferClearScissorRects:{args:["u32"],returns:"void"},bufferPushOpacity:{args:["u32","f32"],returns:"void"},bufferPopOpacity:{args:["u32"],returns:"void"},bufferGetCurrentOpacity:{args:["u32"],returns:"f32"},bufferClearOpacity:{args:["u32"],returns:"void"},addToHitGrid:{args:["u32","i32","i32","u32","u32","u32"],returns:"void"},clearCurrentHitGrid:{args:["u32"],returns:"void"},hitGridPushScissorRect:{args:["u32","i32","i32","u32","u32"],returns:"void"},hitGridPopScissorRect:{args:["u32"],returns:"void"},hitGridClearScissorRects:{args:["u32"],returns:"void"},addToCurrentHitGridClipped:{args:["u32","i32","i32","u32","u32","u32"],returns:"void"},checkHit:{args:["u32","u32","u32"],returns:"u32"},getHitGridDirty:{args:["u32"],returns:"bool"},dumpHitGrid:{args:["u32"],returns:"void"},dumpBuffers:{args:["u32","i64"],returns:"void"},dumpOutputBuffer:{args:["u32","i64"],returns:"void"},restoreTerminalModes:{args:["u32"],returns:"void"},enableMouse:{args:["u32","bool"],returns:"void"},disableMouse:{args:["u32"],returns:"void"},enableKittyKeyboard:{args:["u32","u8"],returns:"void"},disableKittyKeyboard:{args:["u32"],returns:"void"},setKittyKeyboardFlags:{args:["u32","u8"],returns:"void"},getKittyKeyboardFlags:{args:["u32"],returns:"u8"},setupTerminal:{args:["u32","bool"],returns:"void"},suspendRenderer:{args:["u32"],returns:"void"},resumeRenderer:{args:["u32"],returns:"void"},writeOut:{args:["u32","ptr","u64"],returns:"void"},createTextBuffer:{args:["u8"],returns:"u32"},destroyTextBuffer:{args:["u32"],returns:"void"},textBufferGetLength:{args:["u32"],returns:"u32"},textBufferGetByteSize:{args:["u32"],returns:"u32"},textBufferReset:{args:["u32"],returns:"void"},textBufferClear:{args:["u32"],returns:"void"},textBufferSetDefaultFg:{args:["u32","ptr"],returns:"void"},textBufferSetDefaultBg:{args:["u32","ptr"],returns:"void"},textBufferSetDefaultAttributes:{args:["u32","ptr"],returns:"void"},textBufferResetDefaults:{args:["u32"],returns:"void"},textBufferGetTabWidth:{args:["u32"],returns:"u8"},textBufferSetTabWidth:{args:["u32","u8"],returns:"void"},textBufferRegisterMemBuffer:{args:["u32","ptr","usize","bool"],returns:"u16"},textBufferReplaceMemBuffer:{args:["u32","u8","ptr","usize","bool"],returns:"bool"},textBufferClearMemRegistry:{args:["u32"],returns:"void"},textBufferSetTextFromMem:{args:["u32","u8"],returns:"void"},textBufferAppend:{args:["u32","ptr","usize"],returns:"void"},textBufferAppendFromMemId:{args:["u32","u8"],returns:"void"},textBufferLoadFile:{args:["u32","ptr","usize"],returns:"bool"},textBufferSetStyledText:{args:["u32","ptr","usize"],returns:"void"},textBufferGetLineCount:{args:["u32"],returns:"u32"},textBufferGetPlainText:{args:["u32","ptr","usize"],returns:"usize"},textBufferAddHighlightByCharRange:{args:["u32","ptr"],returns:"void"},textBufferAddHighlight:{args:["u32","u32","ptr"],returns:"void"},textBufferRemoveHighlightsByRef:{args:["u32","u16"],returns:"void"},textBufferClearLineHighlights:{args:["u32","u32"],returns:"void"},textBufferClearAllHighlights:{args:["u32"],returns:"void"},textBufferSetSyntaxStyle:{args:["u32","u32"],returns:"void"},textBufferGetLineHighlightsPtr:{args:["u32","u32","ptr"],returns:"ptr"},textBufferFreeLineHighlights:{args:["ptr","usize"],returns:"void"},textBufferGetHighlightCount:{args:["u32"],returns:"u32"},textBufferGetTextRange:{args:["u32","u32","u32","ptr","usize"],returns:"usize"},textBufferGetTextRangeByCoords:{args:["u32","u32","u32","u32","u32","ptr","usize"],returns:"usize"},createTextBufferView:{args:["u32"],returns:"u32"},destroyTextBufferView:{args:["u32"],returns:"void"},textBufferViewSetSelection:{args:["u32","u32","u32","ptr","ptr"],returns:"void"},textBufferViewResetSelection:{args:["u32"],returns:"void"},textBufferViewGetSelectionInfo:{args:["u32"],returns:"u64"},textBufferViewSetLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr"],returns:"bool"},textBufferViewUpdateSelection:{args:["u32","u32","ptr","ptr"],returns:"void"},textBufferViewUpdateLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr"],returns:"bool"},textBufferViewResetLocalSelection:{args:["u32"],returns:"void"},textBufferViewSetWrapWidth:{args:["u32","u32"],returns:"void"},textBufferViewSetWrapMode:{args:["u32","u8"],returns:"void"},textBufferViewSetFirstLineOffset:{args:["u32","u32"],returns:"void"},textBufferViewSetViewportSize:{args:["u32","u32","u32"],returns:"void"},textBufferViewSetViewport:{args:["u32","u32","u32","u32","u32"],returns:"void"},textBufferViewGetVirtualLineCount:{args:["u32"],returns:"u32"},textBufferViewGetLineInfoDirect:{args:["u32","ptr"],returns:"void"},textBufferViewGetLogicalLineInfoDirect:{args:["u32","ptr"],returns:"void"},textBufferViewGetSelectedText:{args:["u32","ptr","usize"],returns:"usize"},textBufferViewGetPlainText:{args:["u32","ptr","usize"],returns:"usize"},textBufferViewSetTabIndicator:{args:["u32","u32"],returns:"void"},textBufferViewSetTabIndicatorColor:{args:["u32","ptr"],returns:"void"},textBufferViewSetTruncate:{args:["u32","bool"],returns:"void"},textBufferViewMeasureForDimensions:{args:["u32","u32","u32","ptr"],returns:"bool"},bufferDrawTextBufferView:{args:["u32","u32","i32","i32"],returns:"void"},bufferDrawEditorView:{args:["u32","u32","i32","i32"],returns:"void"},createEditorView:{args:["u32","u32","u32"],returns:"u32"},destroyEditorView:{args:["u32"],returns:"void"},editorViewSetViewportSize:{args:["u32","u32","u32"],returns:"void"},editorViewSetViewport:{args:["u32","u32","u32","u32","u32","bool"],returns:"void"},editorViewGetViewport:{args:["u32","ptr","ptr","ptr","ptr"],returns:"void"},editorViewSetScrollMargin:{args:["u32","f32"],returns:"void"},editorViewSetWrapMode:{args:["u32","u8"],returns:"void"},editorViewGetVirtualLineCount:{args:["u32"],returns:"u32"},editorViewGetTotalVirtualLineCount:{args:["u32"],returns:"u32"},editorViewGetTextBufferView:{args:["u32"],returns:"u32"},editorViewGetLineInfoDirect:{args:["u32","ptr"],returns:"void"},editorViewGetLogicalLineInfoDirect:{args:["u32","ptr"],returns:"void"},createEditBuffer:{args:["u8","u32"],returns:"u32"},destroyEditBuffer:{args:["u32"],returns:"void"},editBufferSetText:{args:["u32","ptr","usize"],returns:"void"},editBufferSetTextFromMem:{args:["u32","u8"],returns:"void"},editBufferReplaceText:{args:["u32","ptr","usize"],returns:"void"},editBufferReplaceTextFromMem:{args:["u32","u8"],returns:"void"},editBufferGetText:{args:["u32","ptr","usize"],returns:"usize"},editBufferInsertChar:{args:["u32","ptr","usize"],returns:"void"},editBufferInsertText:{args:["u32","ptr","usize"],returns:"void"},editBufferDeleteChar:{args:["u32"],returns:"void"},editBufferDeleteCharBackward:{args:["u32"],returns:"void"},editBufferDeleteRange:{args:["u32","u32","u32","u32","u32"],returns:"void"},editBufferNewLine:{args:["u32"],returns:"void"},editBufferDeleteLine:{args:["u32"],returns:"void"},editBufferMoveCursorLeft:{args:["u32"],returns:"void"},editBufferMoveCursorRight:{args:["u32"],returns:"void"},editBufferMoveCursorUp:{args:["u32"],returns:"void"},editBufferMoveCursorDown:{args:["u32"],returns:"void"},editBufferGotoLine:{args:["u32","u32"],returns:"void"},editBufferSetCursor:{args:["u32","u32","u32"],returns:"void"},editBufferSetCursorToLineCol:{args:["u32","u32","u32"],returns:"void"},editBufferSetCursorByOffset:{args:["u32","u32"],returns:"void"},editBufferGetCursorPosition:{args:["u32","ptr"],returns:"void"},editBufferGetId:{args:["u32"],returns:"u16"},editBufferGetTextBuffer:{args:["u32"],returns:"u32"},editBufferDebugLogRope:{args:["u32"],returns:"void"},editBufferUndo:{args:["u32","ptr","usize"],returns:"usize"},editBufferRedo:{args:["u32","ptr","usize"],returns:"usize"},editBufferCanUndo:{args:["u32"],returns:"bool"},editBufferCanRedo:{args:["u32"],returns:"bool"},editBufferClearHistory:{args:["u32"],returns:"void"},editBufferClear:{args:["u32"],returns:"void"},editBufferGetNextWordBoundary:{args:["u32","ptr"],returns:"void"},editBufferGetPrevWordBoundary:{args:["u32","ptr"],returns:"void"},editBufferGetEOL:{args:["u32","ptr"],returns:"void"},editBufferOffsetToPosition:{args:["u32","u32","ptr"],returns:"bool"},editBufferPositionToOffset:{args:["u32","u32","u32"],returns:"u32"},editBufferGetLineStartOffset:{args:["u32","u32"],returns:"u32"},editBufferGetTextRange:{args:["u32","u32","u32","ptr","usize"],returns:"usize"},editBufferGetTextRangeByCoords:{args:["u32","u32","u32","u32","u32","ptr","usize"],returns:"usize"},editorViewSetSelection:{args:["u32","u32","u32","ptr","ptr"],returns:"void"},editorViewResetSelection:{args:["u32"],returns:"void"},editorViewGetSelection:{args:["u32"],returns:"u64"},editorViewSetLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr","bool","bool"],returns:"bool"},editorViewUpdateSelection:{args:["u32","u32","ptr","ptr"],returns:"void"},editorViewUpdateLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr","bool","bool"],returns:"bool"},editorViewResetLocalSelection:{args:["u32"],returns:"void"},editorViewGetSelectedTextBytes:{args:["u32","ptr","usize"],returns:"usize"},editorViewGetCursor:{args:["u32","ptr","ptr"],returns:"void"},editorViewGetText:{args:["u32","ptr","usize"],returns:"usize"},editorViewGetVisualCursor:{args:["u32","ptr"],returns:"void"},editorViewMoveUpVisual:{args:["u32"],returns:"void"},editorViewMoveDownVisual:{args:["u32"],returns:"void"},editorViewDeleteSelectedText:{args:["u32"],returns:"void"},editorViewSetCursorByOffset:{args:["u32","u32"],returns:"void"},editorViewGetNextWordBoundary:{args:["u32","ptr"],returns:"void"},editorViewGetPrevWordBoundary:{args:["u32","ptr"],returns:"void"},editorViewGetEOL:{args:["u32","ptr"],returns:"void"},editorViewGetVisualSOL:{args:["u32","ptr"],returns:"void"},editorViewGetVisualEOL:{args:["u32","ptr"],returns:"void"},editorViewSetPlaceholderStyledText:{args:["u32","ptr","usize"],returns:"void"},editorViewSetTabIndicator:{args:["u32","u32"],returns:"void"},editorViewSetTabIndicatorColor:{args:["u32","ptr"],returns:"void"},getArenaAllocatedBytes:{args:[],returns:"usize"},getBuildOptions:{args:["ptr"],returns:"void"},getAllocatorStats:{args:["ptr"],returns:"void"},createSyntaxStyle:{args:[],returns:"u32"},destroySyntaxStyle:{args:["u32"],returns:"void"},syntaxStyleRegister:{args:["u32","ptr","usize","ptr","ptr","u32"],returns:"u32"},syntaxStyleResolveByName:{args:["u32","ptr","usize"],returns:"u32"},syntaxStyleGetStyleCount:{args:["u32"],returns:"usize"},getTerminalCapabilities:{args:["u32","ptr"],returns:"void"},processCapabilityResponse:{args:["u32","ptr","usize"],returns:"void"},encodeUnicode:{args:["ptr","usize","ptr","ptr","u8"],returns:"bool"},freeUnicode:{args:["ptr","usize"],returns:"void"},bufferDrawChar:{args:["u32","u32","u32","u32","ptr","ptr","u32"],returns:"void"},createAudioEngine:{args:["ptr"],returns:"u32"},destroyAudioEngine:{args:["u32"],returns:"void"},audioRefreshPlaybackDevices:{args:["u32"],returns:"i32"},audioGetPlaybackDeviceCount:{args:["u32"],returns:"u32"},audioGetPlaybackDeviceName:{args:["u32","u32","ptr","usize"],returns:"usize"},audioIsPlaybackDeviceDefault:{args:["u32","u32"],returns:"bool"},audioSelectPlaybackDevice:{args:["u32","u32"],returns:"i32"},audioClearPlaybackDeviceSelection:{args:["u32"],returns:"void"},audioStart:{args:["u32","ptr"],returns:"i32"},audioStartMixer:{args:["u32"],returns:"i32"},audioStop:{args:["u32"],returns:"i32"},audioLoad:{args:["u32","ptr","u64","ptr"],returns:"i32"},audioUnload:{args:["u32","u32"],returns:"i32"},audioPlay:{args:["u32","u32","ptr","ptr"],returns:"i32"},audioStopVoice:{args:["u32","u32"],returns:"i32"},audioSetVoiceGroup:{args:["u32","u32","u32"],returns:"i32"},audioCreateGroup:{args:["u32","ptr","u64","ptr"],returns:"i32"},audioSetGroupVolume:{args:["u32","u32","f32"],returns:"i32"},audioSetMasterVolume:{args:["u32","f32"],returns:"i32"},audioMixToBuffer:{args:["u32","ptr","u32","u8"],returns:"i32"},audioEnableTap:{args:["u32","bool","u32"],returns:"i32"},audioReadTap:{args:["u32","ptr","u32","u8","ptr"],returns:"i32"},audioGetStats:{args:["u32","ptr"],returns:"i32"},createNativeSpanFeed:{args:["ptr"],returns:"ptr"},attachNativeSpanFeed:{args:["ptr"],returns:"i32"},destroyNativeSpanFeed:{args:["ptr"],returns:"void"},streamWrite:{args:["ptr","ptr","u64"],returns:"i32"},streamCommit:{args:["ptr"],returns:"i32"},streamDrainSpans:{args:["ptr","ptr","u32"],returns:"u32"},streamClose:{args:["ptr"],returns:"i32"},streamReserve:{args:["ptr","u32","ptr"],returns:"i32"},streamCommitReserved:{args:["ptr","u32"],returns:"i32"},streamSetOptions:{args:["ptr","ptr"],returns:"i32"},streamGetStats:{args:["ptr","ptr"],returns:"i32"},streamSetCallback:{args:["ptr","ptr"],returns:"void"}});if(QJ.OTUI_DEBUG_FFI||QJ.OTUI_TRACE_FFI)return{...$,symbols:B8($.symbols)};return $}function B8(J){if(!AZ)AZ={};if(QJ.OTUI_DEBUG_FFI&&!N0)N0=`ffi_otui_debug_${new Date().toISOString().replace(/[:.]/g,"-").replace(/T/,"_").split("Z")[0]}.log`;let Z={},$=!1;if(Object.entries(J).forEach(([H,Q])=>{Z[H]=Q}),QJ.OTUI_DEBUG_FFI&&N0){let H=N0,Q=(j)=>{a6(H,j+`
39
+ `);for(let _=0;_<this._height;_++){let W=[],K=null,q=[...Y[_]||""],N=0;for(let z=0;z<this._width;z++){let P=_*this._width+z,O=J[P],A=a.fromArray(Z.slice(P*4,P*4+4)),I=a.fromArray($.slice(P*4,P*4+4)),w=H[P]&255,T=(O&G)===j?"":q[N++]??" ";if(K&&K.fg.equals(A)&&K.bg.equals(I)&&K.attributes===w)K.text+=T,K.width+=1;else{if(K)W.push(K);K={text:T,fg:A,bg:I,attributes:w,width:1}}}if(K)W.push(K);Q.push({spans:W})}return Q}clear(J=a.fromValues(0,0,0,1)){this.guard(),this.lib.bufferClear(this.bufferPtr,J)}setCell(J,Z,$,H,Q,j=0){this.guard(),this.lib.bufferSetCell(this.bufferPtr,J,Z,$,H,Q,j)}setCellWithAlphaBlending(J,Z,$,H,Q,j=0){this.guard(),this.lib.bufferSetCellWithAlphaBlending(this.bufferPtr,J,Z,$,H,Q,j)}drawText(J,Z,$,H,Q,j=0,G){if(this.guard(),!G){this.lib.bufferDrawText(this.bufferPtr,J,Z,$,H,Q,j);return}let{start:L,end:Y}=G,_,W;if(G.bgColor)_=G.bgColor,W=G.fgColor||H;else{let K=Q||a.fromValues(0,0,0,0);W=K.a>0?K:a.fromValues(0,0,0,1),_=H}if(L>0){let K=J.slice(0,L);this.lib.bufferDrawText(this.bufferPtr,K,Z,$,H,Q,j)}if(Y>L){let K=J.slice(L,Y);this.lib.bufferDrawText(this.bufferPtr,K,Z+L,$,W,_,j)}if(Y<J.length){let K=J.slice(Y);this.lib.bufferDrawText(this.bufferPtr,K,Z+Y,$,H,Q,j)}}fillRect(J,Z,$,H,Q){this.guard(),this.lib.bufferFillRect(this.bufferPtr,J,Z,$,H,Q)}colorMatrix(J,Z,$=1,H=3){if(this.guard(),J.length!==16)throw RangeError(`colorMatrix matrix must have length 16, got ${J.length}`);let Q=Math.floor(Z.length/3);this.lib.bufferColorMatrix(this.bufferPtr,h(J),h(Z),Q,$,H)}colorMatrixUniform(J,Z=1,$=3){if(this.guard(),J.length!==16)throw RangeError(`colorMatrixUniform matrix must have length 16, got ${J.length}`);if(Z===0)return;this.lib.bufferColorMatrixUniform(this.bufferPtr,h(J),Z,$)}drawFrameBuffer(J,Z,$,H,Q,j,G){this.guard(),this.lib.drawFrameBuffer(this.bufferPtr,J,Z,$.ptr,H,Q,j,G)}destroy(){if(this._destroyed)return;this._destroyed=!0,this._rawBuffers=null,this.lib.destroyOptimizedBuffer(this.bufferPtr)}drawTextBuffer(J,Z,$){this.guard(),this.lib.bufferDrawTextBufferView(this.bufferPtr,J.ptr,Z,$)}drawEditorView(J,Z,$){this.guard(),this.lib.bufferDrawEditorView(this.bufferPtr,J.ptr,Z,$)}drawSuperSampleBuffer(J,Z,$,H,Q,j){this.guard(),this.lib.bufferDrawSuperSampleBuffer(this.bufferPtr,J,Z,C2($),H,Q,j)}drawPackedBuffer(J,Z,$,H,Q,j){this.guard(),this.lib.bufferDrawPackedBuffer(this.bufferPtr,C2(J),Z,$,H,Q,j)}drawGrayscaleBuffer(J,Z,$,H,Q,j=null,G=null){this.guard(),this.lib.bufferDrawGrayscaleBuffer(this.bufferPtr,J,Z,h($),H,Q,j,G)}drawGrayscaleBufferSupersampled(J,Z,$,H,Q,j=null,G=null){this.guard(),this.lib.bufferDrawGrayscaleBufferSupersampled(this.bufferPtr,J,Z,h($),H,Q,j,G)}resize(J,Z){if(this.guard(),this._width===J&&this._height===Z)return;this._width=J,this._height=Z,this._rawBuffers=null,this.lib.bufferResize(this.bufferPtr,J,Z)}drawBox(J){this.guard();let Z=F2(J.borderStyle,"single"),$=J.customBorderChars??I1[Z],H=n6(J.border,J.shouldFill??!1,J.titleAlignment||"left",J.bottomTitleAlignment||"left");this.lib.bufferDrawBox(this.bufferPtr,J.x,J.y,J.width,J.height,$,H,J.borderColor,J.backgroundColor,J.titleColor??J.borderColor,J.title??null,J.bottomTitle??null)}pushScissorRect(J,Z,$,H){this.guard(),this.lib.bufferPushScissorRect(this.bufferPtr,J,Z,$,H)}popScissorRect(){this.guard(),this.lib.bufferPopScissorRect(this.bufferPtr)}clearScissorRects(){this.guard(),this.lib.bufferClearScissorRects(this.bufferPtr)}pushOpacity(J){this.guard(),this.lib.bufferPushOpacity(this.bufferPtr,Math.max(0,Math.min(1,J)))}popOpacity(){this.guard(),this.lib.bufferPopOpacity(this.bufferPtr)}getCurrentOpacity(){return this.guard(),this.lib.bufferGetCurrentOpacity(this.bufferPtr)}clearOpacity(){this.guard(),this.lib.bufferClearOpacity(this.bufferPtr)}encodeUnicode(J){return this.guard(),this.lib.encodeUnicode(J,this._widthMethod)}freeUnicode(J){this.guard(),this.lib.freeUnicode(J)}drawGrid(J){this.guard();let Z=Math.max(0,J.columnOffsets.length-1),$=Math.max(0,J.rowOffsets.length-1);this.lib.bufferDrawGrid(this.bufferPtr,J.borderChars,J.borderFg,J.borderBg,J.columnOffsets,Z,J.rowOffsets,$,{drawInner:J.drawInner,drawOuter:J.drawOuter})}drawChar(J,Z,$,H,Q,j=0){this.guard(),this.lib.bufferDrawChar(this.bufferPtr,J,Z,$,H,Q,j)}}var s6="bun-ffi-structs requires Bun or Node.js with node:ffi enabled (--experimental-ffi --allow-ffi).",A$=await o6();async function o6(){if(typeof process<"u"&&"bun"in process.versions)return t6(await t7("bun:ffi"));try{return r6(await t7("node:ffi"))}catch(J){throw Error(s6,{cause:J instanceof Error?J:void 0})}}function t7(J){return import(J).then((Z)=>Z.default??Z)}function t6(J){return{ptr:J.ptr,toArrayBuffer(Z,$,H){return J.toArrayBuffer(J8(Z),$,H)}}}function r6(J){return{ptr(Z){if(ArrayBuffer.isView(Z))return J.getRawPointer(Z.buffer)+BigInt(Z.byteOffset);if(Z instanceof ArrayBuffer)return J.getRawPointer(Z);throw TypeError("node:ffi ptr() only supports ArrayBuffer and ArrayBufferView values.")},toArrayBuffer(Z,$,H){return J.toArrayBuffer(e6(Z)+BigInt($??0),H,!1)}}}function e6(J){return typeof J==="bigint"?J:BigInt(J)}function J8(J){return typeof J==="bigint"?Number(J):J}var{ptr:XZ,toArrayBuffer:W2}=A$;function CZ(...J){let Z=J.join(" ");throw console.error("FATAL ERROR:",Z),Error(Z)}var NJ=process.arch==="x64"||process.arch==="arm64"?8:4,Z8=typeof process<"u"&&"bun"in process.versions,OZ={u8:1,bool_u8:1,bool_u32:4,u16:2,i16:2,u32:4,u64:8,f32:4,f64:8,pointer:NJ,i32:4,i64:8},$8=Object.keys(OZ);function X0(J){return typeof J==="string"&&$8.includes(J)}var r7={...OZ},H8={u8:(J,Z)=>J.getUint8(Z),bool_u8:(J,Z)=>Boolean(J.getUint8(Z)),bool_u32:(J,Z)=>Boolean(J.getUint32(Z,!0)),u16:(J,Z)=>J.getUint16(Z,!0),i16:(J,Z)=>J.getInt16(Z,!0),u32:(J,Z)=>J.getUint32(Z,!0),u64:(J,Z)=>J.getBigUint64(Z,!0),f32:(J,Z)=>J.getFloat32(Z,!0),f64:(J,Z)=>J.getFloat64(Z,!0),i32:(J,Z)=>J.getInt32(Z,!0),i64:(J,Z)=>J.getBigInt64(Z,!0),pointer:(J,Z)=>NJ===8?J.getBigUint64(Z,!0):BigInt(J.getUint32(Z,!0))};function e7(J){return typeof J==="object"&&J!==null&&J.__type==="objectPointer"}function J9(J,Z){return J+(Z-1)&~(Z-1)}function Z9(J){throw TypeError(`Invalid enum value: ${J}`)}function d2(J,Z="u32"){let $=Object.fromEntries(Object.entries(J).map(([H,Q])=>[Q,H]));return{__type:"enum",type:Z,to(H){return typeof H==="number"?H:J[H]??Z9(String(H))},from(H){return $[H]??Z9(String(H))},enum:J}}function $9(J){return typeof J==="object"&&J.__type==="enum"}function X2(J){return typeof J==="object"&&J.__type==="struct"}function MZ(J){let Z,$;switch(J){case"u8":Z=(H,Q,j)=>H.setUint8(Q,j),$=(H,Q)=>H.getUint8(Q);break;case"bool_u8":Z=(H,Q,j)=>H.setUint8(Q,j?1:0),$=(H,Q)=>Boolean(H.getUint8(Q));break;case"bool_u32":Z=(H,Q,j)=>H.setUint32(Q,j?1:0,!0),$=(H,Q)=>Boolean(H.getUint32(Q,!0));break;case"u16":Z=(H,Q,j)=>H.setUint16(Q,j,!0),$=(H,Q)=>H.getUint16(Q,!0);break;case"i16":Z=(H,Q,j)=>H.setInt16(Q,j,!0),$=(H,Q)=>H.getInt16(Q,!0);break;case"u32":Z=(H,Q,j)=>H.setUint32(Q,j,!0),$=(H,Q)=>H.getUint32(Q,!0);break;case"i32":Z=(H,Q,j)=>H.setInt32(Q,j,!0),$=(H,Q)=>H.getInt32(Q,!0);break;case"i64":Z=(H,Q,j)=>H.setBigInt64(Q,BigInt(j),!0),$=(H,Q)=>H.getBigInt64(Q,!0);break;case"u64":Z=(H,Q,j)=>H.setBigUint64(Q,BigInt(j),!0),$=(H,Q)=>H.getBigUint64(Q,!0);break;case"f32":Z=(H,Q,j)=>H.setFloat32(Q,j,!0),$=(H,Q)=>H.getFloat32(Q,!0);break;case"f64":Z=(H,Q,j)=>H.setFloat64(Q,j,!0),$=(H,Q)=>H.getFloat64(Q,!0);break;case"pointer":Z=(H,Q,j)=>{NJ===8?H.setBigUint64(Q,j?BigInt(j):0n,!0):H.setUint32(Q,j?Number(j):0,!0)},$=(H,Q)=>{if(NJ===8){let j=H.getBigUint64(Q,!0);return Z8?Number(j):j}return H.getUint32(Q,!0)};break;default:CZ(`Unsupported primitive type: ${J}`)}return{pack:Z,unpack:$}}var{pack:XJ,unpack:RZ}=MZ("pointer"),M2=new WeakMap;function DZ(J,Z){let $=M2.get(J);if($)$.push(Z);else M2.set(J,[Z])}function Q8(J,Z){if(M2.has(Z))DZ(J,Z)}function lZ(J){return J==null||J===0||J===0n}function A2(J){return typeof J==="bigint"?Number(J):J}function j8(J){let Z=new ArrayBuffer(J.length*NJ),$=new DataView(Z);for(let H=0;H<J.length;H++){let j=J[H]?.ptr??null;XJ($,H*NJ,j)}return $}var H9=new TextEncoder,G8=new TextDecoder;function GJ(J,Z){let $=0,H=1,Q=[],j={},G=[],L={};for(let[q,N,z={}]of J){if(z.condition&&!z.condition())continue;let P=0,O=0,A,I,w=!1,C=null;if(X0(N))P=OZ[N],O=r7[N],{pack:A,unpack:I}=MZ(N);else if(typeof N==="string"&&N==="cstring")P=NJ,O=NJ,A=(F,R,f)=>{if(!f){XJ(F,R,null);return}let c=H9.encode(f+"\x00"),u=XZ(c);XJ(F,R,u),DZ(F.buffer,c)},I=(F,R)=>{return RZ(F,R)};else if(typeof N==="string"&&N==="char*")P=NJ,O=NJ,A=(F,R,f)=>{if(!f){XJ(F,R,null);return}let c=H9.encode(f),u=XZ(c);XJ(F,R,u),DZ(F.buffer,c)},I=(F,R)=>{return RZ(F,R)},w=!0;else if($9(N)){let F=N.type;P=OZ[F],O=r7[F];let{pack:R}=MZ(F);A=(f,c,u)=>{let d=N.to(u);R(f,c,d)},I=(f,c)=>{let u=H8[F](f,c);return N.from(u)}}else if(X2(N))if(z.asPointer===!0)P=NJ,O=NJ,A=(F,R,f,c,u)=>{if(!f){XJ(F,R,null);return}let d=N.pack(f,u);XJ(F,R,XZ(d)),DZ(F.buffer,d)},I=(F,R)=>{throw Error("Not implemented yet")};else P=N.size,O=N.align,A=(F,R,f,c,u)=>{let d=N.pack(f,u),p=new Uint8Array(d);new Uint8Array(F.buffer).set(p,R),Q8(F.buffer,d)},I=(F,R)=>{let f=F.buffer.slice(R,R+P);return N.unpack(f)};else if(e7(N))P=NJ,O=NJ,A=(F,R,f)=>{let c=f?.ptr??null;if(c===void 0)console.warn(`Field '${q}' expected object with '.ptr' property, but got undefined pointer value from:`,f),XJ(F,R,null);else XJ(F,R,c)},I=(F,R)=>{return RZ(F,R)};else if(Array.isArray(N)&&N.length===1&&N[0]!==void 0){let[F]=N;P=NJ,O=NJ;let R;if($9(F))R=OZ[F.type],A=(c,u,d,p)=>{if(!d||d.length===0){XJ(c,u,null);return}let m=new ArrayBuffer(d.length*R),ZJ=new DataView(m);for(let i=0;i<d.length;i++){let t=F.to(d[i]);ZJ.setUint32(i*R,t,!0)}XJ(c,u,XZ(m)),DZ(c.buffer,m)},I=null,w=!0,C=F;else if(X2(F))R=F.size,A=(c,u,d,p,m)=>{if(!d||d.length===0){XJ(c,u,null);return}let ZJ=new ArrayBuffer(d.length*R),i=new DataView(ZJ);for(let t=0;t<d.length;t++)F.packInto(d[t],i,t*R,m);XJ(c,u,XZ(ZJ)),DZ(c.buffer,ZJ)},I=(c,u)=>{throw Error("Not implemented yet")};else if(X0(F)){R=OZ[F];let{pack:c}=MZ(F);A=(u,d,p)=>{if(!p||p.length===0){XJ(u,d,null);return}let m=new ArrayBuffer(p.length*R),ZJ=new DataView(m);for(let i=0;i<p.length;i++)c(ZJ,i*R,p[i]);XJ(u,d,XZ(m)),DZ(u.buffer,m)},I=null,w=!0,C=F}else if(e7(F))R=NJ,A=(c,u,d)=>{if(!d||d.length===0){XJ(c,u,null);return}let p=j8(d);XJ(c,u,XZ(p.buffer)),DZ(c.buffer,p.buffer)},I=()=>{throw Error("not implemented yet")};else throw Error(`Unsupported array element type for ${q}: ${JSON.stringify(F)}`);let f=Object.values(j).find((c)=>c.lengthOf===q);if(f&&X0(f.type)){let{pack:c}=MZ(f.type);L[q]={elementSize:R,arrayOffset:$,lengthOffset:f.offset,lengthPack:c}}}else throw Error(`Unsupported field type for ${q}: ${JSON.stringify(N)}`);if($=J9($,O),z.unpackTransform){let F=I;I=(R,f)=>z.unpackTransform(F(R,f))}if(z.packTransform){let F=A;A=(R,f,c,u,d)=>F(R,f,z.packTransform(c),u,d)}if(z.optional){let F=A;if(X2(N)&&!z.asPointer)A=(R,f,c,u,d)=>{if(c||z.mapOptionalInline)F(R,f,c,u,d)};else A=(R,f,c,u,d)=>F(R,f,c??0,u,d)}if(z.lengthOf){let F=A;A=(R,f,c,u,d)=>{let p=u[z.lengthOf],m=0;if(p)if(typeof p==="string")m=Buffer.byteLength(p);else m=p.length;return F(R,f,m,u,d)}}let T;if(z.validate)T=Array.isArray(z.validate)?z.validate:[z.validate];let g={name:q,offset:$,size:P,align:O,validate:T,optional:!!z.optional||!!z.lengthOf||z.default!==void 0,default:z.default,pack:A,unpack:I,type:N,lengthOf:z.lengthOf};if(Q.push(g),z.lengthOf)j[z.lengthOf]=g;if(w){let F=typeof N==="string"&&N==="char*"?"char*":C;if(!F)CZ(`Internal error: needsLengthOf=true but def is null for ${q}`);G.push({requester:g,def:F})}$+=P,H=Math.max(H,O)}for(let{requester:q,def:N}of G){let z=j[q.name];if(!z){if(N==="char*")continue;throw Error(`lengthOf field not found for array field ${q.name}`)}if(N==="char*"){let P=z.offset-q.offset;q.unpack=(O,A)=>{let I=RZ(O,A),w=z.unpack(O,A+P);if(lZ(I))return null;let C=A2(w);if(C===0)return"";let T=W2(I,0,C);return G8.decode(T)}}else if(X0(N)){let P=OZ[N],{unpack:O}=MZ(N),A=z.offset-q.offset;q.unpack=(I,w)=>{let C=[],T=z.unpack(I,w+A),g=A2(T),F=RZ(I,w);if(lZ(F)&&g>0)throw Error(`Array field ${q.name} has null pointer but length ${T}.`);if(lZ(F)||g===0)return[];let R=W2(F,0,g*P),f=new DataView(R);for(let c=0;c<g;c++)C.push(O(f,c*P));return C}}else{let P=N.type==="u32"?4:8,O=z.offset-q.offset;q.unpack=(A,I)=>{let w=[],C=z.unpack(A,I+O),T=A2(C),g=RZ(A,I);if(lZ(g)&&T>0)throw Error(`Array field ${q.name} has null pointer but length ${C}.`);if(lZ(g)||T===0)return[];let F=W2(g,0,T*P),R=new DataView(F);for(let f=0;f<T;f++)w.push(N.from(R.getUint32(f*P,!0)));return w}}}let Y=J9($,H),_=Q.map((q)=>({name:q.name,offset:q.offset,size:q.size,align:q.align,optional:q.optional,type:q.type,lengthOf:q.lengthOf})),W=new Map(_.map((q)=>[q.name,q])),K=new Map(Object.entries(L));return{__type:"struct",size:Y,align:H,hasMapValue:!!Z?.mapValue,layoutByName:W,arrayFields:K,pack(q,N){let z=new ArrayBuffer(Y),P=new DataView(z),O=q;if(Z?.mapValue)O=Z.mapValue(q);for(let A of Q){let I=O[A.name]??A.default;if(!A.optional&&I===void 0)CZ(`Packing non-optional field '${A.name}' but value is undefined (and no default provided)`);if(A.validate)for(let w of A.validate)w(I,A.name,{hints:N?.validationHints,input:O});A.pack(P,A.offset,I,O,N)}return P.buffer},packInto(q,N,z,P){let O=q;if(Z?.mapValue)O=Z.mapValue(q);for(let A of Q){let I=O[A.name]??A.default;if(!A.optional&&I===void 0)console.warn(`packInto missing value for non-optional field '${A.name}' at offset ${z+A.offset}. Writing default or zero.`);if(A.validate)for(let w of A.validate)w(I,A.name,{hints:P?.validationHints,input:O});A.pack(N,z+A.offset,I,O,P)}},unpack(q){if(q.byteLength<Y)CZ(`Buffer size (${q.byteLength}) is smaller than struct size (${Y}) for unpacking.`);let N=new DataView(q),z=Z?.default?{...Z.default}:{};for(let P of Q){if(!P.unpack)continue;try{z[P.name]=P.unpack(N,P.offset)}catch(O){throw console.error(`Error unpacking field '${P.name}' at offset ${P.offset}:`,O),O}}if(Z?.reduceValue)return Z.reduceValue(z);return z},packList(q,N){if(q.length===0)return new ArrayBuffer(0);let z=new ArrayBuffer(Y*q.length),P=new DataView(z);for(let O=0;O<q.length;O++){let A=q[O];if(Z?.mapValue)A=Z.mapValue(q[O]);for(let I of Q){let w=A[I.name]??I.default;if(!I.optional&&w===void 0)CZ(`Packing non-optional field '${I.name}' at index ${O} but value is undefined (and no default provided)`);if(I.validate)for(let C of I.validate)C(w,I.name,{hints:N?.validationHints,input:A});I.pack(P,O*Y+I.offset,w,A,N)}}return z},unpackList(q,N){if(N===0)return[];let z=Y*N;if(q.byteLength<z)CZ(`Buffer size (${q.byteLength}) is smaller than expected size (${z}) for unpacking ${N} structs.`);let P=new DataView(q),O=[];for(let A=0;A<N;A++){let I=A*Y,w=Z?.default?{...Z.default}:{};for(let C of Q){if(!C.unpack)continue;try{w[C.name]=C.unpack(P,I+C.offset)}catch(T){throw console.error(`Error unpacking field '${C.name}' at index ${A}, offset ${I+C.offset}:`,T),T}}if(Z?.reduceValue)O.push(Z.reduceValue(w));else O.push(w)}return O},describe(){return _}}}var x2=(J)=>J?h(J.buffer):null,k2=(J)=>J?a.fromArray(new Uint16Array(RJ(J,0,8))):void 0,Q9=GJ([["text","char*"],["text_len","u64",{lengthOf:"text"}],["fg","pointer",{optional:!0,packTransform:x2,unpackTransform:k2}],["bg","pointer",{optional:!0,packTransform:x2,unpackTransform:k2}],["attributes","u32",{default:0}],["link","char*",{default:""}],["link_len","u64",{lengthOf:"link"}]],{mapValue:(J)=>{let Z=K7(J.fg??null),$=K7(J.bg??null);if(!J.link||typeof J.link==="string")return{...J,fg:Z?.rgba??null,bg:$?.rgba??null};return{...J,fg:Z?.rgba??null,bg:$?.rgba??null,link:J.link.url}}}),A0=GJ([["start","u32"],["end","u32"],["styleId","u32"],["priority","u8",{default:0}],["hlRef","u16",{default:0}]]),lJ=GJ([["row","u32"],["col","u32"],["offset","u32"]]),CJ=GJ([["visualRow","u32"],["visualCol","u32"],["logicalRow","u32"],["logicalCol","u32"],["offset","u32"]]),L8=d2({wcwidth:0,unicode:1},"u8"),U8=d2({none:0,tmux:1,zellij:2,screen:3,unknown:4},"u8"),j9=GJ([["kitty_keyboard","bool_u8"],["kitty_graphics","bool_u8"],["rgb","bool_u8"],["ansi256","bool_u8"],["unicode",L8],["sgr_pixels","bool_u8"],["color_scheme_updates","bool_u8"],["explicit_width","bool_u8"],["scaled_text","bool_u8"],["sixel","bool_u8"],["focus_tracking","bool_u8"],["sync","bool_u8"],["bracketed_paste","bool_u8"],["hyperlinks","bool_u8"],["osc52","bool_u8"],["notifications","bool_u8"],["explicit_cursor_positioning","bool_u8"],["remote","bool_u8"],["multiplexer",U8],["term_name","char*"],["term_name_len","u64",{lengthOf:"term_name"}],["term_version","char*"],["term_version_len","u64",{lengthOf:"term_version"}],["term_from_xtversion","bool_u8"]]),G9=GJ([["width","u8"],["char","u32"]]),GZ=GJ([["startCols",["u32"]],["startColsLen","u32",{lengthOf:"startCols"}],["widthCols",["u32"]],["widthColsLen","u32",{lengthOf:"widthCols"}],["sources",["u32"]],["sourcesLen","u32",{lengthOf:"sources"}],["wraps",["u32"]],["wrapsLen","u32",{lengthOf:"wraps"}],["widthColsMax","u32"]]),L9=GJ([["lineCount","u32"],["widthColsMax","u32"]]),U9=GJ([["x","u32"],["y","u32"],["visible","bool_u8"],["style","u8"],["blinking","bool_u8"],["r","f32"],["g","f32"],["b","f32"],["a","f32"]]),D8=GJ([["style","u8",{default:255}],["blinking","u8",{default:255}],["color","pointer",{optional:!0,packTransform:x2,unpackTransform:k2}],["cursor","u8",{default:255}]]),Y8=GJ([["drawInner","bool_u8",{default:!0}],["drawOuter","bool_u8",{default:!0}]]),D9=GJ([["gpaSafeStats","bool_u8"],["gpaMemoryLimitTracking","bool_u8"]]),Y9=GJ([["totalRequestedBytes","u64"],["activeAllocations","u64"],["smallAllocations","u64"],["largeAllocations","u64"],["requestedBytesValid","bool_u8"]]),_9=GJ([["lastFrameTime","f64"],["averageFrameTime","f64"],["renderTime","f64"],["stdoutWriteTime","f64"],["frameCount","u64"],["cellsUpdated","u32"],["averageCellsUpdated","u32"],["renderTimeValid","bool_u8"],["stdoutWriteTimeValid","bool_u8"]]),_8=d2({grow:0,block:1},"u8"),W9=GJ([["chunkSize","u32",{default:65536}],["initialChunks","u32",{default:2}],["maxBytes","u64",{default:0n}],["growthPolicy",_8,{default:"grow"}],["autoCommitOnFull","bool_u8",{default:!0}],["spanQueueCapacity","u32",{default:0}]]),X9=GJ([["bytesWritten","u64"],["spansCommitted","u64"],["chunks","u32"],["pendingSpans","u32"]]),N2=GJ([["chunkPtr","pointer"],["offset","u32"],["len","u32"],["chunkIndex","u32"],["reserved","u32",{default:0}]],{reduceValue:(J)=>({chunkPtr:J.chunkPtr,offset:J.offset,len:J.len,chunkIndex:J.chunkIndex})}),A9=GJ([["ptr","pointer"],["len","u32"],["reserved","u32",{default:0}]],{reduceValue:(J)=>({ptr:J.ptr,len:J.len})}),W8=GJ([["sampleRate","u32",{default:48000}],["playbackChannels","u32",{default:2}]]),X8=GJ([["periodSizeInFrames","u32",{default:0}],["periodSizeInMilliseconds","u32",{default:0}],["periods","u32",{default:0}],["performanceProfile","u8",{default:0}],["shareMode","u8",{default:0}],["noPreSilencedOutputBuffer","bool_u8",{default:!1}],["noClip","bool_u8",{default:!1}],["noDisableDenormals","bool_u8",{default:!1}],["noFixedSizedCallback","bool_u8",{default:!1}],["wasapiNoAutoConvertSrc","bool_u8",{default:!1}],["wasapiNoDefaultQualitySrc","bool_u8",{default:!1}],["alsaNoMMap","bool_u8",{default:!1}],["alsaNoAutoFormat","bool_u8",{default:!1}],["alsaNoAutoChannels","bool_u8",{default:!1}],["alsaNoAutoResample","bool_u8",{default:!1}]]),A8=GJ([["volume","f32",{default:1}],["pan","f32",{default:0}],["loop","bool_u8",{default:!1}],["groupId","u32",{default:0}]]),N9=GJ([["soundsLoaded","u32"],["voicesActive","u32"],["framesMixed","u64"],["lockMisses","u32"],["lastPeak","f32"],["lastRms","f32"]]);DJ({name:"OPENTUI_LIBC",description:"Select Linux native libc package. Supported values: glibc, musl.",type:"string",default:""});function N8(){let J=process.env.OPENTUI_LIBC;if(J===void 0||J===""||J==="glibc"||J==="musl")return;throw Error(`On Linux, OPENTUI_LIBC must be unset, empty, "glibc", or "musl", got "${J}"`)}async function V8(){if(process.platform==="darwin"){if(process.arch==="x64")return await import("./chunk-snt4kwab.js");if(process.arch==="arm64")return await import("./chunk-t1f56k0j.js")}if(process.platform==="linux"){if(N8(),process.arch==="x64")if(process.env.OPENTUI_LIBC==="musl")return await import("./chunk-dp7cww4v.js");else return await import("./chunk-gbmmbhy4.js");if(process.arch==="arm64")if(process.env.OPENTUI_LIBC==="musl")return await import("./chunk-k5a652s4.js");else return await import("./chunk-tsb3jsx4.js")}if(process.platform==="win32"){if(process.arch==="x64")return await import("./chunk-kghwk0yh.js");if(process.arch==="arm64")return await import("./chunk-7x88b2n2.js")}{const __qlib=process.env.QITQODE_OTUI_LIB;if(__qlib)return{default:__qlib};throw Error(`opentui is not supported on the current platform: ${process.platform}-${process.arch}`)}}var O8=await V8(),dZ=O8.default;if(o9(dZ))dZ=dZ.replace("../","");if(!d6(dZ))throw Error(`opentui is not supported on the current platform: ${process.platform}-${process.arch}`);DJ({name:"OTUI_DEBUG_FFI",description:"Enable debug logging for the FFI bindings.",type:"boolean",default:!1});DJ({name:"OTUI_TRACE_FFI",description:"Enable tracing for the FFI bindings.",type:"boolean",default:!1});DJ({name:"OPENTUI_FORCE_WCWIDTH",description:"Use wcwidth for character width calculations",type:"boolean",default:!1});DJ({name:"OPENTUI_FORCE_UNICODE",description:"Force Mode 2026 Unicode support in terminal capabilities",type:"boolean",default:!1});DJ({name:"OPENTUI_GRAPHICS",description:"Enable Kitty graphics protocol detection",type:"boolean",default:!0});DJ({name:"OPENTUI_FORCE_NOZWJ",description:"Use no_zwj width method (Unicode without ZWJ joining)",type:"boolean",default:!1});var z8={block:0,line:1,underline:2,default:3},q8=["block","line","underline","default"],P8={default:0,pointer:1,text:2,crosshair:3,move:4,"not-allowed":5},AZ=null,N0=null,V9=!1;function NZ(J){return typeof J==="bigint"?Number(J):J}function LJ(J){return h(J.buffer)}function $J(J){return J?LJ(J):null}function I8(J){let $=m6(J||dZ,{setLogCallback:{args:["ptr"],returns:"void"},createEventSink:{args:["ptr"],returns:"u32"},destroyEventSink:{args:["u32"],returns:"void"},createRenderer:{args:["u32","u32","u8","u8","ptr"],returns:"u32"},setTerminalEnvVar:{args:["u32","ptr","usize","ptr","usize"],returns:"bool"},destroyRenderer:{args:["u32"],returns:"void"},setUseThread:{args:["u32","bool"],returns:"void"},setClearOnShutdown:{args:["u32","bool"],returns:"void"},setBackgroundColor:{args:["u32","ptr"],returns:"void"},setRenderOffset:{args:["u32","u32"],returns:"void"},resetSplitScrollback:{args:["u32","u32","u32"],returns:"u32"},syncSplitScrollback:{args:["u32","u32"],returns:"u32"},getSplitOutputOffset:{args:["u32","u32"],returns:"u32"},setPendingSplitFooterTransition:{args:["u32","u8","u32","u32","u32","u32","u32"],returns:"void"},clearPendingSplitFooterTransition:{args:["u32"],returns:"void"},updateStats:{args:["u32","f64","u32","f64"],returns:"void"},updateMemoryStats:{args:["u32","u32","u32","u32"],returns:"void"},getRenderStats:{args:["u32","ptr"],returns:"void"},render:{args:["u32","bool"],returns:"u8"},repaintSplitFooter:{args:["u32","u32","bool"],returns:"u64"},commitSplitFooterSnapshot:{args:["u32","u32","u32","bool","bool","u32","bool","bool","bool"],returns:"u64"},getNextBuffer:{args:["u32"],returns:"u32"},getCurrentBuffer:{args:["u32"],returns:"u32"},rendererSetPaletteState:{args:["u32","ptr","usize","ptr","ptr","u32"],returns:"void"},queryPixelResolution:{args:["u32"],returns:"void"},queryThemeColors:{args:["u32"],returns:"void"},createOptimizedBuffer:{args:["u32","u32","bool","u8","ptr","usize"],returns:"u32"},destroyOptimizedBuffer:{args:["u32"],returns:"void"},drawFrameBuffer:{args:["u32","i32","i32","u32","u32","u32","u32","u32"],returns:"void"},getBufferWidth:{args:["u32"],returns:"u32"},getBufferHeight:{args:["u32"],returns:"u32"},bufferClear:{args:["u32","ptr"],returns:"void"},bufferGetCharPtr:{args:["u32"],returns:"ptr"},bufferGetFgPtr:{args:["u32"],returns:"ptr"},bufferGetBgPtr:{args:["u32"],returns:"ptr"},bufferGetAttributesPtr:{args:["u32"],returns:"ptr"},bufferGetRespectAlpha:{args:["u32"],returns:"bool"},bufferSetRespectAlpha:{args:["u32","bool"],returns:"void"},bufferGetId:{args:["u32","ptr","usize"],returns:"usize"},bufferGetRealCharSize:{args:["u32"],returns:"u32"},bufferWriteResolvedChars:{args:["u32","ptr","usize","bool"],returns:"u32"},bufferDrawText:{args:["u32","ptr","u32","u32","u32","ptr","ptr","u32"],returns:"void"},bufferSetCellWithAlphaBlending:{args:["u32","u32","u32","u32","ptr","ptr","u32"],returns:"void"},bufferSetCell:{args:["u32","u32","u32","u32","ptr","ptr","u32"],returns:"void"},bufferFillRect:{args:["u32","u32","u32","u32","u32","ptr"],returns:"void"},bufferColorMatrix:{args:["u32","ptr","ptr","usize","f32","u8"],returns:"void"},bufferColorMatrixUniform:{args:["u32","ptr","f32","u8"],returns:"void"},bufferResize:{args:["u32","u32","u32"],returns:"void"},linkAlloc:{args:["ptr","u32"],returns:"u32"},linkGetUrl:{args:["u32","ptr","u32"],returns:"u32"},attributesWithLink:{args:["u32","u32"],returns:"u32"},attributesGetLinkId:{args:["u32"],returns:"u32"},resizeRenderer:{args:["u32","u32","u32"],returns:"void"},setCursorPosition:{args:["u32","i32","i32","bool"],returns:"void"},setCursorColor:{args:["u32","ptr"],returns:"void"},getCursorState:{args:["u32","ptr"],returns:"void"},setCursorStyleOptions:{args:["u32","ptr"],returns:"void"},setDebugOverlay:{args:["u32","bool","u8"],returns:"void"},clearTerminal:{args:["u32"],returns:"void"},setTerminalTitle:{args:["u32","ptr","usize"],returns:"void"},copyToClipboardOSC52:{args:["u32","u8","ptr","usize"],returns:"bool"},clearClipboardOSC52:{args:["u32","u8"],returns:"bool"},triggerNotification:{args:["u32","ptr","usize","ptr","usize"],returns:"bool"},bufferDrawSuperSampleBuffer:{args:["u32","u32","u32","ptr","usize","u8","u32"],returns:"void"},bufferDrawPackedBuffer:{args:["u32","ptr","usize","u32","u32","u32","u32"],returns:"void"},bufferDrawGrayscaleBuffer:{args:["u32","i32","i32","ptr","u32","u32","ptr","ptr"],returns:"void"},bufferDrawGrayscaleBufferSupersampled:{args:["u32","i32","i32","ptr","u32","u32","ptr","ptr"],returns:"void"},bufferDrawGrid:{args:["u32","ptr","ptr","ptr","ptr","u32","ptr","u32","ptr"],returns:"void"},bufferDrawBox:{args:["u32","i32","i32","u32","u32","ptr","u32","ptr","ptr","ptr","ptr","u32","ptr","u32"],returns:"void"},bufferPushScissorRect:{args:["u32","i32","i32","u32","u32"],returns:"void"},bufferPopScissorRect:{args:["u32"],returns:"void"},bufferClearScissorRects:{args:["u32"],returns:"void"},bufferPushOpacity:{args:["u32","f32"],returns:"void"},bufferPopOpacity:{args:["u32"],returns:"void"},bufferGetCurrentOpacity:{args:["u32"],returns:"f32"},bufferClearOpacity:{args:["u32"],returns:"void"},addToHitGrid:{args:["u32","i32","i32","u32","u32","u32"],returns:"void"},clearCurrentHitGrid:{args:["u32"],returns:"void"},hitGridPushScissorRect:{args:["u32","i32","i32","u32","u32"],returns:"void"},hitGridPopScissorRect:{args:["u32"],returns:"void"},hitGridClearScissorRects:{args:["u32"],returns:"void"},addToCurrentHitGridClipped:{args:["u32","i32","i32","u32","u32","u32"],returns:"void"},checkHit:{args:["u32","u32","u32"],returns:"u32"},getHitGridDirty:{args:["u32"],returns:"bool"},dumpHitGrid:{args:["u32"],returns:"void"},dumpBuffers:{args:["u32","i64"],returns:"void"},dumpOutputBuffer:{args:["u32","i64"],returns:"void"},restoreTerminalModes:{args:["u32"],returns:"void"},enableMouse:{args:["u32","bool"],returns:"void"},disableMouse:{args:["u32"],returns:"void"},enableKittyKeyboard:{args:["u32","u8"],returns:"void"},disableKittyKeyboard:{args:["u32"],returns:"void"},setKittyKeyboardFlags:{args:["u32","u8"],returns:"void"},getKittyKeyboardFlags:{args:["u32"],returns:"u8"},setupTerminal:{args:["u32","bool"],returns:"void"},suspendRenderer:{args:["u32"],returns:"void"},resumeRenderer:{args:["u32"],returns:"void"},writeOut:{args:["u32","ptr","u64"],returns:"void"},createTextBuffer:{args:["u8"],returns:"u32"},destroyTextBuffer:{args:["u32"],returns:"void"},textBufferGetLength:{args:["u32"],returns:"u32"},textBufferGetByteSize:{args:["u32"],returns:"u32"},textBufferReset:{args:["u32"],returns:"void"},textBufferClear:{args:["u32"],returns:"void"},textBufferSetDefaultFg:{args:["u32","ptr"],returns:"void"},textBufferSetDefaultBg:{args:["u32","ptr"],returns:"void"},textBufferSetDefaultAttributes:{args:["u32","ptr"],returns:"void"},textBufferResetDefaults:{args:["u32"],returns:"void"},textBufferGetTabWidth:{args:["u32"],returns:"u8"},textBufferSetTabWidth:{args:["u32","u8"],returns:"void"},textBufferRegisterMemBuffer:{args:["u32","ptr","usize","bool"],returns:"u16"},textBufferReplaceMemBuffer:{args:["u32","u8","ptr","usize","bool"],returns:"bool"},textBufferClearMemRegistry:{args:["u32"],returns:"void"},textBufferSetTextFromMem:{args:["u32","u8"],returns:"void"},textBufferAppend:{args:["u32","ptr","usize"],returns:"void"},textBufferAppendFromMemId:{args:["u32","u8"],returns:"void"},textBufferLoadFile:{args:["u32","ptr","usize"],returns:"bool"},textBufferSetStyledText:{args:["u32","ptr","usize"],returns:"void"},textBufferGetLineCount:{args:["u32"],returns:"u32"},textBufferGetPlainText:{args:["u32","ptr","usize"],returns:"usize"},textBufferAddHighlightByCharRange:{args:["u32","ptr"],returns:"void"},textBufferAddHighlight:{args:["u32","u32","ptr"],returns:"void"},textBufferRemoveHighlightsByRef:{args:["u32","u16"],returns:"void"},textBufferClearLineHighlights:{args:["u32","u32"],returns:"void"},textBufferClearAllHighlights:{args:["u32"],returns:"void"},textBufferSetSyntaxStyle:{args:["u32","u32"],returns:"void"},textBufferGetLineHighlightsPtr:{args:["u32","u32","ptr"],returns:"ptr"},textBufferFreeLineHighlights:{args:["ptr","usize"],returns:"void"},textBufferGetHighlightCount:{args:["u32"],returns:"u32"},textBufferGetTextRange:{args:["u32","u32","u32","ptr","usize"],returns:"usize"},textBufferGetTextRangeByCoords:{args:["u32","u32","u32","u32","u32","ptr","usize"],returns:"usize"},createTextBufferView:{args:["u32"],returns:"u32"},destroyTextBufferView:{args:["u32"],returns:"void"},textBufferViewSetSelection:{args:["u32","u32","u32","ptr","ptr"],returns:"void"},textBufferViewResetSelection:{args:["u32"],returns:"void"},textBufferViewGetSelectionInfo:{args:["u32"],returns:"u64"},textBufferViewSetLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr"],returns:"bool"},textBufferViewUpdateSelection:{args:["u32","u32","ptr","ptr"],returns:"void"},textBufferViewUpdateLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr"],returns:"bool"},textBufferViewResetLocalSelection:{args:["u32"],returns:"void"},textBufferViewSetWrapWidth:{args:["u32","u32"],returns:"void"},textBufferViewSetWrapMode:{args:["u32","u8"],returns:"void"},textBufferViewSetFirstLineOffset:{args:["u32","u32"],returns:"void"},textBufferViewSetViewportSize:{args:["u32","u32","u32"],returns:"void"},textBufferViewSetViewport:{args:["u32","u32","u32","u32","u32"],returns:"void"},textBufferViewGetVirtualLineCount:{args:["u32"],returns:"u32"},textBufferViewGetLineInfoDirect:{args:["u32","ptr"],returns:"void"},textBufferViewGetLogicalLineInfoDirect:{args:["u32","ptr"],returns:"void"},textBufferViewGetSelectedText:{args:["u32","ptr","usize"],returns:"usize"},textBufferViewGetPlainText:{args:["u32","ptr","usize"],returns:"usize"},textBufferViewSetTabIndicator:{args:["u32","u32"],returns:"void"},textBufferViewSetTabIndicatorColor:{args:["u32","ptr"],returns:"void"},textBufferViewSetTruncate:{args:["u32","bool"],returns:"void"},textBufferViewMeasureForDimensions:{args:["u32","u32","u32","ptr"],returns:"bool"},bufferDrawTextBufferView:{args:["u32","u32","i32","i32"],returns:"void"},bufferDrawEditorView:{args:["u32","u32","i32","i32"],returns:"void"},createEditorView:{args:["u32","u32","u32"],returns:"u32"},destroyEditorView:{args:["u32"],returns:"void"},editorViewSetViewportSize:{args:["u32","u32","u32"],returns:"void"},editorViewSetViewport:{args:["u32","u32","u32","u32","u32","bool"],returns:"void"},editorViewGetViewport:{args:["u32","ptr","ptr","ptr","ptr"],returns:"void"},editorViewSetScrollMargin:{args:["u32","f32"],returns:"void"},editorViewSetWrapMode:{args:["u32","u8"],returns:"void"},editorViewGetVirtualLineCount:{args:["u32"],returns:"u32"},editorViewGetTotalVirtualLineCount:{args:["u32"],returns:"u32"},editorViewGetTextBufferView:{args:["u32"],returns:"u32"},editorViewGetLineInfoDirect:{args:["u32","ptr"],returns:"void"},editorViewGetLogicalLineInfoDirect:{args:["u32","ptr"],returns:"void"},createEditBuffer:{args:["u8","u32"],returns:"u32"},destroyEditBuffer:{args:["u32"],returns:"void"},editBufferSetText:{args:["u32","ptr","usize"],returns:"void"},editBufferSetTextFromMem:{args:["u32","u8"],returns:"void"},editBufferReplaceText:{args:["u32","ptr","usize"],returns:"void"},editBufferReplaceTextFromMem:{args:["u32","u8"],returns:"void"},editBufferGetText:{args:["u32","ptr","usize"],returns:"usize"},editBufferInsertChar:{args:["u32","ptr","usize"],returns:"void"},editBufferInsertText:{args:["u32","ptr","usize"],returns:"void"},editBufferDeleteChar:{args:["u32"],returns:"void"},editBufferDeleteCharBackward:{args:["u32"],returns:"void"},editBufferDeleteRange:{args:["u32","u32","u32","u32","u32"],returns:"void"},editBufferNewLine:{args:["u32"],returns:"void"},editBufferDeleteLine:{args:["u32"],returns:"void"},editBufferMoveCursorLeft:{args:["u32"],returns:"void"},editBufferMoveCursorRight:{args:["u32"],returns:"void"},editBufferMoveCursorUp:{args:["u32"],returns:"void"},editBufferMoveCursorDown:{args:["u32"],returns:"void"},editBufferGotoLine:{args:["u32","u32"],returns:"void"},editBufferSetCursor:{args:["u32","u32","u32"],returns:"void"},editBufferSetCursorToLineCol:{args:["u32","u32","u32"],returns:"void"},editBufferSetCursorByOffset:{args:["u32","u32"],returns:"void"},editBufferGetCursorPosition:{args:["u32","ptr"],returns:"void"},editBufferGetId:{args:["u32"],returns:"u16"},editBufferGetTextBuffer:{args:["u32"],returns:"u32"},editBufferDebugLogRope:{args:["u32"],returns:"void"},editBufferUndo:{args:["u32","ptr","usize"],returns:"usize"},editBufferRedo:{args:["u32","ptr","usize"],returns:"usize"},editBufferCanUndo:{args:["u32"],returns:"bool"},editBufferCanRedo:{args:["u32"],returns:"bool"},editBufferClearHistory:{args:["u32"],returns:"void"},editBufferClear:{args:["u32"],returns:"void"},editBufferGetNextWordBoundary:{args:["u32","ptr"],returns:"void"},editBufferGetPrevWordBoundary:{args:["u32","ptr"],returns:"void"},editBufferGetEOL:{args:["u32","ptr"],returns:"void"},editBufferOffsetToPosition:{args:["u32","u32","ptr"],returns:"bool"},editBufferPositionToOffset:{args:["u32","u32","u32"],returns:"u32"},editBufferGetLineStartOffset:{args:["u32","u32"],returns:"u32"},editBufferGetTextRange:{args:["u32","u32","u32","ptr","usize"],returns:"usize"},editBufferGetTextRangeByCoords:{args:["u32","u32","u32","u32","u32","ptr","usize"],returns:"usize"},editorViewSetSelection:{args:["u32","u32","u32","ptr","ptr"],returns:"void"},editorViewResetSelection:{args:["u32"],returns:"void"},editorViewGetSelection:{args:["u32"],returns:"u64"},editorViewSetLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr","bool","bool"],returns:"bool"},editorViewUpdateSelection:{args:["u32","u32","ptr","ptr"],returns:"void"},editorViewUpdateLocalSelection:{args:["u32","i32","i32","i32","i32","ptr","ptr","bool","bool"],returns:"bool"},editorViewResetLocalSelection:{args:["u32"],returns:"void"},editorViewGetSelectedTextBytes:{args:["u32","ptr","usize"],returns:"usize"},editorViewGetCursor:{args:["u32","ptr","ptr"],returns:"void"},editorViewGetText:{args:["u32","ptr","usize"],returns:"usize"},editorViewGetVisualCursor:{args:["u32","ptr"],returns:"void"},editorViewMoveUpVisual:{args:["u32"],returns:"void"},editorViewMoveDownVisual:{args:["u32"],returns:"void"},editorViewDeleteSelectedText:{args:["u32"],returns:"void"},editorViewSetCursorByOffset:{args:["u32","u32"],returns:"void"},editorViewGetNextWordBoundary:{args:["u32","ptr"],returns:"void"},editorViewGetPrevWordBoundary:{args:["u32","ptr"],returns:"void"},editorViewGetEOL:{args:["u32","ptr"],returns:"void"},editorViewGetVisualSOL:{args:["u32","ptr"],returns:"void"},editorViewGetVisualEOL:{args:["u32","ptr"],returns:"void"},editorViewSetPlaceholderStyledText:{args:["u32","ptr","usize"],returns:"void"},editorViewSetTabIndicator:{args:["u32","u32"],returns:"void"},editorViewSetTabIndicatorColor:{args:["u32","ptr"],returns:"void"},getArenaAllocatedBytes:{args:[],returns:"usize"},getBuildOptions:{args:["ptr"],returns:"void"},getAllocatorStats:{args:["ptr"],returns:"void"},createSyntaxStyle:{args:[],returns:"u32"},destroySyntaxStyle:{args:["u32"],returns:"void"},syntaxStyleRegister:{args:["u32","ptr","usize","ptr","ptr","u32"],returns:"u32"},syntaxStyleResolveByName:{args:["u32","ptr","usize"],returns:"u32"},syntaxStyleGetStyleCount:{args:["u32"],returns:"usize"},getTerminalCapabilities:{args:["u32","ptr"],returns:"void"},processCapabilityResponse:{args:["u32","ptr","usize"],returns:"void"},encodeUnicode:{args:["ptr","usize","ptr","ptr","u8"],returns:"bool"},freeUnicode:{args:["ptr","usize"],returns:"void"},bufferDrawChar:{args:["u32","u32","u32","u32","ptr","ptr","u32"],returns:"void"},createAudioEngine:{args:["ptr"],returns:"u32"},destroyAudioEngine:{args:["u32"],returns:"void"},audioRefreshPlaybackDevices:{args:["u32"],returns:"i32"},audioGetPlaybackDeviceCount:{args:["u32"],returns:"u32"},audioGetPlaybackDeviceName:{args:["u32","u32","ptr","usize"],returns:"usize"},audioIsPlaybackDeviceDefault:{args:["u32","u32"],returns:"bool"},audioSelectPlaybackDevice:{args:["u32","u32"],returns:"i32"},audioClearPlaybackDeviceSelection:{args:["u32"],returns:"void"},audioStart:{args:["u32","ptr"],returns:"i32"},audioStartMixer:{args:["u32"],returns:"i32"},audioStop:{args:["u32"],returns:"i32"},audioLoad:{args:["u32","ptr","u64","ptr"],returns:"i32"},audioUnload:{args:["u32","u32"],returns:"i32"},audioPlay:{args:["u32","u32","ptr","ptr"],returns:"i32"},audioStopVoice:{args:["u32","u32"],returns:"i32"},audioSetVoiceGroup:{args:["u32","u32","u32"],returns:"i32"},audioCreateGroup:{args:["u32","ptr","u64","ptr"],returns:"i32"},audioSetGroupVolume:{args:["u32","u32","f32"],returns:"i32"},audioSetMasterVolume:{args:["u32","f32"],returns:"i32"},audioMixToBuffer:{args:["u32","ptr","u32","u8"],returns:"i32"},audioEnableTap:{args:["u32","bool","u32"],returns:"i32"},audioReadTap:{args:["u32","ptr","u32","u8","ptr"],returns:"i32"},audioGetStats:{args:["u32","ptr"],returns:"i32"},createNativeSpanFeed:{args:["ptr"],returns:"ptr"},attachNativeSpanFeed:{args:["ptr"],returns:"i32"},destroyNativeSpanFeed:{args:["ptr"],returns:"void"},streamWrite:{args:["ptr","ptr","u64"],returns:"i32"},streamCommit:{args:["ptr"],returns:"i32"},streamDrainSpans:{args:["ptr","ptr","u32"],returns:"u32"},streamClose:{args:["ptr"],returns:"i32"},streamReserve:{args:["ptr","u32","ptr"],returns:"i32"},streamCommitReserved:{args:["ptr","u32"],returns:"i32"},streamSetOptions:{args:["ptr","ptr"],returns:"i32"},streamGetStats:{args:["ptr","ptr"],returns:"i32"},streamSetCallback:{args:["ptr","ptr"],returns:"void"}});if(QJ.OTUI_DEBUG_FFI||QJ.OTUI_TRACE_FFI)return{...$,symbols:B8($.symbols)};return $}function B8(J){if(!AZ)AZ={};if(QJ.OTUI_DEBUG_FFI&&!N0)N0=`ffi_otui_debug_${new Date().toISOString().replace(/[:.]/g,"-").replace(/T/,"_").split("Z")[0]}.log`;let Z={},$=!1;if(Object.entries(J).forEach(([H,Q])=>{Z[H]=Q}),QJ.OTUI_DEBUG_FFI&&N0){let H=N0,Q=(j)=>{a6(H,j+`
40
40
  `,{flag:"a"})};Object.entries(J).forEach(([j,G])=>{if(typeof G==="function")Z[j]=(...L)=>{Q(`${j}(${L.map((_)=>String(_)).join(", ")})`);let Y=G(...L);return Q(`${j} returned: ${String(Y)}`),Y}})}if(QJ.OTUI_TRACE_FFI)$=!0,Object.entries(J).forEach(([H,Q])=>{if(typeof Q==="function"){if(!AZ[H])AZ[H]=[];let j=Z[H];Z[H]=(...G)=>{let L=performance.now(),Y=j(...G),_=performance.now();return AZ[H].push(_-L),Y}}});if((QJ.OTUI_DEBUG_FFI||QJ.OTUI_TRACE_FFI)&&!V9)V9=!0,process.on("exit",()=>{if(AZ){let H=[];for(let[G,L]of Object.entries(AZ)){if(!Array.isArray(L)||L.length===0)continue;let Y=[...L].sort((C,T)=>C-T),_=Y.length,W=Y.reduce((C,T)=>C+T,0),K=W/_,q=Y[0],N=Y[_-1],z=Math.floor(_/2),P=Math.floor(_*0.9),O=Math.floor(_*0.99),A=Y[z],I=Y[Math.min(P,_-1)],w=Y[Math.min(O,_-1)];H.push({name:G,count:_,total:W,average:K,min:q,max:N,median:A,p90:I,p99:w})}H.sort((G,L)=>L.total-G.total);let Q=[];if(Q.push(`
41
41
  --- OpenTUI FFI Call Performance ---`),Q.push("Sorted by total time spent (descending)"),Q.push("-------------------------------------------------------------------------------------------------------------------------"),H.length===0)Q.push("No trace data collected or all symbols had zero calls.");else{let P=Math.max(6,...H.map((R)=>R.name.length)),O=Math.max(5,...H.map((R)=>String(R.count).length)),A=Math.max(10,...H.map((R)=>R.total.toFixed(2).length)),I=Math.max(8,...H.map((R)=>R.average.toFixed(2).length)),w=Math.max(8,...H.map((R)=>R.min.toFixed(2).length)),C=Math.max(8,...H.map((R)=>R.max.toFixed(2).length)),T=Math.max(8,...H.map((R)=>R.median.toFixed(2).length)),g=Math.max(8,...H.map((R)=>R.p90.toFixed(2).length)),F=Math.max(8,...H.map((R)=>R.p99.toFixed(2).length));Q.push(`${"Symbol".padEnd(P)} | ${"Calls".padStart(O)} | ${"Total (ms)".padStart(A)} | ${"Avg (ms)".padStart(I)} | ${"Min (ms)".padStart(w)} | ${"Max (ms)".padStart(C)} | ${"Med (ms)".padStart(T)} | ${"P90 (ms)".padStart(g)} | ${"P99 (ms)".padStart(F)}`),Q.push(`${"-".repeat(P)}-+-${"-".repeat(O)}-+-${"-".repeat(A)}-+-${"-".repeat(I)}-+-${"-".repeat(w)}-+-${"-".repeat(C)}-+-${"-".repeat(T)}-+-${"-".repeat(g)}-+-${"-".repeat(F)}`),H.forEach((R)=>{Q.push(`${R.name.padEnd(P)} | ${String(R.count).padStart(O)} | ${R.total.toFixed(2).padStart(A)} | ${R.average.toFixed(2).padStart(I)} | ${R.min.toFixed(2).padStart(w)} | ${R.max.toFixed(2).padStart(C)} | ${R.median.toFixed(2).padStart(T)} | ${R.p90.toFixed(2).padStart(g)} | ${R.p99.toFixed(2).padStart(F)}`)})}Q.push("-------------------------------------------------------------------------------------------------------------------------");let j=Q.join(`
42
42
  `);console.log(j);try{let Y=`ffi_otui_trace_${new Date().toISOString().replace(/[:.]/g,"-").replace(/T/,"_").split("Z")[0]}.log`;o5(Y,j).catch((_)=>{console.error("Failed to write FFI trace file:",_)})}catch(G){console.error("Failed to write FFI trace file:",G)}}});return Z}var K8;((J)=>{J[J.Error=0]="Error",J[J.Warn=1]="Warn",J[J.Info=2]="Info",J[J.Debug=3]="Debug"})(K8||={});class x0{opentui;encoder=new TextEncoder;decoder=new TextDecoder;logCallbackWrapper=null;eventCallbackWrapper=null;eventSinkPtr=null;_nativeEvents=new i6;_anyEventHandlers=[];nativeSpanFeedCallbackWrapper=null;nativeSpanFeedHandlers=new Map;constructor(J){this.opentui=I8(J);try{this.setupLogging(),this.setupEventBus()}catch(Z){throw this.dispose(),Z}}setupLogging(){if(this.logCallbackWrapper)return;let J=this.opentui.createCallback((Z,$,H)=>{try{let Q=typeof H==="bigint"?Number(H):H;if(Q===0||!$)return;let j=RJ($,0,Q),G=new Uint8Array(j),L=this.decoder.decode(G);switch(Z){case 0:console.error(L);break;case 1:console.warn(L);break;case 2:console.info(L);break;case 3:console.debug(L);break;default:console.log(L)}}catch(Q){console.error("Error in Zig log callback:",Q)}},{args:["u8","ptr","usize"],returns:"void"});if(this.logCallbackWrapper=J,!J.ptr)throw Error("Failed to create log callback");this.setLogCallback(J.ptr)}setLogCallback(J){this.opentui.symbols.setLogCallback(J)}dispose(){try{if(this.eventSinkPtr)this.opentui.symbols.destroyEventSink(this.eventSinkPtr),this.eventSinkPtr=null;this.setLogCallback(null)}finally{try{this.opentui.close()}finally{this.eventCallbackWrapper=null,this.logCallbackWrapper=null,this.nativeSpanFeedCallbackWrapper=null,this.nativeSpanFeedHandlers.clear()}}}setupEventBus(){if(this.eventCallbackWrapper)return;let J=this.opentui.createCallback((Z,$,H,Q)=>{try{let j=typeof $==="bigint"?Number($):$,G=typeof Q==="bigint"?Number(Q):Q;if(j===0||!Z)return;let L=this.decoder.decode(RJ(Z,0,j)),Y=G>0&&H?RJ(H,0,G).slice(0):new ArrayBuffer(0);queueMicrotask(()=>{this._nativeEvents.emit(L,Y);for(let _ of this._anyEventHandlers)_(L,Y)})}catch(j){console.error("Error in native event callback:",j)}},{args:["ptr","usize","ptr","usize"],returns:"void"});if(this.eventCallbackWrapper=J,!J.ptr)throw Error("Failed to create event callback");if(this.eventSinkPtr=this.opentui.symbols.createEventSink(J.ptr),!this.eventSinkPtr)throw J.close(),this.eventCallbackWrapper=null,Error("Failed to create native event sink")}ensureNativeSpanFeedCallback(){if(this.nativeSpanFeedCallbackWrapper)return this.nativeSpanFeedCallbackWrapper;let J=this.opentui.createCallback((Z,$,H,Q)=>{let j=this.nativeSpanFeedHandlers.get(Z);if(j)j($,H,Q)},{args:["ptr","u32","ptr","u64"],returns:"void"});if(this.nativeSpanFeedCallbackWrapper=J,!J.ptr)throw Error("Failed to create native span feed callback");return J}createRenderer(J,Z,$={}){let H=$.bufferedOutput==="memory"?1:0,Q=$.remote===void 0?0:$.remote?2:1,j=$.feedPtr??null,G=this.opentui.symbols.createRenderer(J,Z,H,Q,j);return G?G:null}setTerminalEnvVar(J,Z,$){let H=this.encoder.encode(Z),Q=this.encoder.encode($);return this.opentui.symbols.setTerminalEnvVar(J,H,H.length,Q,Q.length)}destroyRenderer(J){this.opentui.symbols.destroyRenderer(J)}setUseThread(J,Z){this.opentui.symbols.setUseThread(J,HJ(Z))}setClearOnShutdown(J,Z){this.opentui.symbols.setClearOnShutdown(J,HJ(Z))}setBackgroundColor(J,Z){this.opentui.symbols.setBackgroundColor(J,LJ(Z))}setRenderOffset(J,Z){this.opentui.symbols.setRenderOffset(J,Z)}resetSplitScrollback(J,Z,$){return this.opentui.symbols.resetSplitScrollback(J,Z,$)}syncSplitScrollback(J,Z){return this.opentui.symbols.syncSplitScrollback(J,Z)}getSplitOutputOffset(J,Z){return this.opentui.symbols.getSplitOutputOffset(J,Z)}setPendingSplitFooterTransition(J,Z,$,H,Q,j,G){this.opentui.symbols.setPendingSplitFooterTransition(J,Z,$,H,Q,j,G)}clearPendingSplitFooterTransition(J){this.opentui.symbols.clearPendingSplitFooterTransition(J)}updateStats(J,Z,$,H){this.opentui.symbols.updateStats(J,Z,$,H)}updateMemoryStats(J,Z,$,H){this.opentui.symbols.updateMemoryStats(J,Z,$,H)}getRenderStats(J){let Z=new ArrayBuffer(_9.size);this.opentui.symbols.getRenderStats(J,h(Z));let $=_9.unpack(Z);return{nativeLastFrameTime:$.lastFrameTime,nativeAverageFrameTime:$.averageFrameTime,nativeFrameCount:NZ($.frameCount),cellsUpdated:$.cellsUpdated,averageCellsUpdated:$.averageCellsUpdated,nativeRenderTime:$.renderTimeValid?$.renderTime:void 0,nativeStdoutWriteTime:$.stdoutWriteTimeValid?$.stdoutWriteTime:void 0}}getNextBuffer(J){let Z=this.opentui.symbols.getNextBuffer(J);if(!Z)throw Error("Failed to get next buffer");let $=this.opentui.symbols.getBufferWidth(Z),H=this.opentui.symbols.getBufferHeight(Z);return new xJ(this,Z,$,H,{id:"next buffer",widthMethod:"unicode"})}getCurrentBuffer(J){let Z=this.opentui.symbols.getCurrentBuffer(J);if(!Z)throw Error("Failed to get current buffer");let $=this.opentui.symbols.getBufferWidth(Z),H=this.opentui.symbols.getBufferHeight(Z);return new xJ(this,Z,$,H,{id:"current buffer",widthMethod:"unicode"})}rendererSetPaletteState(J,Z,$,H,Q){let j=new Uint16Array(Z.length*4);for(let G=0;G<Z.length;G++)j.set(Z[G].buffer,G*4);this.opentui.symbols.rendererSetPaletteState(J,h(j),Z.length,LJ($),LJ(H),Q>>>0)}bufferGetCharPtr(J){let Z=this.opentui.symbols.bufferGetCharPtr(J);if(!Z)throw Error("Failed to get char pointer");return Z}bufferGetFgPtr(J){let Z=this.opentui.symbols.bufferGetFgPtr(J);if(!Z)throw Error("Failed to get fg pointer");return Z}bufferGetBgPtr(J){let Z=this.opentui.symbols.bufferGetBgPtr(J);if(!Z)throw Error("Failed to get bg pointer");return Z}bufferGetAttributesPtr(J){let Z=this.opentui.symbols.bufferGetAttributesPtr(J);if(!Z)throw Error("Failed to get attributes pointer");return Z}bufferGetRespectAlpha(J){return this.opentui.symbols.bufferGetRespectAlpha(J)}bufferSetRespectAlpha(J,Z){this.opentui.symbols.bufferSetRespectAlpha(J,HJ(Z))}bufferGetId(J){let $=new Uint8Array(256),H=this.opentui.symbols.bufferGetId(J,$,256),Q=typeof H==="bigint"?Number(H):H;return this.decoder.decode($.slice(0,Q))}bufferGetRealCharSize(J){return this.opentui.symbols.bufferGetRealCharSize(J)}bufferWriteResolvedChars(J,Z,$){let H=this.opentui.symbols.bufferWriteResolvedChars(J,Z,Z.length,HJ($));return typeof H==="bigint"?Number(H):H}getBufferWidth(J){return this.opentui.symbols.getBufferWidth(J)}getBufferHeight(J){return this.opentui.symbols.getBufferHeight(J)}bufferClear(J,Z){this.opentui.symbols.bufferClear(J,LJ(Z))}bufferDrawText(J,Z,$,H,Q,j,G){let L=this.encoder.encode(Z),Y=L.byteLength,_=$J(j),W=LJ(Q);this.opentui.symbols.bufferDrawText(J,L,Y,$,H,W,_,G??0)}bufferSetCellWithAlphaBlending(J,Z,$,H,Q,j,G){let L=H.codePointAt(0)??" ".codePointAt(0),Y=LJ(j),_=LJ(Q);this.opentui.symbols.bufferSetCellWithAlphaBlending(J,Z,$,L,_,Y,G??0)}bufferSetCell(J,Z,$,H,Q,j,G){let L=H.codePointAt(0)??" ".codePointAt(0),Y=LJ(j),_=LJ(Q);this.opentui.symbols.bufferSetCell(J,Z,$,L,_,Y,G??0)}bufferFillRect(J,Z,$,H,Q,j){let G=LJ(j);this.opentui.symbols.bufferFillRect(J,Z,$,H,Q,G)}bufferColorMatrix(J,Z,$,H,Q,j){this.opentui.symbols.bufferColorMatrix(J,Z,$,H,Q,j)}bufferColorMatrixUniform(J,Z,$,H){this.opentui.symbols.bufferColorMatrixUniform(J,Z,$,H)}bufferDrawSuperSampleBuffer(J,Z,$,H,Q,j,G){let L=j==="bgra8unorm"?0:1;this.opentui.symbols.bufferDrawSuperSampleBuffer(J,Z,$,H,Q,L,G)}bufferDrawPackedBuffer(J,Z,$,H,Q,j,G){this.opentui.symbols.bufferDrawPackedBuffer(J,Z,$,H,Q,j,G)}bufferDrawGrayscaleBuffer(J,Z,$,H,Q,j,G,L){this.opentui.symbols.bufferDrawGrayscaleBuffer(J,Z,$,H,Q,j,$J(G),$J(L))}bufferDrawGrayscaleBufferSupersampled(J,Z,$,H,Q,j,G,L){this.opentui.symbols.bufferDrawGrayscaleBufferSupersampled(J,Z,$,H,Q,j,$J(G),$J(L))}bufferDrawGrid(J,Z,$,H,Q,j,G,L,Y){let _=Y8.pack({drawInner:Y.drawInner,drawOuter:Y.drawOuter});this.opentui.symbols.bufferDrawGrid(J,Z,LJ($),LJ(H),Q,j,G,L,h(_))}bufferDrawBox(J,Z,$,H,Q,j,G,L,Y,_,W,K){let q=W?this.encoder.encode(W):null,N=W?q.length:0,z=W?q:null,P=K?this.encoder.encode(K):null,O=K?P.length:0,A=K?P:null;this.opentui.symbols.bufferDrawBox(J,Z,$,H,Q,j,G,LJ(L),LJ(Y),LJ(_),z,N,A,O)}bufferResize(J,Z,$){this.opentui.symbols.bufferResize(J,Z,$)}linkAlloc(J){let Z=this.encoder.encode(J);return this.opentui.symbols.linkAlloc(Z,Z.length)}linkGetUrl(J,Z=512){let $=new Uint8Array(Z),H=this.opentui.symbols.linkGetUrl(J,$,Z);return this.decoder.decode($.slice(0,H))}attributesWithLink(J,Z){return this.opentui.symbols.attributesWithLink(J,Z)}attributesGetLinkId(J){return this.opentui.symbols.attributesGetLinkId(J)}resizeRenderer(J,Z,$){this.opentui.symbols.resizeRenderer(J,Z,$)}setCursorPosition(J,Z,$,H){this.opentui.symbols.setCursorPosition(J,Z,$,HJ(H))}setCursorColor(J,Z){this.opentui.symbols.setCursorColor(J,LJ(Z))}getCursorState(J){let Z=new ArrayBuffer(U9.size);this.opentui.symbols.getCursorState(J,h(Z));let $=U9.unpack(Z);return{x:$.x,y:$.y,visible:$.visible,style:q8[$.style]??"block",blinking:$.blinking,color:a.fromValues($.r,$.g,$.b,$.a)}}setCursorStyleOptions(J,Z){let $=Z.style!=null?z8[Z.style]:255,H=Z.blinking!=null?Z.blinking?1:0:255,Q=Z.cursor!=null?P8[Z.cursor]:255,j=D8.pack({style:$,blinking:H,color:Z.color,cursor:Q});this.opentui.symbols.setCursorStyleOptions(J,h(j))}render(J,Z){return this.opentui.symbols.render(J,HJ(Z))}unpackRenderOperationResult(J){let Z=typeof J==="bigint"?J:BigInt(J);return{renderOffset:Number(Z&0xffffffffn),status:Number(Z>>32n&0xffn)}}repaintSplitFooter(J,Z,$){return this.unpackRenderOperationResult(this.opentui.symbols.repaintSplitFooter(J,Z,HJ($)))}commitSplitFooterSnapshot(J,Z,$,H,Q,j,G,L=!0,Y=!0){return this.unpackRenderOperationResult(this.opentui.symbols.commitSplitFooterSnapshot(J,Z.ptr,$,HJ(H),HJ(Q),j,HJ(G),HJ(L),HJ(Y)))}createOptimizedBuffer(J,Z,$,H=!1,Q){if(Number.isNaN(J)||Number.isNaN(Z))console.error(Error(`Invalid dimensions for OptimizedBuffer: ${J}x${Z}`).stack);let j=$==="wcwidth"?0:1,G=Q||"unnamed buffer",L=this.encoder.encode(G),Y=this.opentui.symbols.createOptimizedBuffer(J,Z,HJ(H),j,L,L.length);if(!Y)throw Error(`Failed to create optimized buffer: ${J}x${Z}`);return new xJ(this,Y,J,Z,{respectAlpha:H,id:Q,widthMethod:$})}destroyOptimizedBuffer(J){this.opentui.symbols.destroyOptimizedBuffer(J)}drawFrameBuffer(J,Z,$,H,Q,j,G,L){let Y=Q??0,_=j??0,W=G??0,K=L??0;this.opentui.symbols.drawFrameBuffer(J,Z,$,H,Y,_,W,K)}setDebugOverlay(J,Z,$){this.opentui.symbols.setDebugOverlay(J,HJ(Z),$)}clearTerminal(J){this.opentui.symbols.clearTerminal(J)}setTerminalTitle(J,Z){let $=this.encoder.encode(Z);this.opentui.symbols.setTerminalTitle(J,$,$.length)}copyToClipboardOSC52(J,Z,$){return this.opentui.symbols.copyToClipboardOSC52(J,Z,$,$.length)}clearClipboardOSC52(J,Z){return this.opentui.symbols.clearClipboardOSC52(J,Z)}triggerNotification(J,Z,$){let H=this.encoder.encode(Z),Q=$===void 0?null:this.encoder.encode($);return this.opentui.symbols.triggerNotification(J,H,H.length,Q,Q?.length??0)}addToHitGrid(J,Z,$,H,Q,j){this.opentui.symbols.addToHitGrid(J,Z,$,H,Q,j)}clearCurrentHitGrid(J){this.opentui.symbols.clearCurrentHitGrid(J)}hitGridPushScissorRect(J,Z,$,H,Q){this.opentui.symbols.hitGridPushScissorRect(J,Z,$,H,Q)}hitGridPopScissorRect(J){this.opentui.symbols.hitGridPopScissorRect(J)}hitGridClearScissorRects(J){this.opentui.symbols.hitGridClearScissorRects(J)}addToCurrentHitGridClipped(J,Z,$,H,Q,j){this.opentui.symbols.addToCurrentHitGridClipped(J,Z,$,H,Q,j)}checkHit(J,Z,$){return this.opentui.symbols.checkHit(J,Z,$)}getHitGridDirty(J){return this.opentui.symbols.getHitGridDirty(J)}dumpHitGrid(J){this.opentui.symbols.dumpHitGrid(J)}dumpBuffers(J,Z){let $=Z??Date.now();this.opentui.symbols.dumpBuffers(J,$)}dumpOutputBuffer(J,Z){let $=Z??Date.now();this.opentui.symbols.dumpOutputBuffer(J,$)}restoreTerminalModes(J){this.opentui.symbols.restoreTerminalModes(J)}enableMouse(J,Z){this.opentui.symbols.enableMouse(J,HJ(Z))}disableMouse(J){this.opentui.symbols.disableMouse(J)}enableKittyKeyboard(J,Z){this.opentui.symbols.enableKittyKeyboard(J,Z)}disableKittyKeyboard(J){this.opentui.symbols.disableKittyKeyboard(J)}setKittyKeyboardFlags(J,Z){this.opentui.symbols.setKittyKeyboardFlags(J,Z)}getKittyKeyboardFlags(J){return this.opentui.symbols.getKittyKeyboardFlags(J)}setupTerminal(J,Z){this.opentui.symbols.setupTerminal(J,HJ(Z))}suspendRenderer(J){this.opentui.symbols.suspendRenderer(J)}resumeRenderer(J){this.opentui.symbols.resumeRenderer(J)}queryPixelResolution(J){this.opentui.symbols.queryPixelResolution(J)}queryThemeColors(J){this.opentui.symbols.queryThemeColors(J)}writeOut(J,Z){let $=typeof Z==="string"?new TextEncoder().encode(Z):Z;if($.length===0)return;this.opentui.symbols.writeOut(J,h($),$.length)}createTextBuffer(J){let Z=J==="wcwidth"?0:1,$=this.opentui.symbols.createTextBuffer(Z);if(!$)throw Error("Failed to create TextBuffer");return new a2(this,$)}destroyTextBuffer(J){this.opentui.symbols.destroyTextBuffer(J)}textBufferGetLength(J){return this.opentui.symbols.textBufferGetLength(J)}textBufferGetByteSize(J){return this.opentui.symbols.textBufferGetByteSize(J)}textBufferReset(J){this.opentui.symbols.textBufferReset(J)}textBufferClear(J){this.opentui.symbols.textBufferClear(J)}textBufferSetDefaultFg(J,Z){let $=$J(Z);this.opentui.symbols.textBufferSetDefaultFg(J,$)}textBufferSetDefaultBg(J,Z){let $=$J(Z);this.opentui.symbols.textBufferSetDefaultBg(J,$)}textBufferSetDefaultAttributes(J,Z){let $=Z===null?null:new Uint8Array([Z]);this.opentui.symbols.textBufferSetDefaultAttributes(J,$)}textBufferResetDefaults(J){this.opentui.symbols.textBufferResetDefaults(J)}textBufferGetTabWidth(J){return this.opentui.symbols.textBufferGetTabWidth(J)}textBufferSetTabWidth(J,Z){this.opentui.symbols.textBufferSetTabWidth(J,Z)}textBufferRegisterMemBuffer(J,Z,$=!1){let H=this.opentui.symbols.textBufferRegisterMemBuffer(J,Z,Z.length,HJ($));if(H===65535)throw Error("Failed to register memory buffer");return H}textBufferReplaceMemBuffer(J,Z,$,H=!1){return this.opentui.symbols.textBufferReplaceMemBuffer(J,Z,$,$.length,HJ(H))}textBufferClearMemRegistry(J){this.opentui.symbols.textBufferClearMemRegistry(J)}textBufferSetTextFromMem(J,Z){this.opentui.symbols.textBufferSetTextFromMem(J,Z)}textBufferAppend(J,Z){this.opentui.symbols.textBufferAppend(J,Z,Z.length)}textBufferAppendFromMemId(J,Z){this.opentui.symbols.textBufferAppendFromMemId(J,Z)}textBufferLoadFile(J,Z){let $=this.encoder.encode(Z);return this.opentui.symbols.textBufferLoadFile(J,$,$.length)}textBufferSetStyledText(J,Z){if(Z.length===0){this.textBufferClear(J);return}let $=Q9.packList(Z);this.opentui.symbols.textBufferSetStyledText(J,h($),Z.length)}textBufferGetLineCount(J){return this.opentui.symbols.textBufferGetLineCount(J)}textBufferGetPlainText(J,Z,$){let H=this.opentui.symbols.textBufferGetPlainText(J,Z,$);return typeof H==="bigint"?Number(H):H}getPlainTextBytes(J,Z){let $=new Uint8Array(Z),H=this.textBufferGetPlainText(J,h($),Z);if(H===0)return null;return $.slice(0,H)}textBufferGetTextRange(J,Z,$,H){let Q=new Uint8Array(H),j=this.opentui.symbols.textBufferGetTextRange(J,Z,$,h(Q),H),G=typeof j==="bigint"?Number(j):j;if(G===0)return null;return Q.slice(0,G)}textBufferGetTextRangeByCoords(J,Z,$,H,Q,j){let G=new Uint8Array(j),L=this.opentui.symbols.textBufferGetTextRangeByCoords(J,Z,$,H,Q,h(G),j),Y=typeof L==="bigint"?Number(L):L;if(Y===0)return null;return G.slice(0,Y)}createTextBufferView(J){let Z=this.opentui.symbols.createTextBufferView(J);if(!Z)throw Error("Failed to create TextBufferView");return Z}destroyTextBufferView(J){this.opentui.symbols.destroyTextBufferView(J)}textBufferViewSetSelection(J,Z,$,H,Q){let j=$J(H),G=$J(Q);this.opentui.symbols.textBufferViewSetSelection(J,Z,$,j,G)}textBufferViewResetSelection(J){this.opentui.symbols.textBufferViewResetSelection(J)}textBufferViewGetSelection(J){let Z=this.textBufferViewGetSelectionInfo(J);if(Z===0xffff_ffff_ffff_ffffn)return null;let $=Number(Z>>32n),H=Number(Z&0xffff_ffffn);return{start:$,end:H}}textBufferViewGetSelectionInfo(J){return this.opentui.symbols.textBufferViewGetSelectionInfo(J)}textBufferViewSetLocalSelection(J,Z,$,H,Q,j,G){let L=$J(j),Y=$J(G);return this.opentui.symbols.textBufferViewSetLocalSelection(J,Z,$,H,Q,L,Y)}textBufferViewUpdateSelection(J,Z,$,H){let Q=$J($),j=$J(H);this.opentui.symbols.textBufferViewUpdateSelection(J,Z,Q,j)}textBufferViewUpdateLocalSelection(J,Z,$,H,Q,j,G){let L=$J(j),Y=$J(G);return this.opentui.symbols.textBufferViewUpdateLocalSelection(J,Z,$,H,Q,L,Y)}textBufferViewResetLocalSelection(J){this.opentui.symbols.textBufferViewResetLocalSelection(J)}textBufferViewSetWrapWidth(J,Z){this.opentui.symbols.textBufferViewSetWrapWidth(J,Z)}textBufferViewSetWrapMode(J,Z){let $=Z==="none"?0:Z==="char"?1:2;this.opentui.symbols.textBufferViewSetWrapMode(J,$)}textBufferViewSetFirstLineOffset(J,Z){this.opentui.symbols.textBufferViewSetFirstLineOffset(J,Z)}textBufferViewSetViewportSize(J,Z,$){this.opentui.symbols.textBufferViewSetViewportSize(J,Z,$)}textBufferViewSetViewport(J,Z,$,H,Q){this.opentui.symbols.textBufferViewSetViewport(J,Z,$,H,Q)}textBufferViewGetLineInfo(J){let Z=new ArrayBuffer(GZ.size);this.textBufferViewGetLineInfoDirect(J,h(Z));let $=GZ.unpack(Z),H=$.startCols,Q=$.widthCols,j=$.widthColsMax;return{lineStartCols:H,lineWidthCols:Q,lineWidthColsMax:j,lineSources:$.sources,lineWraps:$.wraps}}textBufferViewGetLogicalLineInfo(J){let Z=new ArrayBuffer(GZ.size);this.textBufferViewGetLogicalLineInfoDirect(J,h(Z));let $=GZ.unpack(Z),H=$.startCols,Q=$.widthCols,j=$.widthColsMax;return{lineStartCols:H,lineWidthCols:Q,lineWidthColsMax:j,lineSources:$.sources,lineWraps:$.wraps}}textBufferViewGetVirtualLineCount(J){return this.opentui.symbols.textBufferViewGetVirtualLineCount(J)}textBufferViewGetLineInfoDirect(J,Z){this.opentui.symbols.textBufferViewGetLineInfoDirect(J,Z)}textBufferViewGetLogicalLineInfoDirect(J,Z){this.opentui.symbols.textBufferViewGetLogicalLineInfoDirect(J,Z)}textBufferViewGetSelectedText(J,Z,$){let H=this.opentui.symbols.textBufferViewGetSelectedText(J,Z,$);return typeof H==="bigint"?Number(H):H}textBufferViewGetPlainText(J,Z,$){let H=this.opentui.symbols.textBufferViewGetPlainText(J,Z,$);return typeof H==="bigint"?Number(H):H}textBufferViewGetSelectedTextBytes(J,Z){let $=new Uint8Array(Z),H=this.textBufferViewGetSelectedText(J,h($),Z);if(H===0)return null;return $.slice(0,H)}textBufferViewGetPlainTextBytes(J,Z){let $=new Uint8Array(Z),H=this.textBufferViewGetPlainText(J,h($),Z);if(H===0)return null;return $.slice(0,H)}textBufferViewSetTabIndicator(J,Z){this.opentui.symbols.textBufferViewSetTabIndicator(J,Z)}textBufferViewSetTabIndicatorColor(J,Z){this.opentui.symbols.textBufferViewSetTabIndicatorColor(J,LJ(Z))}textBufferViewSetTruncate(J,Z){this.opentui.symbols.textBufferViewSetTruncate(J,HJ(Z))}textBufferViewMeasureForDimensions(J,Z,$){let H=new ArrayBuffer(L9.size),Q=h(new Uint8Array(H));if(!this.opentui.symbols.textBufferViewMeasureForDimensions(J,Z,$,Q))return null;return L9.unpack(H)}textBufferAddHighlightByCharRange(J,Z){let $=A0.pack(Z);this.opentui.symbols.textBufferAddHighlightByCharRange(J,h($))}textBufferAddHighlight(J,Z,$){let H=A0.pack($);this.opentui.symbols.textBufferAddHighlight(J,Z,h(H))}textBufferRemoveHighlightsByRef(J,Z){this.opentui.symbols.textBufferRemoveHighlightsByRef(J,Z)}textBufferClearLineHighlights(J,Z){this.opentui.symbols.textBufferClearLineHighlights(J,Z)}textBufferClearAllHighlights(J){this.opentui.symbols.textBufferClearAllHighlights(J)}textBufferSetSyntaxStyle(J,Z){this.opentui.symbols.textBufferSetSyntaxStyle(J,Z)}textBufferGetLineHighlights(J,Z){let $=new BigUint64Array(1),H=this.opentui.symbols.textBufferGetLineHighlightsPtr(J,Z,h($));if(!H)return[];let Q=Number($[0]),j=Q*A0.size,G=RJ(H,0,j),L=A0.unpackList(G,Q);return this.opentui.symbols.textBufferFreeLineHighlights(H,Q),L}textBufferGetHighlightCount(J){return this.opentui.symbols.textBufferGetHighlightCount(J)}getArenaAllocatedBytes(){let J=this.opentui.symbols.getArenaAllocatedBytes();return typeof J==="bigint"?Number(J):J}getBuildOptions(){let J=new ArrayBuffer(D9.size);this.opentui.symbols.getBuildOptions(h(J));let Z=D9.unpack(J);return{gpaSafeStats:!!Z.gpaSafeStats,gpaMemoryLimitTracking:!!Z.gpaMemoryLimitTracking}}getAllocatorStats(){let J=new ArrayBuffer(Y9.size);this.opentui.symbols.getAllocatorStats(h(J));let Z=Y9.unpack(J);return{totalRequestedBytes:NZ(Z.totalRequestedBytes),activeAllocations:NZ(Z.activeAllocations),smallAllocations:NZ(Z.smallAllocations),largeAllocations:NZ(Z.largeAllocations),requestedBytesValid:!!Z.requestedBytesValid}}bufferDrawTextBufferView(J,Z,$,H){this.opentui.symbols.bufferDrawTextBufferView(J,Z,$,H)}bufferDrawEditorView(J,Z,$,H){this.opentui.symbols.bufferDrawEditorView(J,Z,$,H)}createEditorView(J,Z,$){let H=this.opentui.symbols.createEditorView(J,Z,$);if(!H)throw Error("Failed to create EditorView");return H}destroyEditorView(J){this.opentui.symbols.destroyEditorView(J)}editorViewSetViewportSize(J,Z,$){this.opentui.symbols.editorViewSetViewportSize(J,Z,$)}editorViewSetViewport(J,Z,$,H,Q,j){this.opentui.symbols.editorViewSetViewport(J,Z,$,H,Q,HJ(j))}editorViewGetViewport(J){let Z=new Uint32Array(1),$=new Uint32Array(1),H=new Uint32Array(1),Q=new Uint32Array(1);return this.opentui.symbols.editorViewGetViewport(J,h(Z),h($),h(H),h(Q)),{offsetX:Z[0],offsetY:$[0],width:H[0],height:Q[0]}}editorViewSetScrollMargin(J,Z){this.opentui.symbols.editorViewSetScrollMargin(J,Z)}editorViewSetWrapMode(J,Z){let $=Z==="none"?0:Z==="char"?1:2;this.opentui.symbols.editorViewSetWrapMode(J,$)}editorViewGetVirtualLineCount(J){return this.opentui.symbols.editorViewGetVirtualLineCount(J)}editorViewGetTotalVirtualLineCount(J){return this.opentui.symbols.editorViewGetTotalVirtualLineCount(J)}editorViewGetTextBufferView(J){let Z=this.opentui.symbols.editorViewGetTextBufferView(J);if(!Z)throw Error("Failed to get TextBufferView from EditorView");return Z}editorViewGetLineInfo(J){let Z=new ArrayBuffer(GZ.size);this.opentui.symbols.editorViewGetLineInfoDirect(J,h(Z));let $=GZ.unpack(Z),H=$.startCols,Q=$.widthCols,j=$.widthColsMax;return{lineStartCols:H,lineWidthCols:Q,lineWidthColsMax:j,lineSources:$.sources,lineWraps:$.wraps}}editorViewGetLogicalLineInfo(J){let Z=new ArrayBuffer(GZ.size);this.opentui.symbols.editorViewGetLogicalLineInfoDirect(J,h(Z));let $=GZ.unpack(Z),H=$.startCols,Q=$.widthCols,j=$.widthColsMax;return{lineStartCols:H,lineWidthCols:Q,lineWidthColsMax:j,lineSources:$.sources,lineWraps:$.wraps}}createEditBuffer(J){let Z=J==="wcwidth"?0:1,$=this.opentui.symbols.createEditBuffer(Z,this.eventSinkPtr??0);if(!$)throw Error("Failed to create EditBuffer");return $}destroyEditBuffer(J){this.opentui.symbols.destroyEditBuffer(J)}editBufferSetText(J,Z){this.opentui.symbols.editBufferSetText(J,Z,Z.length)}editBufferSetTextFromMem(J,Z){this.opentui.symbols.editBufferSetTextFromMem(J,Z)}editBufferReplaceText(J,Z){this.opentui.symbols.editBufferReplaceText(J,Z,Z.length)}editBufferReplaceTextFromMem(J,Z){this.opentui.symbols.editBufferReplaceTextFromMem(J,Z)}editBufferGetText(J,Z){let $=new Uint8Array(Z),H=this.opentui.symbols.editBufferGetText(J,h($),Z),Q=typeof H==="bigint"?Number(H):H;if(Q===0)return null;return $.slice(0,Q)}editBufferInsertChar(J,Z){let $=this.encoder.encode(Z);this.opentui.symbols.editBufferInsertChar(J,$,$.length)}editBufferInsertText(J,Z){let $=this.encoder.encode(Z);this.opentui.symbols.editBufferInsertText(J,$,$.length)}editBufferDeleteChar(J){this.opentui.symbols.editBufferDeleteChar(J)}editBufferDeleteCharBackward(J){this.opentui.symbols.editBufferDeleteCharBackward(J)}editBufferDeleteRange(J,Z,$,H,Q){this.opentui.symbols.editBufferDeleteRange(J,Z,$,H,Q)}editBufferNewLine(J){this.opentui.symbols.editBufferNewLine(J)}editBufferDeleteLine(J){this.opentui.symbols.editBufferDeleteLine(J)}editBufferMoveCursorLeft(J){this.opentui.symbols.editBufferMoveCursorLeft(J)}editBufferMoveCursorRight(J){this.opentui.symbols.editBufferMoveCursorRight(J)}editBufferMoveCursorUp(J){this.opentui.symbols.editBufferMoveCursorUp(J)}editBufferMoveCursorDown(J){this.opentui.symbols.editBufferMoveCursorDown(J)}editBufferGotoLine(J,Z){this.opentui.symbols.editBufferGotoLine(J,Z)}editBufferSetCursor(J,Z,$){this.opentui.symbols.editBufferSetCursor(J,Z,$)}editBufferSetCursorToLineCol(J,Z,$){this.opentui.symbols.editBufferSetCursorToLineCol(J,Z,$)}editBufferSetCursorByOffset(J,Z){this.opentui.symbols.editBufferSetCursorByOffset(J,Z)}editBufferGetCursorPosition(J){let Z=new ArrayBuffer(lJ.size);return this.opentui.symbols.editBufferGetCursorPosition(J,h(Z)),lJ.unpack(Z)}editBufferGetId(J){return this.opentui.symbols.editBufferGetId(J)}editBufferGetTextBuffer(J){let Z=this.opentui.symbols.editBufferGetTextBuffer(J);if(!Z)throw Error("Failed to get TextBuffer from EditBuffer");return Z}editBufferDebugLogRope(J){this.opentui.symbols.editBufferDebugLogRope(J)}editBufferUndo(J,Z){let $=new Uint8Array(Z),H=this.opentui.symbols.editBufferUndo(J,h($),Z),Q=typeof H==="bigint"?Number(H):H;if(Q===0)return null;return $.slice(0,Q)}editBufferRedo(J,Z){let $=new Uint8Array(Z),H=this.opentui.symbols.editBufferRedo(J,h($),Z),Q=typeof H==="bigint"?Number(H):H;if(Q===0)return null;return $.slice(0,Q)}editBufferCanUndo(J){return this.opentui.symbols.editBufferCanUndo(J)}editBufferCanRedo(J){return this.opentui.symbols.editBufferCanRedo(J)}editBufferClearHistory(J){this.opentui.symbols.editBufferClearHistory(J)}editBufferClear(J){this.opentui.symbols.editBufferClear(J)}editBufferGetNextWordBoundary(J){let Z=new ArrayBuffer(lJ.size);return this.opentui.symbols.editBufferGetNextWordBoundary(J,h(Z)),lJ.unpack(Z)}editBufferGetPrevWordBoundary(J){let Z=new ArrayBuffer(lJ.size);return this.opentui.symbols.editBufferGetPrevWordBoundary(J,h(Z)),lJ.unpack(Z)}editBufferGetEOL(J){let Z=new ArrayBuffer(lJ.size);return this.opentui.symbols.editBufferGetEOL(J,h(Z)),lJ.unpack(Z)}editBufferOffsetToPosition(J,Z){let $=new ArrayBuffer(lJ.size);if(!this.opentui.symbols.editBufferOffsetToPosition(J,Z,h($)))return null;return lJ.unpack($)}editBufferPositionToOffset(J,Z,$){return this.opentui.symbols.editBufferPositionToOffset(J,Z,$)}editBufferGetLineStartOffset(J,Z){return this.opentui.symbols.editBufferGetLineStartOffset(J,Z)}editBufferGetTextRange(J,Z,$,H){let Q=new Uint8Array(H),j=this.opentui.symbols.editBufferGetTextRange(J,Z,$,h(Q),H),G=typeof j==="bigint"?Number(j):j;if(G===0)return null;return Q.slice(0,G)}editBufferGetTextRangeByCoords(J,Z,$,H,Q,j){let G=new Uint8Array(j),L=this.opentui.symbols.editBufferGetTextRangeByCoords(J,Z,$,H,Q,h(G),j),Y=typeof L==="bigint"?Number(L):L;if(Y===0)return null;return G.slice(0,Y)}editorViewSetSelection(J,Z,$,H,Q){let j=$J(H),G=$J(Q);this.opentui.symbols.editorViewSetSelection(J,Z,$,j,G)}editorViewResetSelection(J){this.opentui.symbols.editorViewResetSelection(J)}editorViewGetSelection(J){let Z=this.opentui.symbols.editorViewGetSelection(J);if(Z===0xffff_ffff_ffff_ffffn)return null;let $=Number(Z>>32n),H=Number(Z&0xffff_ffffn);return{start:$,end:H}}editorViewSetLocalSelection(J,Z,$,H,Q,j,G,L,Y){let _=$J(j),W=$J(G);return this.opentui.symbols.editorViewSetLocalSelection(J,Z,$,H,Q,_,W,HJ(L),HJ(Y))}editorViewUpdateSelection(J,Z,$,H){let Q=$J($),j=$J(H);this.opentui.symbols.editorViewUpdateSelection(J,Z,Q,j)}editorViewUpdateLocalSelection(J,Z,$,H,Q,j,G,L,Y){let _=$J(j),W=$J(G);return this.opentui.symbols.editorViewUpdateLocalSelection(J,Z,$,H,Q,_,W,HJ(L),HJ(Y))}editorViewResetLocalSelection(J){this.opentui.symbols.editorViewResetLocalSelection(J)}editorViewGetSelectedTextBytes(J,Z){let $=new Uint8Array(Z),H=this.opentui.symbols.editorViewGetSelectedTextBytes(J,h($),Z),Q=typeof H==="bigint"?Number(H):H;if(Q===0)return null;return $.slice(0,Q)}editorViewGetCursor(J){let Z=new Uint32Array(1),$=new Uint32Array(1);return this.opentui.symbols.editorViewGetCursor(J,h(Z),h($)),{row:Z[0],col:$[0]}}editorViewGetText(J,Z){let $=new Uint8Array(Z),H=this.opentui.symbols.editorViewGetText(J,h($),Z),Q=typeof H==="bigint"?Number(H):H;if(Q===0)return null;return $.slice(0,Q)}editorViewGetVisualCursor(J){let Z=new ArrayBuffer(CJ.size);return this.opentui.symbols.editorViewGetVisualCursor(J,h(Z)),CJ.unpack(Z)}editorViewMoveUpVisual(J){this.opentui.symbols.editorViewMoveUpVisual(J)}editorViewMoveDownVisual(J){this.opentui.symbols.editorViewMoveDownVisual(J)}editorViewDeleteSelectedText(J){this.opentui.symbols.editorViewDeleteSelectedText(J)}editorViewSetCursorByOffset(J,Z){this.opentui.symbols.editorViewSetCursorByOffset(J,Z)}editorViewGetNextWordBoundary(J){let Z=new ArrayBuffer(CJ.size);return this.opentui.symbols.editorViewGetNextWordBoundary(J,h(Z)),CJ.unpack(Z)}editorViewGetPrevWordBoundary(J){let Z=new ArrayBuffer(CJ.size);return this.opentui.symbols.editorViewGetPrevWordBoundary(J,h(Z)),CJ.unpack(Z)}editorViewGetEOL(J){let Z=new ArrayBuffer(CJ.size);return this.opentui.symbols.editorViewGetEOL(J,h(Z)),CJ.unpack(Z)}editorViewGetVisualSOL(J){let Z=new ArrayBuffer(CJ.size);return this.opentui.symbols.editorViewGetVisualSOL(J,h(Z)),CJ.unpack(Z)}editorViewGetVisualEOL(J){let Z=new ArrayBuffer(CJ.size);return this.opentui.symbols.editorViewGetVisualEOL(J,h(Z)),CJ.unpack(Z)}bufferPushScissorRect(J,Z,$,H,Q){this.opentui.symbols.bufferPushScissorRect(J,Z,$,H,Q)}bufferPopScissorRect(J){this.opentui.symbols.bufferPopScissorRect(J)}bufferClearScissorRects(J){this.opentui.symbols.bufferClearScissorRects(J)}bufferPushOpacity(J,Z){this.opentui.symbols.bufferPushOpacity(J,Z)}bufferPopOpacity(J){this.opentui.symbols.bufferPopOpacity(J)}bufferGetCurrentOpacity(J){return this.opentui.symbols.bufferGetCurrentOpacity(J)}bufferClearOpacity(J){this.opentui.symbols.bufferClearOpacity(J)}getTerminalCapabilities(J){let Z=new ArrayBuffer(j9.size);this.opentui.symbols.getTerminalCapabilities(J,h(Z));let $=j9.unpack(Z);return{kitty_keyboard:$.kitty_keyboard,kitty_graphics:$.kitty_graphics,rgb:$.rgb,ansi256:$.ansi256,unicode:$.unicode,sgr_pixels:$.sgr_pixels,color_scheme_updates:$.color_scheme_updates,explicit_width:$.explicit_width,scaled_text:$.scaled_text,sixel:$.sixel,focus_tracking:$.focus_tracking,sync:$.sync,bracketed_paste:$.bracketed_paste,hyperlinks:$.hyperlinks,osc52:$.osc52,notifications:$.notifications,explicit_cursor_positioning:$.explicit_cursor_positioning,remote:$.remote,multiplexer:$.multiplexer,terminal:{name:$.term_name??"",version:$.term_version??"",from_xtversion:$.term_from_xtversion}}}processCapabilityResponse(J,Z){let $=this.encoder.encode(Z);this.opentui.symbols.processCapabilityResponse(J,$,$.length)}encodeUnicode(J,Z){let $=this.encoder.encode(J),H=Z==="wcwidth"?0:1,Q=new ArrayBuffer(8),j=new ArrayBuffer(8);if(!this.opentui.symbols.encodeUnicode($,$.length,h(Q),h(j),H))return null;let L=new BigUint64Array(Q),Y=new BigUint64Array(j),_=C2(L[0]),W=Number(Y[0]);if(W===0)return{ptr:_,data:[]};let K=W*G9.size,q=RJ(_,0,K),N=G9.unpackList(q,W);return{ptr:_,data:N}}freeUnicode(J){this.opentui.symbols.freeUnicode(J.ptr,J.data.length)}bufferDrawChar(J,Z,$,H,Q,j,G=0){this.opentui.symbols.bufferDrawChar(J,Z,$,H,LJ(Q),LJ(j),G)}createAudioEngine(J){let Z=J==null?null:W8.pack(J),$=this.opentui.symbols.createAudioEngine(Z?h(Z):null);return $?$:null}destroyAudioEngine(J){this.opentui.symbols.destroyAudioEngine(J)}audioRefreshPlaybackDevices(J){return this.opentui.symbols.audioRefreshPlaybackDevices(J)}audioGetPlaybackDeviceCount(J){return this.opentui.symbols.audioGetPlaybackDeviceCount(J)}audioGetPlaybackDeviceName(J,Z){let $=new Uint8Array(512),H=NZ(this.opentui.symbols.audioGetPlaybackDeviceName(J,Z,h($),$.length)),Q=Math.max(0,Math.min($.length,H));return this.decoder.decode($.subarray(0,Q))}audioIsPlaybackDeviceDefault(J,Z){return this.opentui.symbols.audioIsPlaybackDeviceDefault(J,Z)}audioSelectPlaybackDevice(J,Z){return this.opentui.symbols.audioSelectPlaybackDevice(J,Z)}audioClearPlaybackDeviceSelection(J){this.opentui.symbols.audioClearPlaybackDeviceSelection(J)}audioStart(J,Z){let $=Z==null?null:X8.pack(Z);return this.opentui.symbols.audioStart(J,$?h($):null)}audioStartMixer(J){return this.opentui.symbols.audioStartMixer(J)}audioStop(J){return this.opentui.symbols.audioStop(J)}audioLoad(J,Z){let $=new ArrayBuffer(4),H=this.opentui.symbols.audioLoad(J,h(Z),Z.length,h($));if(H!==0)return{status:H,soundId:null};let Q=new Uint32Array($);return{status:H,soundId:Q[0]}}audioUnload(J,Z){return this.opentui.symbols.audioUnload(J,Z)}audioPlay(J,Z,$){let H=new ArrayBuffer(4),Q=$?A8.pack($):null,j=this.opentui.symbols.audioPlay(J,Z,Q?h(Q):null,h(H));if(j!==0)return{status:j,voiceId:null};let G=new Uint32Array(H);return{status:j,voiceId:G[0]}}audioStopVoice(J,Z){return this.opentui.symbols.audioStopVoice(J,Z)}audioSetVoiceGroup(J,Z,$){return this.opentui.symbols.audioSetVoiceGroup(J,Z,$)}audioCreateGroup(J,Z){let $=new ArrayBuffer(4),H=this.encoder.encode(Z),Q=this.opentui.symbols.audioCreateGroup(J,h(H),H.length,h($));if(Q!==0)return{status:Q,groupId:null};let j=new Uint32Array($);return{status:Q,groupId:j[0]}}audioSetGroupVolume(J,Z,$){return this.opentui.symbols.audioSetGroupVolume(J,Z,$)}audioSetMasterVolume(J,Z){return this.opentui.symbols.audioSetMasterVolume(J,Z)}audioMixToBuffer(J,Z,$,H){return this.opentui.symbols.audioMixToBuffer(J,h(Z),$,H)}audioEnableTap(J,Z,$){return this.opentui.symbols.audioEnableTap(J,Z,$)}audioReadTap(J,Z,$,H){let Q=new ArrayBuffer(4),j=this.opentui.symbols.audioReadTap(J,h(Z),$,H,h(Q));if(j!==0)return{status:j,framesRead:0};let G=new Uint32Array(Q);return{status:j,framesRead:G[0]??0}}audioGetStats(J){let Z=new ArrayBuffer(N9.size);if(this.opentui.symbols.audioGetStats(J,h(Z))!==0)return null;let H=N9.unpack(Z);return{soundsLoaded:H.soundsLoaded,voicesActive:H.voicesActive,framesMixed:typeof H.framesMixed==="bigint"?H.framesMixed:BigInt(H.framesMixed),lockMisses:H.lockMisses,lastPeak:H.lastPeak,lastRms:H.lastRms}}registerNativeSpanFeedStream(J,Z){let $=this.ensureNativeSpanFeedCallback();this.nativeSpanFeedHandlers.set(J,Z),this.opentui.symbols.streamSetCallback(J,$.ptr)}unregisterNativeSpanFeedStream(J){this.opentui.symbols.streamSetCallback(J,null),this.nativeSpanFeedHandlers.delete(J)}createNativeSpanFeed(J){let Z=J==null?null:W9.pack(J),$=this.opentui.symbols.createNativeSpanFeed(Z?h(Z):null);if(!$)throw Error("Failed to create stream");return $}attachNativeSpanFeed(J){return this.opentui.symbols.attachNativeSpanFeed(J)}destroyNativeSpanFeed(J){this.opentui.symbols.destroyNativeSpanFeed(J),this.nativeSpanFeedHandlers.delete(J)}streamWrite(J,Z){let $=typeof Z==="string"?this.encoder.encode(Z):Z;return this.opentui.symbols.streamWrite(J,h($),$.length)}streamCommit(J){return this.opentui.symbols.streamCommit(J)}streamDrainSpans(J,Z,$){let H=this.opentui.symbols.streamDrainSpans(J,h(Z),$);return NZ(H)}streamClose(J){return this.opentui.symbols.streamClose(J)}streamSetOptions(J,Z){let $=W9.pack(Z);return this.opentui.symbols.streamSetOptions(J,h($))}streamGetStats(J){let Z=new ArrayBuffer(X9.size);if(this.opentui.symbols.streamGetStats(J,h(Z))!==0)return null;let H=X9.unpack(Z);return{bytesWritten:typeof H.bytesWritten==="bigint"?H.bytesWritten:BigInt(H.bytesWritten),spansCommitted:typeof H.spansCommitted==="bigint"?H.spansCommitted:BigInt(H.spansCommitted),chunks:H.chunks,pendingSpans:H.pendingSpans}}streamReserve(J,Z){let $=new ArrayBuffer(A9.size),H=this.opentui.symbols.streamReserve(J,Z,h($));if(H!==0)return{status:H,info:null};return{status:H,info:A9.unpack($)}}streamCommitReserved(J,Z){return this.opentui.symbols.streamCommitReserved(J,Z)}createSyntaxStyle(){let J=this.opentui.symbols.createSyntaxStyle();if(!J)throw Error("Failed to create SyntaxStyle");return J}destroySyntaxStyle(J){this.opentui.symbols.destroySyntaxStyle(J)}syntaxStyleRegister(J,Z,$,H,Q){let j=this.encoder.encode(Z),G=$J($),L=$J(H);return this.opentui.symbols.syntaxStyleRegister(J,j,j.length,G,L,Q)}syntaxStyleResolveByName(J,Z){let $=this.encoder.encode(Z),H=this.opentui.symbols.syntaxStyleResolveByName(J,$,$.length);return H===0?null:H}syntaxStyleGetStyleCount(J){let Z=this.opentui.symbols.syntaxStyleGetStyleCount(J);return typeof Z==="bigint"?Number(Z):Z}editorViewSetPlaceholderStyledText(J,Z){let $=Z.filter((Q)=>Q.text.length>0);if($.length===0){this.opentui.symbols.editorViewSetPlaceholderStyledText(J,null,0);return}let H=Q9.packList($);this.opentui.symbols.editorViewSetPlaceholderStyledText(J,h(H),$.length)}editorViewSetTabIndicator(J,Z){this.opentui.symbols.editorViewSetTabIndicator(J,Z)}editorViewSetTabIndicatorColor(J,Z){this.opentui.symbols.editorViewSetTabIndicatorColor(J,LJ(Z))}onNativeEvent(J,Z){this._nativeEvents.on(J,Z)}onceNativeEvent(J,Z){this._nativeEvents.once(J,Z)}offNativeEvent(J,Z){this._nativeEvents.off(J,Z)}onAnyNativeEvent(J){this._anyEventHandlers.push(J)}}var F0,PZ,N$=!1;function D4(J){if(F0!==J){if(N$)throw Error("setRenderLibPath() must be called before resolveRenderLib()");if(PZ instanceof x0)PZ.dispose();F0=J,PZ=void 0}}function TJ(){if(!PZ)try{PZ=new x0(F0)}catch(J){throw Error(`Failed to initialize OpenTUI render library: ${J instanceof Error?J.message:"Unknown error"}`)}return N$=!0,PZ}try{PZ=new x0(F0)}catch(J){}class a2{lib;bufferPtr;_length=0;_byteSize=0;_lineInfo;_destroyed=!1;_syntaxStyle;_textBytes;_memId;_appendedChunks=[];constructor(J,Z){this.lib=J,this.bufferPtr=Z}static create(J){return TJ().createTextBuffer(J)}guard(){if(this._destroyed)throw Error("TextBuffer is destroyed")}setText(J){if(this.guard(),this._textBytes=this.lib.encoder.encode(J),this._memId===void 0)this._memId=this.lib.textBufferRegisterMemBuffer(this.bufferPtr,this._textBytes,!1);else this.lib.textBufferReplaceMemBuffer(this.bufferPtr,this._memId,this._textBytes,!1);this.lib.textBufferSetTextFromMem(this.bufferPtr,this._memId),this._length=this.lib.textBufferGetLength(this.bufferPtr),this._byteSize=this.lib.textBufferGetByteSize(this.bufferPtr),this._lineInfo=void 0,this._appendedChunks=[]}append(J){this.guard();let Z=this.lib.encoder.encode(J);this._appendedChunks.push(Z),this.lib.textBufferAppend(this.bufferPtr,Z),this._length=this.lib.textBufferGetLength(this.bufferPtr),this._byteSize=this.lib.textBufferGetByteSize(this.bufferPtr),this._lineInfo=void 0}loadFile(J){if(this.guard(),!this.lib.textBufferLoadFile(this.bufferPtr,J))throw Error(`Failed to load file: ${J}`);this._length=this.lib.textBufferGetLength(this.bufferPtr),this._byteSize=this.lib.textBufferGetByteSize(this.bufferPtr),this._lineInfo=void 0,this._textBytes=void 0}setStyledText(J){this.guard(),this.lib.textBufferSetStyledText(this.bufferPtr,J.chunks),this._length=this.lib.textBufferGetLength(this.bufferPtr),this._byteSize=this.lib.textBufferGetByteSize(this.bufferPtr),this._lineInfo=void 0}setDefaultFg(J){this.guard(),this.lib.textBufferSetDefaultFg(this.bufferPtr,J)}setDefaultBg(J){this.guard(),this.lib.textBufferSetDefaultBg(this.bufferPtr,J)}setDefaultAttributes(J){this.guard(),this.lib.textBufferSetDefaultAttributes(this.bufferPtr,J)}resetDefaults(){this.guard(),this.lib.textBufferResetDefaults(this.bufferPtr)}getLineCount(){return this.guard(),this.lib.textBufferGetLineCount(this.bufferPtr)}get length(){return this.guard(),this._length}get byteSize(){return this.guard(),this._byteSize}get ptr(){return this.guard(),this.bufferPtr}getPlainText(){if(this.guard(),this._byteSize===0)return"";let J=this.lib.getPlainTextBytes(this.bufferPtr,this._byteSize);if(!J)return"";return this.lib.decoder.decode(J)}getTextRange(J,Z){if(this.guard(),J>=Z)return"";if(this._byteSize===0)return"";let $=this.lib.textBufferGetTextRange(this.bufferPtr,J,Z,this._byteSize);if(!$)return"";return this.lib.decoder.decode($)}addHighlightByCharRange(J){this.guard(),this.lib.textBufferAddHighlightByCharRange(this.bufferPtr,J)}addHighlight(J,Z){this.guard(),this.lib.textBufferAddHighlight(this.bufferPtr,J,Z)}removeHighlightsByRef(J){this.guard(),this.lib.textBufferRemoveHighlightsByRef(this.bufferPtr,J)}clearLineHighlights(J){this.guard(),this.lib.textBufferClearLineHighlights(this.bufferPtr,J)}clearAllHighlights(){this.guard(),this.lib.textBufferClearAllHighlights(this.bufferPtr)}getLineHighlights(J){return this.guard(),this.lib.textBufferGetLineHighlights(this.bufferPtr,J)}getHighlightCount(){return this.guard(),this.lib.textBufferGetHighlightCount(this.bufferPtr)}setSyntaxStyle(J){this.guard(),this._syntaxStyle=J??void 0,this.lib.textBufferSetSyntaxStyle(this.bufferPtr,J?.ptr??null)}getSyntaxStyle(){return this.guard(),this._syntaxStyle??null}setTabWidth(J){this.guard(),this.lib.textBufferSetTabWidth(this.bufferPtr,J)}getTabWidth(){return this.guard(),this.lib.textBufferGetTabWidth(this.bufferPtr)}clear(){this.guard(),this.lib.textBufferClear(this.bufferPtr),this._length=0,this._byteSize=0,this._lineInfo=void 0,this._textBytes=void 0,this._appendedChunks=[]}reset(){this.guard(),this.lib.textBufferReset(this.bufferPtr),this._length=0,this._byteSize=0,this._lineInfo=void 0,this._textBytes=void 0,this._memId=void 0,this._appendedChunks=[]}destroy(){if(this._destroyed)return;this._destroyed=!0,this.lib.destroyTextBuffer(this.bufferPtr)}}function F8(J,Z){if(typeof Z.width==="number"){if(Z.width<0)throw TypeError(`Invalid width for Renderable ${J}: ${Z.width}`)}if(typeof Z.height==="number"){if(Z.height<0)throw TypeError(`Invalid height for Renderable ${J}: ${Z.height}`)}}function oZ(J){if(typeof J==="string"&&J.endsWith("%")){let Z=J.slice(0,-1),$=parseFloat(Z);return!Number.isNaN($)}return!1}function PJ(J){if(typeof J==="number"&&!Number.isNaN(J))return!0;if(J==="auto")return!0;return oZ(J)}function IJ(J){if(typeof J==="number"&&!Number.isNaN(J))return!0;return oZ(J)}function oJ(J){if(typeof J==="number"&&!Number.isNaN(J))return!0;if(J==="auto")return!0;return oZ(J)}function S8(J){return J==="relative"||J==="absolute"}function R8(J){return J==="visible"||J==="hidden"||J==="scroll"}function V0(J){return oJ(J)}function O9(J){if(J===void 0||J==="auto")return!0;if(typeof J==="number"&&!Number.isNaN(J))return!0;return!1}function LZ(J){if(J===void 0)return!0;if(typeof J==="number"&&!Number.isNaN(J))return!0;return oZ(J)}var V$=Symbol.for("@opentui/core/Renderable"),T8;((J)=>{J.LAYOUT_CHANGED="layout-changed",J.ADDED="added",J.REMOVED="removed",J.RESIZED="resized"})(T8||={});var g8;((J)=>{J.FOCUSED="focused",J.BLURRED="blurred",J.DESTROYED="destroyed"})(g8||={});function kZ(J){return!!J?.[V$]}class k0 extends w8{[V$]=!0;static renderableNumber=1;_id;num;_dirty=!1;parent=null;_visible=!0;constructor(J){super();this.num=k0.renderableNumber++,this._id=J.id??`renderable-${this.num}`}get id(){return this._id}set id(J){this._id=J}get isDirty(){return this._dirty}markClean(){this._dirty=!1}markDirty(){this._dirty=!0}destroy(){}destroyRecursively(){}get visible(){return this._visible}set visible(J){this._visible=J}}var E0=T0.Config.create();E0.setUseWebDefaults(!1);E0.setPointScaleFactor(1);class gJ extends k0{static renderablesByNumber=new Map;_isDestroyed=!1;_ctx;_translateX=0;_translateY=0;_x=0;_y=0;_screenX=0;_screenY=0;_width;_height;_widthValue=0;_heightValue=0;_zIndex;selectable=!1;buffered;frameBuffer=null;_focusable=!1;_focused=!1;_hasFocusedDescendant=!1;keypressHandler=null;pasteHandler=null;_live=!1;_liveCount=0;_sizeChangeListener=void 0;_mouseListener=null;_mouseListeners={};_pasteListener=void 0;_keyListeners={};yogaNode;_positionType="relative";_overflow="visible";_position={};_opacity=1;_flexShrink=1;renderableMapById=new Map;_childrenInLayoutOrder=[];_childrenInZIndexOrder=[];needsZIndexSort=!1;parent=null;childrenPrimarySortDirty=!0;childrenSortedByPrimaryAxis=[];_shouldUpdateBefore=new Set;_lastLayoutFrame=-1;onLifecyclePass=null;renderBefore;renderAfter;constructor(J,Z){super(Z);if(this._ctx=J,gJ.renderablesByNumber.set(this.num,this),F8(this.id,Z),this.renderBefore=Z.renderBefore,this.renderAfter=Z.renderAfter,this._width=Z.width??"auto",this._height=Z.height??"auto",typeof this._width==="number")this._widthValue=this._width;if(typeof this._height==="number")this._heightValue=this._height;if(this._zIndex=Z.zIndex??0,this._visible=Z.visible!==!1,this.buffered=Z.buffered??!1,this._live=Z.live??!1,this._liveCount=this._live&&this._visible?1:0,this._opacity=Z.opacity!==void 0?Math.max(0,Math.min(1,Z.opacity)):1,this.yogaNode=T0.Node.create(E0),this.yogaNode.setDisplay(this._visible?FJ.Flex:FJ.None),this.setupYogaProperties(Z),this.applyEventOptions(Z),this.buffered)this.createFrameBuffer()}get id(){return this._id}set id(J){if(this.parent)this.parent.renderableMapById.delete(this.id),this.parent.renderableMapById.set(J,this);super.id=J}get focusable(){return this._focusable}set focusable(J){this._focusable=J}get ctx(){return this._ctx}get visible(){return this._visible}get primaryAxis(){let J=this.yogaNode.getFlexDirection();return J===2||J===3?"row":"column"}set visible(J){if(this._visible===J)return;let Z=this._visible;if(this._visible=J,this.yogaNode.setDisplay(J?FJ.Flex:FJ.None),this._live){if(!Z&&J)this.propagateLiveCount(1);else if(Z&&!J)this.propagateLiveCount(-1)}if(this._focused)this.blur();this.requestRender()}get opacity(){return this._opacity}set opacity(J){let Z=Math.max(0,Math.min(1,J));if(this._opacity!==Z)this._opacity=Z,this.requestRender()}hasSelection(){return!1}onSelectionChanged(J){return!1}getSelectedText(){return""}shouldStartSelection(J,Z){return!1}focus(){if(this._isDestroyed||this._focused||!this._focusable)return;this._focused=!0,this._ctx.focusRenderable(this),this.requestRender(),this.keypressHandler=(J)=>{if(this._isDestroyed)return;if(this._keyListeners.down?.(J),this._isDestroyed)return;if(!J.defaultPrevented&&this.handleKeyPress)this.handleKeyPress(J)},this.pasteHandler=(J)=>{if(this._isDestroyed)return;if(this._pasteListener?.call(this,J),this._isDestroyed)return;if(!J.defaultPrevented&&this.handlePaste)this.handlePaste(J)},this.ctx._internalKeyInput.onInternal("keypress",this.keypressHandler),this.ctx._internalKeyInput.onInternal("paste",this.pasteHandler),this.propagateFocusChange(!0),this.emit("focused")}propagateFocusChange(J){let Z=this.parent;while(Z){if(Z._hasFocusedDescendant!==J)Z._hasFocusedDescendant=J,Z.markDirty();Z=Z.parent}this.requestRender()}blur(){if(!this._focused||!this._focusable)return;if(this._ctx.blurRenderable(this),this._focused=!1,this.requestRender(),this.keypressHandler)this.ctx._internalKeyInput.offInternal("keypress",this.keypressHandler),this.keypressHandler=null;if(this.pasteHandler)this.ctx._internalKeyInput.offInternal("paste",this.pasteHandler),this.pasteHandler=null;this.propagateFocusChange(!1),this.emit("blurred")}get focused(){return this._focused}get hasFocusedDescendant(){return this._hasFocusedDescendant}get live(){return this._live}get liveCount(){return this._liveCount}set live(J){if(this._live===J)return;if(this._live=J,this._visible){let Z=J?1:-1;this.propagateLiveCount(Z)}}propagateLiveCount(J){this._liveCount+=J,this.parent?.propagateLiveCount(J)}findDescendantById(J){for(let Z of this._childrenInLayoutOrder){if(Z.id===J)return Z;if(kZ(Z)){let $=Z.findDescendantById(J);if($)return $}}return}requestRender(){this.markDirty(),this._ctx.requestRender()}get translateX(){return this._translateX}set translateX(J){if(this._translateX===J)return;this._translateX=J;let Z=this.parent?this.parent._screenX:0;if(this._screenX=Z+this._x+this._translateX,this.parent)this.parent.childrenPrimarySortDirty=!0;this.requestRender()}get translateY(){return this._translateY}set translateY(J){if(this._translateY===J)return;this._translateY=J;let Z=this.parent?this.parent._screenY:0;if(this._screenY=Z+this._y+this._translateY,this.parent)this.parent.childrenPrimarySortDirty=!0;this.requestRender()}get screenX(){return(this.parent?this.parent._screenX:0)+this._x+this._translateX}get screenY(){return(this.parent?this.parent._screenY:0)+this._y+this._translateY}get x(){if(this.parent)return this.parent.x+this._x+this._translateX;return this._x+this._translateX}set x(J){this.left=J}get top(){return this._position.top}set top(J){if(oJ(J)||J===void 0)this.setPosition({top:J})}get right(){return this._position.right}set right(J){if(oJ(J)||J===void 0)this.setPosition({right:J})}get bottom(){return this._position.bottom}set bottom(J){if(oJ(J)||J===void 0)this.setPosition({bottom:J})}get left(){return this._position.left}set left(J){if(oJ(J)||J===void 0)this.setPosition({left:J})}get y(){if(this.parent)return this.parent.y+this._y+this._translateY;return this._y+this._translateY}set y(J){this.top=J}get width(){return this._widthValue}set width(J){if(!V0(J)||this._width===J)return;if(this._width=J,this.yogaNode.setWidth(J),typeof J==="number"&&this._flexShrink===1)this._flexShrink=0,this.yogaNode.setFlexShrink(0);this.requestRender()}get height(){return this._heightValue}set height(J){if(!V0(J)||this._height===J)return;if(this._height=J,this.yogaNode.setHeight(J),typeof J==="number"&&this._flexShrink===1)this._flexShrink=0,this.yogaNode.setFlexShrink(0);this.requestRender()}get zIndex(){return this._zIndex}set zIndex(J){if(this._zIndex!==J)this._zIndex=J,this.parent?.requestZIndexSort(),this.requestRender()}requestZIndexSort(){this.needsZIndexSort=!0}ensureZIndexSorted(){if(this.needsZIndexSort)this._childrenInZIndexOrder.sort((J,Z)=>J.zIndex>Z.zIndex?1:J.zIndex<Z.zIndex?-1:0),this.needsZIndexSort=!1}getChildrenSortedByPrimaryAxis(){if(!this.childrenPrimarySortDirty&&this.childrenSortedByPrimaryAxis.length===this._childrenInLayoutOrder.length)return this.childrenSortedByPrimaryAxis;let J=this.yogaNode.getFlexDirection(),Z=J===2||J===3?"x":"y",$=[...this._childrenInLayoutOrder];return $.sort((H,Q)=>{let j=Z==="y"?H.screenY:H.screenX,G=Z==="y"?Q.screenY:Q.screenX;return j-G}),this.childrenSortedByPrimaryAxis=$,this.childrenPrimarySortDirty=!1,this.childrenSortedByPrimaryAxis}setupYogaProperties(J){let Z=this.yogaNode;if(O9(J.flexBasis))Z.setFlexBasis(J.flexBasis);if(LZ(J.minWidth))Z.setMinWidth(J.minWidth);if(LZ(J.minHeight))Z.setMinHeight(J.minHeight);if(J.flexGrow!==void 0)Z.setFlexGrow(J.flexGrow);else Z.setFlexGrow(0);if(J.flexShrink!==void 0)this._flexShrink=J.flexShrink,Z.setFlexShrink(J.flexShrink);else{let H=typeof J.width==="number",Q=typeof J.height==="number";this._flexShrink=H||Q?0:1,Z.setFlexShrink(this._flexShrink)}if(Z.setFlexDirection(g7(J.flexDirection)),Z.setFlexWrap(k7(J.flexWrap)),Z.setAlignItems(T7(J.alignItems)),Z.setJustifyContent(C7(J.justifyContent)),Z.setAlignSelf(R7(J.alignSelf)),V0(J.width))this._width=J.width,this.yogaNode.setWidth(J.width);if(V0(J.height))this._height=J.height,this.yogaNode.setHeight(J.height);if(this._positionType=J.position==="absolute"?"absolute":"relative",this._positionType!=="relative")Z.setPositionType(x7(this._positionType));if(this._overflow=J.overflow==="hidden"?"hidden":J.overflow==="scroll"?"scroll":"visible",this._overflow!=="visible")Z.setOverflow(M7(this._overflow));if(J.top!==void 0||J.right!==void 0||J.bottom!==void 0||J.left!==void 0)this._position={top:J.top,right:J.right,bottom:J.bottom,left:J.left},this.updateYogaPosition(this._position);if(LZ(J.maxWidth))Z.setMaxWidth(J.maxWidth);if(LZ(J.maxHeight))Z.setMaxHeight(J.maxHeight);this.setupMarginAndPadding(J)}setupMarginAndPadding(J){let Z=this.yogaNode;if(PJ(J.margin))Z.setMargin(v.All,J.margin);if(PJ(J.marginX))Z.setMargin(v.Horizontal,J.marginX);if(PJ(J.marginY))Z.setMargin(v.Vertical,J.marginY);if(PJ(J.marginTop))Z.setMargin(v.Top,J.marginTop);if(PJ(J.marginRight))Z.setMargin(v.Right,J.marginRight);if(PJ(J.marginBottom))Z.setMargin(v.Bottom,J.marginBottom);if(PJ(J.marginLeft))Z.setMargin(v.Left,J.marginLeft);if(IJ(J.padding))Z.setPadding(v.All,J.padding);if(IJ(J.paddingX))Z.setPadding(v.Horizontal,J.paddingX);if(IJ(J.paddingY))Z.setPadding(v.Vertical,J.paddingY);if(IJ(J.paddingTop))Z.setPadding(v.Top,J.paddingTop);if(IJ(J.paddingRight))Z.setPadding(v.Right,J.paddingRight);if(IJ(J.paddingBottom))Z.setPadding(v.Bottom,J.paddingBottom);if(IJ(J.paddingLeft))Z.setPadding(v.Left,J.paddingLeft)}set position(J){if(!S8(J)||this._positionType===J)return;this._positionType=J,this.yogaNode.setPositionType(x7(J)),this.requestRender()}get overflow(){return this._overflow}set overflow(J){if(!R8(J)||this._overflow===J)return;this._overflow=J,this.yogaNode.setOverflow(M7(J)),this.requestRender()}setPosition(J){this._position={...this._position,...J},this.updateYogaPosition(J)}updateYogaPosition(J){let Z=this.yogaNode,{top:$,right:H,bottom:Q,left:j}=J;if(oJ($))if($==="auto")Z.setPositionAuto(v.Top);else Z.setPosition(v.Top,$);if(oJ(H))if(H==="auto")Z.setPositionAuto(v.Right);else Z.setPosition(v.Right,H);if(oJ(Q))if(Q==="auto")Z.setPositionAuto(v.Bottom);else Z.setPosition(v.Bottom,Q);if(oJ(j))if(j==="auto")Z.setPositionAuto(v.Left);else Z.setPosition(v.Left,j);this.requestRender()}set flexGrow(J){if(J==null)this.yogaNode.setFlexGrow(0);else this.yogaNode.setFlexGrow(J);this.requestRender()}set flexShrink(J){let Z=J==null?1:J;this._flexShrink=Z,this.yogaNode.setFlexShrink(Z),this.requestRender()}set flexDirection(J){this.yogaNode.setFlexDirection(g7(J)),this.requestRender()}set flexWrap(J){this.yogaNode.setFlexWrap(k7(J)),this.requestRender()}set alignItems(J){this.yogaNode.setAlignItems(T7(J)),this.requestRender()}set justifyContent(J){this.yogaNode.setJustifyContent(C7(J)),this.requestRender()}set alignSelf(J){this.yogaNode.setAlignSelf(R7(J)),this.requestRender()}set flexBasis(J){if(O9(J))this.yogaNode.setFlexBasis(J),this.requestRender()}set minWidth(J){if(LZ(J))this.yogaNode.setMinWidth(J),this.requestRender()}set maxWidth(J){if(LZ(J))this.yogaNode.setMaxWidth(J),this.requestRender()}set minHeight(J){if(LZ(J))this.yogaNode.setMinHeight(J),this.requestRender()}set maxHeight(J){if(LZ(J))this.yogaNode.setMaxHeight(J),this.requestRender()}set margin(J){if(PJ(J))this.yogaNode.setMargin(v.All,J),this.requestRender()}set marginX(J){if(PJ(J))this.yogaNode.setMargin(v.Horizontal,J),this.requestRender()}set marginY(J){if(PJ(J))this.yogaNode.setMargin(v.Vertical,J),this.requestRender()}set marginTop(J){if(PJ(J))this.yogaNode.setMargin(v.Top,J),this.requestRender()}get marginTop(){let J=this.yogaNode.getMargin(v.Top);if(typeof J==="number")return J;if(typeof J==="object"&&J&&"value"in J&&typeof J.value==="number")return J.value;return 0}set marginRight(J){if(PJ(J))this.yogaNode.setMargin(v.Right,J),this.requestRender()}set marginBottom(J){if(PJ(J))this.yogaNode.setMargin(v.Bottom,J),this.requestRender()}set marginLeft(J){if(PJ(J))this.yogaNode.setMargin(v.Left,J),this.requestRender()}set padding(J){if(IJ(J))this.yogaNode.setPadding(v.All,J),this.requestRender()}set paddingX(J){if(IJ(J))this.yogaNode.setPadding(v.Horizontal,J),this.requestRender()}set paddingY(J){if(IJ(J))this.yogaNode.setPadding(v.Vertical,J),this.requestRender()}set paddingTop(J){if(IJ(J))this.yogaNode.setPadding(v.Top,J),this.requestRender()}set paddingRight(J){if(IJ(J))this.yogaNode.setPadding(v.Right,J),this.requestRender()}set paddingBottom(J){if(IJ(J))this.yogaNode.setPadding(v.Bottom,J),this.requestRender()}set paddingLeft(J){if(IJ(J))this.yogaNode.setPadding(v.Left,J),this.requestRender()}getLayoutNode(){return this.yogaNode}updateFromLayout(){let J=this._ctx.frameId;if(this._lastLayoutFrame===J)return;this._lastLayoutFrame=J;let Z=this.yogaNode.getComputedLayout(),$=this._x,H=this._y,Q=this._widthValue,j=this._heightValue;this._x=Z.left,this._y=Z.top;let G=this.parent?this.parent._screenX:0,L=this.parent?this.parent._screenY:0;this._screenX=G+this._x+this._translateX,this._screenY=L+this._y+this._translateY;let Y=Math.max(Z.width,1),_=Math.max(Z.height,1),W=Q!==Y||j!==_;if(this._widthValue=Y,this._heightValue=_,W)this.onLayoutResize(Y,_);if($!==this._x||H!==this._y){if(this.parent)this.parent.childrenPrimarySortDirty=!0}}onLayoutResize(J,Z){if(this._visible)this.handleFrameBufferResize(J,Z),this.onResize(J,Z),this.requestRender()}handleFrameBufferResize(J,Z){if(!this.buffered)return;if(J<=0||Z<=0)return;if(this.frameBuffer)this.frameBuffer.resize(J,Z);else this.createFrameBuffer()}createFrameBuffer(){let J=this.width,Z=this.height;if(J<=0||Z<=0)return;try{let $=this._ctx.widthMethod;this.frameBuffer=xJ.create(J,Z,$,{respectAlpha:!0,id:`framebuffer-${this.id}`})}catch($){console.error(`Failed to create frame buffer for ${this.id}:`,$),this.frameBuffer=null}}onResize(J,Z){this.onSizeChange?.(),this.emit("resize")}replaceParent(J){if(J.parent)J.parent.remove(J.id);J.parent=this}add(J,Z){if(!J)return-1;let $=z9(this._ctx,J);if(!$)return-1;if($.isDestroyed)return console.warn(`Renderable with id ${$.id} was already destroyed, skipping add`),-1;let H=Z!==void 0?this._childrenInLayoutOrder[Z]:void 0;if(H)return this.insertBefore($,H);if($.parent===this)this.yogaNode.removeChild($.getLayoutNode()),this._childrenInLayoutOrder.splice(this._childrenInLayoutOrder.indexOf($),1);else{if(this.replaceParent($),this.needsZIndexSort=!0,this.renderableMapById.set($.id,$),this._childrenInZIndexOrder.push($),typeof $.onLifecyclePass==="function")this._ctx.registerLifecyclePass($);if($._liveCount>0)this.propagateLiveCount($._liveCount)}let Q=$.getLayoutNode(),j=this._childrenInLayoutOrder.length;return this._childrenInLayoutOrder.push($),this.yogaNode.insertChild(Q,j),this.childrenPrimarySortDirty=!0,this._shouldUpdateBefore.add($),this.requestRender(),j}insertBefore(J,Z){if(!Z)return this.add(J);if(!J)return-1;let $=z9(this._ctx,J);if(!$)return-1;if($.isDestroyed)return console.warn(`Renderable with id ${$.id} was already destroyed, skipping insertBefore`),-1;if(!kZ(Z))throw Error("Anchor must be a Renderable");if(Z.isDestroyed)return console.warn(`Anchor with id ${Z.id} was already destroyed, skipping insertBefore`),-1;if(!this.renderableMapById.has(Z.id))return console.warn(`Anchor with id ${Z.id} does not exist within the parent ${this.id}, skipping insertBefore`),-1;if($===Z||$.id===Z.id)return console.warn(`Anchor is the same as the node ${$.id} being inserted, skipping insertBefore`),-1;if($.parent===this)this.yogaNode.removeChild($.getLayoutNode()),this._childrenInLayoutOrder.splice(this._childrenInLayoutOrder.indexOf($),1);else{if(this.replaceParent($),this.needsZIndexSort=!0,this.renderableMapById.set($.id,$),this._childrenInZIndexOrder.push($),typeof $.onLifecyclePass==="function")this._ctx.registerLifecyclePass($);if($._liveCount>0)this.propagateLiveCount($._liveCount)}this.childrenPrimarySortDirty=!0;let H=this._childrenInLayoutOrder.indexOf(Z),Q=Math.max(0,Math.min(H,this._childrenInLayoutOrder.length));return this._childrenInLayoutOrder.splice(Q,0,$),this.yogaNode.insertChild($.getLayoutNode(),Q),this._shouldUpdateBefore.add($),this.requestRender(),Q}getRenderable(J){return this.renderableMapById.get(J)}remove(J){if(!J)return;if(this.renderableMapById.has(J)){let Z=this.renderableMapById.get(J);if(Z){if(Z._liveCount>0)this.propagateLiveCount(-Z._liveCount);let $=Z.getLayoutNode();this.yogaNode.removeChild($),this.requestRender(),Z.onRemove(),Z.parent=null,this._ctx.unregisterLifecyclePass(Z),this.renderableMapById.delete(J);let H=this._childrenInLayoutOrder.findIndex((j)=>j.id===J);if(H!==-1)this._childrenInLayoutOrder.splice(H,1);let Q=this._childrenInZIndexOrder.findIndex((j)=>j.id===J);if(Q!==-1)this._childrenInZIndexOrder.splice(Q,1);this.childrenPrimarySortDirty=!0}}}onRemove(){}getChildren(){return[...this._childrenInLayoutOrder]}getChildrenCount(){return this._childrenInLayoutOrder.length}updateLayout(J,Z=[]){if(!this.visible)return;if(this.onUpdate(J),this._isDestroyed)return;if(this.updateFromLayout(),this._shouldUpdateBefore.size>0){for(let Q of this._shouldUpdateBefore)if(!Q.isDestroyed)Q.updateFromLayout();this._shouldUpdateBefore.clear()}if(this._isDestroyed)return;let $=this._opacity<1;if($)Z.push({action:"pushOpacity",opacity:this._opacity});Z.push({action:"render",renderable:this}),this.ensureZIndexSorted();let H=this._overflow!=="visible"&&this.width>0&&this.height>0;if(H){let Q=this.getScissorRect();Z.push({action:"pushScissorRect",x:Q.x,y:Q.y,width:Q.width,height:Q.height,screenX:this._screenX,screenY:this._screenY})}if(!this._hasVisibleChildFilter())for(let Q of this._childrenInZIndexOrder)Q.updateLayout(J,Z);else{for(let G of this._childrenInZIndexOrder){if(G.isDestroyed)continue;G.updateFromLayout()}let Q=this._getVisibleChildren(),j=new Set(Q);for(let G of this._childrenInZIndexOrder){if(!j.has(G.num))continue;G.updateLayout(J,Z)}}if(H)Z.push({action:"popScissorRect"});if($)Z.push({action:"popOpacity"})}render(J,Z){let $=J;if(this.buffered&&this.frameBuffer)$=this.frameBuffer;if(this.renderBefore)this.renderBefore.call(this,$,Z);if(this.renderSelf($,Z),this.renderAfter)this.renderAfter.call(this,$,Z);let H=this._screenX,Q=this._screenY;if(this.markClean(),this._ctx.addToHitGrid(H,Q,this.width,this.height,this.num),this.buffered&&this.frameBuffer)J.drawFrameBuffer(H,Q,this.frameBuffer)}_hasVisibleChildFilter(){return this._getVisibleChildren!==gJ.prototype._getVisibleChildren}_getVisibleChildren(){return this._childrenInZIndexOrder.map((J)=>J.num)}onUpdate(J){}getScissorRect(){return{x:this.buffered?0:this._screenX,y:this.buffered?0:this._screenY,width:this.width,height:this.height}}renderSelf(J,Z){}get isDestroyed(){return this._isDestroyed}destroy(){if(this._isDestroyed)return;if(this._isDestroyed=!0,this.emit("destroyed"),this.parent)this.parent.remove(this.id);if(this.frameBuffer)this.frameBuffer.destroy(),this.frameBuffer=null;for(let J of this._childrenInLayoutOrder)this.remove(J.id);this._childrenInLayoutOrder=[],this.renderableMapById.clear(),gJ.renderablesByNumber.delete(this.num),this.blur(),this.removeAllListeners(),this.destroySelf();try{this.yogaNode.free()}catch(J){}}destroyRecursively(){let J=[...this._childrenInLayoutOrder];for(let Z of J)Z.destroyRecursively();this.destroy()}destroySelf(){}processMouseEvent(J){if(this._mouseListener?.call(this,J),this._mouseListeners[J.type]?.call(this,J),this.onMouseEvent(J),this.parent&&!J.propagationStopped)this.parent.processMouseEvent(J)}onMouseEvent(J){}set onMouse(J){if(J)this._mouseListener=J;else this._mouseListener=null}set onMouseDown(J){if(J)this._mouseListeners.down=J;else delete this._mouseListeners.down}set onMouseUp(J){if(J)this._mouseListeners.up=J;else delete this._mouseListeners.up}set onMouseMove(J){if(J)this._mouseListeners.move=J;else delete this._mouseListeners.move}set onMouseDrag(J){if(J)this._mouseListeners.drag=J;else delete this._mouseListeners.drag}set onMouseDragEnd(J){if(J)this._mouseListeners["drag-end"]=J;else delete this._mouseListeners["drag-end"]}set onMouseDrop(J){if(J)this._mouseListeners.drop=J;else delete this._mouseListeners.drop}set onMouseOver(J){if(J)this._mouseListeners.over=J;else delete this._mouseListeners.over}set onMouseOut(J){if(J)this._mouseListeners.out=J;else delete this._mouseListeners.out}set onMouseScroll(J){if(J)this._mouseListeners.scroll=J;else delete this._mouseListeners.scroll}set onPaste(J){this._pasteListener=J}get onPaste(){return this._pasteListener}set onKeyDown(J){if(J)this._keyListeners.down=J;else delete this._keyListeners.down}get onKeyDown(){return this._keyListeners.down}set onSizeChange(J){this._sizeChangeListener=J}get onSizeChange(){return this._sizeChangeListener}applyEventOptions(J){this.onMouse=J.onMouse,this.onMouseDown=J.onMouseDown,this.onMouseUp=J.onMouseUp,this.onMouseMove=J.onMouseMove,this.onMouseDrag=J.onMouseDrag,this.onMouseDragEnd=J.onMouseDragEnd,this.onMouseDrop=J.onMouseDrop,this.onMouseOver=J.onMouseOver,this.onMouseOut=J.onMouseOut,this.onMouseScroll=J.onMouseScroll,this.onPaste=J.onPaste,this.onKeyDown=J.onKeyDown,this.onSizeChange=J.onSizeChange}}class mZ extends gJ{renderList=[];constructor(J){super(J,{id:"__root__",zIndex:0,visible:!0,width:J.width,height:J.height,enableLayout:!0});if(this.yogaNode)this.yogaNode.free();this.yogaNode=T0.Node.create(E0),this.yogaNode.setWidth(J.width),this.yogaNode.setHeight(J.height),this.yogaNode.setFlexDirection(MJ.Column),this.calculateLayout()}render(J,Z){if(!this.visible)return;for(let $ of this._ctx.getLifecyclePasses())$.onLifecyclePass?.call($);if(this.yogaNode.isDirty())this.calculateLayout();this.renderList.length=0,this.updateLayout(Z,this.renderList),this._ctx.clearHitGridScissorRects();for(let $=1;$<this.renderList.length;$++){let H=this.renderList[$];switch(H.action){case"render":if(!H.renderable.isDestroyed)H.renderable.render(J,Z);break;case"pushScissorRect":J.pushScissorRect(H.x,H.y,H.width,H.height),this._ctx.pushHitGridScissorRect(H.screenX,H.screenY,H.width,H.height);break;case"popScissorRect":J.popScissorRect(),this._ctx.popHitGridScissorRect();break;case"pushOpacity":J.pushOpacity(H.opacity);break;case"popOpacity":J.popOpacity();break}}}propagateLiveCount(J){let Z=this._liveCount;if(this._liveCount+=J,Z===0&&this._liveCount>0)this._ctx.requestLive();else if(Z>0&&this._liveCount===0)this._ctx.dropLive()}calculateLayout(){this.yogaNode.calculateLayout(this.width,this.height,yJ.LTR),this.emit("layout-changed")}resize(J,Z){this.width=J,this.height=Z,this.emit("resized",{width:J,height:Z})}}var O$=Symbol.for("@opentui/core/VNode");function E2(J){return typeof J==="function"&&J.prototype&&gJ.prototype.isPrototypeOf(J.prototype)}function i2(J){let Z=[];for(let $ of J)if(Array.isArray($))Z.push(...i2($));else if($!==null&&$!==void 0&&$!==!1)Z.push($);return Z}function W4(J,Z,...$){if(typeof J!=="function")throw TypeError("h() received an invalid vnode type");let H={[O$]:!0,type:J,props:Z,children:i2($),__pendingCalls:[]};if(E2(J))return new Proxy(H,{get(Q,j,G){if(j in Q)return Reflect.get(Q,j,G);if(typeof j==="string"){let L=J.prototype;if(L&&(typeof L[j]==="function"||Object.getOwnPropertyDescriptor(L,j)||Object.getOwnPropertyDescriptor(Object.getPrototypeOf(L),j)))return(..._)=>{return Q.__pendingCalls=Q.__pendingCalls||[],Q.__pendingCalls.push({method:j,args:_}),Q}}return Reflect.get(Q,j,G)},set(Q,j,G,L){if(typeof j==="string"&&E2(J)){let Y=J.prototype,_=Object.getOwnPropertyDescriptor(Y,j)||Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Y),j);if(_&&_.set)return Q.__pendingCalls=Q.__pendingCalls||[],Q.__pendingCalls.push({method:j,args:[G],isProperty:!0}),!0}return Reflect.set(Q,j,G,L)}});return H}function M8(J){return J&&J[O$]}function z9(J,Z){if(kZ(Z))return Z;if(M8(Z))return b2(J,Z);return console.warn("maybeMakeRenderable received an invalid node",C8.inspect(Z,{depth:2})),null}function h2(J,Z){if(!Z||Object.keys(Z).length===0)return J;let $=new Map,H=(j)=>{if($.has(j)){let L=$.get(j);if(L!==void 0)return L}let G=J.findDescendantById(j);if(G)$.set(j,G);return G};return new Proxy(J,{get(j,G,L){if(typeof G==="string"&&Z[G]){let Y=H(Z[G]);if(Y){let _=Y[G];if(typeof _==="function")return _.bind(Y);return _}}return Reflect.get(j,G,L)},set(j,G,L,Y){if(typeof G==="string"&&Z[G]){let _=H(Z[G]);if(_)return Reflect.set(_,G,L)}return Reflect.set(j,G,L,Y)}})}function b2(J,Z){if(kZ(Z))return Z;if(!Z||typeof Z!=="object")throw TypeError("mount() received an invalid vnode");let $=Z,{type:H,props:Q}=$,j=i2($.children||[]),G=$.__delegateMap;if(E2(H)){let _=new H(J,Q||{});for(let q of j)if(kZ(q))_.add(q);else{let N=b2(J,q);_.add(N)}let W=h2(_,G),K=$.__pendingCalls;if(K)for(let q of K)if(q.isProperty)W[q.method]=q.args[0];else W[q.method].apply(W,q.args);return W}let L=H(Q||{},j),Y=b2(J,L);return h2(Y,G)}function X4(J,Z){if(kZ(Z))return h2(Z,J);if(!Z||typeof Z!=="object")return Z;return Z.__delegateMap={...Z.__delegateMap||{},...J},Z}class n2{lib;viewPtr;textBuffer;_destroyed=!1;constructor(J,Z,$){this.lib=J,this.viewPtr=Z,this.textBuffer=$}static create(J){let Z=TJ(),$=Z.createTextBufferView(J.ptr);return new n2(Z,$,J)}guard(){if(this._destroyed)throw Error("TextBufferView is destroyed")}get ptr(){return this.guard(),this.viewPtr}setSelection(J,Z,$,H){this.guard(),this.lib.textBufferViewSetSelection(this.viewPtr,J,Z,$||null,H||null)}updateSelection(J,Z,$){this.guard(),this.lib.textBufferViewUpdateSelection(this.viewPtr,J,Z||null,$||null)}resetSelection(){this.guard(),this.lib.textBufferViewResetSelection(this.viewPtr)}getSelection(){return this.guard(),this.lib.textBufferViewGetSelection(this.viewPtr)}hasSelection(){return this.guard(),this.getSelection()!==null}setLocalSelection(J,Z,$,H,Q,j){return this.guard(),this.lib.textBufferViewSetLocalSelection(this.viewPtr,J,Z,$,H,Q||null,j||null)}updateLocalSelection(J,Z,$,H,Q,j){return this.guard(),this.lib.textBufferViewUpdateLocalSelection(this.viewPtr,J,Z,$,H,Q||null,j||null)}resetLocalSelection(){this.guard(),this.lib.textBufferViewResetLocalSelection(this.viewPtr)}setWrapWidth(J){this.guard(),this.lib.textBufferViewSetWrapWidth(this.viewPtr,J??0)}setWrapMode(J){this.guard(),this.lib.textBufferViewSetWrapMode(this.viewPtr,J)}setFirstLineOffset(J){this.guard(),this.lib.textBufferViewSetFirstLineOffset(this.viewPtr,J)}setViewportSize(J,Z){this.guard(),this.lib.textBufferViewSetViewportSize(this.viewPtr,J,Z)}setViewport(J,Z,$,H){this.guard(),this.lib.textBufferViewSetViewport(this.viewPtr,J,Z,$,H)}get lineInfo(){return this.guard(),this.lib.textBufferViewGetLineInfo(this.viewPtr)}get logicalLineInfo(){return this.guard(),this.lib.textBufferViewGetLogicalLineInfo(this.viewPtr)}getSelectedText(){this.guard();let J=this.textBuffer.byteSize;if(J===0)return"";let Z=this.lib.textBufferViewGetSelectedTextBytes(this.viewPtr,J);if(!Z)return"";return this.lib.decoder.decode(Z)}getPlainText(){this.guard();let J=this.textBuffer.byteSize;if(J===0)return"";let Z=this.lib.textBufferViewGetPlainTextBytes(this.viewPtr,J);if(!Z)return"";return this.lib.decoder.decode(Z)}setTabIndicator(J){this.guard();let Z=typeof J==="string"?J.codePointAt(0)??0:J;this.lib.textBufferViewSetTabIndicator(this.viewPtr,Z)}setTabIndicatorColor(J){this.guard(),this.lib.textBufferViewSetTabIndicatorColor(this.viewPtr,J)}setTruncate(J){this.guard(),this.lib.textBufferViewSetTruncate(this.viewPtr,J)}measureForDimensions(J,Z){return this.guard(),this.lib.textBufferViewMeasureForDimensions(this.viewPtr,J,Z)}getVirtualLineCount(){return this.guard(),this.lib.textBufferViewGetVirtualLineCount(this.viewPtr)}destroy(){if(this._destroyed)return;this._destroyed=!0,this.lib.destroyTextBufferView(this.viewPtr)}}class tJ extends x8{static registry=new Map;static nativeEventsSubscribed=!1;lib;bufferPtr;textBufferPtr;id;_destroyed=!1;_textBytes=[];_singleTextBytes=null;_singleTextMemId=null;_syntaxStyle;constructor(J,Z){super();this.lib=J,this.bufferPtr=Z,this.textBufferPtr=J.editBufferGetTextBuffer(Z),this.id=J.editBufferGetId(Z),tJ.registry.set(this.id,this),tJ.subscribeToNativeEvents(J)}static create(J){let Z=TJ(),$=Z.createEditBuffer(J);return new tJ(Z,$)}static subscribeToNativeEvents(J){if(tJ.nativeEventsSubscribed)return;tJ.nativeEventsSubscribed=!0,J.onAnyNativeEvent((Z,$)=>{let H=new Uint16Array($);if(Z.startsWith("eb_")&&H.length>=1){let Q=H[0],j=tJ.registry.get(Q);if(j){let G=Z.slice(3),L=$.slice(2);j.emit(G,L)}}})}guard(){if(this._destroyed)throw Error("EditBuffer is destroyed")}get ptr(){return this.guard(),this.bufferPtr}setText(J){this.guard();let Z=this.lib.encoder.encode(J);if(this._singleTextMemId!==null)this.lib.textBufferReplaceMemBuffer(this.textBufferPtr,this._singleTextMemId,Z,!1);else this._singleTextMemId=this.lib.textBufferRegisterMemBuffer(this.textBufferPtr,Z,!1);this._singleTextBytes=Z,this.lib.editBufferSetTextFromMem(this.bufferPtr,this._singleTextMemId)}setTextOwned(J){this.guard();let Z=this.lib.encoder.encode(J);this.lib.editBufferSetText(this.bufferPtr,Z)}replaceText(J){this.guard();let Z=this.lib.encoder.encode(J);this._textBytes.push(Z);let $=this.lib.textBufferRegisterMemBuffer(this.textBufferPtr,Z,!1);this.lib.editBufferReplaceTextFromMem(this.bufferPtr,$)}replaceTextOwned(J){this.guard();let Z=this.lib.encoder.encode(J);this.lib.editBufferReplaceText(this.bufferPtr,Z)}getLineCount(){return this.guard(),this.lib.textBufferGetLineCount(this.textBufferPtr)}getText(){this.guard();let J=1048576,Z=this.lib.editBufferGetText(this.bufferPtr,J);if(!Z)return"";return this.lib.decoder.decode(Z)}insertChar(J){this.guard(),this.lib.editBufferInsertChar(this.bufferPtr,J)}insertText(J){this.guard(),this.lib.editBufferInsertText(this.bufferPtr,J)}deleteChar(){this.guard(),this.lib.editBufferDeleteChar(this.bufferPtr)}deleteCharBackward(){this.guard(),this.lib.editBufferDeleteCharBackward(this.bufferPtr)}deleteRange(J,Z,$,H){this.guard(),this.lib.editBufferDeleteRange(this.bufferPtr,J,Z,$,H)}newLine(){this.guard(),this.lib.editBufferNewLine(this.bufferPtr)}deleteLine(){this.guard(),this.lib.editBufferDeleteLine(this.bufferPtr)}moveCursorLeft(){this.guard(),this.lib.editBufferMoveCursorLeft(this.bufferPtr)}moveCursorRight(){this.guard(),this.lib.editBufferMoveCursorRight(this.bufferPtr)}moveCursorUp(){this.guard(),this.lib.editBufferMoveCursorUp(this.bufferPtr)}moveCursorDown(){this.guard(),this.lib.editBufferMoveCursorDown(this.bufferPtr)}gotoLine(J){this.guard(),this.lib.editBufferGotoLine(this.bufferPtr,J)}setCursor(J,Z){this.guard(),this.lib.editBufferSetCursor(this.bufferPtr,J,Z)}setCursorToLineCol(J,Z){this.guard(),this.lib.editBufferSetCursorToLineCol(this.bufferPtr,J,Z)}setCursorByOffset(J){this.guard(),this.lib.editBufferSetCursorByOffset(this.bufferPtr,J)}getCursorPosition(){return this.guard(),this.lib.editBufferGetCursorPosition(this.bufferPtr)}getNextWordBoundary(){this.guard();let J=this.lib.editBufferGetNextWordBoundary(this.bufferPtr);return{row:J.row,col:J.col,offset:J.offset}}getPrevWordBoundary(){this.guard();let J=this.lib.editBufferGetPrevWordBoundary(this.bufferPtr);return{row:J.row,col:J.col,offset:J.offset}}getEOL(){this.guard();let J=this.lib.editBufferGetEOL(this.bufferPtr);return{row:J.row,col:J.col,offset:J.offset}}offsetToPosition(J){this.guard();let Z=this.lib.editBufferOffsetToPosition(this.bufferPtr,J);if(!Z)return null;return{row:Z.row,col:Z.col}}positionToOffset(J,Z){return this.guard(),this.lib.editBufferPositionToOffset(this.bufferPtr,J,Z)}getLineStartOffset(J){return this.guard(),this.lib.editBufferGetLineStartOffset(this.bufferPtr,J)}getTextRange(J,Z){if(this.guard(),J>=Z)return"";let $=1048576,H=this.lib.editBufferGetTextRange(this.bufferPtr,J,Z,$);if(!H)return"";return this.lib.decoder.decode(H)}getTextRangeByCoords(J,Z,$,H){this.guard();let Q=1048576,j=this.lib.editBufferGetTextRangeByCoords(this.bufferPtr,J,Z,$,H,Q);if(!j)return"";return this.lib.decoder.decode(j)}debugLogRope(){this.guard(),this.lib.editBufferDebugLogRope(this.bufferPtr)}undo(){this.guard();let J=256,Z=this.lib.editBufferUndo(this.bufferPtr,J);if(!Z)return null;return this.lib.decoder.decode(Z)}redo(){this.guard();let J=256,Z=this.lib.editBufferRedo(this.bufferPtr,J);if(!Z)return null;return this.lib.decoder.decode(Z)}canUndo(){return this.guard(),this.lib.editBufferCanUndo(this.bufferPtr)}canRedo(){return this.guard(),this.lib.editBufferCanRedo(this.bufferPtr)}clearHistory(){this.guard(),this.lib.editBufferClearHistory(this.bufferPtr)}setDefaultFg(J){this.guard(),this.lib.textBufferSetDefaultFg(this.textBufferPtr,J)}setDefaultBg(J){this.guard(),this.lib.textBufferSetDefaultBg(this.textBufferPtr,J)}setDefaultAttributes(J){this.guard(),this.lib.textBufferSetDefaultAttributes(this.textBufferPtr,J)}resetDefaults(){this.guard(),this.lib.textBufferResetDefaults(this.textBufferPtr)}setSyntaxStyle(J){this.guard(),this._syntaxStyle=J??void 0,this.lib.textBufferSetSyntaxStyle(this.textBufferPtr,J?.ptr??null)}getSyntaxStyle(){return this.guard(),this._syntaxStyle??null}addHighlight(J,Z){this.guard(),this.lib.textBufferAddHighlight(this.textBufferPtr,J,Z)}addHighlightByCharRange(J){this.guard(),this.lib.textBufferAddHighlightByCharRange(this.textBufferPtr,J)}removeHighlightsByRef(J){this.guard(),this.lib.textBufferRemoveHighlightsByRef(this.textBufferPtr,J)}clearLineHighlights(J){this.guard(),this.lib.textBufferClearLineHighlights(this.textBufferPtr,J)}clearAllHighlights(){this.guard(),this.lib.textBufferClearAllHighlights(this.textBufferPtr)}getLineHighlights(J){return this.guard(),this.lib.textBufferGetLineHighlights(this.textBufferPtr,J)}clear(){this.guard(),this.lib.editBufferClear(this.bufferPtr)}destroy(){if(this._destroyed)return;this._destroyed=!0,tJ.registry.delete(this.id),this.lib.destroyEditBuffer(this.bufferPtr)}}class s2{lib;viewPtr;editBuffer;_destroyed=!1;_extmarksController;_textBufferViewPtr;constructor(J,Z,$){this.lib=J,this.viewPtr=Z,this.editBuffer=$}static create(J,Z,$){let H=TJ(),Q=H.createEditorView(J.ptr,Z,$);return new s2(H,Q,J)}guard(){if(this._destroyed)throw Error("EditorView is destroyed")}get ptr(){return this.guard(),this.viewPtr}setViewportSize(J,Z){this.guard(),this.lib.editorViewSetViewportSize(this.viewPtr,J,Z)}setViewport(J,Z,$,H,Q=!0){this.guard(),this.lib.editorViewSetViewport(this.viewPtr,J,Z,$,H,Q)}getViewport(){return this.guard(),this.lib.editorViewGetViewport(this.viewPtr)}setScrollMargin(J){this.guard(),this.lib.editorViewSetScrollMargin(this.viewPtr,J)}setWrapMode(J){this.guard(),this.lib.editorViewSetWrapMode(this.viewPtr,J)}getVirtualLineCount(){return this.guard(),this.lib.editorViewGetVirtualLineCount(this.viewPtr)}getTotalVirtualLineCount(){return this.guard(),this.lib.editorViewGetTotalVirtualLineCount(this.viewPtr)}setSelection(J,Z,$,H){this.guard(),this.lib.editorViewSetSelection(this.viewPtr,J,Z,$||null,H||null)}updateSelection(J,Z,$){this.guard(),this.lib.editorViewUpdateSelection(this.viewPtr,J,Z||null,$||null)}resetSelection(){this.guard(),this.lib.editorViewResetSelection(this.viewPtr)}getSelection(){return this.guard(),this.lib.editorViewGetSelection(this.viewPtr)}hasSelection(){return this.guard(),this.getSelection()!==null}setLocalSelection(J,Z,$,H,Q,j,G,L){return this.guard(),this.lib.editorViewSetLocalSelection(this.viewPtr,J,Z,$,H,Q||null,j||null,G??!1,L??!1)}updateLocalSelection(J,Z,$,H,Q,j,G,L){return this.guard(),this.lib.editorViewUpdateLocalSelection(this.viewPtr,J,Z,$,H,Q||null,j||null,G??!1,L??!1)}resetLocalSelection(){this.guard(),this.lib.editorViewResetLocalSelection(this.viewPtr)}getSelectedText(){this.guard();let J=1048576,Z=this.lib.editorViewGetSelectedTextBytes(this.viewPtr,J);if(!Z)return"";return this.lib.decoder.decode(Z)}getCursor(){return this.guard(),this.lib.editorViewGetCursor(this.viewPtr)}getText(){this.guard();let J=1048576,Z=this.lib.editorViewGetText(this.viewPtr,J);if(!Z)return"";return this.lib.decoder.decode(Z)}getVisualCursor(){return this.guard(),this.lib.editorViewGetVisualCursor(this.viewPtr)}moveUpVisual(){this.guard(),this.lib.editorViewMoveUpVisual(this.viewPtr)}moveDownVisual(){this.guard(),this.lib.editorViewMoveDownVisual(this.viewPtr)}deleteSelectedText(){this.guard(),this.lib.editorViewDeleteSelectedText(this.viewPtr)}setCursorByOffset(J){this.guard(),this.lib.editorViewSetCursorByOffset(this.viewPtr,J)}getNextWordBoundary(){return this.guard(),this.lib.editorViewGetNextWordBoundary(this.viewPtr)}getPrevWordBoundary(){return this.guard(),this.lib.editorViewGetPrevWordBoundary(this.viewPtr)}getEOL(){return this.guard(),this.lib.editorViewGetEOL(this.viewPtr)}getVisualSOL(){return this.guard(),this.lib.editorViewGetVisualSOL(this.viewPtr)}getVisualEOL(){return this.guard(),this.lib.editorViewGetVisualEOL(this.viewPtr)}getLineInfo(){return this.guard(),this.lib.editorViewGetLineInfo(this.viewPtr)}getLogicalLineInfo(){return this.guard(),this.lib.editorViewGetLogicalLineInfo(this.viewPtr)}get extmarks(){if(!this._extmarksController)this._extmarksController=O6(this.editBuffer,this);return this._extmarksController}setPlaceholderStyledText(J){this.guard(),this.lib.editorViewSetPlaceholderStyledText(this.viewPtr,J)}setTabIndicator(J){this.guard();let Z=typeof J==="string"?J.codePointAt(0)??0:J;this.lib.editorViewSetTabIndicator(this.viewPtr,Z)}setTabIndicatorColor(J){this.guard(),this.lib.editorViewSetTabIndicatorColor(this.viewPtr,J)}measureForDimensions(J,Z){if(this.guard(),!this._textBufferViewPtr)this._textBufferViewPtr=this.lib.editorViewGetTextBufferView(this.viewPtr);return this.lib.textBufferViewMeasureForDimensions(this._textBufferViewPtr,J,Z)}destroy(){if(this._destroyed)return;if(this._extmarksController)this._extmarksController.destroy(),this._extmarksController=void 0;this._destroyed=!0,this.lib.destroyEditorView(this.viewPtr)}}function k8(J){let Z={};for(let $ of J){let H={};if($.style.foreground)H.fg=y($.style.foreground);if($.style.background)H.bg=y($.style.background);if($.style.bold!==void 0)H.bold=$.style.bold;if($.style.italic!==void 0)H.italic=$.style.italic;if($.style.underline!==void 0)H.underline=$.style.underline;if($.style.dim!==void 0)H.dim=$.style.dim;for(let Q of $.scope)Z[Q]=H}return Z}class aZ{lib;stylePtr;_destroyed=!1;nameCache=new Map;styleDefs=new Map;mergedCache=new Map;constructor(J,Z){this.lib=J,this.stylePtr=Z}static create(){let J=TJ(),Z=J.createSyntaxStyle();return new aZ(J,Z)}static fromTheme(J){let Z=aZ.create(),$=k8(J);for(let[H,Q]of Object.entries($))Z.registerStyle(H,Q);return Z}static fromStyles(J){let Z=aZ.create();for(let[$,H]of Object.entries(J))Z.registerStyle($,H);return Z}guard(){if(this._destroyed)throw Error("NativeSyntaxStyle is destroyed")}registerStyle(J,Z){this.guard();let $=YZ({bold:Z.bold,italic:Z.italic,underline:Z.underline,dim:Z.dim}),H=Z.fg?y(Z.fg):null,Q=Z.bg?y(Z.bg):null,j=this.lib.syntaxStyleRegister(this.stylePtr,J,H,Q,$);return this.nameCache.set(J,j),this.styleDefs.set(J,{...Z,fg:H??void 0,bg:Q??void 0}),j}resolveStyleId(J){this.guard();let Z=this.nameCache.get(J);if(Z!==void 0)return Z;let $=this.lib.syntaxStyleResolveByName(this.stylePtr,J);if($!==null)this.nameCache.set(J,$);return $}getStyleId(J){this.guard();let Z=this.resolveStyleId(J);if(Z!==null)return Z;if(J.includes(".")){let $=J.split(".")[0];return this.resolveStyleId($)}return null}get ptr(){return this.guard(),this.stylePtr}getStyleCount(){return this.guard(),this.lib.syntaxStyleGetStyleCount(this.stylePtr)}clearNameCache(){this.nameCache.clear()}getStyle(J){if(this.guard(),Object.prototype.hasOwnProperty.call(this.styleDefs,J))return;let Z=this.styleDefs.get(J);if(Z)return Z;if(J.includes(".")){let $=J.split(".")[0];if(Object.prototype.hasOwnProperty.call(this.styleDefs,$))return;return this.styleDefs.get($)}return}mergeStyles(...J){this.guard();let Z=J.join(":"),$=this.mergedCache.get(Z);if($)return $;let H={};for(let G of J){let L=this.getStyle(G);if(!L)continue;if(L.fg)H.fg=L.fg;if(L.bg)H.bg=L.bg;if(L.bold!==void 0)H.bold=L.bold;if(L.italic!==void 0)H.italic=L.italic;if(L.underline!==void 0)H.underline=L.underline;if(L.dim!==void 0)H.dim=L.dim}let Q=YZ({bold:H.bold,italic:H.italic,underline:H.underline,dim:H.dim}),j={fg:H.fg,bg:H.bg,attributes:Q};return this.mergedCache.set(Z,j),j}clearCache(){this.guard(),this.mergedCache.clear()}getCacheSize(){return this.guard(),this.mergedCache.size}getAllStyles(){return this.guard(),new Map(this.styleDefs)}getRegisteredNames(){return this.guard(),Array.from(this.styleDefs.keys())}destroy(){if(this._destroyed)return;this._destroyed=!0,this.nameCache.clear(),this.styleDefs.clear(),this.mergedCache.clear(),this.lib.destroySyntaxStyle(this.stylePtr)}}function TZ(J){if(J===void 0)return!0;if(typeof J==="number"&&!Number.isNaN(J))return!0;return oZ(J)}class z$ extends gJ{_backgroundColor;_border;_borderStyle;_borderColor;_focusedBorderColor;_customBorderCharsObj;_customBorderChars;borderSides;shouldFill;_title;_titleColor;_titleAlignment;_bottomTitle;_bottomTitleAlignment;_defaultOptions={backgroundColor:"transparent",borderStyle:"single",border:!1,borderColor:"#FFFFFF",shouldFill:!0,titleAlignment:"left",bottomTitleAlignment:"left",focusedBorderColor:"#00AAFF"};constructor(J,Z){super(J,Z);if(Z.focusable===!0)this._focusable=!0;if(this._backgroundColor=y(Z.backgroundColor||this._defaultOptions.backgroundColor),this._border=Z.border??this._defaultOptions.border,!Z.border&&(Z.borderStyle||Z.borderColor||Z.focusedBorderColor||Z.customBorderChars))this._border=!0;if(this._borderStyle=F2(Z.borderStyle,this._defaultOptions.borderStyle),this._borderColor=y(Z.borderColor||this._defaultOptions.borderColor),this._focusedBorderColor=y(Z.focusedBorderColor||this._defaultOptions.focusedBorderColor),this._customBorderCharsObj=Z.customBorderChars,this._customBorderChars=this._customBorderCharsObj?xZ(this._customBorderCharsObj):void 0,this.borderSides=e0(this._border),this.shouldFill=Z.shouldFill??this._defaultOptions.shouldFill,this._title=Z.title,this._titleColor=Z.titleColor?y(Z.titleColor):void 0,this._titleAlignment=Z.titleAlignment||this._defaultOptions.titleAlignment,this._bottomTitle=Z.bottomTitle,this._bottomTitleAlignment=Z.bottomTitleAlignment||this._defaultOptions.bottomTitleAlignment,this.applyYogaBorders(),Z.gap!==void 0||Z.rowGap!==void 0||Z.columnGap!==void 0)this.applyYogaGap(Z)}initializeBorder(){if(this._border===!1)this._border=!0,this.borderSides=e0(this._border),this.applyYogaBorders()}get customBorderChars(){return this._customBorderCharsObj}set customBorderChars(J){this._customBorderCharsObj=J,this._customBorderChars=J?xZ(J):void 0,this.requestRender()}get backgroundColor(){return this._backgroundColor}set backgroundColor(J){let Z=y(J??this._defaultOptions.backgroundColor);if(this._backgroundColor!==Z)this._backgroundColor=Z,this.requestRender()}get border(){return this._border}set border(J){if(this._border!==J)this._border=J,this.borderSides=e0(J),this.applyYogaBorders(),this.requestRender()}get borderStyle(){return this._borderStyle}set borderStyle(J){let Z=F2(J,this._defaultOptions.borderStyle);if(this._borderStyle!==Z||!this._border)this._borderStyle=Z,this._customBorderChars=void 0,this.initializeBorder(),this.requestRender()}get borderColor(){return this._borderColor}set borderColor(J){let Z=y(J??this._defaultOptions.borderColor);if(this._borderColor!==Z)this._borderColor=Z,this.initializeBorder(),this.requestRender()}get focusedBorderColor(){return this._focusedBorderColor}set focusedBorderColor(J){let Z=y(J??this._defaultOptions.focusedBorderColor);if(this._focusedBorderColor!==Z){if(this._focusedBorderColor=Z,this.initializeBorder(),this._focused)this.requestRender()}}get title(){return this._title}set title(J){if(this._title!==J)this._title=J,this.requestRender()}get titleColor(){return this._titleColor}set titleColor(J){let Z=J?y(J):void 0;if(this._titleColor!==Z)this._titleColor=Z,this.requestRender()}get titleAlignment(){return this._titleAlignment}set titleAlignment(J){if(this._titleAlignment!==J)this._titleAlignment=J,this.requestRender()}get bottomTitle(){return this._bottomTitle}set bottomTitle(J){if(this._bottomTitle!==J)this._bottomTitle=J,this.requestRender()}get bottomTitleAlignment(){return this._bottomTitleAlignment}set bottomTitleAlignment(J){if(this._bottomTitleAlignment!==J)this._bottomTitleAlignment=J,this.requestRender()}renderSelf(J){let Z=this.borderSides.top||this.borderSides.right||this.borderSides.bottom||this.borderSides.left,$=this.shouldFill&&this._backgroundColor.a>0;if(!Z&&!$)return;let Q=this._focusable&&(this._focused||this._hasFocusedDescendant)?this._focusedBorderColor:this._borderColor,j=this._screenX,G=this._screenY;J.drawBox({x:j,y:G,width:this.width,height:this.height,borderStyle:this._borderStyle,customBorderChars:this._customBorderChars,border:this._border,borderColor:Q,backgroundColor:this._backgroundColor,shouldFill:this.shouldFill,title:this._title,titleColor:this._titleColor??Q,titleAlignment:this._titleAlignment,bottomTitle:this._bottomTitle,bottomTitleAlignment:this._bottomTitleAlignment})}getScissorRect(){let J=super.getScissorRect();if(!this.borderSides.top&&!this.borderSides.right&&!this.borderSides.bottom&&!this.borderSides.left)return J;let Z=this.borderSides.left?1:0,$=this.borderSides.right?1:0,H=this.borderSides.top?1:0,Q=this.borderSides.bottom?1:0;return{x:J.x+Z,y:J.y+H,width:Math.max(0,J.width-Z-$),height:Math.max(0,J.height-H-Q)}}applyYogaBorders(){let J=this.yogaNode;J.setBorder(v.Left,this.borderSides.left?1:0),J.setBorder(v.Right,this.borderSides.right?1:0),J.setBorder(v.Top,this.borderSides.top?1:0),J.setBorder(v.Bottom,this.borderSides.bottom?1:0),this.requestRender()}applyYogaGap(J){let Z=this.yogaNode;if(TZ(J.gap))Z.setGap(qJ.All,J.gap);if(TZ(J.rowGap))Z.setGap(qJ.Row,J.rowGap);if(TZ(J.columnGap))Z.setGap(qJ.Column,J.columnGap)}set gap(J){if(TZ(J))this.yogaNode.setGap(qJ.All,J),this.requestRender()}set rowGap(J){if(TZ(J))this.yogaNode.setGap(qJ.Row,J),this.requestRender()}set columnGap(J){if(TZ(J))this.yogaNode.setGap(qJ.Column,J),this.requestRender()}}class o2 extends gJ{selectable=!0;_defaultFg;_defaultBg;_defaultAttributes;_selectionBg;_selectionFg;_wrapMode="word";lastLocalSelection=null;_tabIndicator;_tabIndicatorColor;_scrollX=0;_scrollY=0;_truncate=!1;_firstLineOffset=0;textBuffer;textBufferView;_textBufferSyntaxStyle;_defaultOptions={fg:a.fromValues(1,1,1,1),bg:a.fromValues(0,0,0,0),selectionBg:void 0,selectionFg:void 0,selectable:!0,attributes:0,wrapMode:"word",tabIndicator:void 0,tabIndicatorColor:void 0,truncate:!1};constructor(J,Z){super(J,Z);if(this._defaultFg=y(Z.fg??this._defaultOptions.fg),this._defaultBg=y(Z.bg??this._defaultOptions.bg),this._defaultAttributes=Z.attributes??this._defaultOptions.attributes,this._selectionBg=Z.selectionBg?y(Z.selectionBg):this._defaultOptions.selectionBg,this._selectionFg=Z.selectionFg?y(Z.selectionFg):this._defaultOptions.selectionFg,this.selectable=Z.selectable??this._defaultOptions.selectable,this._wrapMode=Z.wrapMode??this._defaultOptions.wrapMode,this._tabIndicator=Z.tabIndicator??this._defaultOptions.tabIndicator,this._tabIndicatorColor=Z.tabIndicatorColor?y(Z.tabIndicatorColor):this._defaultOptions.tabIndicatorColor,this._truncate=Z.truncate??this._defaultOptions.truncate,this.textBuffer=a2.create(this._ctx.widthMethod),this.textBufferView=n2.create(this.textBuffer),this._firstLineOffset=J.claimFirstLineOffset?.(this)??0,this._textBufferSyntaxStyle=aZ.create(),this.textBuffer.setSyntaxStyle(this._textBufferSyntaxStyle),this.textBufferView.setWrapMode(this._wrapMode),this.textBufferView.setFirstLineOffset(this._firstLineOffset),this.setupMeasureFunc(),this.textBuffer.setDefaultFg(this._defaultFg),this.textBuffer.setDefaultBg(this._defaultBg),this.textBuffer.setDefaultAttributes(this._defaultAttributes),this._tabIndicator!==void 0)this.textBufferView.setTabIndicator(this._tabIndicator);if(this._tabIndicatorColor!==void 0)this.textBufferView.setTabIndicatorColor(this._tabIndicatorColor);if(this._wrapMode!=="none"&&this.width>0)this.textBufferView.setWrapWidth(this.width);if(this.width>0&&this.height>0)this.textBufferView.setViewport(this._scrollX,this._scrollY,this.width,this.height);this.textBufferView.setTruncate(this._truncate),this.updateTextInfo()}onMouseEvent(J){if(J.type==="scroll")this.handleScroll(J)}handleScroll(J){if(!J.scroll)return;let{direction:Z,delta:$}=J.scroll;if(Z==="up")this.scrollY-=$;else if(Z==="down")this.scrollY+=$;if(this._wrapMode==="none"){if(Z==="left")this.scrollX-=$;else if(Z==="right")this.scrollX+=$}}get lineInfo(){return this.textBufferView.logicalLineInfo}get lineCount(){return this.textBuffer.getLineCount()}get virtualLineCount(){return this.textBufferView.getVirtualLineCount()}get scrollY(){return this._scrollY}set scrollY(J){let Z=Math.max(0,this.scrollHeight-this.height),$=Math.max(0,Math.min(J,Z));if(this._scrollY!==$)this._scrollY=$,this.updateViewportOffset(),this.requestRender()}get scrollX(){return this._scrollX}set scrollX(J){let Z=Math.max(0,this.scrollWidth-this.width),$=Math.max(0,Math.min(J,Z));if(this._scrollX!==$)this._scrollX=$,this.updateViewportOffset(),this.requestRender()}get scrollWidth(){return this.lineInfo.lineWidthColsMax}get scrollHeight(){return this.lineInfo.lineStartCols.length}get maxScrollY(){return Math.max(0,this.scrollHeight-this.height)}get maxScrollX(){return Math.max(0,this.scrollWidth-this.width)}updateViewportOffset(){if(this.width>0&&this.height>0)this.textBufferView.setViewport(this._scrollX,this._scrollY,this.width,this.height)}get plainText(){return this.textBuffer.getPlainText()}get textLength(){return this.textBuffer.length}get fg(){return this._defaultFg}set fg(J){let Z=y(J??this._defaultOptions.fg);if(this._defaultFg!==Z)this._defaultFg=Z,this.textBuffer.setDefaultFg(this._defaultFg),this.onFgChanged(Z),this.requestRender()}get selectionBg(){return this._selectionBg}set selectionBg(J){let Z=J?y(J):this._defaultOptions.selectionBg;if(this._selectionBg!==Z){if(this._selectionBg=Z,this.lastLocalSelection)this.updateLocalSelection(this.lastLocalSelection);this.requestRender()}}get selectionFg(){return this._selectionFg}set selectionFg(J){let Z=J?y(J):this._defaultOptions.selectionFg;if(this._selectionFg!==Z){if(this._selectionFg=Z,this.lastLocalSelection)this.updateLocalSelection(this.lastLocalSelection);this.requestRender()}}get bg(){return this._defaultBg}set bg(J){let Z=y(J??this._defaultOptions.bg);if(this._defaultBg!==Z)this._defaultBg=Z,this.textBuffer.setDefaultBg(this._defaultBg),this.onBgChanged(Z),this.requestRender()}get attributes(){return this._defaultAttributes}set attributes(J){if(this._defaultAttributes!==J)this._defaultAttributes=J,this.textBuffer.setDefaultAttributes(this._defaultAttributes),this.onAttributesChanged(J),this.requestRender()}get wrapMode(){return this._wrapMode}set wrapMode(J){if(this._wrapMode!==J){if(this._wrapMode=J,this.textBufferView.setWrapMode(this._wrapMode),J!=="none"&&this.width>0)this.textBufferView.setWrapWidth(this.width);this.yogaNode.markDirty(),this.requestRender()}}get tabIndicator(){return this._tabIndicator}set tabIndicator(J){if(this._tabIndicator!==J){if(this._tabIndicator=J,J!==void 0)this.textBufferView.setTabIndicator(J);this.requestRender()}}get tabIndicatorColor(){return this._tabIndicatorColor}set tabIndicatorColor(J){let Z=J?y(J):void 0;if(this._tabIndicatorColor!==Z){if(this._tabIndicatorColor=Z,Z!==void 0)this.textBufferView.setTabIndicatorColor(Z);this.requestRender()}}get truncate(){return this._truncate}set truncate(J){if(this._truncate!==J)this._truncate=J,this.textBufferView.setTruncate(J),this.requestRender()}onResize(J,Z){this.textBufferView.setViewport(this._scrollX,this._scrollY,J,Z),this.yogaNode.markDirty(),this.requestRender(),this.emit("line-info-change")}refreshLocalSelection(){if(this.lastLocalSelection)return this.updateLocalSelection(this.lastLocalSelection);return!1}updateLocalSelection(J){if(!J?.isActive)return this.textBufferView.resetLocalSelection(),!0;return this.textBufferView.setLocalSelection(J.anchorX,J.anchorY,J.focusX,J.focusY,this._selectionBg,this._selectionFg)}updateTextInfo(){if(this.lastLocalSelection)this.updateLocalSelection(this.lastLocalSelection);this.yogaNode.markDirty(),this.requestRender(),this.emit("line-info-change")}setupMeasureFunc(){let J=(Z,$,H,Q)=>{let j;if($===SJ.Undefined||isNaN(Z))j=0;else j=Z;let G=isNaN(H)?1:H,L=this.textBufferView.measureForDimensions(Math.floor(j),Math.floor(G)),Y=L?Math.max(1,L.widthColsMax):1,_=L?Math.max(1,L.lineCount):1;if($===SJ.AtMost&&this._positionType!=="absolute")return{width:Math.min(j,Y),height:Math.min(G,_)};return{width:Y,height:_}};this.yogaNode.setMeasureFunc(J)}shouldStartSelection(J,Z){if(!this.selectable)return!1;let $=J-this.x,H=Z-this.y;return $>=0&&$<this.width&&H>=0&&H<this.height}onSelectionChanged(J){let Z=v9(J,this.x,this.y);this.lastLocalSelection=Z;let $;if(!Z?.isActive)this.textBufferView.resetLocalSelection(),$=!0;else if(J?.isStart)$=this.textBufferView.setLocalSelection(Z.anchorX,Z.anchorY,Z.focusX,Z.focusY,this._selectionBg,this._selectionFg);else $=this.textBufferView.updateLocalSelection(Z.anchorX,Z.anchorY,Z.focusX,Z.focusY,this._selectionBg,this._selectionFg);if($)this.requestRender();return this.hasSelection()}getSelectedText(){return this.textBufferView.getSelectedText()}hasSelection(){return this.textBufferView.hasSelection()}getSelection(){return this.textBufferView.getSelection()}render(J,Z){if(!this.visible)return;let $=this._screenX,H=this._screenY;if(this.markClean(),this._ctx.addToHitGrid($,H,this.width,this.height,this.num),this.renderSelf(J),this.buffered&&this.frameBuffer)J.drawFrameBuffer($,H,this.frameBuffer)}renderSelf(J){if(this.textBuffer.ptr)J.drawTextBuffer(this.textBufferView,this._screenX,this._screenY)}destroy(){if(this.isDestroyed)return;this.textBuffer.setSyntaxStyle(null),this._textBufferSyntaxStyle.destroy(),this.textBufferView.destroy(),this.textBuffer.destroy(),super.destroy()}onFgChanged(J){}onBgChanged(J){}onAttributesChanged(J){}}class S0 extends o2{_content;_filetype;_syntaxStyle;_isHighlighting=!1;_treeSitterClient;_highlightsDirty=!1;_highlightSnapshotId=0;_conceal;_drawUnstyledText;_shouldRenderTextBuffer=!0;_streaming;_initialStyledText;_hadInitialContent=!1;_lastHighlights=[];_baseHighlight;_onHighlight;_onChunks;_highlightingPromise=Promise.resolve();_renderedLineSources;_mappedLineInfo;_contentDefaultOptions={content:"",conceal:!0,drawUnstyledText:!0,streaming:!1};constructor(J,Z){super(J,Z);if(this._content=Z.content??this._contentDefaultOptions.content,this._filetype=Z.filetype,this._syntaxStyle=Z.syntaxStyle,this._treeSitterClient=Z.treeSitterClient??Z$(),this._conceal=Z.conceal??this._contentDefaultOptions.conceal,this._drawUnstyledText=Z.drawUnstyledText??this._contentDefaultOptions.drawUnstyledText,this._streaming=Z.streaming??this._contentDefaultOptions.streaming,this._initialStyledText=Z.initialStyledText,this._baseHighlight=Z.baseHighlight,this._onHighlight=Z.onHighlight,this._onChunks=Z.onChunks,this._content.length>0){if(this._initialStyledText&&this._drawUnstyledText)this.textBuffer.setStyledText(this._initialStyledText);else this.textBuffer.setText(this._content);this.updateTextInfo(),this._shouldRenderTextBuffer=this._drawUnstyledText||!this._filetype}this._highlightsDirty=this._content.length>0}get content(){return this._content}set content(J){if(this._content!==J){if(this._content=J,this._highlightsDirty=!0,this._highlightSnapshotId++,this._streaming&&this._filetype&&!this._drawUnstyledText){this.requestRender();return}if(this._initialStyledText&&this._drawUnstyledText)this.textBuffer.setStyledText(this._initialStyledText);else this.textBuffer.setText(J);this.setRenderedLineSources(void 0),this.updateTextInfo()}}get lineInfo(){if(!this._renderedLineSources)return super.lineInfo;if(this._mappedLineInfo)return this._mappedLineInfo;let J=super.lineInfo,Z=this._renderedLineSources;return this._mappedLineInfo={...J,lineSources:J.lineSources.map(($)=>Z[$]??$)},this._mappedLineInfo}get wrapMode(){return super.wrapMode}set wrapMode(J){if(super.wrapMode!==J)this._mappedLineInfo=void 0,super.wrapMode=J}onResize(J,Z){this._mappedLineInfo=void 0,super.onResize(J,Z)}updateTextInfo(){this._mappedLineInfo=void 0,super.updateTextInfo()}get filetype(){return this._filetype}set filetype(J){if(this._filetype!==J)this._filetype=J,this._highlightsDirty=!0}get syntaxStyle(){return this._syntaxStyle}set syntaxStyle(J){if(this._syntaxStyle!==J)this._syntaxStyle=J,this._highlightsDirty=!0}get conceal(){return this._conceal}set conceal(J){if(this._conceal!==J)this._conceal=J,this._highlightsDirty=!0}get drawUnstyledText(){return this._drawUnstyledText}set drawUnstyledText(J){if(this._drawUnstyledText!==J)this._drawUnstyledText=J,this._highlightsDirty=!0}get streaming(){return this._streaming}set initialStyledText(J){if(this._initialStyledText!==J)this._initialStyledText=J,this._highlightsDirty=!0}set streaming(J){if(this._streaming!==J)this._streaming=J,this._hadInitialContent=!1,this._lastHighlights=[],this._highlightsDirty=!0}get treeSitterClient(){return this._treeSitterClient}set treeSitterClient(J){if(this._treeSitterClient!==J)this._treeSitterClient=J,this._highlightsDirty=!0}get onHighlight(){return this._onHighlight}get baseHighlight(){return this._baseHighlight}set baseHighlight(J){if(this._baseHighlight!==J)this._baseHighlight=J,this._highlightsDirty=!0}set onHighlight(J){if(this._onHighlight!==J)this._onHighlight=J,this._highlightsDirty=!0}get onChunks(){return this._onChunks}set onChunks(J){if(this._onChunks!==J)this._onChunks=J,this._highlightsDirty=!0}get isHighlighting(){return this._isHighlighting}get highlightingDone(){return this._highlightingPromise}async transformChunks(J,Z){if(!this._onChunks)return J;return await this._onChunks(J,Z)??J}ensureVisibleTextBeforeHighlight(){if(this.isDestroyed)return;let J=this._content;if(!this._filetype){this._shouldRenderTextBuffer=!0;return}let Z=this._streaming&&!this._hadInitialContent,$=this._streaming?Z&&this._drawUnstyledText:this._drawUnstyledText;if(this._streaming&&!Z)this._shouldRenderTextBuffer=!0;else if($){if(this._initialStyledText)this.textBuffer.setStyledText(this._initialStyledText);else this.textBuffer.setText(J);this.setRenderedLineSources(void 0),this._shouldRenderTextBuffer=!0}else this._shouldRenderTextBuffer=!1}async startHighlight(){let J=this._content,Z=this._filetype,$=++this._highlightSnapshotId;if(!Z)return;if(this._streaming&&!this._hadInitialContent)this._hadInitialContent=!0;this._isHighlighting=!0;try{let Q=await this._treeSitterClient.highlightOnce(J,Z);if($!==this._highlightSnapshotId){this.requestRender();return}if(this.isDestroyed)return;let j=Q.highlights??[];if(this._onHighlight&&j.length>=0){let G={content:J,filetype:Z,syntaxStyle:this._syntaxStyle},L=await this._onHighlight(j,G);if(L!==void 0)j=L}if($!==this._highlightSnapshotId){this.requestRender();return}if(this.isDestroyed)return;if(j.length>0){if(this._streaming)this._lastHighlights=j}if(j.length>0||this._onChunks||this._baseHighlight){let G={content:J,filetype:Z,syntaxStyle:this._syntaxStyle,highlights:j},L=d9(J,j,this._syntaxStyle,{enabled:this._conceal,baseHighlight:this._baseHighlight}),Y=this._onChunks?void 0:this.getConcealLinesSourceMap(J,j);if(L=await this.transformChunks(L,G),$!==this._highlightSnapshotId){this.requestRender();return}if(this.isDestroyed)return;let _=new ZZ(L);this.textBuffer.setStyledText(_),this.setRenderedLineSources(Y)}else this.textBuffer.setText(J),this.setRenderedLineSources(void 0);this._shouldRenderTextBuffer=!0,this._isHighlighting=!1,this._highlightsDirty=!1,this.updateTextInfo(),this.requestRender()}catch(Q){if($!==this._highlightSnapshotId){this.requestRender();return}if(console.warn("Code highlighting failed, falling back to plain text:",Q),this.isDestroyed)return;this.textBuffer.setText(J),this.setRenderedLineSources(void 0),this._shouldRenderTextBuffer=!0,this._isHighlighting=!1,this._highlightsDirty=!1,this.updateTextInfo(),this.requestRender()}}setRenderedLineSources(J){this._renderedLineSources=J,this._mappedLineInfo=void 0}static isIdentityLineSources(J){for(let Z=0;Z<J.length;Z++)if(J[Z]!==Z)return!1;return!0}static getMergedConcealLineRanges(J){let Z=[];for(let H of J){let Q=H[3];if(Q?.concealLines===void 0)continue;let j=H[2];if(Q.conceal===""||Q.conceal===void 0&&(j==="conceal"||j.startsWith("conceal.")))Z.push([H[0],H[1]])}if(Z.length<=1)return Z;Z.sort((H,Q)=>H[0]-Q[0]);let $=0;for(let H=1;H<Z.length;H++){let Q=Z[$],j=Z[H];if(j[0]<=Q[1])Q[1]=Math.max(Q[1],j[1]);else $++,Z[$]=j}return Z.length=$+1,Z}getConcealLinesSourceMap(J,Z){if(!this._conceal||J.length===0)return;let $=S0.getMergedConcealLineRanges(Z);if($.length===0)return;let H=[],Q=0,j=0,G=0,L=!1,Y=(_,W)=>{if(H.length===0)H.push(_);else if(!L)H[H.length-1]=_;if(W)L=!0};while(j<=J.length){let _=J.indexOf(`
@@ -65,4 +65,4 @@ Captured external output:
65
65
  ${$}`);return Error(j.join(`
66
66
  `))}class v${commits=[];constructor(J){J.on("external_output",this.record),J.once("destroy",()=>{J.off("external_output",this.record)})}record=(J)=>{let Z=p$.decode(J.snapshot.getRealCharBytes(!1)),$=Array.from({length:J.snapshot.height},(H,Q)=>Z.slice(Q*J.snapshot.width,(Q+1)*J.snapshot.width).trimEnd());this.commits.push({text:$.join(`
67
67
  `),rows:$,width:J.snapshot.width,height:J.snapshot.height,rowColumns:J.rowColumns,startOnNewLine:J.startOnNewLine,trailingNewline:J.trailingNewline})};take(){let J=this.commits;return this.commits=[],J}takeText(){return this.take().flatMap((J)=>J.rows).join(`
68
- `)}clear(){this.commits=[]}}function Z7(J){let Z=J.getSchedulerState();if(!Z.isRunning&&!Z.isRendering&&!Z.hasScheduledRender)return Promise.resolve(null);return new Promise(($)=>{let H=!1,Q=()=>{J.off("frame",G),J.off("destroy",L)},j=(Y)=>{if(H)return;H=!0,Q(),$(Y)},G=(Y)=>{j(Y)},L=()=>{j(null)};if(J.on("frame",G),J.once("destroy",L),!Z.isRunning)J.idle().then(()=>j(null))})}async function g4(J){let Z=J.kittyKeyboard?{events:!0}:J.useKittyKeyboard,$=await RH({...J,useKittyKeyboard:Z,screenMode:J.screenMode??"main-screen",footerHeight:J.footerHeight??12,consoleMode:J.consoleMode??"disabled",externalOutputMode:J.externalOutputMode??"passthrough"}),H=new v$($),Q=qH($,{kittyKeyboard:J.kittyKeyboard,otherModifiersMode:J.otherModifiersMode}),j=PH($),G=async()=>{let q=$._feed;if(q?.isBackpressured())await q.idle();await $.loop()},L=()=>{let N=$.currentRenderBuffer.getRealCharBytes(!0);return p$.decode(N)},Y=async(q={})=>{let N=rZ(q.maxFrames,FH),z=rZ(q.quietFrames,SH),P=0;for(let A=0;A<N;A++){await b0();let I=$.getSchedulerState();if(!I.isRunning&&!I.isRendering&&!I.hasScheduledRender)return;if(!await Z7($))return;if($.getNativeStats().cellsUpdated===0){if(P++,P>=z)return}else P=0}await b0();let O=$.getSchedulerState();if(!O.isRunning&&!O.isRendering&&!O.hasScheduledRender)return;throw J7($,`Timed out waiting for visual idle after ${N} frames`)};return{renderer:$,mockInput:Q,mockMouse:j,renderOnce:G,flush:async(q={})=>{await Y({maxFrames:rZ(q.maxPasses,e2)})},waitFor:async(q,N={})=>{let z=rZ(N.maxPasses,e2);for(let P=0;P<=z;P++){if(await b0(),await q())return;if(P===z)break;let O=$.getSchedulerState();if(!O.isRunning&&!O.isRendering&&!O.hasScheduledRender)break;await Z7($)}throw J7($,`Timed out waiting for predicate after ${z} passes`)},waitForFrame:async(q,N={})=>{let z=rZ(N.maxPasses,e2),P=L();for(let O=0;O<=z;O++){if(await b0(),P=L(),await q(P))return P;if(O===z)break;let A=$.getSchedulerState();if(!A.isRunning&&!A.isRendering&&!A.hasScheduledRender)break;await Z7($)}throw P=L(),J7($,`Timed out waiting for frame predicate after ${z} passes`,P)},waitForVisualIdle:Y,externalOutput:H,getNativeStats:()=>$.getNativeStats(),captureCharFrame:L,captureSpans:()=>{let q=$.currentRenderBuffer,N=q.getSpanLines(),z=$.getCursorState();return{cols:q.width,rows:q.height,cursor:[z.x,z.y],lines:N}},resize:(q,N)=>{$.processResize(q,N)}}}async function RH(J){let Z=J.stdin||KH(),$=J.width||J.stdout?.columns||process.stdout.columns||80,H=J.height||J.stdout?.rows||process.stdout.rows||24,Q=J.stdout||wH($,H);return new tZ(Z,Q,$,H,{...J,bufferedOutput:J.bufferedOutput??"memory"})}class TH extends C0{_highlightPromises=[];_mockResult={highlights:[]};_autoResolveTimeout;constructor(J){super({dataPath:"/tmp/mock"});this._autoResolveTimeout=J?.autoResolveTimeout}async highlightOnce(J,Z){let{promise:$,resolve:H}=Promise.withResolvers(),Q;if(this._autoResolveTimeout!==void 0)Q=setTimeout(()=>{let j=this._highlightPromises.findIndex((G)=>G.promise===$);if(j!==-1)H(this._mockResult),this._highlightPromises.splice(j,1)},this._autoResolveTimeout);return this._highlightPromises.push({promise:$,resolve:H,timeout:Q}),$}setMockResult(J){this._mockResult=J}resolveHighlightOnce(J=0){if(J>=0&&J<this._highlightPromises.length){let Z=this._highlightPromises[J];if(Z.timeout)clearTimeout(Z.timeout);Z.resolve(this._mockResult),this._highlightPromises.splice(J,1)}}resolveAllHighlightOnce(){for(let{resolve:J,timeout:Z}of this._highlightPromises){if(Z)clearTimeout(Z);J(this._mockResult)}this._highlightPromises=[]}isHighlighting(){return this._highlightPromises.length>0}}function gH(J={}){return{kitty_keyboard:!1,kitty_graphics:!1,rgb:!1,ansi256:!1,unicode:"unicode",sgr_pixels:!1,color_scheme_updates:!1,explicit_width:!1,scaled_text:!1,sixel:!1,focus_tracking:!1,sync:!1,bracketed_paste:!1,hyperlinks:!1,osc52:!1,notifications:!1,explicit_cursor_positioning:!1,remote:!1,multiplexer:"none",...J,terminal:{name:"",version:"",from_xtversion:!1,...J.terminal}}}function C4(J,Z={}){let $=gH(Z);return J._capabilities=$,$}function M4(){let J=[],Z=(...$)=>{J.push($)};return Z.calls=J,Z.callCount=()=>J.length,Z.calledWith=(...$)=>{return J.some((H)=>JSON.stringify(H)===JSON.stringify($))},Z.reset=()=>J.length=0,Z}function CH(J,Z){if(J.fireAt!==Z.fireAt)return J.fireAt-Z.fireAt;return J.order-Z.order}class MH{time=0;nextId=1;nextOrder=0;timers=new Map;now(){return this.time}setTime(J){let Z=Math.floor(J);if(Z>=this.time){this.advance(Z-this.time);return}this.time=Z}setTimeout(J,Z){return this.schedule(J,Z,!1)}clearTimeout(J){this.timers.delete(Number(J))}setInterval(J,Z){return this.schedule(J,Z,!0)}clearInterval(J){this.clearTimeout(J)}advance(J){let Z=this.time+Math.max(0,Math.floor(J));while(!0){let $=this.peekNextTimer();if(!$||$.fireAt>Z)break;if(this.timers.delete($.id),this.time=$.fireAt,$.fn(),$.repeat&&!this.timers.has($.id))this.timers.set($.id,{...$,fireAt:this.time+$.delayMs,order:this.nextOrder++})}this.time=Z}runAll(){while(!0){let J=this.peekNextTimer();if(!J)return;this.advance(J.fireAt-this.time)}}schedule(J,Z,$){let H=this.nextId++,Q=Math.max(0,Math.floor(Z));return this.timers.set(H,{id:H,fireAt:this.time+Q,order:this.nextOrder++,delayMs:Q,repeat:$,fn:J}),H}peekNextTimer(){let J=null;for(let Z of this.timers.values())if(!J||CH(Z,J)<0)J=Z;return J}}class xH{renderer;frames=[];recording=!1;frameNumber=0;startTime=0;decoder=new TextDecoder;recordBuffers;now;onFrame=()=>{if(!this.recording)return;this.captureFrame()};constructor(J,Z){this.renderer=J,this.recordBuffers=Z?.recordBuffers||{},this.now=Z?.now??(()=>performance.now())}rec(){if(this.recording)return;this.recording=!0,this.frames=[],this.frameNumber=0,this.startTime=this.now(),this.renderer.on("frame",this.onFrame)}stop(){if(!this.recording)return;this.recording=!1,this.renderer.off("frame",this.onFrame)}get recordedFrames(){return[...this.frames]}clear(){this.frames=[],this.frameNumber=0}get isRecording(){return this.recording}captureFrame(){let J=this.renderer.currentRenderBuffer,Z=J.getRealCharBytes(!0),H={frame:this.decoder.decode(Z),timestamp:this.now()-this.startTime,frameNumber:this.frameNumber++};if(this.recordBuffers.fg||this.recordBuffers.bg||this.recordBuffers.attributes){let Q=J.buffers;if(H.buffers={},this.recordBuffers.fg)H.buffers.fg=new Uint16Array(Q.fg);if(this.recordBuffers.bg)H.buffers.bg=new Uint16Array(Q.bg);if(this.recordBuffers.attributes)H.buffers.attributes=new Uint8Array(Q.attributes)}this.frames.push(H)}}export{W1 as O,X1 as P,SJ as Q,P1 as R,F2 as S,Y0 as T,kH as U,e0 as V,xZ as W,I1 as X,q0 as Y,S9 as Z,v2 as _,y2 as $,R9 as aa,T9 as ba,g9 as ca,C9 as da,a as ea,K7 as fa,S2 as ga,hH as ha,bH as ia,y as ja,M1 as ka,fH as la,k1 as ma,H2 as na,pH as oa,sJ as pa,vH as qa,E1 as ra,yH as sa,h1 as ta,b1 as ua,YZ as va,cH as wa,lH as xa,uH as ya,p1 as za,ZZ as Aa,Q2 as Ba,mH as Ca,dH as Da,aH as Ea,iH as Fa,nH as Ga,sH as Ha,oH as Ia,tH as Ja,rH as Ka,eH as La,JQ as Ma,ZQ as Na,$Q as Oa,HQ as Pa,QQ as Qa,jQ as Ra,GQ as Sa,LQ as Ta,UQ as Ua,DQ as Va,YQ as Wa,_Q as Xa,WQ as Ya,XQ as Za,AQ as _a,NQ as $a,VQ as ab,OQ as bb,zQ as cb,qQ as db,PQ as eb,IQ as fb,BQ as gb,KQ as hb,wQ as ib,FQ as jb,nZ as kb,s1 as lb,RQ as mb,S7 as nb,J5 as ob,Z5 as pb,R7 as qb,T7 as rb,TQ as sb,gQ as tb,CQ as ub,MQ as vb,xQ as wb,g7 as xb,kQ as yb,C7 as zb,EQ as Ab,hQ as Bb,M7 as Cb,x7 as Db,bQ as Eb,k7 as Fb,B0 as Gb,p9 as Hb,v9 as Ib,$5 as Jb,_Z as Kb,DJ as Lb,fQ as Mb,pQ as Nb,vQ as Ob,QJ as Pb,m9 as Qb,d9 as Rb,cQ as Sb,c7 as Tb,sQ as Ub,C0 as Vb,r9 as Wb,X6 as Xb,A6 as Yb,T2 as Zb,J$ as _b,V6 as $b,J4 as ac,Z$ as bc,H$ as cc,O6 as dc,Q$ as ec,P6 as fc,j$ as gc,i7 as hc,Z4 as ic,$4 as jc,H4 as kc,xJ as lc,K8 as mc,D4 as nc,TJ as oc,a2 as pc,T8 as qc,g8 as rc,kZ as sc,k0 as tc,gJ as uc,mZ as vc,W4 as wc,M8 as xc,z9 as yc,h2 as zc,b2 as Ac,X4 as Bc,n2 as Cc,tJ as Dc,s2 as Ec,k8 as Fc,aZ as Gc,z$ as Hc,o2 as Ic,S0 as Jc,O0 as Kc,iZ as Lc,P$ as Mc,I$ as Nc,R0 as Oc,I9 as Pc,B9 as Qc,O2 as Rc,y8 as Sc,z2 as Tc,p2 as Uc,m8 as Vc,S$ as Wc,a8 as Xc,T$ as Yc,s8 as Zc,t8 as _c,AH as $c,KJ as ad,NH as bd,K4 as cd,VH as dd,OH as ed,tZ as fd,R4 as gd,cJ as hd,qH as id,kJ as jd,PH as kd,g4 as ld,TH as md,gH as nd,C4 as od,M4 as pd,MH as qd,xH as rd};
68
+ `)}clear(){this.commits=[]}}function Z7(J){let Z=J.getSchedulerState();if(!Z.isRunning&&!Z.isRendering&&!Z.hasScheduledRender)return Promise.resolve(null);return new Promise(($)=>{let H=!1,Q=()=>{J.off("frame",G),J.off("destroy",L)},j=(Y)=>{if(H)return;H=!0,Q(),$(Y)},G=(Y)=>{j(Y)},L=()=>{j(null)};if(J.on("frame",G),J.once("destroy",L),!Z.isRunning)J.idle().then(()=>j(null))})}async function g4(J){let Z=J.kittyKeyboard?{events:!0}:J.useKittyKeyboard,$=await RH({...J,useKittyKeyboard:Z,screenMode:J.screenMode??"main-screen",footerHeight:J.footerHeight??12,consoleMode:J.consoleMode??"disabled",externalOutputMode:J.externalOutputMode??"passthrough"}),H=new v$($),Q=qH($,{kittyKeyboard:J.kittyKeyboard,otherModifiersMode:J.otherModifiersMode}),j=PH($),G=async()=>{let q=$._feed;if(q?.isBackpressured())await q.idle();await $.loop()},L=()=>{let N=$.currentRenderBuffer.getRealCharBytes(!0);return p$.decode(N)},Y=async(q={})=>{let N=rZ(q.maxFrames,FH),z=rZ(q.quietFrames,SH),P=0;for(let A=0;A<N;A++){await b0();let I=$.getSchedulerState();if(!I.isRunning&&!I.isRendering&&!I.hasScheduledRender)return;if(!await Z7($))return;if($.getNativeStats().cellsUpdated===0){if(P++,P>=z)return}else P=0}await b0();let O=$.getSchedulerState();if(!O.isRunning&&!O.isRendering&&!O.hasScheduledRender)return;throw J7($,`Timed out waiting for visual idle after ${N} frames`)};return{renderer:$,mockInput:Q,mockMouse:j,renderOnce:G,flush:async(q={})=>{await Y({maxFrames:rZ(q.maxPasses,e2)})},waitFor:async(q,N={})=>{let z=rZ(N.maxPasses,e2);for(let P=0;P<=z;P++){if(await b0(),await q())return;if(P===z)break;let O=$.getSchedulerState();if(!O.isRunning&&!O.isRendering&&!O.hasScheduledRender)break;await Z7($)}throw J7($,`Timed out waiting for predicate after ${z} passes`)},waitForFrame:async(q,N={})=>{let z=rZ(N.maxPasses,e2),P=L();for(let O=0;O<=z;O++){if(await b0(),P=L(),await q(P))return P;if(O===z)break;let A=$.getSchedulerState();if(!A.isRunning&&!A.isRendering&&!A.hasScheduledRender)break;await Z7($)}throw P=L(),J7($,`Timed out waiting for frame predicate after ${z} passes`,P)},waitForVisualIdle:Y,externalOutput:H,getNativeStats:()=>$.getNativeStats(),captureCharFrame:L,captureSpans:()=>{let q=$.currentRenderBuffer,N=q.getSpanLines(),z=$.getCursorState();return{cols:q.width,rows:q.height,cursor:[z.x,z.y],lines:N}},resize:(q,N)=>{$.processResize(q,N)}}}async function RH(J){let Z=J.stdin||KH(),$=J.width||J.stdout?.columns||process.stdout.columns||80,H=J.height||J.stdout?.rows||process.stdout.rows||24,Q=J.stdout||wH($,H);return new tZ(Z,Q,$,H,{...J,bufferedOutput:J.bufferedOutput??"memory"})}class TH extends C0{_highlightPromises=[];_mockResult={highlights:[]};_autoResolveTimeout;constructor(J){super({dataPath:"/tmp/mock"});this._autoResolveTimeout=J?.autoResolveTimeout}async highlightOnce(J,Z){let{promise:$,resolve:H}=Promise.withResolvers(),Q;if(this._autoResolveTimeout!==void 0)Q=setTimeout(()=>{let j=this._highlightPromises.findIndex((G)=>G.promise===$);if(j!==-1)H(this._mockResult),this._highlightPromises.splice(j,1)},this._autoResolveTimeout);return this._highlightPromises.push({promise:$,resolve:H,timeout:Q}),$}setMockResult(J){this._mockResult=J}resolveHighlightOnce(J=0){if(J>=0&&J<this._highlightPromises.length){let Z=this._highlightPromises[J];if(Z.timeout)clearTimeout(Z.timeout);Z.resolve(this._mockResult),this._highlightPromises.splice(J,1)}}resolveAllHighlightOnce(){for(let{resolve:J,timeout:Z}of this._highlightPromises){if(Z)clearTimeout(Z);J(this._mockResult)}this._highlightPromises=[]}isHighlighting(){return this._highlightPromises.length>0}}function gH(J={}){return{kitty_keyboard:!1,kitty_graphics:!1,rgb:!1,ansi256:!1,unicode:"unicode",sgr_pixels:!1,color_scheme_updates:!1,explicit_width:!1,scaled_text:!1,sixel:!1,focus_tracking:!1,sync:!1,bracketed_paste:!1,hyperlinks:!1,osc52:!1,notifications:!1,explicit_cursor_positioning:!1,remote:!1,multiplexer:"none",...J,terminal:{name:"",version:"",from_xtversion:!1,...J.terminal}}}function C4(J,Z={}){let $=gH(Z);return J._capabilities=$,$}function M4(){let J=[],Z=(...$)=>{J.push($)};return Z.calls=J,Z.callCount=()=>J.length,Z.calledWith=(...$)=>{return J.some((H)=>JSON.stringify(H)===JSON.stringify($))},Z.reset=()=>J.length=0,Z}function CH(J,Z){if(J.fireAt!==Z.fireAt)return J.fireAt-Z.fireAt;return J.order-Z.order}class MH{time=0;nextId=1;nextOrder=0;timers=new Map;now(){return this.time}setTime(J){let Z=Math.floor(J);if(Z>=this.time){this.advance(Z-this.time);return}this.time=Z}setTimeout(J,Z){return this.schedule(J,Z,!1)}clearTimeout(J){this.timers.delete(Number(J))}setInterval(J,Z){return this.schedule(J,Z,!0)}clearInterval(J){this.clearTimeout(J)}advance(J){let Z=this.time+Math.max(0,Math.floor(J));while(!0){let $=this.peekNextTimer();if(!$||$.fireAt>Z)break;if(this.timers.delete($.id),this.time=$.fireAt,$.fn(),$.repeat&&!this.timers.has($.id))this.timers.set($.id,{...$,fireAt:this.time+$.delayMs,order:this.nextOrder++})}this.time=Z}runAll(){while(!0){let J=this.peekNextTimer();if(!J)return;this.advance(J.fireAt-this.time)}}schedule(J,Z,$){let H=this.nextId++,Q=Math.max(0,Math.floor(Z));return this.timers.set(H,{id:H,fireAt:this.time+Q,order:this.nextOrder++,delayMs:Q,repeat:$,fn:J}),H}peekNextTimer(){let J=null;for(let Z of this.timers.values())if(!J||CH(Z,J)<0)J=Z;return J}}class xH{renderer;frames=[];recording=!1;frameNumber=0;startTime=0;decoder=new TextDecoder;recordBuffers;now;onFrame=()=>{if(!this.recording)return;this.captureFrame()};constructor(J,Z){this.renderer=J,this.recordBuffers=Z?.recordBuffers||{},this.now=Z?.now??(()=>performance.now())}rec(){if(this.recording)return;this.recording=!0,this.frames=[],this.frameNumber=0,this.startTime=this.now(),this.renderer.on("frame",this.onFrame)}stop(){if(!this.recording)return;this.recording=!1,this.renderer.off("frame",this.onFrame)}get recordedFrames(){return[...this.frames]}clear(){this.frames=[],this.frameNumber=0}get isRecording(){return this.recording}captureFrame(){let J=this.renderer.currentRenderBuffer,Z=J.getRealCharBytes(!0),H={frame:this.decoder.decode(Z),timestamp:this.now()-this.startTime,frameNumber:this.frameNumber++};if(this.recordBuffers.fg||this.recordBuffers.bg||this.recordBuffers.attributes){let Q=J.buffers;if(H.buffers={},this.recordBuffers.fg)H.buffers.fg=new Uint16Array(Q.fg);if(this.recordBuffers.bg)H.buffers.bg=new Uint16Array(Q.bg);if(this.recordBuffers.attributes)H.buffers.attributes=new Uint8Array(Q.attributes)}this.frames.push(H)}}export{W1 as Q,X1 as R,SJ as S,P1 as T,F2 as U,Y0 as V,kH as W,e0 as X,xZ as Y,I1 as Z,q0 as _,S9 as $,v2 as aa,y2 as ba,R9 as ca,T9 as da,g9 as ea,C9 as fa,a as ga,K7 as ha,S2 as ia,hH as ja,bH as ka,y as la,M1 as ma,fH as na,k1 as oa,H2 as pa,pH as qa,sJ as ra,vH as sa,E1 as ta,yH as ua,h1 as va,b1 as wa,YZ as xa,cH as ya,lH as za,uH as Aa,p1 as Ba,ZZ as Ca,Q2 as Da,mH as Ea,dH as Fa,aH as Ga,iH as Ha,nH as Ia,sH as Ja,oH as Ka,tH as La,rH as Ma,eH as Na,JQ as Oa,ZQ as Pa,$Q as Qa,HQ as Ra,QQ as Sa,jQ as Ta,GQ as Ua,LQ as Va,UQ as Wa,DQ as Xa,YQ as Ya,_Q as Za,WQ as _a,XQ as $a,AQ as ab,NQ as bb,VQ as cb,OQ as db,zQ as eb,qQ as fb,PQ as gb,IQ as hb,BQ as ib,KQ as jb,wQ as kb,FQ as lb,nZ as mb,s1 as nb,RQ as ob,S7 as pb,J5 as qb,Z5 as rb,R7 as sb,T7 as tb,TQ as ub,gQ as vb,CQ as wb,MQ as xb,xQ as yb,g7 as zb,kQ as Ab,C7 as Bb,EQ as Cb,hQ as Db,M7 as Eb,x7 as Fb,bQ as Gb,k7 as Hb,B0 as Ib,p9 as Jb,v9 as Kb,$5 as Lb,_Z as Mb,DJ as Nb,fQ as Ob,pQ as Pb,vQ as Qb,QJ as Rb,m9 as Sb,d9 as Tb,cQ as Ub,c7 as Vb,sQ as Wb,C0 as Xb,r9 as Yb,X6 as Zb,A6 as _b,T2 as $b,J$ as ac,V6 as bc,J4 as cc,Z$ as dc,H$ as ec,O6 as fc,Q$ as gc,P6 as hc,j$ as ic,i7 as jc,Z4 as kc,$4 as lc,H4 as mc,xJ as nc,K8 as oc,D4 as pc,TJ as qc,a2 as rc,T8 as sc,g8 as tc,kZ as uc,k0 as vc,gJ as wc,mZ as xc,W4 as yc,M8 as zc,z9 as Ac,h2 as Bc,b2 as Cc,X4 as Dc,n2 as Ec,tJ as Fc,s2 as Gc,k8 as Hc,aZ as Ic,z$ as Jc,o2 as Kc,S0 as Lc,O0 as Mc,iZ as Nc,P$ as Oc,I$ as Pc,R0 as Qc,I9 as Rc,B9 as Sc,O2 as Tc,y8 as Uc,z2 as Vc,p2 as Wc,m8 as Xc,S$ as Yc,a8 as Zc,T$ as _c,s8 as $c,t8 as ad,AH as bd,KJ as cd,NH as dd,K4 as ed,VH as fd,OH as gd,tZ as hd,R4 as id,cJ as jd,qH as kd,kJ as ld,PH as md,g4 as nd,TH as od,gH as pd,C4 as qd,M4 as rd,MH as sd,xH as td};