@poe-platform/safe-bash 0.1.629 → 0.1.631

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 (377) hide show
  1. package/README.md +2 -2
  2. package/dist/office-package/compression.d.ts +19 -0
  3. package/dist/office-package/compression.js +186 -0
  4. package/dist/office-package/runtime.d.ts +11 -0
  5. package/dist/office-package/runtime.js +28 -0
  6. package/dist/safe-bash/chunks/{bz2-B2RXT4EX.js → bz2-ACU4EOVE.js} +2 -2
  7. package/dist/safe-bash/chunks/chunk-2E4KBFO6.js +239 -0
  8. package/dist/safe-bash/chunks/chunk-2E4KBFO6.js.map +7 -0
  9. package/dist/safe-bash/chunks/chunk-3E5M2WEL.js +33 -0
  10. package/dist/safe-bash/chunks/chunk-3E5M2WEL.js.map +7 -0
  11. package/dist/safe-bash/chunks/{chunk-WPEMUXV4.js → chunk-3LD67SER.js} +12 -10
  12. package/dist/safe-bash/chunks/{chunk-WPEMUXV4.js.map → chunk-3LD67SER.js.map} +1 -1
  13. package/dist/safe-bash/chunks/{chunk-6LSSEOG7.js → chunk-6HNK7Q66.js} +11 -7
  14. package/dist/safe-bash/chunks/{chunk-6LSSEOG7.js.map → chunk-6HNK7Q66.js.map} +1 -1
  15. package/dist/safe-bash/chunks/{chunk-AD7UAP5B.js → chunk-7EEWZY5S.js} +10 -8
  16. package/dist/safe-bash/chunks/{chunk-AD7UAP5B.js.map → chunk-7EEWZY5S.js.map} +1 -1
  17. package/dist/safe-bash/chunks/{chunk-RNKTWFEM.js → chunk-CDBQXRWL.js} +3 -3
  18. package/dist/safe-bash/chunks/{chunk-UYX72YHY.js → chunk-CHHAB5SS.js} +10 -74
  19. package/dist/safe-bash/chunks/{chunk-UYX72YHY.js.map → chunk-CHHAB5SS.js.map} +3 -3
  20. package/dist/safe-bash/chunks/{chunk-KYNRHYHP.js → chunk-EI4X5ETX.js} +15 -13
  21. package/dist/safe-bash/chunks/{chunk-KYNRHYHP.js.map → chunk-EI4X5ETX.js.map} +1 -1
  22. package/dist/safe-bash/chunks/{chunk-KZ7QCYNT.js → chunk-GIBLUW2U.js} +13 -9
  23. package/dist/safe-bash/chunks/{chunk-KZ7QCYNT.js.map → chunk-GIBLUW2U.js.map} +1 -1
  24. package/dist/safe-bash/chunks/chunk-GPV7ZFYS.js +1528 -0
  25. package/dist/safe-bash/chunks/chunk-GPV7ZFYS.js.map +7 -0
  26. package/dist/safe-bash/chunks/{chunk-N5CYTGBN.js → chunk-H3E67KTZ.js} +13 -9
  27. package/dist/safe-bash/chunks/{chunk-N5CYTGBN.js.map → chunk-H3E67KTZ.js.map} +1 -1
  28. package/dist/safe-bash/chunks/{chunk-AFH57PPL.js → chunk-IEKESMO4.js} +3 -3
  29. package/dist/safe-bash/chunks/{chunk-DPJWEGIX.js → chunk-JLBIUYT3.js} +2 -2
  30. package/dist/safe-bash/chunks/chunk-JZDO5MC3.js +77 -0
  31. package/dist/safe-bash/chunks/chunk-JZDO5MC3.js.map +7 -0
  32. package/dist/safe-bash/chunks/{chunk-GFZKQIPL.js → chunk-LA6BX562.js} +8 -6
  33. package/dist/safe-bash/chunks/{chunk-GFZKQIPL.js.map → chunk-LA6BX562.js.map} +1 -1
  34. package/dist/safe-bash/chunks/{chunk-PVJJFCGA.js → chunk-M3GPCYSP.js} +2 -2
  35. package/dist/safe-bash/chunks/{chunk-FWDMJTQO.js → chunk-NDCZ3UBP.js} +13 -9
  36. package/dist/safe-bash/chunks/{chunk-FWDMJTQO.js.map → chunk-NDCZ3UBP.js.map} +1 -1
  37. package/dist/safe-bash/chunks/{chunk-2KL6W6NB.js → chunk-O2EVBRKF.js} +1 -2
  38. package/dist/safe-bash/chunks/chunk-OFT77XIB.js +389 -0
  39. package/dist/safe-bash/chunks/chunk-OFT77XIB.js.map +7 -0
  40. package/dist/safe-bash/chunks/{chunk-PCLOK32J.js → chunk-PC6BEIAF.js} +13 -9
  41. package/dist/safe-bash/chunks/{chunk-PCLOK32J.js.map → chunk-PC6BEIAF.js.map} +1 -1
  42. package/dist/safe-bash/chunks/{chunk-3M5F7LD5.js → chunk-QWKP7ZU7.js} +13 -9
  43. package/dist/safe-bash/chunks/{chunk-3M5F7LD5.js.map → chunk-QWKP7ZU7.js.map} +1 -1
  44. package/dist/safe-bash/chunks/chunk-THXJ6CLF.js +53 -0
  45. package/dist/safe-bash/chunks/chunk-THXJ6CLF.js.map +7 -0
  46. package/dist/safe-bash/chunks/{chunk-HHJSJWUD.js → chunk-V73A742N.js} +57 -15
  47. package/dist/safe-bash/chunks/chunk-V73A742N.js.map +7 -0
  48. package/dist/safe-bash/chunks/{chunk-4BYUV5PA.js → chunk-VN3ZGME3.js} +12 -8
  49. package/dist/safe-bash/chunks/{chunk-4BYUV5PA.js.map → chunk-VN3ZGME3.js.map} +1 -1
  50. package/dist/safe-bash/chunks/chunk-WECHUK3Y.js +4285 -0
  51. package/dist/safe-bash/chunks/chunk-WECHUK3Y.js.map +7 -0
  52. package/dist/safe-bash/chunks/{chunk-X55AMTNM.js → chunk-WIOEUR7D.js} +14 -10
  53. package/dist/safe-bash/chunks/{chunk-X55AMTNM.js.map → chunk-WIOEUR7D.js.map} +1 -1
  54. package/dist/safe-bash/chunks/chunk-WPIOO4NX.js +443 -0
  55. package/dist/safe-bash/chunks/chunk-WPIOO4NX.js.map +7 -0
  56. package/dist/safe-bash/chunks/{chunk-C7QNJ3D4.js → chunk-WYTI64IU.js} +2 -2
  57. package/dist/safe-bash/chunks/{xz-AVXFDXW4.js → xz-U4QDTPZL.js} +2 -2
  58. package/dist/safe-bash/chunks/{zstd-R6RPHJYO.js → zstd-OG5RPYXO.js} +2 -2
  59. package/dist/safe-bash/commands/archive/zip/crc.d.ts +2 -0
  60. package/dist/safe-bash/commands/archive/zip/crc.d.ts.map +1 -0
  61. package/dist/safe-bash/commands/archive/zip/crc.js +7 -0
  62. package/dist/safe-bash/commands/archive/zip/crc.js.map +1 -0
  63. package/dist/safe-bash/commands/archive/zip/crypto.d.ts +4 -0
  64. package/dist/safe-bash/commands/archive/zip/crypto.d.ts.map +1 -0
  65. package/dist/safe-bash/commands/archive/zip/crypto.js +34 -0
  66. package/dist/safe-bash/commands/archive/zip/crypto.js.map +1 -0
  67. package/dist/safe-bash/commands/archive/zip/help.d.ts +3 -0
  68. package/dist/safe-bash/commands/archive/zip/help.d.ts.map +1 -0
  69. package/dist/safe-bash/commands/archive/zip/help.js +87 -0
  70. package/dist/safe-bash/commands/archive/zip/help.js.map +1 -0
  71. package/dist/safe-bash/commands/archive/zip/move.d.ts +12 -0
  72. package/dist/safe-bash/commands/archive/zip/move.d.ts.map +1 -0
  73. package/dist/safe-bash/commands/archive/zip/move.js +60 -0
  74. package/dist/safe-bash/commands/archive/zip/move.js.map +1 -0
  75. package/dist/safe-bash/commands/archive/zip/options.js +5 -5
  76. package/dist/safe-bash/commands/archive/zip/options.js.map +1 -1
  77. package/dist/safe-bash/commands/archive/zip-format.d.ts +1 -1
  78. package/dist/safe-bash/commands/archive/zip-format.d.ts.map +1 -1
  79. package/dist/safe-bash/commands/archive/zip-format.js +14 -17
  80. package/dist/safe-bash/commands/archive/zip-format.js.map +1 -1
  81. package/dist/safe-bash/commands/archive/zip.d.ts.map +1 -1
  82. package/dist/safe-bash/commands/archive/zip.js +45 -15
  83. package/dist/safe-bash/commands/archive/zip.js.map +1 -1
  84. package/dist/safe-bash/commands/bytes/compression/bounded-codec.d.ts +2 -0
  85. package/dist/safe-bash/commands/bytes/compression/bounded-codec.d.ts.map +1 -1
  86. package/dist/safe-bash/commands/bytes/compression/bounded-codec.js +4 -0
  87. package/dist/safe-bash/commands/bytes/compression/bounded-codec.js.map +1 -1
  88. package/dist/safe-bash/commands/bytes/compression/codec.d.ts +4 -24
  89. package/dist/safe-bash/commands/bytes/compression/codec.d.ts.map +1 -1
  90. package/dist/safe-bash/commands/bytes/compression/codec.js +12 -168
  91. package/dist/safe-bash/commands/bytes/compression/codec.js.map +1 -1
  92. package/dist/safe-bash/commands/cmp.js +1 -1
  93. package/dist/safe-bash/commands/cmp.js.map +1 -1
  94. package/dist/safe-bash/commands/csplit/index.browser.js +10 -7
  95. package/dist/safe-bash/commands/docx/index.browser.js +54 -0
  96. package/dist/safe-bash/commands/docx/index.browser.js.map +7 -0
  97. package/dist/safe-bash/commands/docx/index.d.ts +25 -0
  98. package/dist/safe-bash/commands/docx/index.d.ts.map +1 -0
  99. package/dist/safe-bash/commands/docx/index.js +42 -0
  100. package/dist/safe-bash/commands/docx/index.js.map +1 -0
  101. package/dist/safe-bash/commands/docx/io.d.ts +15 -0
  102. package/dist/safe-bash/commands/docx/io.d.ts.map +1 -0
  103. package/dist/safe-bash/commands/docx/io.js +16 -0
  104. package/dist/safe-bash/commands/docx/io.js.map +1 -0
  105. package/dist/safe-bash/commands/factor/index.browser.js +7 -5
  106. package/dist/safe-bash/commands/filesystem.d.ts.map +1 -1
  107. package/dist/safe-bash/commands/filesystem.js +9 -1
  108. package/dist/safe-bash/commands/filesystem.js.map +1 -1
  109. package/dist/safe-bash/commands/getopt/index.browser.js +7 -5
  110. package/dist/safe-bash/commands/hexdump/index.browser.js +8 -6
  111. package/dist/safe-bash/commands/iconv/index.browser.js +8 -6
  112. package/dist/safe-bash/commands/line-endings/index.browser.js +10 -7
  113. package/dist/safe-bash/commands/llm/index.browser.js +10 -8
  114. package/dist/safe-bash/commands/llm/providers/index.browser.js +3 -3
  115. package/dist/safe-bash/commands/network/index.browser.js +11 -8
  116. package/dist/safe-bash/commands/node/browser.d.ts +2 -0
  117. package/dist/safe-bash/commands/node/browser.d.ts.map +1 -0
  118. package/dist/safe-bash/commands/node/browser.js +2 -0
  119. package/dist/safe-bash/commands/node/browser.js.map +1 -0
  120. package/dist/safe-bash/commands/node/index.browser.js +18 -0
  121. package/dist/safe-bash/commands/node/index.browser.js.map +7 -0
  122. package/dist/safe-bash/commands/node/safejs.d.ts +6 -0
  123. package/dist/safe-bash/commands/node/safejs.d.ts.map +1 -1
  124. package/dist/safe-bash/commands/node/safejs.js +25 -1
  125. package/dist/safe-bash/commands/node/safejs.js.map +1 -1
  126. package/dist/safe-bash/commands/op/index.browser.js +3 -3
  127. package/dist/safe-bash/commands/op/index.js +0 -1
  128. package/dist/safe-bash/commands/op/index.js.map +2 -2
  129. package/dist/safe-bash/commands/pptx/index.d.ts +29 -0
  130. package/dist/safe-bash/commands/pptx/index.d.ts.map +1 -0
  131. package/dist/safe-bash/commands/pptx/index.js +153 -0
  132. package/dist/safe-bash/commands/pptx/index.js.map +1 -0
  133. package/dist/safe-bash/commands/pr/index.browser.js +8 -6
  134. package/dist/safe-bash/commands/predicates.js +1 -1
  135. package/dist/safe-bash/commands/python/execution.d.ts +3 -0
  136. package/dist/safe-bash/commands/python/execution.d.ts.map +1 -0
  137. package/dist/safe-bash/commands/python/execution.js +193 -0
  138. package/dist/safe-bash/commands/python/execution.js.map +1 -0
  139. package/dist/safe-bash/commands/python/index.browser.js +21 -0
  140. package/dist/safe-bash/commands/python/index.browser.js.map +7 -0
  141. package/dist/safe-bash/commands/python/index.d.ts +49 -0
  142. package/dist/safe-bash/commands/python/index.d.ts.map +1 -0
  143. package/dist/safe-bash/commands/python/index.js +317 -0
  144. package/dist/safe-bash/commands/python/index.js.map +1 -0
  145. package/dist/safe-bash/commands/python/installation.d.ts +9 -0
  146. package/dist/safe-bash/commands/python/installation.d.ts.map +1 -0
  147. package/dist/safe-bash/commands/python/installation.js +80 -0
  148. package/dist/safe-bash/commands/python/installation.js.map +1 -0
  149. package/dist/safe-bash/commands/python/invocation.d.ts +10 -0
  150. package/dist/safe-bash/commands/python/invocation.d.ts.map +1 -0
  151. package/dist/safe-bash/commands/python/invocation.js +81 -0
  152. package/dist/safe-bash/commands/python/invocation.js.map +1 -0
  153. package/dist/safe-bash/commands/python/node.d.ts +12 -0
  154. package/dist/safe-bash/commands/python/node.d.ts.map +1 -0
  155. package/dist/safe-bash/commands/python/node.js +33 -0
  156. package/dist/safe-bash/commands/python/node.js.map +1 -0
  157. package/dist/safe-bash/commands/python/provisioning-runtime.d.ts +5 -0
  158. package/dist/safe-bash/commands/python/provisioning-runtime.d.ts.map +1 -0
  159. package/dist/safe-bash/commands/python/provisioning-runtime.js +179 -0
  160. package/dist/safe-bash/commands/python/provisioning-runtime.js.map +1 -0
  161. package/dist/safe-bash/commands/python/provisioning.d.ts +49 -0
  162. package/dist/safe-bash/commands/python/provisioning.d.ts.map +1 -0
  163. package/dist/safe-bash/commands/python/provisioning.js +320 -0
  164. package/dist/safe-bash/commands/python/provisioning.js.map +1 -0
  165. package/dist/safe-bash/commands/python/reply.d.ts +3 -0
  166. package/dist/safe-bash/commands/python/reply.d.ts.map +1 -0
  167. package/dist/safe-bash/commands/python/reply.js +103 -0
  168. package/dist/safe-bash/commands/python/reply.js.map +1 -0
  169. package/dist/safe-bash/commands/python/worker.browser.js +736 -0
  170. package/dist/safe-bash/commands/python/worker.browser.js.map +7 -0
  171. package/dist/safe-bash/commands/python/worker.d.ts +47 -0
  172. package/dist/safe-bash/commands/python/worker.d.ts.map +1 -0
  173. package/dist/safe-bash/commands/python/worker.js +373 -0
  174. package/dist/safe-bash/commands/python/worker.js.map +1 -0
  175. package/dist/safe-bash/commands/safejs/index.d.ts +5 -17
  176. package/dist/safe-bash/commands/safejs/index.d.ts.map +1 -1
  177. package/dist/safe-bash/commands/safejs/index.js +3 -202
  178. package/dist/safe-bash/commands/safejs/index.js.map +1 -1
  179. package/dist/safe-bash/commands/safejs/runtime.d.ts +15 -0
  180. package/dist/safe-bash/commands/safejs/runtime.d.ts.map +1 -0
  181. package/dist/safe-bash/commands/safejs/runtime.js +190 -0
  182. package/dist/safe-bash/commands/safejs/runtime.js.map +1 -0
  183. package/dist/safe-bash/commands/tsort/index.browser.js +8 -6
  184. package/dist/safe-bash/commands/xml/index.browser.js +9 -7
  185. package/dist/safe-bash/commands/yq/index.browser.js +10 -8
  186. package/dist/safe-bash/commands/yq/index.d.ts.map +1 -1
  187. package/dist/safe-bash/commands/yq/index.js +32 -4
  188. package/dist/safe-bash/commands/yq/index.js.map +1 -1
  189. package/dist/safe-bash/commands/yq/parser.d.ts.map +1 -1
  190. package/dist/safe-bash/commands/yq/parser.js +21 -5
  191. package/dist/safe-bash/commands/yq/parser.js.map +1 -1
  192. package/dist/safe-bash/contracts/command.d.ts +2 -0
  193. package/dist/safe-bash/contracts/command.d.ts.map +1 -1
  194. package/dist/safe-bash/contracts/command.js +6 -2
  195. package/dist/safe-bash/contracts/command.js.map +1 -1
  196. package/dist/safe-bash/contracts/filesystem-descriptor.d.ts +13 -0
  197. package/dist/safe-bash/contracts/filesystem-descriptor.d.ts.map +1 -0
  198. package/dist/safe-bash/contracts/filesystem-descriptor.js +189 -0
  199. package/dist/safe-bash/contracts/filesystem-descriptor.js.map +1 -0
  200. package/dist/safe-bash/contracts/filesystem-output-budget.d.ts +15 -0
  201. package/dist/safe-bash/contracts/filesystem-output-budget.d.ts.map +1 -0
  202. package/dist/safe-bash/contracts/filesystem-output-budget.js +69 -0
  203. package/dist/safe-bash/contracts/filesystem-output-budget.js.map +1 -0
  204. package/dist/safe-bash/contracts/filesystem-output.d.ts +11 -5
  205. package/dist/safe-bash/contracts/filesystem-output.d.ts.map +1 -1
  206. package/dist/safe-bash/contracts/filesystem-output.js +229 -20
  207. package/dist/safe-bash/contracts/filesystem-output.js.map +1 -1
  208. package/dist/safe-bash/contracts/io.d.ts +29 -0
  209. package/dist/safe-bash/contracts/io.d.ts.map +1 -1
  210. package/dist/safe-bash/contracts/io.js +317 -37
  211. package/dist/safe-bash/contracts/io.js.map +1 -1
  212. package/dist/safe-bash/core.browser.js +5963 -6522
  213. package/dist/safe-bash/core.browser.js.map +4 -4
  214. package/dist/safe-bash/core.d.ts +2 -0
  215. package/dist/safe-bash/core.d.ts.map +1 -1
  216. package/dist/safe-bash/core.js +2 -0
  217. package/dist/safe-bash/core.js.map +1 -1
  218. package/dist/safe-bash/index.d.ts +1 -0
  219. package/dist/safe-bash/index.d.ts.map +1 -1
  220. package/dist/safe-bash/index.js +1 -0
  221. package/dist/safe-bash/index.js.map +1 -1
  222. package/dist/safe-bash/opt-in/commands/cmp/compare.js +95 -0
  223. package/dist/safe-bash/opt-in/commands/cmp/index.d.ts +6 -0
  224. package/dist/safe-bash/opt-in/commands/cmp/index.js +99 -0
  225. package/dist/safe-bash/opt-in/commands/cmp/io.js +218 -0
  226. package/dist/safe-bash/opt-in/commands/cmp/options.d.ts +24 -0
  227. package/dist/safe-bash/opt-in/commands/cmp/options.js +195 -0
  228. package/dist/safe-bash/opt-in/commands/dd/conversions.js +152 -0
  229. package/dist/safe-bash/opt-in/commands/dd/index.d.ts +18 -0
  230. package/dist/safe-bash/opt-in/commands/dd/index.js +561 -0
  231. package/dist/safe-bash/opt-in/commands/dd/io.d.ts +31 -0
  232. package/dist/safe-bash/opt-in/commands/dd/io.js +244 -0
  233. package/dist/safe-bash/opt-in/commands/dd/options.js +184 -0
  234. package/dist/safe-bash/opt-in/commands/dd/report.js +69 -0
  235. package/dist/safe-bash/opt-in/commands/install/arguments.js +224 -0
  236. package/dist/safe-bash/opt-in/commands/install/index.d.ts +6 -0
  237. package/dist/safe-bash/opt-in/commands/install/index.js +678 -0
  238. package/dist/safe-bash/opt-in/commands/install/mode.js +71 -0
  239. package/dist/safe-bash/opt-in/commands/install/options.d.ts +36 -0
  240. package/dist/safe-bash/opt-in/commands/install/options.js +27 -0
  241. package/dist/safe-bash/opt-in/commands/shuf/args.js +179 -0
  242. package/dist/safe-bash/opt-in/commands/shuf/index.d.ts +6 -0
  243. package/dist/safe-bash/opt-in/commands/shuf/index.js +20 -0
  244. package/dist/safe-bash/opt-in/commands/shuf/input.js +93 -0
  245. package/dist/safe-bash/opt-in/commands/shuf/options.d.ts +9 -0
  246. package/dist/safe-bash/opt-in/commands/shuf/options.js +8 -0
  247. package/dist/safe-bash/opt-in/commands/shuf/random.js +114 -0
  248. package/dist/safe-bash/opt-in/commands/shuf/shuf.d.ts +3 -0
  249. package/dist/safe-bash/opt-in/commands/shuf/shuf.js +230 -0
  250. package/dist/safe-bash/opt-in/commands/shuf/usage.js +24 -0
  251. package/dist/safe-bash/opt-in/commands/truncate/arguments.js +186 -0
  252. package/dist/safe-bash/opt-in/commands/truncate/index.d.ts +9 -0
  253. package/dist/safe-bash/opt-in/commands/truncate/index.js +244 -0
  254. package/dist/safe-bash/opt-in/commands/yes/index.d.ts +11 -0
  255. package/dist/safe-bash/opt-in/commands/yes/index.js +167 -0
  256. package/dist/safe-bash/opt-in/commands/yq/arguments.js +177 -0
  257. package/dist/safe-bash/opt-in/commands/yq/evaluate.js +564 -0
  258. package/dist/safe-bash/opt-in/commands/yq/expression.js +183 -0
  259. package/dist/safe-bash/opt-in/commands/yq/inplace.js +65 -0
  260. package/dist/safe-bash/opt-in/commands/yq/mike.d.ts +9 -0
  261. package/dist/safe-bash/opt-in/commands/yq/mike.js +192 -0
  262. package/dist/safe-bash/opt-in/commands/yq/native-encoder.js +165 -0
  263. package/dist/safe-bash/opt-in/commands/yq/native-work.d.ts +44 -0
  264. package/dist/safe-bash/opt-in/commands/yq/native-work.js +188 -0
  265. package/dist/safe-bash/opt-in/commands/yq/nodes.js +621 -0
  266. package/dist/safe-bash/opt-in/entrypoints/arrays.d.ts +1 -0
  267. package/dist/safe-bash/opt-in/entrypoints/arrays.js +1 -0
  268. package/dist/safe-bash/opt-in/entrypoints/cmp.d.ts +2 -0
  269. package/dist/safe-bash/opt-in/entrypoints/cmp.js +1 -0
  270. package/dist/safe-bash/opt-in/entrypoints/dd.d.ts +2 -0
  271. package/dist/safe-bash/opt-in/entrypoints/dd.js +1 -0
  272. package/dist/safe-bash/opt-in/entrypoints/devices.d.ts +2 -0
  273. package/dist/safe-bash/opt-in/entrypoints/devices.js +1 -0
  274. package/dist/safe-bash/opt-in/entrypoints/install.d.ts +2 -0
  275. package/dist/safe-bash/opt-in/entrypoints/install.js +1 -0
  276. package/dist/safe-bash/opt-in/entrypoints/jobs.d.ts +1 -0
  277. package/dist/safe-bash/opt-in/entrypoints/jobs.js +1 -0
  278. package/dist/safe-bash/opt-in/entrypoints/mapfile.d.ts +1 -0
  279. package/dist/safe-bash/opt-in/entrypoints/mapfile.js +1 -0
  280. package/dist/safe-bash/opt-in/entrypoints/read.d.ts +2 -0
  281. package/dist/safe-bash/opt-in/entrypoints/read.js +1 -0
  282. package/dist/safe-bash/opt-in/entrypoints/shuf.d.ts +2 -0
  283. package/dist/safe-bash/opt-in/entrypoints/shuf.js +1 -0
  284. package/dist/safe-bash/opt-in/entrypoints/trap.d.ts +2 -0
  285. package/dist/safe-bash/opt-in/entrypoints/trap.js +1 -0
  286. package/dist/safe-bash/opt-in/entrypoints/truncate.d.ts +2 -0
  287. package/dist/safe-bash/opt-in/entrypoints/truncate.js +1 -0
  288. package/dist/safe-bash/opt-in/entrypoints/yes.d.ts +2 -0
  289. package/dist/safe-bash/opt-in/entrypoints/yes.js +1 -0
  290. package/dist/safe-bash/opt-in/entrypoints/yq.d.ts +3 -0
  291. package/dist/safe-bash/opt-in/entrypoints/yq.js +1 -0
  292. package/dist/safe-bash/opt-in/fs/devices/index.d.ts +8 -0
  293. package/dist/safe-bash/opt-in/fs/devices/index.js +292 -0
  294. package/dist/safe-bash/opt-in/optional.d.ts +28 -0
  295. package/dist/safe-bash/opt-in/optional.js +14 -0
  296. package/dist/safe-bash/opt-in/shell/extensions/arrays/index.d.ts +2 -0
  297. package/dist/safe-bash/opt-in/shell/extensions/arrays/index.js +4 -0
  298. package/dist/safe-bash/opt-in/shell/extensions/jobs/index.d.ts +2 -0
  299. package/dist/safe-bash/opt-in/shell/extensions/jobs/index.js +291 -0
  300. package/dist/safe-bash/opt-in/shell/extensions/jobs/state.js +374 -0
  301. package/dist/safe-bash/opt-in/shell/extensions/mapfile/index.d.ts +24 -0
  302. package/dist/safe-bash/opt-in/shell/extensions/mapfile/index.js +338 -0
  303. package/dist/safe-bash/opt-in/shell/extensions/read/index.d.ts +5 -0
  304. package/dist/safe-bash/opt-in/shell/extensions/read/index.js +351 -0
  305. package/dist/safe-bash/opt-in/shell/extensions/trap/index.d.ts +9 -0
  306. package/dist/safe-bash/opt-in/shell/extensions/trap/index.js +210 -0
  307. package/dist/safe-bash/optional-host.d.ts +5 -0
  308. package/dist/safe-bash/optional-host.d.ts.map +1 -0
  309. package/dist/safe-bash/optional-host.js +3 -0
  310. package/dist/safe-bash/optional-host.js.map +1 -0
  311. package/dist/safe-bash/shell/arrays/bindings.d.ts +15 -5
  312. package/dist/safe-bash/shell/arrays/bindings.d.ts.map +1 -1
  313. package/dist/safe-bash/shell/arrays/bindings.js +131 -23
  314. package/dist/safe-bash/shell/arrays/bindings.js.map +1 -1
  315. package/dist/safe-bash/shell/arrays/ledger.d.ts +1 -0
  316. package/dist/safe-bash/shell/arrays/ledger.d.ts.map +1 -1
  317. package/dist/safe-bash/shell/arrays/ledger.js +19 -0
  318. package/dist/safe-bash/shell/arrays/ledger.js.map +1 -1
  319. package/dist/safe-bash/shell/arrays/state.d.ts.map +1 -1
  320. package/dist/safe-bash/shell/arrays/state.js +3 -1
  321. package/dist/safe-bash/shell/arrays/state.js.map +1 -1
  322. package/dist/safe-bash/shell/arrays/syntax.d.ts +4 -1
  323. package/dist/safe-bash/shell/arrays/syntax.d.ts.map +1 -1
  324. package/dist/safe-bash/shell/arrays/syntax.js +3 -3
  325. package/dist/safe-bash/shell/arrays/syntax.js.map +1 -1
  326. package/dist/safe-bash/shell/conditional.js +1 -1
  327. package/dist/safe-bash/shell/descriptors.d.ts +31 -0
  328. package/dist/safe-bash/shell/descriptors.d.ts.map +1 -0
  329. package/dist/safe-bash/shell/descriptors.js +234 -0
  330. package/dist/safe-bash/shell/descriptors.js.map +1 -0
  331. package/dist/safe-bash/shell/diagnostic-name-ranges.d.ts +2 -0
  332. package/dist/safe-bash/shell/diagnostic-name-ranges.d.ts.map +1 -0
  333. package/dist/safe-bash/shell/diagnostic-name-ranges.js +717 -0
  334. package/dist/safe-bash/shell/diagnostic-name-ranges.js.map +1 -0
  335. package/dist/safe-bash/shell/diagnostic-name.d.ts +3 -0
  336. package/dist/safe-bash/shell/diagnostic-name.d.ts.map +1 -0
  337. package/dist/safe-bash/shell/diagnostic-name.js +89 -0
  338. package/dist/safe-bash/shell/diagnostic-name.js.map +1 -0
  339. package/dist/safe-bash/shell/display.js +1 -1
  340. package/dist/safe-bash/shell/display.js.map +1 -1
  341. package/dist/safe-bash/shell/extensions.d.ts +188 -0
  342. package/dist/safe-bash/shell/extensions.d.ts.map +1 -0
  343. package/dist/safe-bash/shell/extensions.js +141 -0
  344. package/dist/safe-bash/shell/extensions.js.map +1 -0
  345. package/dist/safe-bash/shell/input.d.ts +66 -14
  346. package/dist/safe-bash/shell/input.d.ts.map +1 -1
  347. package/dist/safe-bash/shell/input.js +947 -173
  348. package/dist/safe-bash/shell/input.js.map +1 -1
  349. package/dist/safe-bash/shell/parser.d.ts +38 -6
  350. package/dist/safe-bash/shell/parser.d.ts.map +1 -1
  351. package/dist/safe-bash/shell/parser.js +339 -52
  352. package/dist/safe-bash/shell/parser.js.map +1 -1
  353. package/dist/safe-bash/shell/runtime.d.ts +92 -20
  354. package/dist/safe-bash/shell/runtime.d.ts.map +1 -1
  355. package/dist/safe-bash/shell/runtime.js +2547 -689
  356. package/dist/safe-bash/shell/runtime.js.map +1 -1
  357. package/dist/safe-bash/shell/shell.d.ts.map +1 -1
  358. package/dist/safe-bash/shell/shell.js +52 -21
  359. package/dist/safe-bash/shell/shell.js.map +1 -1
  360. package/dist/safe-bash/shell/types.d.ts +4 -0
  361. package/dist/safe-bash/shell/types.d.ts.map +1 -1
  362. package/dist/safe-bash/shell/types.js.map +1 -1
  363. package/package.json +99 -5
  364. package/dist/safe-bash/chunks/chunk-4DBWBEU7.js +0 -194
  365. package/dist/safe-bash/chunks/chunk-4DBWBEU7.js.map +0 -7
  366. package/dist/safe-bash/chunks/chunk-CXMIIXJA.js +0 -178
  367. package/dist/safe-bash/chunks/chunk-CXMIIXJA.js.map +0 -7
  368. package/dist/safe-bash/chunks/chunk-HHJSJWUD.js.map +0 -7
  369. /package/dist/safe-bash/chunks/{bz2-B2RXT4EX.js.map → bz2-ACU4EOVE.js.map} +0 -0
  370. /package/dist/safe-bash/chunks/{chunk-RNKTWFEM.js.map → chunk-CDBQXRWL.js.map} +0 -0
  371. /package/dist/safe-bash/chunks/{chunk-AFH57PPL.js.map → chunk-IEKESMO4.js.map} +0 -0
  372. /package/dist/safe-bash/chunks/{chunk-DPJWEGIX.js.map → chunk-JLBIUYT3.js.map} +0 -0
  373. /package/dist/safe-bash/chunks/{chunk-PVJJFCGA.js.map → chunk-M3GPCYSP.js.map} +0 -0
  374. /package/dist/safe-bash/chunks/{chunk-2KL6W6NB.js.map → chunk-O2EVBRKF.js.map} +0 -0
  375. /package/dist/safe-bash/chunks/{chunk-C7QNJ3D4.js.map → chunk-WYTI64IU.js.map} +0 -0
  376. /package/dist/safe-bash/chunks/{xz-AVXFDXW4.js.map → xz-U4QDTPZL.js.map} +0 -0
  377. /package/dist/safe-bash/chunks/{zstd-R6RPHJYO.js.map → zstd-OG5RPYXO.js.map} +0 -0
@@ -1,6 +1,5 @@
1
1
  import { collectBytes, readBytes } from "@poe-platform/safe-fs/core";
2
2
  export { collectBytes, readBytes, toByteSource } from "@poe-platform/safe-fs/core";
3
- import { TransformStream } from "node:stream/web";
4
3
  import { FsError } from "./errors.js";
5
4
  export const outputFailure = Symbol("output failure");
6
5
  export function createBytePipe(options = {}) {
@@ -9,42 +8,323 @@ export function createBytePipe(options = {}) {
9
8
  if (!Number.isSafeInteger(highWaterMark) || highWaterMark < 1) {
10
9
  throw new RangeError("highWaterMark must be a positive safe integer");
11
10
  }
12
- const stream = new TransformStream(undefined, { highWaterMark: 1 }, { highWaterMark, size: (chunk) => chunk.byteLength });
13
- const reader = stream.readable.getReader();
14
- const writer = stream.writable.getWriter();
15
- let ended = false;
11
+ const maximumObservationWaiters = 64;
12
+ const buffered = new Set();
13
+ const reads = new Set();
14
+ const writes = new Set();
15
+ const observers = new Set();
16
+ let availableBytes = 0;
17
+ let readerReferences = 0;
18
+ let writerReferences = 0;
19
+ let revision = 0n;
16
20
  let failed = false;
17
21
  let failure;
18
22
  let closePromise;
19
23
  let abortPromise;
20
24
  let finished = false;
21
25
  const consumer = new AbortController();
22
- const abort = (reason = new FsError("EPIPE", { syscall: "pipe" })) => {
26
+ const brokenPipe = () => new FsError("EPIPE", { syscall: "pipe" });
27
+ const checkFailure = () => { if (failed)
28
+ throw failure; };
29
+ const checkEndpoint = (endpoint) => {
30
+ checkFailure();
31
+ signal?.throwIfAborted();
32
+ if (!endpoint.open)
33
+ throw new FsError("EBADF", { syscall: "pipe" });
34
+ };
35
+ const changed = () => {
36
+ revision++;
37
+ for (const observer of [...observers])
38
+ observer.changed();
39
+ };
40
+ const removeRead = (request) => {
41
+ reads.delete(request);
42
+ request.lease.pending.delete(request);
43
+ };
44
+ const removeWrite = (request) => {
45
+ writes.delete(request);
46
+ request.endpoint.writes.delete(request);
47
+ };
48
+ const cleanup = () => { if (!observers.size)
49
+ signal?.removeEventListener("abort", onAbort); };
50
+ const pump = () => {
51
+ if (failed)
52
+ return;
53
+ while (true) {
54
+ const reading = reads.values().next().value;
55
+ const chunk = buffered.values().next().value;
56
+ if (reading && chunk) {
57
+ removeRead(reading);
58
+ buffered.delete(chunk);
59
+ availableBytes -= chunk.byteLength;
60
+ reading.resolve({ done: false, value: chunk });
61
+ changed();
62
+ continue;
63
+ }
64
+ const writing = writes.values().next().value;
65
+ if (writing && (reading || availableBytes < highWaterMark)) {
66
+ removeWrite(writing);
67
+ buffered.add(writing.chunk);
68
+ availableBytes += writing.chunk.byteLength;
69
+ writing.resolve();
70
+ changed();
71
+ continue;
72
+ }
73
+ if (!writerReferences && !writes.size && !buffered.size && reads.size) {
74
+ finished = true;
75
+ for (const request of reads) {
76
+ removeRead(request);
77
+ request.lease.done = true;
78
+ request.resolve({ done: true, value: undefined });
79
+ }
80
+ cleanup();
81
+ }
82
+ break;
83
+ }
84
+ };
85
+ const fail = (reason) => {
23
86
  if (abortPromise)
24
87
  return abortPromise;
25
- if (finished)
88
+ if (finished) {
89
+ for (const observer of [...observers])
90
+ observer.aborted(reason);
26
91
  return Promise.resolve();
92
+ }
93
+ abortPromise = Promise.resolve();
27
94
  failed = true;
28
95
  failure = reason;
29
- ended = true;
96
+ buffered.clear();
97
+ availableBytes = 0;
98
+ for (const request of reads) {
99
+ removeRead(request);
100
+ request.lease.done = true;
101
+ request.reject(reason);
102
+ }
103
+ for (const request of writes) {
104
+ removeWrite(request);
105
+ request.reject(reason);
106
+ }
30
107
  consumer.abort(reason);
31
- abortPromise = Promise.allSettled([reader.cancel(reason), writer.abort(reason)]).then(() => { });
108
+ changed();
109
+ cleanup();
32
110
  return abortPromise;
33
111
  };
34
- const onAbort = () => { void abort(signal?.reason); };
35
- const cleanup = () => signal?.removeEventListener("abort", onAbort);
36
- void writer.closed.catch(() => { });
37
- void reader.closed.then(cleanup, cleanup);
38
- if (signal?.aborted)
39
- onAbort();
40
- else
41
- signal?.addEventListener("abort", onAbort, { once: true });
112
+ const abort = (reason = new FsError("EPIPE", { syscall: "pipe" })) => fail(reason);
113
+ const onAbort = () => { void fail(signal?.reason); };
114
+ const probe = (endpoint) => {
115
+ checkEndpoint(endpoint);
116
+ const peerClosed = endpoint.direction === "read" ? writerReferences === 0 : readerReferences === 0;
117
+ return Object.freeze({ revision, ready: peerClosed || endpoint.direction === "read" && availableBytes > 0, peerClosed });
118
+ };
119
+ const waitForChange = (endpoint, previous, options) => {
120
+ try {
121
+ const { signal: waitingSignal, timeoutMs } = options;
122
+ const localSignal = waitingSignal === signal ? undefined : waitingSignal;
123
+ checkFailure();
124
+ signal?.throwIfAborted();
125
+ waitingSignal?.throwIfAborted();
126
+ checkEndpoint(endpoint);
127
+ if (!Number.isSafeInteger(timeoutMs) || timeoutMs < 0 || timeoutMs > 2_147_483_647)
128
+ throw new RangeError("timeoutMs must be an integer between zero and 2147483647");
129
+ if (typeof previous !== "bigint" || previous < 0n || previous > revision)
130
+ throw new RangeError("Invalid pipe observation revision");
131
+ if (previous !== revision)
132
+ return Promise.resolve(probe(endpoint));
133
+ if (!timeoutMs)
134
+ return Promise.resolve(undefined);
135
+ if (observers.size >= maximumObservationWaiters)
136
+ throw new RangeError("Too many pending pipe endpoint observations");
137
+ return new Promise((resolve, reject) => {
138
+ let settled = false;
139
+ let timer;
140
+ const retire = () => {
141
+ if (settled)
142
+ return false;
143
+ settled = true;
144
+ observers.delete(observer);
145
+ if (timer !== undefined)
146
+ clearTimeout(timer);
147
+ localSignal?.removeEventListener("abort", interrupted);
148
+ if (finished || failed || !readerReferences && !writerReferences)
149
+ cleanup();
150
+ return true;
151
+ };
152
+ const settle = (timedOut = false) => {
153
+ if (!retire())
154
+ return;
155
+ try {
156
+ checkFailure();
157
+ signal?.throwIfAborted();
158
+ waitingSignal?.throwIfAborted();
159
+ checkEndpoint(endpoint);
160
+ resolve(timedOut ? undefined : probe(endpoint));
161
+ }
162
+ catch (reason) {
163
+ reject(reason);
164
+ }
165
+ };
166
+ const interrupted = () => settle();
167
+ const observer = {
168
+ changed: () => settle(),
169
+ aborted(reason) { if (retire())
170
+ reject(signal?.aborted ? signal.reason : reason); },
171
+ };
172
+ observers.add(observer);
173
+ try {
174
+ signal?.addEventListener("abort", onAbort, { once: true });
175
+ localSignal?.addEventListener("abort", interrupted, { once: true });
176
+ if (settled) {
177
+ localSignal?.removeEventListener("abort", interrupted);
178
+ if (finished || failed || !readerReferences && !writerReferences)
179
+ cleanup();
180
+ }
181
+ if (signal?.aborted || waitingSignal?.aborted || revision !== previous || !endpoint.open || failed)
182
+ settle();
183
+ if (!settled)
184
+ timer = setTimeout(() => settle(true), timeoutMs);
185
+ }
186
+ catch (reason) {
187
+ if (retire())
188
+ reject(reason);
189
+ }
190
+ });
191
+ }
192
+ catch (reason) {
193
+ return Promise.reject(reason);
194
+ }
195
+ };
196
+ const closeEndpoint = (endpoint) => {
197
+ if (endpoint.closing)
198
+ return endpoint.closing;
199
+ let closed;
200
+ endpoint.closing = new Promise(resolve => { closed = resolve; });
201
+ endpoint.open = false;
202
+ const admittedWrites = [...endpoint.writes].map(request => request.completion);
203
+ if (endpoint.direction === "read") {
204
+ readerReferences--;
205
+ for (const request of reads)
206
+ if (request.lease.endpoint === endpoint) {
207
+ removeRead(request);
208
+ request.lease.done = true;
209
+ request.reject(failed ? failure : new FsError("EBADF", { syscall: "read" }));
210
+ }
211
+ if (!readerReferences) {
212
+ buffered.clear();
213
+ availableBytes = 0;
214
+ const reason = brokenPipe();
215
+ for (const request of writes) {
216
+ removeWrite(request);
217
+ request.reject(failed ? failure : reason);
218
+ }
219
+ consumer.abort(reason);
220
+ }
221
+ }
222
+ else
223
+ writerReferences--;
224
+ changed();
225
+ pump();
226
+ if (!readerReferences && !writerReferences)
227
+ cleanup();
228
+ void Promise.allSettled(admittedWrites).then(closed);
229
+ return endpoint.closing;
230
+ };
231
+ const borrow = (endpoint) => {
232
+ const lease = { endpoint, pending: new Set(), done: false };
233
+ const release = () => {
234
+ lease.done = true;
235
+ for (const request of lease.pending) {
236
+ removeRead(request);
237
+ request.resolve({ done: true, value: undefined });
238
+ }
239
+ return { done: true, value: undefined };
240
+ };
241
+ return {
242
+ [Symbol.asyncIterator]() { return this; },
243
+ next() {
244
+ if (lease.done)
245
+ return Promise.resolve({ done: true, value: undefined });
246
+ try {
247
+ checkEndpoint(endpoint);
248
+ }
249
+ catch (reason) {
250
+ lease.done = true;
251
+ return Promise.reject(reason);
252
+ }
253
+ return new Promise((resolve, reject) => {
254
+ const request = { lease, resolve, reject };
255
+ reads.add(request);
256
+ lease.pending.add(request);
257
+ pump();
258
+ });
259
+ },
260
+ async return() { return release(); },
261
+ async throw(reason) { release(); throw reason; },
262
+ };
263
+ };
264
+ const write = (endpoint, chunk, legacy = false) => {
265
+ try {
266
+ checkFailure();
267
+ if (!legacy)
268
+ signal?.throwIfAborted();
269
+ if (!endpoint.open)
270
+ throw new FsError(legacy ? "EPIPE" : "EBADF", { syscall: "write" });
271
+ if (!readerReferences)
272
+ throw brokenPipe();
273
+ if (!(chunk instanceof Uint8Array))
274
+ throw new TypeError("Byte sinks require Uint8Array chunks");
275
+ if (!chunk.byteLength)
276
+ return Promise.resolve();
277
+ const owned = new Uint8Array(chunk);
278
+ let resolve;
279
+ let reject;
280
+ const completion = new Promise((accept, refuse) => { resolve = accept; reject = refuse; });
281
+ const request = { endpoint, chunk: owned, completion, resolve, reject };
282
+ endpoint.writes.add(request);
283
+ writes.add(request);
284
+ pump();
285
+ return completion;
286
+ }
287
+ catch (reason) {
288
+ return Promise.reject(reason);
289
+ }
290
+ };
291
+ const createState = (direction) => {
292
+ if (direction === "read")
293
+ readerReferences++;
294
+ else
295
+ writerReferences++;
296
+ changed();
297
+ return { direction, writes: new Set(), open: true, closing: undefined };
298
+ };
299
+ const createReadEndpoint = (state) => ({
300
+ direction: "read",
301
+ readable: { [Symbol.asyncIterator]: () => borrow(state) },
302
+ acquire() { checkEndpoint(state); return createReadEndpoint(createState("read")); },
303
+ probe: () => probe(state),
304
+ waitForChange: (previous, options) => waitForChange(state, previous, options),
305
+ close: () => closeEndpoint(state),
306
+ });
307
+ const createWriteEndpoint = (state) => {
308
+ const writing = (chunk) => write(state, chunk);
309
+ return {
310
+ direction: "write",
311
+ writable: { write: writing, [outputFailure]: fail, ownedOutput: { consumerClosed: consumer.signal, write: writing } },
312
+ acquire() { checkEndpoint(state); return createWriteEndpoint(createState("write")); },
313
+ probe: () => probe(state),
314
+ waitForChange: (previous, options) => waitForChange(state, previous, options),
315
+ close: () => closeEndpoint(state),
316
+ };
317
+ };
318
+ const readState = createState("read");
319
+ const writeState = createState("write");
320
+ const endpoints = { read: createReadEndpoint(readState), write: createWriteEndpoint(writeState) };
321
+ const reader = borrow(readState);
42
322
  const iterator = (async function* () {
43
323
  try {
44
324
  while (true) {
45
325
  if (failed)
46
326
  throw failure;
47
- const result = await reader.read();
327
+ const result = await reader.next();
48
328
  if (failed)
49
329
  throw failure;
50
330
  if (result.done) {
@@ -57,7 +337,7 @@ export function createBytePipe(options = {}) {
57
337
  finally {
58
338
  if (!finished)
59
339
  await abort();
60
- reader.releaseLock();
340
+ await reader.return?.();
61
341
  }
62
342
  })();
63
343
  const readable = {
@@ -70,41 +350,41 @@ export function createBytePipe(options = {}) {
70
350
  return await iterator.return(undefined);
71
351
  }
72
352
  finally {
73
- reader.releaseLock();
353
+ await reader.return?.();
74
354
  }
75
355
  },
76
356
  async throw(reason) {
77
- await abort(reason);
357
+ await fail(reason);
78
358
  try {
79
359
  return await iterator.throw(reason);
80
360
  }
81
361
  finally {
82
- reader.releaseLock();
362
+ await reader.return?.();
83
363
  }
84
364
  },
85
365
  };
86
- const write = async (chunk) => {
87
- if (failed)
88
- throw failure;
89
- if (ended)
90
- throw new FsError("EPIPE", { syscall: "write" });
91
- if (!(chunk instanceof Uint8Array))
92
- throw new TypeError("Byte sinks require Uint8Array chunks");
93
- if (chunk.byteLength > 0)
94
- await writer.write(new Uint8Array(chunk));
95
- };
366
+ const legacyWrite = (chunk) => write(writeState, chunk, true);
367
+ if (signal?.aborted)
368
+ onAbort();
369
+ else
370
+ signal?.addEventListener("abort", onAbort, { once: true });
96
371
  return {
97
372
  readable,
373
+ endpoints,
374
+ readiness() {
375
+ if (failed)
376
+ throw failure;
377
+ return availableBytes > 0 ? "ready" : !writerReferences && !writes.size ? "eof" : "blocked";
378
+ },
98
379
  writable: {
99
- write,
100
- [outputFailure]: abort,
101
- ownedOutput: { consumerClosed: consumer.signal, write },
380
+ write: legacyWrite,
381
+ [outputFailure]: fail,
382
+ ownedOutput: { consumerClosed: consumer.signal, write: legacyWrite },
102
383
  },
103
384
  close() {
104
385
  if (failed)
105
386
  return Promise.reject(failure);
106
- ended = true;
107
- closePromise ??= writer.close();
387
+ closePromise ??= closeEndpoint(writeState).then(() => { checkFailure(); });
108
388
  return closePromise;
109
389
  },
110
390
  abort,
@@ -1 +1 @@
1
- {"version":3,"file":"io.js","sourceRoot":"","sources":["../../src/contracts/io.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"io.js","sourceRoot":"","sources":["../../src/contracts/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE9E,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAsDtD,MAAM,UAAU,cAAc,CAAC,UAA2B,EAAE;IAC1D,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,EAAE,GAAG,IAAI,CAAC;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,UAAU,CAAC,+CAA+C,CAAC,CAAC;IACxE,CAAC;IAyBD,MAAM,yBAAyB,GAAG,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAc,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAe,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAgB,CAAC;IACvC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC/C,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,IAAI,gBAAgB,GAAG,CAAC,CAAC;IACzB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,OAAgB,CAAC;IACrB,IAAI,YAAuC,CAAC;IAC5C,IAAI,YAAuC,CAAC;IAC5C,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,GAAY,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5E,MAAM,YAAY,GAAG,GAAS,EAAE,GAAG,IAAI,MAAM;QAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,CAAC,QAAuB,EAAQ,EAAE;QACtD,YAAY,EAAE,CAAC;QACf,MAAM,EAAE,cAAc,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI;YAAE,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACtE,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,QAAQ,EAAE,CAAC;QACX,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC;YAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IAC5D,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,OAAoB,EAAQ,EAAE;QAChD,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,OAAqB,EAAQ,EAAE;QAClD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC;IACF,MAAM,OAAO,GAAG,GAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI;QAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACpG,MAAM,IAAI,GAAG,GAAS,EAAE;QACtB,IAAI,MAAM;YAAE,OAAO;QACnB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAgC,CAAC;YACvE,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAA+B,CAAC;YACvE,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gBACrB,UAAU,CAAC,OAAO,CAAC,CAAC;gBACpB,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACvB,cAAc,IAAI,KAAK,CAAC,UAAU,CAAC;gBACnC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC/C,OAAO,EAAE,CAAC;gBACV,SAAS;YACX,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAiC,CAAC;YACzE,IAAI,OAAO,IAAI,CAAC,OAAO,IAAI,cAAc,GAAG,aAAa,CAAC,EAAE,CAAC;gBAC3D,WAAW,CAAC,OAAO,CAAC,CAAC;gBACrB,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC5B,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC3C,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO,EAAE,CAAC;gBACV,SAAS;YACX,CAAC;YACD,IAAI,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACtE,QAAQ,GAAG,IAAI,CAAC;gBAChB,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;oBAC5B,UAAU,CAAC,OAAO,CAAC,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;oBAC1B,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBACpD,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,MAAe,EAAiB,EAAE;QAC9C,IAAI,YAAY;YAAE,OAAO,YAAY,CAAC;QACtC,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC;gBAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QACD,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QACjC,MAAM,GAAG,IAAI,CAAC;QACd,OAAO,GAAG,MAAM,CAAC;QACjB,QAAQ,CAAC,KAAK,EAAE,CAAC;QACjB,cAAc,GAAG,CAAC,CAAC;QACnB,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;YAC5B,UAAU,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;YAC7B,WAAW,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzB,CAAC;QACD,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,CAAC;QACV,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,SAAkB,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAiB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3G,MAAM,OAAO,GAAG,GAAS,EAAE,GAAG,KAAK,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,MAAM,KAAK,GAAG,CAAC,QAAuB,EAA2B,EAAE;QACjE,aAAa,CAAC,QAAQ,CAAC,CAAC;QACxB,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,KAAK,CAAC,CAAC;QACnG,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,IAAI,QAAQ,CAAC,SAAS,KAAK,MAAM,IAAI,cAAc,GAAG,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;IAC3H,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,QAAuB,EAAE,QAAgB,EAAE,OAAgC,EAAgD,EAAE;QAClJ,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;YACrD,MAAM,WAAW,GAAG,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;YACzE,YAAY,EAAE,CAAC;YACf,MAAM,EAAE,cAAc,EAAE,CAAC;YACzB,aAAa,EAAE,cAAc,EAAE,CAAC;YAChC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,aAAa;gBAAE,MAAM,IAAI,UAAU,CAAC,0DAA0D,CAAC,CAAC;YACrK,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,GAAG,EAAE,IAAI,QAAQ,GAAG,QAAQ;gBAAE,MAAM,IAAI,UAAU,CAAC,mCAAmC,CAAC,CAAC;YACpI,IAAI,QAAQ,KAAK,QAAQ;gBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnE,IAAI,CAAC,SAAS;gBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,SAAS,CAAC,IAAI,IAAI,yBAAyB;gBAAE,MAAM,IAAI,UAAU,CAAC,6CAA6C,CAAC,CAAC;YACrH,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,IAAI,OAAO,GAAG,KAAK,CAAC;gBACpB,IAAI,KAAgD,CAAC;gBACrD,MAAM,MAAM,GAAG,GAAY,EAAE;oBAC3B,IAAI,OAAO;wBAAE,OAAO,KAAK,CAAC;oBAC1B,OAAO,GAAG,IAAI,CAAC;oBACf,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC3B,IAAI,KAAK,KAAK,SAAS;wBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;oBAC7C,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;oBACvD,IAAI,QAAQ,IAAI,MAAM,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB;wBAAE,OAAO,EAAE,CAAC;oBAC5E,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBACF,MAAM,MAAM,GAAG,CAAC,QAAQ,GAAG,KAAK,EAAQ,EAAE;oBACxC,IAAI,CAAC,MAAM,EAAE;wBAAE,OAAO;oBACtB,IAAI,CAAC;wBACH,YAAY,EAAE,CAAC;wBACf,MAAM,EAAE,cAAc,EAAE,CAAC;wBACzB,aAAa,EAAE,cAAc,EAAE,CAAC;wBAChC,aAAa,CAAC,QAAQ,CAAC,CAAC;wBACxB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAClD,CAAC;oBAAC,OAAO,MAAM,EAAE,CAAC;wBAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAAC,CAAC;gBACtC,CAAC,CAAC;gBACF,MAAM,WAAW,GAAG,GAAS,EAAE,CAAC,MAAM,EAAE,CAAC;gBACzC,MAAM,QAAQ,GAAsB;oBAClC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE;oBACvB,OAAO,CAAC,MAAM,IAAI,IAAI,MAAM,EAAE;wBAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;iBACpF,CAAC;gBACF,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxB,IAAI,CAAC;oBACH,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;oBAC3D,WAAW,EAAE,gBAAgB,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;oBACpE,IAAI,OAAO,EAAE,CAAC;wBACZ,WAAW,EAAE,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;wBACvD,IAAI,QAAQ,IAAI,MAAM,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB;4BAAE,OAAO,EAAE,CAAC;oBAC9E,CAAC;oBACD,IAAI,MAAM,EAAE,OAAO,IAAI,aAAa,EAAE,OAAO,IAAI,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM;wBAAE,MAAM,EAAE,CAAC;oBAC7G,IAAI,CAAC,OAAO;wBAAE,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;gBAClE,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAAC,IAAI,MAAM,EAAE;wBAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAAC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;IACrD,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,QAAuB,EAAiB,EAAE;QAC/D,IAAI,QAAQ,CAAC,OAAO;YAAE,OAAO,QAAQ,CAAC,OAAO,CAAC;QAC9C,IAAI,MAAmB,CAAC;QACxB,QAAQ,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;QACtB,MAAM,cAAc,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC/E,IAAI,QAAQ,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;YAClC,gBAAgB,EAAE,CAAC;YACnB,KAAK,MAAM,OAAO,IAAI,KAAK;gBAAE,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACrE,UAAU,CAAC,OAAO,CAAC,CAAC;oBACpB,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;oBAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC/E,CAAC;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACjB,cAAc,GAAG,CAAC,CAAC;gBACnB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;gBAC5B,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;oBAC7B,WAAW,CAAC,OAAO,CAAC,CAAC;oBACrB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAC5C,CAAC;gBACD,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;;YAAM,gBAAgB,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,CAAC;QACP,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB;YAAE,OAAO,EAAE,CAAC;QACtD,KAAK,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC1B,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,QAAuB,EAAqC,EAAE;QAC5E,MAAM,KAAK,GAAc,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACvE,MAAM,OAAO,GAAG,GAA+B,EAAE;YAC/C,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;YAClB,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACpC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACpB,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YACpD,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC1C,CAAC,CAAC;QACF,OAAO;YACL,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;YACzC,IAAI;gBACF,IAAI,KAAK,CAAC,IAAI;oBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBACzE,IAAI,CAAC;oBAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAAC,CAAC;gBAChC,OAAO,MAAM,EAAE,CAAC;oBAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;oBAAC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAAC,CAAC;gBACpE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACrC,MAAM,OAAO,GAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;oBACxD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACnB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC3B,IAAI,EAAE,CAAC;gBACT,CAAC,CAAC,CAAC;YACL,CAAC;YACD,KAAK,CAAC,MAAM,KAAK,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC;YACpC,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,OAAO,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC;SACjD,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,KAAK,GAAG,CAAC,QAAuB,EAAE,KAAiB,EAAE,MAAM,GAAG,KAAK,EAAiB,EAAE;QAC1F,IAAI,CAAC;YACH,YAAY,EAAE,CAAC;YACf,IAAI,CAAC,MAAM;gBAAE,MAAM,EAAE,cAAc,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YACxF,IAAI,CAAC,gBAAgB;gBAAE,MAAM,UAAU,EAAE,CAAC;YAC1C,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;YAChG,IAAI,CAAC,KAAK,CAAC,UAAU;gBAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,OAAoB,CAAC;YACzB,IAAI,MAAkC,CAAC;YACvC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAO,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACjG,MAAM,OAAO,GAAiB,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;YACtF,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC7B,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpB,IAAI,EAAE,CAAC;YACP,OAAO,UAAU,CAAC;QACpB,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAAC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;IACrD,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,SAA2B,EAAiB,EAAE;QACjE,IAAI,SAAS,KAAK,MAAM;YAAE,gBAAgB,EAAE,CAAC;;YACxC,gBAAgB,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;QACV,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAC1E,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,CAAC,KAAoB,EAAoB,EAAE,CAAC,CAAC;QACtE,SAAS,EAAE,MAAM;QACjB,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACzD,OAAO,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;QACzB,aAAa,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC;QAC7E,KAAK,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC;KAClC,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,CAAC,KAAoB,EAAqB,EAAE;QACtE,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAiB,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1E,OAAO;YACL,SAAS,EAAE,OAAO;YAClB,QAAQ,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrH,OAAO,KAAK,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,mBAAmB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YACrF,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YACzB,aAAa,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC;YAC7E,KAAK,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC;SAClC,CAAC;IACJ,CAAC,CAAC;IACF,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,kBAAkB,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;IAClG,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,CAAC,KAAK,SAAS,CAAC;QAC/B,IAAI,CAAC;YACH,OAAO,IAAI,EAAE,CAAC;gBACZ,IAAI,MAAM;oBAAE,MAAM,OAAO,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,MAAM;oBAAE,MAAM,OAAO,CAAC;gBAC1B,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChB,QAAQ,GAAG,IAAI,CAAC;oBAChB,OAAO;gBACT,CAAC;gBACD,MAAM,MAAM,CAAC,KAAK,CAAC;YACrB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,QAAQ;gBAAE,MAAM,KAAK,EAAE,CAAC;YAC7B,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IACL,MAAM,QAAQ,GAAsC;QAClD,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC;QACzC,IAAI,KAAK,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAClC,KAAK,CAAC,MAAM;YACV,IAAI,CAAC,QAAQ;gBAAE,MAAM,KAAK,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,MAAM;YAChB,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC;YACnB,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACtC,CAAC;oBAAS,CAAC;gBACT,MAAM,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,CAAC;QACH,CAAC;KACF,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAiB,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACzF,IAAI,MAAM,EAAE,OAAO;QAAE,OAAO,EAAE,CAAC;;QAC1B,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,OAAO;QACL,QAAQ;QACR,SAAS;QACT,SAAS;YACP,IAAI,MAAM;gBAAE,MAAM,OAAO,CAAC;YAC1B,OAAO,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9F,CAAC;QACD,QAAQ,EAAE;YACR,KAAK,EAAE,WAAW;YAClB,CAAC,aAAa,CAAC,EAAE,IAAI;YACrB,WAAW,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;SACrE;QACD,KAAK;YACH,IAAI,MAAM;gBAAE,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3C,YAAY,KAAK,aAAa,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,KAAK;KACN,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAc,EAAE,IAAY;IAC1D,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAc,EAAE,KAAiB,EAAE,MAAoB;IACtF,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;IAChG,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAkB,EAAE,IAAc,EAAE,MAAoB;IACtF,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACpD,MAAM,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,EAAE,cAAc,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAkB,EAAE,OAAuB;IAC3E,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,KAAK,UAAU,SAAS,CAAS,SAAoC,EAAE,MAAoB;IACzF,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,EAAE,CAAC;IAChC,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,GAAS,EAAE;YACzB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,IAAI,CAAC;YACH,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAC/B,CAAC,MAAM,EAAE,EAAE;gBACT,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC7C,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;gBACjB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}