lib0 0.2.116 → 1.0.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (860) hide show
  1. package/package.json +160 -407
  2. package/{array.js → src/array.js} +6 -2
  3. package/{binary.js → src/binary.js} +29 -35
  4. package/{delta → src/delta}/delta.js +474 -410
  5. package/{environment.js → src/environment.js} +30 -16
  6. package/{hash → src/hash}/rabin.js +6 -6
  7. package/{schema.js → src/schema.js} +127 -58
  8. package/{string.js → src/string.js} +47 -26
  9. package/{testing.js → src/testing.js} +3 -1
  10. package/src/ts.js +46 -0
  11. package/{dist → types}/array.d.ts +1 -1
  12. package/types/array.d.ts.map +1 -0
  13. package/{dist → types}/binary.d.ts +31 -37
  14. package/types/binary.d.ts.map +1 -0
  15. package/types/broadcastchannel.d.ts.map +1 -0
  16. package/types/buffer.d.ts.map +1 -0
  17. package/types/cache.d.ts.map +1 -0
  18. package/types/component.d.ts.map +1 -0
  19. package/types/conditions.d.ts.map +1 -0
  20. package/types/decoding.d.ts.map +1 -0
  21. package/types/delta/delta.d.ts +87 -16
  22. package/types/delta/delta.d.ts.map +1 -1
  23. package/types/delta/t3.test.d.ts.map +1 -1
  24. package/types/diff.d.ts.map +1 -0
  25. package/types/dom.d.ts.map +1 -0
  26. package/types/encoding.d.ts.map +1 -0
  27. package/{environment.d.ts → types/environment.d.ts} +2 -0
  28. package/types/environment.d.ts.map +1 -0
  29. package/types/error.d.ts.map +1 -0
  30. package/types/eventloop.d.ts.map +1 -0
  31. package/{function.d.ts → types/function.d.ts} +1 -1
  32. package/types/function.d.ts.map +1 -0
  33. package/types/indexeddb.d.ts.map +1 -0
  34. package/types/indexeddbV2.d.ts.map +1 -0
  35. package/types/iterator.d.ts.map +1 -0
  36. package/types/json.d.ts.map +1 -0
  37. package/types/list.d.ts.map +1 -0
  38. package/types/logging.common.d.ts.map +1 -0
  39. package/types/logging.d.ts.map +1 -0
  40. package/types/logging.node.d.ts.map +1 -0
  41. package/types/map.d.ts.map +1 -0
  42. package/types/math.d.ts.map +1 -0
  43. package/types/metric.d.ts.map +1 -0
  44. package/types/mutex.d.ts.map +1 -0
  45. package/{number.d.ts → types/number.d.ts} +2 -2
  46. package/types/number.d.ts.map +1 -0
  47. package/types/object.d.ts.map +1 -0
  48. package/types/observable.d.ts.map +1 -0
  49. package/types/pair.d.ts.map +1 -0
  50. package/types/performance.d.ts.map +1 -0
  51. package/types/performance.node.d.ts.map +1 -0
  52. package/types/pledge.d.ts.map +1 -0
  53. package/types/prng.d.ts.map +1 -0
  54. package/types/promise.d.ts.map +1 -0
  55. package/types/queue.d.ts.map +1 -0
  56. package/types/random.d.ts.map +1 -0
  57. package/{schema.d.ts → types/schema.d.ts} +65 -59
  58. package/types/schema.d.ts.map +1 -0
  59. package/types/set.d.ts.map +1 -0
  60. package/types/sort.d.ts.map +1 -0
  61. package/types/statistics.d.ts.map +1 -0
  62. package/types/storage.d.ts.map +1 -0
  63. package/{string.d.ts → types/string.d.ts} +3 -8
  64. package/types/string.d.ts.map +1 -0
  65. package/types/symbol.d.ts.map +1 -0
  66. package/{testing.d.ts → types/testing.d.ts} +2 -1
  67. package/types/testing.d.ts.map +1 -0
  68. package/types/time.d.ts.map +1 -0
  69. package/types/trait/equality.d.ts.map +1 -1
  70. package/types/tree.d.ts.map +1 -0
  71. package/types/ts.d.ts +22 -0
  72. package/types/ts.d.ts.map +1 -0
  73. package/types/url.d.ts.map +1 -0
  74. package/types/webcrypto.d.ts.map +1 -0
  75. package/types/webcrypto.deno.d.ts.map +1 -0
  76. package/types/webcrypto.node.d.ts.map +1 -0
  77. package/types/webcrypto.react-native.d.ts.map +1 -0
  78. package/types/websocket.d.ts.map +1 -0
  79. package/.github/workflows/node.js.yml +0 -24
  80. package/.jsdoc.json +0 -18
  81. package/.vscode/launch.json +0 -17
  82. package/array.d.ts +0 -30
  83. package/array.d.ts.map +0 -1
  84. package/array.test.d.ts +0 -13
  85. package/array.test.d.ts.map +0 -1
  86. package/bin/0ecdsa-generate-keypair.d.ts +0 -3
  87. package/bin/0ecdsa-generate-keypair.d.ts.map +0 -1
  88. package/bin/0serve.d.ts +0 -3
  89. package/bin/0serve.d.ts.map +0 -1
  90. package/bin/gendocs.d.ts +0 -3
  91. package/bin/gendocs.d.ts.map +0 -1
  92. package/bin/gentesthtml.d.ts +0 -3
  93. package/bin/gentesthtml.d.ts.map +0 -1
  94. package/binary.d.ts +0 -87
  95. package/binary.d.ts.map +0 -1
  96. package/binary.test.d.ts +0 -4
  97. package/binary.test.d.ts.map +0 -1
  98. package/broadcastchannel.d.ts.map +0 -1
  99. package/broadcastchannel.test.d.ts +0 -3
  100. package/broadcastchannel.test.d.ts.map +0 -1
  101. package/buffer.d.ts.map +0 -1
  102. package/buffer.test.d.ts +0 -6
  103. package/buffer.test.d.ts.map +0 -1
  104. package/cache.d.ts.map +0 -1
  105. package/cache.test.d.ts +0 -3
  106. package/cache.test.d.ts.map +0 -1
  107. package/component.d.ts.map +0 -1
  108. package/conditions.d.ts.map +0 -1
  109. package/coverage/tmp/coverage-54474-1766470859038-0.json +0 -1
  110. package/crypto/aes-gcm.d.ts +0 -17
  111. package/crypto/aes-gcm.d.ts.map +0 -1
  112. package/crypto/common.d.ts +0 -3
  113. package/crypto/common.d.ts.map +0 -1
  114. package/crypto/ecdsa.d.ts +0 -17
  115. package/crypto/ecdsa.d.ts.map +0 -1
  116. package/crypto/jwt.d.ts +0 -10
  117. package/crypto/jwt.d.ts.map +0 -1
  118. package/crypto/rsa-oaep.d.ts +0 -13
  119. package/crypto/rsa-oaep.d.ts.map +0 -1
  120. package/crypto.test.d.ts +0 -9
  121. package/crypto.test.d.ts.map +0 -1
  122. package/decoding.d.ts.map +0 -1
  123. package/delta/binding.d.ts +0 -107
  124. package/delta/binding.d.ts.map +0 -1
  125. package/delta/binding.test.d.ts +0 -5
  126. package/delta/binding.test.d.ts.map +0 -1
  127. package/delta/delta-pitch.test.d.ts +0 -5
  128. package/delta/delta-pitch.test.d.ts.map +0 -1
  129. package/delta/delta.d.ts +0 -1008
  130. package/delta/delta.d.ts.map +0 -1
  131. package/delta/delta.test.d.ts +0 -28
  132. package/delta/delta.test.d.ts.map +0 -1
  133. package/delta/t3.test.d.ts +0 -19
  134. package/delta/t3.test.d.ts.map +0 -1
  135. package/deno.json +0 -12
  136. package/deno.lock +0 -122
  137. package/diff/patience.d.ts +0 -16
  138. package/diff/patience.d.ts.map +0 -1
  139. package/diff/patience.test.d.ts +0 -4
  140. package/diff/patience.test.d.ts.map +0 -1
  141. package/diff.d.ts.map +0 -1
  142. package/diff.test.d.ts +0 -6
  143. package/diff.test.d.ts.map +0 -1
  144. package/dist/aes-gcm.cjs +0 -171
  145. package/dist/aes-gcm.cjs.map +0 -1
  146. package/dist/array-78849c95.cjs +0 -260
  147. package/dist/array-78849c95.cjs.map +0 -1
  148. package/dist/array.cjs +0 -26
  149. package/dist/array.cjs.map +0 -1
  150. package/dist/array.d.ts.map +0 -1
  151. package/dist/array.test.d.ts +0 -13
  152. package/dist/array.test.d.ts.map +0 -1
  153. package/dist/bin/0ecdsa-generate-keypair.d.ts +0 -3
  154. package/dist/bin/0ecdsa-generate-keypair.d.ts.map +0 -1
  155. package/dist/bin/0serve.d.ts +0 -3
  156. package/dist/bin/0serve.d.ts.map +0 -1
  157. package/dist/bin/gendocs.d.ts +0 -3
  158. package/dist/bin/gendocs.d.ts.map +0 -1
  159. package/dist/bin/gentesthtml.d.ts +0 -3
  160. package/dist/bin/gentesthtml.d.ts.map +0 -1
  161. package/dist/binary-ac8e39e2.cjs +0 -229
  162. package/dist/binary-ac8e39e2.cjs.map +0 -1
  163. package/dist/binary.cjs +0 -74
  164. package/dist/binary.cjs.map +0 -1
  165. package/dist/binary.d.ts.map +0 -1
  166. package/dist/binary.test.d.ts +0 -4
  167. package/dist/binary.test.d.ts.map +0 -1
  168. package/dist/binding.cjs +0 -484
  169. package/dist/binding.cjs.map +0 -1
  170. package/dist/broadcastchannel-aca4f606.cjs +0 -128
  171. package/dist/broadcastchannel-aca4f606.cjs.map +0 -1
  172. package/dist/broadcastchannel.cjs +0 -29
  173. package/dist/broadcastchannel.cjs.map +0 -1
  174. package/dist/broadcastchannel.d.ts +0 -8
  175. package/dist/broadcastchannel.d.ts.map +0 -1
  176. package/dist/broadcastchannel.test.d.ts +0 -3
  177. package/dist/broadcastchannel.test.d.ts.map +0 -1
  178. package/dist/buffer-3e750729.cjs +0 -198
  179. package/dist/buffer-3e750729.cjs.map +0 -1
  180. package/dist/buffer.cjs +0 -38
  181. package/dist/buffer.cjs.map +0 -1
  182. package/dist/buffer.d.ts +0 -22
  183. package/dist/buffer.d.ts.map +0 -1
  184. package/dist/buffer.test.d.ts +0 -6
  185. package/dist/buffer.test.d.ts.map +0 -1
  186. package/dist/cache.cjs +0 -223
  187. package/dist/cache.cjs.map +0 -1
  188. package/dist/cache.d.ts +0 -52
  189. package/dist/cache.d.ts.map +0 -1
  190. package/dist/cache.test.d.ts +0 -3
  191. package/dist/cache.test.d.ts.map +0 -1
  192. package/dist/common.cjs +0 -47
  193. package/dist/common.cjs.map +0 -1
  194. package/dist/component.cjs +0 -437
  195. package/dist/component.cjs.map +0 -1
  196. package/dist/component.d.ts +0 -86
  197. package/dist/component.d.ts.map +0 -1
  198. package/dist/conditions-f5c0c102.cjs +0 -24
  199. package/dist/conditions-f5c0c102.cjs.map +0 -1
  200. package/dist/conditions.cjs +0 -10
  201. package/dist/conditions.cjs.map +0 -1
  202. package/dist/conditions.d.ts +0 -2
  203. package/dist/conditions.d.ts.map +0 -1
  204. package/dist/crypto/aes-gcm.d.ts +0 -17
  205. package/dist/crypto/aes-gcm.d.ts.map +0 -1
  206. package/dist/crypto/common.d.ts +0 -3
  207. package/dist/crypto/common.d.ts.map +0 -1
  208. package/dist/crypto/ecdsa.d.ts +0 -17
  209. package/dist/crypto/ecdsa.d.ts.map +0 -1
  210. package/dist/crypto/jwt.d.ts +0 -10
  211. package/dist/crypto/jwt.d.ts.map +0 -1
  212. package/dist/crypto/rsa-oaep.d.ts +0 -13
  213. package/dist/crypto/rsa-oaep.d.ts.map +0 -1
  214. package/dist/crypto.test.d.ts +0 -9
  215. package/dist/crypto.test.d.ts.map +0 -1
  216. package/dist/decoding-76e75827.cjs +0 -795
  217. package/dist/decoding-76e75827.cjs.map +0 -1
  218. package/dist/decoding.cjs +0 -55
  219. package/dist/decoding.cjs.map +0 -1
  220. package/dist/decoding.d.ts +0 -165
  221. package/dist/decoding.d.ts.map +0 -1
  222. package/dist/delta/binding.d.ts +0 -107
  223. package/dist/delta/binding.d.ts.map +0 -1
  224. package/dist/delta/binding.test.d.ts +0 -5
  225. package/dist/delta/binding.test.d.ts.map +0 -1
  226. package/dist/delta/delta-pitch.test.d.ts +0 -5
  227. package/dist/delta/delta-pitch.test.d.ts.map +0 -1
  228. package/dist/delta/delta.d.ts +0 -1008
  229. package/dist/delta/delta.d.ts.map +0 -1
  230. package/dist/delta/delta.test.d.ts +0 -28
  231. package/dist/delta/delta.test.d.ts.map +0 -1
  232. package/dist/delta/t3.test.d.ts +0 -19
  233. package/dist/delta/t3.test.d.ts.map +0 -1
  234. package/dist/delta.cjs +0 -2409
  235. package/dist/delta.cjs.map +0 -1
  236. package/dist/diff/patience.d.ts +0 -16
  237. package/dist/diff/patience.d.ts.map +0 -1
  238. package/dist/diff/patience.test.d.ts +0 -4
  239. package/dist/diff/patience.test.d.ts.map +0 -1
  240. package/dist/diff-9d236524.cjs +0 -162
  241. package/dist/diff-9d236524.cjs.map +0 -1
  242. package/dist/diff.cjs +0 -18
  243. package/dist/diff.cjs.map +0 -1
  244. package/dist/diff.d.ts +0 -36
  245. package/dist/diff.d.ts.map +0 -1
  246. package/dist/diff.test.d.ts +0 -6
  247. package/dist/diff.test.d.ts.map +0 -1
  248. package/dist/dom-7e625b09.cjs +0 -371
  249. package/dist/dom-7e625b09.cjs.map +0 -1
  250. package/dist/dom.cjs +0 -71
  251. package/dist/dom.cjs.map +0 -1
  252. package/dist/dom.d.ts.map +0 -1
  253. package/dist/ecdsa.cjs +0 -130
  254. package/dist/ecdsa.cjs.map +0 -1
  255. package/dist/encoding-1a745c43.cjs +0 -1025
  256. package/dist/encoding-1a745c43.cjs.map +0 -1
  257. package/dist/encoding.cjs +0 -54
  258. package/dist/encoding.cjs.map +0 -1
  259. package/dist/encoding.d.ts.map +0 -1
  260. package/dist/encoding.test.d.ts +0 -50
  261. package/dist/encoding.test.d.ts.map +0 -1
  262. package/dist/environment-1c97264d.cjs +0 -180
  263. package/dist/environment-1c97264d.cjs.map +0 -1
  264. package/dist/environment.cjs +0 -29
  265. package/dist/environment.cjs.map +0 -1
  266. package/dist/environment.d.ts +0 -19
  267. package/dist/environment.d.ts.map +0 -1
  268. package/dist/equality.cjs +0 -34
  269. package/dist/equality.cjs.map +0 -1
  270. package/dist/error-0c1f634f.cjs +0 -53
  271. package/dist/error-0c1f634f.cjs.map +0 -1
  272. package/dist/error.cjs +0 -13
  273. package/dist/error.cjs.map +0 -1
  274. package/dist/error.d.ts.map +0 -1
  275. package/dist/eventloop-a0168106.cjs +0 -151
  276. package/dist/eventloop-a0168106.cjs.map +0 -1
  277. package/dist/eventloop.cjs +0 -19
  278. package/dist/eventloop.cjs.map +0 -1
  279. package/dist/eventloop.d.ts.map +0 -1
  280. package/dist/eventloop.test.d.ts +0 -10
  281. package/dist/eventloop.test.d.ts.map +0 -1
  282. package/dist/fingerprint.cjs +0 -44
  283. package/dist/fingerprint.cjs.map +0 -1
  284. package/dist/function-314580f7.cjs +0 -223
  285. package/dist/function-314580f7.cjs.map +0 -1
  286. package/dist/function.cjs +0 -26
  287. package/dist/function.cjs.map +0 -1
  288. package/dist/function.d.ts +0 -19
  289. package/dist/function.d.ts.map +0 -1
  290. package/dist/function.test.d.ts +0 -5
  291. package/dist/function.test.d.ts.map +0 -1
  292. package/dist/hash/rabin-gf2-polynomial.d.ts +0 -45
  293. package/dist/hash/rabin-gf2-polynomial.d.ts.map +0 -1
  294. package/dist/hash/rabin-uncached.d.ts +0 -29
  295. package/dist/hash/rabin-uncached.d.ts.map +0 -1
  296. package/dist/hash/rabin.d.ts +0 -27
  297. package/dist/hash/rabin.d.ts.map +0 -1
  298. package/dist/hash/rabin.test.d.ts +0 -8
  299. package/dist/hash/rabin.test.d.ts.map +0 -1
  300. package/dist/hash/sha256.d.ts +0 -2
  301. package/dist/hash/sha256.d.ts.map +0 -1
  302. package/dist/hash/sha256.node.d.ts +0 -2
  303. package/dist/hash/sha256.node.d.ts.map +0 -1
  304. package/dist/hash/sha256.test.d.ts +0 -7
  305. package/dist/hash/sha256.test.d.ts.map +0 -1
  306. package/dist/index.cjs +0 -99
  307. package/dist/index.cjs.map +0 -1
  308. package/dist/index.d.ts +0 -35
  309. package/dist/index.d.ts.map +0 -1
  310. package/dist/indexeddb-46d1e737.cjs +0 -311
  311. package/dist/indexeddb-46d1e737.cjs.map +0 -1
  312. package/dist/indexeddb.cjs +0 -37
  313. package/dist/indexeddb.cjs.map +0 -1
  314. package/dist/indexeddb.d.ts.map +0 -1
  315. package/dist/indexeddb.test.d.ts +0 -3
  316. package/dist/indexeddb.test.d.ts.map +0 -1
  317. package/dist/indexeddbV2.cjs +0 -288
  318. package/dist/indexeddbV2.cjs.map +0 -1
  319. package/dist/indexeddbV2.d.ts.map +0 -1
  320. package/dist/indexeddbV2.test.d.ts +0 -3
  321. package/dist/indexeddbV2.test.d.ts.map +0 -1
  322. package/dist/isomorphic.cjs +0 -17
  323. package/dist/isomorphic.cjs.map +0 -1
  324. package/dist/iterator-9fc627c1.cjs +0 -78
  325. package/dist/iterator-9fc627c1.cjs.map +0 -1
  326. package/dist/iterator.cjs +0 -13
  327. package/dist/iterator.cjs.map +0 -1
  328. package/dist/iterator.d.ts.map +0 -1
  329. package/dist/json-092190a1.cjs +0 -34
  330. package/dist/json-092190a1.cjs.map +0 -1
  331. package/dist/json.cjs +0 -11
  332. package/dist/json.cjs.map +0 -1
  333. package/dist/json.d.ts.map +0 -1
  334. package/dist/jwt.cjs +0 -96
  335. package/dist/jwt.cjs.map +0 -1
  336. package/dist/list.cjs +0 -266
  337. package/dist/list.cjs.map +0 -1
  338. package/dist/list.d.ts.map +0 -1
  339. package/dist/list.test.d.ts +0 -6
  340. package/dist/list.test.d.ts.map +0 -1
  341. package/dist/logging.cjs +0 -428
  342. package/dist/logging.cjs.map +0 -1
  343. package/dist/logging.common.cjs +0 -132
  344. package/dist/logging.common.cjs.map +0 -1
  345. package/dist/logging.common.d.ts.map +0 -1
  346. package/dist/logging.d.ts.map +0 -1
  347. package/dist/logging.node.cjs +0 -203
  348. package/dist/logging.node.cjs.map +0 -1
  349. package/dist/logging.node.d.ts.map +0 -1
  350. package/dist/logging.test.d.ts +0 -3
  351. package/dist/logging.test.d.ts.map +0 -1
  352. package/dist/map-24d263c0.cjs +0 -139
  353. package/dist/map-24d263c0.cjs.map +0 -1
  354. package/dist/map.cjs +0 -15
  355. package/dist/map.cjs.map +0 -1
  356. package/dist/map.d.ts.map +0 -1
  357. package/dist/map.test.d.ts +0 -4
  358. package/dist/map.test.d.ts.map +0 -1
  359. package/dist/math-96d5e8c4.cjs +0 -103
  360. package/dist/math-96d5e8c4.cjs.map +0 -1
  361. package/dist/math.cjs +0 -26
  362. package/dist/math.cjs.map +0 -1
  363. package/dist/math.d.ts.map +0 -1
  364. package/dist/math.test.d.ts +0 -3
  365. package/dist/math.test.d.ts.map +0 -1
  366. package/dist/metric.cjs +0 -83
  367. package/dist/metric.cjs.map +0 -1
  368. package/dist/metric.d.ts.map +0 -1
  369. package/dist/metric.test.d.ts +0 -3
  370. package/dist/metric.test.d.ts.map +0 -1
  371. package/dist/mutex-63f09c81.cjs +0 -54
  372. package/dist/mutex-63f09c81.cjs.map +0 -1
  373. package/dist/mutex.cjs +0 -10
  374. package/dist/mutex.cjs.map +0 -1
  375. package/dist/mutex.d.ts.map +0 -1
  376. package/dist/mutex.test.d.ts +0 -3
  377. package/dist/mutex.test.d.ts.map +0 -1
  378. package/dist/number-1fb57bba.cjs +0 -64
  379. package/dist/number-1fb57bba.cjs.map +0 -1
  380. package/dist/number.cjs +0 -20
  381. package/dist/number.cjs.map +0 -1
  382. package/dist/number.d.ts +0 -10
  383. package/dist/number.d.ts.map +0 -1
  384. package/dist/number.test.d.ts +0 -4
  385. package/dist/number.test.d.ts.map +0 -1
  386. package/dist/object-c0c9435b.cjs +0 -212
  387. package/dist/object-c0c9435b.cjs.map +0 -1
  388. package/dist/object.cjs +0 -27
  389. package/dist/object.cjs.map +0 -1
  390. package/dist/object.d.ts.map +0 -1
  391. package/dist/object.test.d.ts +0 -6
  392. package/dist/object.test.d.ts.map +0 -1
  393. package/dist/observable.cjs +0 -169
  394. package/dist/observable.cjs.map +0 -1
  395. package/dist/observable.d.ts.map +0 -1
  396. package/dist/observable.test.d.ts +0 -3
  397. package/dist/observable.test.d.ts.map +0 -1
  398. package/dist/pair-ab022bc3.cjs +0 -69
  399. package/dist/pair-ab022bc3.cjs.map +0 -1
  400. package/dist/pair.cjs +0 -14
  401. package/dist/pair.cjs.map +0 -1
  402. package/dist/pair.d.ts.map +0 -1
  403. package/dist/pair.test.d.ts +0 -3
  404. package/dist/pair.test.d.ts.map +0 -1
  405. package/dist/patience.cjs +0 -236
  406. package/dist/patience.cjs.map +0 -1
  407. package/dist/performance.cjs +0 -14
  408. package/dist/performance.cjs.map +0 -1
  409. package/dist/performance.d.ts.map +0 -1
  410. package/dist/performance.node.cjs +0 -36
  411. package/dist/performance.node.cjs.map +0 -1
  412. package/dist/performance.node.d.ts.map +0 -1
  413. package/dist/pledge.cjs +0 -308
  414. package/dist/pledge.cjs.map +0 -1
  415. package/dist/pledge.d.ts.map +0 -1
  416. package/dist/pledge.test.d.ts +0 -6
  417. package/dist/pledge.test.d.ts.map +0 -1
  418. package/dist/prng/Mt19937.d.ts +0 -29
  419. package/dist/prng/Mt19937.d.ts.map +0 -1
  420. package/dist/prng/Xoroshiro128plus.d.ts +0 -27
  421. package/dist/prng/Xoroshiro128plus.d.ts.map +0 -1
  422. package/dist/prng/Xorshift32.d.ts +0 -21
  423. package/dist/prng/Xorshift32.d.ts.map +0 -1
  424. package/dist/prng-37d48618.cjs +0 -387
  425. package/dist/prng-37d48618.cjs.map +0 -1
  426. package/dist/prng.cjs +0 -44
  427. package/dist/prng.cjs.map +0 -1
  428. package/dist/prng.d.ts.map +0 -1
  429. package/dist/prng.test.d.ts +0 -6
  430. package/dist/prng.test.d.ts.map +0 -1
  431. package/dist/promise-cda7b9bb.cjs +0 -145
  432. package/dist/promise-cda7b9bb.cjs.map +0 -1
  433. package/dist/promise.cjs +0 -22
  434. package/dist/promise.cjs.map +0 -1
  435. package/dist/promise.d.ts.map +0 -1
  436. package/dist/promise.test.d.ts +0 -5
  437. package/dist/promise.test.d.ts.map +0 -1
  438. package/dist/queue.cjs +0 -97
  439. package/dist/queue.cjs.map +0 -1
  440. package/dist/queue.d.ts.map +0 -1
  441. package/dist/queue.test.d.ts +0 -3
  442. package/dist/queue.test.d.ts.map +0 -1
  443. package/dist/rabin-gf2-polynomial.cjs +0 -440
  444. package/dist/rabin-gf2-polynomial.cjs.map +0 -1
  445. package/dist/rabin-uncached.cjs +0 -90
  446. package/dist/rabin-uncached.cjs.map +0 -1
  447. package/dist/rabin.cjs +0 -128
  448. package/dist/rabin.cjs.map +0 -1
  449. package/dist/random.cjs +0 -48
  450. package/dist/random.cjs.map +0 -1
  451. package/dist/random.d.ts.map +0 -1
  452. package/dist/random.test.d.ts +0 -7
  453. package/dist/random.test.d.ts.map +0 -1
  454. package/dist/rollup.config.d.ts +0 -13
  455. package/dist/rollup.config.d.ts.map +0 -1
  456. package/dist/rsa-oaep.cjs +0 -112
  457. package/dist/rsa-oaep.cjs.map +0 -1
  458. package/dist/schema.cjs +0 -1223
  459. package/dist/schema.cjs.map +0 -1
  460. package/dist/schema.d.ts +0 -595
  461. package/dist/schema.d.ts.map +0 -1
  462. package/dist/schema.test.d.ts +0 -15
  463. package/dist/schema.test.d.ts.map +0 -1
  464. package/dist/set-5b47859e.cjs +0 -45
  465. package/dist/set-5b47859e.cjs.map +0 -1
  466. package/dist/set.cjs +0 -13
  467. package/dist/set.cjs.map +0 -1
  468. package/dist/set.d.ts.map +0 -1
  469. package/dist/set.test.d.ts +0 -3
  470. package/dist/set.test.d.ts.map +0 -1
  471. package/dist/sha256.cjs +0 -183
  472. package/dist/sha256.cjs.map +0 -1
  473. package/dist/sha256.node.cjs +0 -17
  474. package/dist/sha256.node.cjs.map +0 -1
  475. package/dist/sort-812cc211.cjs +0 -103
  476. package/dist/sort-812cc211.cjs.map +0 -1
  477. package/dist/sort.cjs +0 -13
  478. package/dist/sort.cjs.map +0 -1
  479. package/dist/sort.d.ts.map +0 -1
  480. package/dist/sort.test.d.ts +0 -7
  481. package/dist/sort.test.d.ts.map +0 -1
  482. package/dist/statistics-65f6114b.cjs +0 -32
  483. package/dist/statistics-65f6114b.cjs.map +0 -1
  484. package/dist/statistics.cjs +0 -12
  485. package/dist/statistics.cjs.map +0 -1
  486. package/dist/statistics.d.ts.map +0 -1
  487. package/dist/statistics.test.d.ts +0 -3
  488. package/dist/statistics.test.d.ts.map +0 -1
  489. package/dist/storage.cjs +0 -81
  490. package/dist/storage.cjs.map +0 -1
  491. package/dist/storage.d.ts.map +0 -1
  492. package/dist/storage.test.d.ts +0 -3
  493. package/dist/storage.test.d.ts.map +0 -1
  494. package/dist/string-fddc5f8b.cjs +0 -209
  495. package/dist/string-fddc5f8b.cjs.map +0 -1
  496. package/dist/string.cjs +0 -32
  497. package/dist/string.cjs.map +0 -1
  498. package/dist/string.d.ts +0 -28
  499. package/dist/string.d.ts.map +0 -1
  500. package/dist/string.test.d.ts +0 -9
  501. package/dist/string.test.d.ts.map +0 -1
  502. package/dist/symbol-9c439012.cjs +0 -29
  503. package/dist/symbol-9c439012.cjs.map +0 -1
  504. package/dist/symbol.cjs +0 -11
  505. package/dist/symbol.cjs.map +0 -1
  506. package/dist/symbol.d.ts.map +0 -1
  507. package/dist/symbol.test.d.ts +0 -3
  508. package/dist/symbol.test.d.ts.map +0 -1
  509. package/dist/testing.cjs +0 -709
  510. package/dist/testing.cjs.map +0 -1
  511. package/dist/testing.d.ts +0 -64
  512. package/dist/testing.d.ts.map +0 -1
  513. package/dist/testing.test.d.ts +0 -9
  514. package/dist/testing.test.d.ts.map +0 -1
  515. package/dist/time-d8438852.cjs +0 -63
  516. package/dist/time-d8438852.cjs.map +0 -1
  517. package/dist/time.cjs +0 -14
  518. package/dist/time.cjs.map +0 -1
  519. package/dist/time.d.ts.map +0 -1
  520. package/dist/time.test.d.ts +0 -4
  521. package/dist/time.test.d.ts.map +0 -1
  522. package/dist/trait/equality.d.ts +0 -6
  523. package/dist/trait/equality.d.ts.map +0 -1
  524. package/dist/trait/fingerprint.d.ts +0 -13
  525. package/dist/trait/fingerprint.d.ts.map +0 -1
  526. package/dist/trait/traits.d.ts +0 -3
  527. package/dist/trait/traits.d.ts.map +0 -1
  528. package/dist/trait/traits.test.d.ts +0 -5
  529. package/dist/trait/traits.test.d.ts.map +0 -1
  530. package/dist/traits.cjs +0 -31
  531. package/dist/traits.cjs.map +0 -1
  532. package/dist/tree-9f3c8837.cjs +0 -557
  533. package/dist/tree-9f3c8837.cjs.map +0 -1
  534. package/dist/tree.cjs +0 -10
  535. package/dist/tree.cjs.map +0 -1
  536. package/dist/tree.d.ts.map +0 -1
  537. package/dist/tree.test.d.ts +0 -2
  538. package/dist/tree.test.d.ts.map +0 -1
  539. package/dist/url.cjs +0 -46
  540. package/dist/url.cjs.map +0 -1
  541. package/dist/url.d.ts.map +0 -1
  542. package/dist/url.test.d.ts +0 -3
  543. package/dist/url.test.d.ts.map +0 -1
  544. package/dist/webcrypto.cjs +0 -12
  545. package/dist/webcrypto.cjs.map +0 -1
  546. package/dist/webcrypto.d.ts.map +0 -1
  547. package/dist/webcrypto.deno.cjs +0 -12
  548. package/dist/webcrypto.deno.cjs.map +0 -1
  549. package/dist/webcrypto.deno.d.ts.map +0 -1
  550. package/dist/webcrypto.node.cjs +0 -12
  551. package/dist/webcrypto.node.cjs.map +0 -1
  552. package/dist/webcrypto.node.d.ts.map +0 -1
  553. package/dist/webcrypto.react-native.cjs +0 -20
  554. package/dist/webcrypto.react-native.cjs.map +0 -1
  555. package/dist/webcrypto.react-native.d.ts.map +0 -1
  556. package/dist/websocket-b073d0fc.cjs +0 -157
  557. package/dist/websocket-b073d0fc.cjs.map +0 -1
  558. package/dist/websocket.cjs +0 -17
  559. package/dist/websocket.cjs.map +0 -1
  560. package/dist/websocket.d.ts.map +0 -1
  561. package/dom.d.ts +0 -60
  562. package/dom.d.ts.map +0 -1
  563. package/encoding.d.ts +0 -235
  564. package/encoding.d.ts.map +0 -1
  565. package/encoding.test.d.ts +0 -50
  566. package/encoding.test.d.ts.map +0 -1
  567. package/environment.d.ts.map +0 -1
  568. package/error.d.ts +0 -5
  569. package/error.d.ts.map +0 -1
  570. package/eventloop.d.ts +0 -16
  571. package/eventloop.d.ts.map +0 -1
  572. package/eventloop.test.d.ts +0 -10
  573. package/eventloop.test.d.ts.map +0 -1
  574. package/function.d.ts.map +0 -1
  575. package/function.test.d.ts +0 -5
  576. package/function.test.d.ts.map +0 -1
  577. package/hash/rabin-gf2-polynomial.d.ts +0 -45
  578. package/hash/rabin-gf2-polynomial.d.ts.map +0 -1
  579. package/hash/rabin-uncached.d.ts +0 -29
  580. package/hash/rabin-uncached.d.ts.map +0 -1
  581. package/hash/rabin.d.ts +0 -27
  582. package/hash/rabin.d.ts.map +0 -1
  583. package/hash/rabin.test.d.ts +0 -8
  584. package/hash/rabin.test.d.ts.map +0 -1
  585. package/hash/sha256.d.ts +0 -2
  586. package/hash/sha256.d.ts.map +0 -1
  587. package/hash/sha256.node.d.ts +0 -2
  588. package/hash/sha256.node.d.ts.map +0 -1
  589. package/hash/sha256.test.d.ts +0 -7
  590. package/hash/sha256.test.d.ts.map +0 -1
  591. package/index.d.ts +0 -35
  592. package/index.d.ts.map +0 -1
  593. package/index.js +0 -82
  594. package/indexeddb.d.ts +0 -34
  595. package/indexeddb.d.ts.map +0 -1
  596. package/indexeddb.test.d.ts +0 -3
  597. package/indexeddb.test.d.ts.map +0 -1
  598. package/indexeddbV2.d.ts +0 -35
  599. package/indexeddbV2.d.ts.map +0 -1
  600. package/indexeddbV2.test.d.ts +0 -3
  601. package/indexeddbV2.test.d.ts.map +0 -1
  602. package/isomorphic.js +0 -10
  603. package/iterator.d.ts +0 -5
  604. package/iterator.d.ts.map +0 -1
  605. package/json.d.ts +0 -23
  606. package/json.d.ts.map +0 -1
  607. package/list.d.ts +0 -55
  608. package/list.d.ts.map +0 -1
  609. package/list.test.d.ts +0 -6
  610. package/list.test.d.ts.map +0 -1
  611. package/logging.common.d.ts +0 -12
  612. package/logging.common.d.ts.map +0 -1
  613. package/logging.d.ts +0 -55
  614. package/logging.d.ts.map +0 -1
  615. package/logging.node.d.ts +0 -14
  616. package/logging.node.d.ts.map +0 -1
  617. package/logging.test.d.ts +0 -3
  618. package/logging.test.d.ts.map +0 -1
  619. package/map.d.ts +0 -8
  620. package/map.d.ts.map +0 -1
  621. package/map.test.d.ts +0 -4
  622. package/map.test.d.ts.map +0 -1
  623. package/math.d.ts +0 -23
  624. package/math.d.ts.map +0 -1
  625. package/math.test.d.ts +0 -3
  626. package/math.test.d.ts.map +0 -1
  627. package/metric.d.ts +0 -25
  628. package/metric.d.ts.map +0 -1
  629. package/metric.test.d.ts +0 -3
  630. package/metric.test.d.ts.map +0 -1
  631. package/mutex.d.ts +0 -3
  632. package/mutex.d.ts.map +0 -1
  633. package/mutex.test.d.ts +0 -3
  634. package/mutex.test.d.ts.map +0 -1
  635. package/number.d.ts.map +0 -1
  636. package/number.test.d.ts +0 -4
  637. package/number.test.d.ts.map +0 -1
  638. package/object.d.ts +0 -72
  639. package/object.d.ts.map +0 -1
  640. package/object.test.d.ts +0 -6
  641. package/object.test.d.ts.map +0 -1
  642. package/observable.d.ts +0 -86
  643. package/observable.d.ts.map +0 -1
  644. package/observable.test.d.ts +0 -3
  645. package/observable.test.d.ts.map +0 -1
  646. package/pair.d.ts +0 -22
  647. package/pair.d.ts.map +0 -1
  648. package/pair.test.d.ts +0 -3
  649. package/pair.test.d.ts.map +0 -1
  650. package/performance.d.ts +0 -4
  651. package/performance.d.ts.map +0 -1
  652. package/performance.node.d.ts +0 -14
  653. package/performance.node.d.ts.map +0 -1
  654. package/pledge.d.ts +0 -68
  655. package/pledge.d.ts.map +0 -1
  656. package/pledge.test.d.ts +0 -6
  657. package/pledge.test.d.ts.map +0 -1
  658. package/prng/Mt19937.d.ts +0 -29
  659. package/prng/Mt19937.d.ts.map +0 -1
  660. package/prng/Xoroshiro128plus.d.ts +0 -27
  661. package/prng/Xoroshiro128plus.d.ts.map +0 -1
  662. package/prng/Xorshift32.d.ts +0 -21
  663. package/prng/Xorshift32.d.ts.map +0 -1
  664. package/prng.d.ts +0 -44
  665. package/prng.d.ts.map +0 -1
  666. package/prng.test.d.ts +0 -6
  667. package/prng.test.d.ts.map +0 -1
  668. package/promise.d.ts +0 -22
  669. package/promise.d.ts.map +0 -1
  670. package/promise.test.d.ts +0 -5
  671. package/promise.test.d.ts.map +0 -1
  672. package/queue.d.ts +0 -34
  673. package/queue.d.ts.map +0 -1
  674. package/queue.test.d.ts +0 -3
  675. package/queue.test.d.ts.map +0 -1
  676. package/random.d.ts +0 -6
  677. package/random.d.ts.map +0 -1
  678. package/random.test.d.ts +0 -7
  679. package/random.test.d.ts.map +0 -1
  680. package/rollup.config.d.ts +0 -13
  681. package/rollup.config.d.ts.map +0 -1
  682. package/schema.d.ts.map +0 -1
  683. package/schema.test.d.ts +0 -15
  684. package/schema.test.d.ts.map +0 -1
  685. package/set.d.ts +0 -5
  686. package/set.d.ts.map +0 -1
  687. package/set.test.d.ts +0 -3
  688. package/set.test.d.ts.map +0 -1
  689. package/sort.d.ts +0 -4
  690. package/sort.d.ts.map +0 -1
  691. package/sort.test.d.ts +0 -7
  692. package/sort.test.d.ts.map +0 -1
  693. package/statistics.d.ts +0 -3
  694. package/statistics.d.ts.map +0 -1
  695. package/statistics.test.d.ts +0 -3
  696. package/statistics.test.d.ts.map +0 -1
  697. package/storage.d.ts +0 -15
  698. package/storage.d.ts.map +0 -1
  699. package/storage.test.d.ts +0 -3
  700. package/storage.test.d.ts.map +0 -1
  701. package/string.d.ts.map +0 -1
  702. package/string.test.d.ts +0 -9
  703. package/string.test.d.ts.map +0 -1
  704. package/symbol.d.ts +0 -11
  705. package/symbol.d.ts.map +0 -1
  706. package/symbol.test.d.ts +0 -3
  707. package/symbol.test.d.ts.map +0 -1
  708. package/test.d.ts +0 -2
  709. package/test.d.ts.map +0 -1
  710. package/test.html +0 -168
  711. package/test.js +0 -104
  712. package/testing.d.ts.map +0 -1
  713. package/testing.test.d.ts +0 -9
  714. package/testing.test.d.ts.map +0 -1
  715. package/time.d.ts +0 -9
  716. package/time.d.ts.map +0 -1
  717. package/time.test.d.ts +0 -4
  718. package/time.test.d.ts.map +0 -1
  719. package/trait/equality.d.ts +0 -6
  720. package/trait/equality.d.ts.map +0 -1
  721. package/trait/fingerprint.d.ts +0 -13
  722. package/trait/fingerprint.d.ts.map +0 -1
  723. package/trait/traits.d.ts +0 -3
  724. package/trait/traits.d.ts.map +0 -1
  725. package/trait/traits.test.d.ts +0 -5
  726. package/trait/traits.test.d.ts.map +0 -1
  727. package/tree.d.ts +0 -96
  728. package/tree.d.ts.map +0 -1
  729. package/tree.test.d.ts +0 -2
  730. package/tree.test.d.ts.map +0 -1
  731. package/url.d.ts +0 -7
  732. package/url.d.ts.map +0 -1
  733. package/url.test.d.ts +0 -3
  734. package/url.test.d.ts.map +0 -1
  735. package/webcrypto.d.ts +0 -3
  736. package/webcrypto.d.ts.map +0 -1
  737. package/webcrypto.deno.d.ts +0 -3
  738. package/webcrypto.deno.d.ts.map +0 -1
  739. package/webcrypto.node.d.ts +0 -3
  740. package/webcrypto.node.d.ts.map +0 -1
  741. package/webcrypto.react-native.d.ts +0 -3
  742. package/webcrypto.react-native.d.ts.map +0 -1
  743. package/websocket.d.ts +0 -38
  744. package/websocket.d.ts.map +0 -1
  745. /package/{bin → src/bin}/0ecdsa-generate-keypair.js +0 -0
  746. /package/{bin → src/bin}/0serve.js +0 -0
  747. /package/{bin → src/bin}/gendocs.js +0 -0
  748. /package/{bin → src/bin}/gentesthtml.js +0 -0
  749. /package/{broadcastchannel.js → src/broadcastchannel.js} +0 -0
  750. /package/{buffer.js → src/buffer.js} +0 -0
  751. /package/{cache.js → src/cache.js} +0 -0
  752. /package/{component.js → src/component.js} +0 -0
  753. /package/{conditions.js → src/conditions.js} +0 -0
  754. /package/{crypto → src/crypto}/aes-gcm.js +0 -0
  755. /package/{crypto → src/crypto}/common.js +0 -0
  756. /package/{crypto → src/crypto}/ecdsa.js +0 -0
  757. /package/{crypto → src/crypto}/jwt.js +0 -0
  758. /package/{crypto → src/crypto}/rsa-oaep.js +0 -0
  759. /package/{decoding.js → src/decoding.js} +0 -0
  760. /package/{delta → src/delta}/binding.js +0 -0
  761. /package/{delta → src/delta}/readme.md +0 -0
  762. /package/{diff → src/diff}/patience.js +0 -0
  763. /package/{diff.js → src/diff.js} +0 -0
  764. /package/{dom.js → src/dom.js} +0 -0
  765. /package/{encoding.js → src/encoding.js} +0 -0
  766. /package/{error.js → src/error.js} +0 -0
  767. /package/{eventloop.js → src/eventloop.js} +0 -0
  768. /package/{function.js → src/function.js} +0 -0
  769. /package/{hash → src/hash}/rabin-gf2-polynomial.js +0 -0
  770. /package/{hash → src/hash}/rabin-uncached.js +0 -0
  771. /package/{hash → src/hash}/sha256.js +0 -0
  772. /package/{hash → src/hash}/sha256.node.js +0 -0
  773. /package/{indexeddb.js → src/indexeddb.js} +0 -0
  774. /package/{indexeddbV2.js → src/indexeddbV2.js} +0 -0
  775. /package/{iterator.js → src/iterator.js} +0 -0
  776. /package/{json.js → src/json.js} +0 -0
  777. /package/{list.js → src/list.js} +0 -0
  778. /package/{logging.common.js → src/logging.common.js} +0 -0
  779. /package/{logging.js → src/logging.js} +0 -0
  780. /package/{logging.node.js → src/logging.node.js} +0 -0
  781. /package/{map.js → src/map.js} +0 -0
  782. /package/{math.js → src/math.js} +0 -0
  783. /package/{metric.js → src/metric.js} +0 -0
  784. /package/{mutex.js → src/mutex.js} +0 -0
  785. /package/{number.js → src/number.js} +0 -0
  786. /package/{object.js → src/object.js} +0 -0
  787. /package/{observable.js → src/observable.js} +0 -0
  788. /package/{pair.js → src/pair.js} +0 -0
  789. /package/{performance.js → src/performance.js} +0 -0
  790. /package/{performance.node.js → src/performance.node.js} +0 -0
  791. /package/{pledge.js → src/pledge.js} +0 -0
  792. /package/{prng → src/prng}/Mt19937.js +0 -0
  793. /package/{prng → src/prng}/Xoroshiro128plus.js +0 -0
  794. /package/{prng → src/prng}/Xorshift32.js +0 -0
  795. /package/{prng.js → src/prng.js} +0 -0
  796. /package/{promise.js → src/promise.js} +0 -0
  797. /package/{queue.js → src/queue.js} +0 -0
  798. /package/{random.js → src/random.js} +0 -0
  799. /package/{set.js → src/set.js} +0 -0
  800. /package/{sort.js → src/sort.js} +0 -0
  801. /package/{statistics.js → src/statistics.js} +0 -0
  802. /package/{storage.js → src/storage.js} +0 -0
  803. /package/{symbol.js → src/symbol.js} +0 -0
  804. /package/{time.js → src/time.js} +0 -0
  805. /package/{trait → src/trait}/equality.js +0 -0
  806. /package/{trait → src/trait}/fingerprint.js +0 -0
  807. /package/{trait → src/trait}/traits.js +0 -0
  808. /package/{tree.js → src/tree.js} +0 -0
  809. /package/{url.js → src/url.js} +0 -0
  810. /package/{webcrypto.deno.js → src/webcrypto.deno.js} +0 -0
  811. /package/{webcrypto.js → src/webcrypto.js} +0 -0
  812. /package/{webcrypto.node.js → src/webcrypto.node.js} +0 -0
  813. /package/{webcrypto.react-native.js → src/webcrypto.react-native.js} +0 -0
  814. /package/{websocket.js → src/websocket.js} +0 -0
  815. /package/{broadcastchannel.d.ts → types/broadcastchannel.d.ts} +0 -0
  816. /package/{buffer.d.ts → types/buffer.d.ts} +0 -0
  817. /package/{cache.d.ts → types/cache.d.ts} +0 -0
  818. /package/{component.d.ts → types/component.d.ts} +0 -0
  819. /package/{conditions.d.ts → types/conditions.d.ts} +0 -0
  820. /package/{decoding.d.ts → types/decoding.d.ts} +0 -0
  821. /package/{diff.d.ts → types/diff.d.ts} +0 -0
  822. /package/{dist → types}/dom.d.ts +0 -0
  823. /package/{dist → types}/encoding.d.ts +0 -0
  824. /package/{dist → types}/error.d.ts +0 -0
  825. /package/{dist → types}/eventloop.d.ts +0 -0
  826. /package/{dist → types}/indexeddb.d.ts +0 -0
  827. /package/{dist → types}/indexeddbV2.d.ts +0 -0
  828. /package/{dist → types}/iterator.d.ts +0 -0
  829. /package/{dist → types}/json.d.ts +0 -0
  830. /package/{dist → types}/list.d.ts +0 -0
  831. /package/{dist → types}/logging.common.d.ts +0 -0
  832. /package/{dist → types}/logging.d.ts +0 -0
  833. /package/{dist → types}/logging.node.d.ts +0 -0
  834. /package/{dist → types}/map.d.ts +0 -0
  835. /package/{dist → types}/math.d.ts +0 -0
  836. /package/{dist → types}/metric.d.ts +0 -0
  837. /package/{dist → types}/mutex.d.ts +0 -0
  838. /package/{dist → types}/object.d.ts +0 -0
  839. /package/{dist → types}/observable.d.ts +0 -0
  840. /package/{dist → types}/pair.d.ts +0 -0
  841. /package/{dist → types}/performance.d.ts +0 -0
  842. /package/{dist → types}/performance.node.d.ts +0 -0
  843. /package/{dist → types}/pledge.d.ts +0 -0
  844. /package/{dist → types}/prng.d.ts +0 -0
  845. /package/{dist → types}/promise.d.ts +0 -0
  846. /package/{dist → types}/queue.d.ts +0 -0
  847. /package/{dist → types}/random.d.ts +0 -0
  848. /package/{dist → types}/set.d.ts +0 -0
  849. /package/{dist → types}/sort.d.ts +0 -0
  850. /package/{dist → types}/statistics.d.ts +0 -0
  851. /package/{dist → types}/storage.d.ts +0 -0
  852. /package/{dist → types}/symbol.d.ts +0 -0
  853. /package/{dist → types}/time.d.ts +0 -0
  854. /package/{dist → types}/tree.d.ts +0 -0
  855. /package/{dist → types}/url.d.ts +0 -0
  856. /package/{dist → types}/webcrypto.d.ts +0 -0
  857. /package/{dist → types}/webcrypto.deno.d.ts +0 -0
  858. /package/{dist → types}/webcrypto.node.d.ts +0 -0
  859. /package/{dist → types}/webcrypto.react-native.d.ts +0 -0
  860. /package/{dist → types}/websocket.d.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.cjs","sources":["../schema.js"],"sourcesContent":["/**\n * @experimental WIP\n *\n * Simple & efficient schemas for your data.\n */\n\nimport * as obj from './object.js'\nimport * as arr from './array.js'\nimport * as error from './error.js'\nimport * as env from './environment.js'\nimport * as equalityTraits from './trait/equality.js'\nimport * as fun from './function.js'\nimport * as string from './string.js'\nimport * as prng from './prng.js'\nimport * as number from './number.js'\n\n/**\n * @typedef {string|number|bigint|boolean|null|undefined|symbol} Primitive\n */\n\n/**\n * @typedef {{ [k:string|number|symbol]: any }} AnyObject\n */\n\n/**\n * @template T\n * @typedef {T extends Schema<infer X> ? X : T} Unwrap\n */\n\n/**\n * @template T\n * @typedef {T extends Schema<infer X> ? X : T} TypeOf\n */\n\n/**\n * @template {readonly unknown[]} T\n * @typedef {T extends readonly [Schema<infer First>, ...infer Rest] ? [First, ...UnwrapArray<Rest>] : [] } UnwrapArray\n */\n\n/**\n * @template T\n * @typedef {T extends Schema<infer S> ? Schema<S> : never} CastToSchema\n */\n\n/**\n * @template {unknown[]} Arr\n * @typedef {Arr extends [...unknown[], infer L] ? L : never} TupleLast\n */\n\n/**\n * @template {unknown[]} Arr\n * @typedef {Arr extends [...infer Fs, unknown] ? Fs : never} TuplePop\n */\n\n/**\n * @template {readonly unknown[]} T\n * @typedef {T extends []\n * ? {}\n * : T extends [infer First]\n * ? First\n * : T extends [infer First, ...infer Rest]\n * ? First & Intersect<Rest>\n * : never\n * } Intersect\n */\n\nconst schemaSymbol = Symbol('0schema')\n\nexport class ValidationError {\n constructor () {\n /**\n * Reverse errors\n * @type {Array<{ path: string?, expected: string, has: string, message: string? }>}\n */\n this._rerrs = []\n }\n\n /**\n * @param {string?} path\n * @param {string} expected\n * @param {string} has\n * @param {string?} message\n */\n extend (path, expected, has, message = null) {\n this._rerrs.push({ path, expected, has, message })\n }\n\n toString () {\n const s = []\n for (let i = this._rerrs.length - 1; i > 0; i--) {\n const r = this._rerrs[i]\n /* c8 ignore next */\n s.push(string.repeat(' ', (this._rerrs.length - i) * 2) + `${r.path != null ? `[${r.path}] ` : ''}${r.has} doesn't match ${r.expected}. ${r.message}`)\n }\n return s.join('\\n')\n }\n}\n\n/**\n * @param {any} a\n * @param {any} b\n * @return {boolean}\n */\nconst shapeExtends = (a, b) => {\n if (a === b) return true\n if (a == null || b == null || a.constructor !== b.constructor) return false\n if (a[equalityTraits.EqualityTraitSymbol]) return equalityTraits.equals(a, b) // last resort: check equality (do this before array and obj check which don't implement the equality trait)\n if (arr.isArray(a)) {\n return arr.every(a, aitem =>\n arr.some(b, bitem => shapeExtends(aitem, bitem))\n )\n } else if (obj.isObject(a)) {\n return obj.every(a, (aitem, akey) =>\n shapeExtends(aitem, b[akey])\n )\n }\n /* c8 ignore next */\n return false\n}\n\n/**\n * @template T\n * @implements {equalityTraits.EqualityTrait}\n */\nexport class Schema {\n // this.shape must not be defined on Schema. Otherwise typecheck on metatypes (e.g. $$object) won't work as expected anymore\n /**\n * If true, the more things are added to the shape the more objects this schema will accept (e.g.\n * union). By default, the more objects are added, the the fewer objects this schema will accept.\n * @protected\n */\n static _dilutes = false\n\n /**\n * @param {Schema<any>} other\n */\n extends (other) {\n let [a, b] = [/** @type {any} */(this).shape, /** @type {any} */ (other).shape]\n if (/** @type {typeof Schema<any>} */ (this.constructor)._dilutes) [b, a] = [a, b]\n return shapeExtends(a, b)\n }\n\n /**\n * Overwrite this when necessary. By default, we only check the `shape` property which every shape\n * should have.\n * @param {Schema<any>} other\n */\n equals (other) {\n // @ts-ignore\n return this.constructor === other.constructor && fun.equalityDeep(this.shape, other.shape)\n }\n\n [schemaSymbol] () { return true }\n\n /**\n * @param {object} other\n */\n [equalityTraits.EqualityTraitSymbol] (other) {\n return this.equals(/** @type {any} */ (other))\n }\n\n /**\n * Use `schema.validate(obj)` with a typed parameter that is already of typed to be an instance of\n * Schema. Validate will check the structure of the parameter and return true iff the instance\n * really is an instance of Schema.\n *\n * @param {T} o\n * @return {boolean}\n */\n validate (o) {\n return this.check(o)\n }\n\n /* c8 ignore start */\n /**\n * Similar to validate, but this method accepts untyped parameters.\n *\n * @param {any} _o\n * @param {ValidationError} [_err]\n * @return {_o is T}\n */\n check (_o, _err) {\n error.methodUnimplemented()\n }\n /* c8 ignore stop */\n\n /**\n * @type {Schema<T?>}\n */\n get nullable () {\n // @ts-ignore\n return $union(this, $null)\n }\n\n /**\n * @type {$Optional<Schema<T>>}\n */\n get optional () {\n return new $Optional(/** @type {Schema<T>} */ (this))\n }\n\n /**\n * Cast a variable to a specific type. Returns the casted value, or throws an exception otherwise.\n * Use this if you know that the type is of a specific type and you just want to convince the type\n * system.\n *\n * **Do not rely on these error messages!**\n * Performs an assertion check only if not in a production environment.\n *\n * @template OO\n * @param {OO} o\n * @return {Extract<OO, T> extends never ? T : (OO extends Array<never> ? T : Extract<OO,T>)}\n */\n cast (o) {\n assert(o, this)\n return /** @type {any} */ (o)\n }\n\n /**\n * EXPECTO PATRONUM!! 🪄\n * This function protects against type errors. Though it may not work in the real world.\n *\n * \"After all this time?\"\n * \"Always.\" - Snape, talking about type safety\n *\n * Ensures that a variable is a a specific type. Returns the value, or throws an exception if the assertion check failed.\n * Use this if you know that the type is of a specific type and you just want to convince the type\n * system.\n *\n * Can be useful when defining lambdas: `s.lambda(s.$number, s.$void).expect((n) => n + 1)`\n *\n * **Do not rely on these error messages!**\n * Performs an assertion check if not in a production environment.\n *\n * @param {T} o\n * @return {o extends T ? T : never}\n */\n expect (o) {\n assert(o, this)\n return o\n }\n}\n\n/**\n * @template {(new (...args:any[]) => any) | ((...args:any[]) => any)} Constr\n * @typedef {Constr extends ((...args:any[]) => infer T) ? T : (Constr extends (new (...args:any[]) => any) ? InstanceType<Constr> : never)} Instance\n */\n\n/**\n * @template {(new (...args:any[]) => any) | ((...args:any[]) => any)} C\n * @extends {Schema<Instance<C>>}\n */\nexport class $ConstructedBy extends Schema {\n /**\n * @param {C} c\n * @param {((o:Instance<C>)=>boolean)|null} check\n */\n constructor (c, check) {\n super()\n this.shape = c\n this._c = check\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is C extends ((...args:any[]) => infer T) ? T : (C extends (new (...args:any[]) => any) ? InstanceType<C> : never)} o\n */\n check (o, err = undefined) {\n const c = o?.constructor === this.shape && (this._c == null || this._c(o))\n /* c8 ignore next */\n !c && err?.extend(null, this.shape.name, o?.constructor.name, o?.constructor !== this.shape ? 'Constructor match failed' : 'Check failed')\n return c\n }\n}\n\n/**\n * @template {(new (...args:any[]) => any) | ((...args:any[]) => any)} C\n * @param {C} c\n * @param {((o:Instance<C>) => boolean)|null} check\n * @return {CastToSchema<$ConstructedBy<C>>}\n */\nexport const $constructedBy = (c, check = null) => new $ConstructedBy(c, check)\nexport const $$constructedBy = $constructedBy($ConstructedBy)\n\n/**\n * Check custom properties on any object. You may want to overwrite the generated Schema<any>.\n *\n * @extends {Schema<any>}\n */\nexport class $Custom extends Schema {\n /**\n * @param {(o:any) => boolean} check\n */\n constructor (check) {\n super()\n /**\n * @type {(o:any) => boolean}\n */\n this.shape = check\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} err\n * @return {o is any}\n */\n check (o, err) {\n const c = this.shape(o)\n /* c8 ignore next */\n !c && err?.extend(null, 'custom prop', o?.constructor.name, 'failed to check custom prop')\n return c\n }\n}\n\n/**\n * @param {(o:any) => boolean} check\n * @return {Schema<any>}\n */\nexport const $custom = (check) => new $Custom(check)\nexport const $$custom = $constructedBy($Custom)\n\n/**\n * @template {Primitive} T\n * @extends {Schema<T>}\n */\nexport class $Literal extends Schema {\n /**\n * @param {Array<T>} literals\n */\n constructor (literals) {\n super()\n this.shape = literals\n }\n\n /**\n *\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is T}\n */\n check (o, err) {\n const c = this.shape.some(a => a === o)\n /* c8 ignore next */\n !c && err?.extend(null, this.shape.join(' | '), o.toString())\n return c\n }\n}\n\n/**\n * @template {Primitive[]} T\n * @param {T} literals\n * @return {CastToSchema<$Literal<T[number]>>}\n */\nexport const $literal = (...literals) => new $Literal(literals)\nexport const $$literal = $constructedBy($Literal)\n\n/**\n * @template {Array<string|Schema<string|number>>} Ts\n * @typedef {Ts extends [] ? `` : (Ts extends [infer T] ? (Unwrap<T> extends (string|number) ? Unwrap<T> : never) : (Ts extends [infer T1, ...infer Rest] ? `${Unwrap<T1> extends (string|number) ? Unwrap<T1> : never}${Rest extends Array<string|Schema<string|number>> ? CastStringTemplateArgsToTemplate<Rest> : never}` : never))} CastStringTemplateArgsToTemplate\n */\n\n/**\n * @param {string} str\n * @return {string}\n */\nconst _regexEscape = /** @type {any} */ (RegExp).escape || /** @type {(str:string) => string} */ (str =>\n str.replace(/[().|&,$^[\\]]/g, s => '\\\\' + s)\n)\n\n/**\n * @param {string|Schema<any>} s\n * @return {string[]}\n */\nconst _schemaStringTemplateToRegex = s => {\n if ($string.check(s)) {\n return [_regexEscape(s)]\n }\n if ($$literal.check(s)) {\n return /** @type {Array<string|number>} */ (s.shape).map(v => v + '')\n }\n if ($$number.check(s)) {\n return ['[+-]?\\\\d+.?\\\\d*']\n }\n if ($$string.check(s)) {\n return ['.*']\n }\n if ($$union.check(s)) {\n return s.shape.map(_schemaStringTemplateToRegex).flat(1)\n }\n /* c8 ignore next 2 */\n // unexpected schema structure (only supports unions and string in literal types)\n error.unexpectedCase()\n}\n\n/**\n * @template {Array<string|Schema<string|number>>} T\n * @extends {Schema<CastStringTemplateArgsToTemplate<T>>}\n */\nexport class $StringTemplate extends Schema {\n /**\n * @param {T} shape\n */\n constructor (shape) {\n super()\n this.shape = shape\n this._r = new RegExp('^' + shape.map(_schemaStringTemplateToRegex).map(opts => `(${opts.join('|')})`).join('') + '$')\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is CastStringTemplateArgsToTemplate<T>}\n */\n check (o, err) {\n const c = this._r.exec(o) != null\n /* c8 ignore next */\n !c && err?.extend(null, this._r.toString(), o.toString(), 'String doesn\\'t match string template.')\n return c\n }\n}\n\n/**\n * @template {Array<string|Schema<string|number>>} T\n * @param {T} literals\n * @return {CastToSchema<$StringTemplate<T>>}\n */\nexport const $stringTemplate = (...literals) => new $StringTemplate(literals)\nexport const $$stringTemplate = $constructedBy($StringTemplate)\n\nconst isOptionalSymbol = Symbol('optional')\n/**\n * @template {Schema<any>} S\n * @extends Schema<Unwrap<S>|undefined>\n */\nclass $Optional extends Schema {\n /**\n * @param {S} shape\n */\n constructor (shape) {\n super()\n this.shape = shape\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is (Unwrap<S>|undefined)}\n */\n check (o, err) {\n const c = o === undefined || this.shape.check(o)\n /* c8 ignore next */\n !c && err?.extend(null, 'undefined (optional)', '()')\n return c\n }\n\n get [isOptionalSymbol] () { return true }\n}\nexport const $$optional = $constructedBy($Optional)\n\n/**\n * @extends Schema<never>\n */\nclass $Never extends Schema {\n /**\n * @param {any} _o\n * @param {ValidationError} [err]\n * @return {_o is never}\n */\n check (_o, err) {\n /* c8 ignore next */\n err?.extend(null, 'never', typeof _o)\n return false\n }\n}\n\n/**\n * @type {Schema<never>}\n */\nexport const $never = new $Never()\nexport const $$never = $constructedBy($Never)\n\n/**\n * @template {{ [key: string|symbol|number]: Schema<any> }} S\n * @typedef {{ [Key in keyof S as S[Key] extends $Optional<Schema<any>> ? Key : never]?: S[Key] extends $Optional<Schema<infer Type>> ? Type : never } & { [Key in keyof S as S[Key] extends $Optional<Schema<any>> ? never : Key]: S[Key] extends Schema<infer Type> ? Type : never }} $ObjectToType\n */\n\n/**\n * @template {{[key:string|symbol|number]: Schema<any>}} S\n * @extends {Schema<$ObjectToType<S>>}\n */\nexport class $Object extends Schema {\n /**\n * @param {S} shape\n * @param {boolean} partial\n */\n constructor (shape, partial = false) {\n super()\n /**\n * @type {S}\n */\n this.shape = shape\n this._isPartial = partial\n }\n\n static _dilutes = true\n\n /**\n * @type {Schema<Partial<$ObjectToType<S>>>}\n */\n get partial () {\n return new $Object(this.shape, true)\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} err\n * @return {o is $ObjectToType<S>}\n */\n check (o, err) {\n if (o == null) {\n /* c8 ignore next */\n err?.extend(null, 'object', 'null')\n return false\n }\n return obj.every(this.shape, (vv, vk) => {\n const c = (this._isPartial && !obj.hasProperty(o, vk)) || vv.check(o[vk], err)\n !c && err?.extend(vk.toString(), vv.toString(), typeof o[vk], 'Object property does not match')\n return c\n })\n }\n}\n\n/**\n * @template S\n * @typedef {Schema<{ [Key in keyof S as S[Key] extends $Optional<Schema<any>> ? Key : never]?: S[Key] extends $Optional<Schema<infer Type>> ? Type : never } & { [Key in keyof S as S[Key] extends $Optional<Schema<any>> ? never : Key]: S[Key] extends Schema<infer Type> ? Type : never }>} _ObjectDefToSchema\n */\n\n// I used an explicit type annotation instead of $ObjectToType, so that the user doesn't see the\n// weird type definitions when inspecting type definions.\n/**\n * @template {{ [key:string|symbol|number]: Schema<any> }} S\n * @param {S} def\n * @return {_ObjectDefToSchema<S> extends Schema<infer S> ? Schema<{ [K in keyof S]: S[K] }> : never}\n */\nexport const $object = def => /** @type {any} */ (new $Object(def))\nexport const $$object = $constructedBy($Object)\n/**\n * @type {Schema<{[key:string]: any}>}\n */\nexport const $objectAny = $custom(o => o != null && (o.constructor === Object || o.constructor == null))\n\n/**\n * @template {Schema<string|number|symbol>} Keys\n * @template {Schema<any>} Values\n * @extends {Schema<{ [key in Unwrap<Keys>]: Unwrap<Values> }>}\n */\nexport class $Record extends Schema {\n /**\n * @param {Keys} keys\n * @param {Values} values\n */\n constructor (keys, values) {\n super()\n this.shape = {\n keys, values\n }\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} err\n * @return {o is { [key in Unwrap<Keys>]: Unwrap<Values> }}\n */\n check (o, err) {\n return o != null && obj.every(o, (vv, vk) => {\n const ck = this.shape.keys.check(vk, err)\n /* c8 ignore next */\n !ck && err?.extend(vk + '', 'Record', typeof o, ck ? 'Key doesn\\'t match schema' : 'Value doesn\\'t match value')\n return ck && this.shape.values.check(vv, err)\n })\n }\n}\n\n/**\n * @template {Schema<string|number|symbol>} Keys\n * @template {Schema<any>} Values\n * @param {Keys} keys\n * @param {Values} values\n * @return {CastToSchema<$Record<Keys,Values>>}\n */\nexport const $record = (keys, values) => new $Record(keys, values)\nexport const $$record = $constructedBy($Record)\n\n/**\n * @template {Schema<any>[]} S\n * @extends {Schema<{ [Key in keyof S]: S[Key] extends Schema<infer Type> ? Type : never }>}\n */\nexport class $Tuple extends Schema {\n /**\n * @param {S} shape\n */\n constructor (shape) {\n super()\n this.shape = shape\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} err\n * @return {o is { [K in keyof S]: S[K] extends Schema<infer Type> ? Type : never }}\n */\n check (o, err) {\n return o != null && obj.every(this.shape, (vv, vk) => {\n const c = /** @type {Schema<any>} */ (vv).check(o[vk], err)\n /* c8 ignore next */\n !c && err?.extend(vk.toString(), 'Tuple', typeof vv)\n return c\n })\n }\n}\n\n/**\n * @template {Array<Schema<any>>} T\n * @param {T} def\n * @return {CastToSchema<$Tuple<T>>}\n */\nexport const $tuple = (...def) => new $Tuple(def)\nexport const $$tuple = $constructedBy($Tuple)\n\n/**\n * @template {Schema<any>} S\n * @extends {Schema<Array<S extends Schema<infer T> ? T : never>>}\n */\nexport class $Array extends Schema {\n /**\n * @param {Array<S>} v\n */\n constructor (v) {\n super()\n /**\n * @type {Schema<S extends Schema<infer T> ? T : never>}\n */\n this.shape = v.length === 1 ? v[0] : new $Union(v)\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is Array<S extends Schema<infer T> ? T : never>} o\n */\n check (o, err) {\n const c = arr.isArray(o) && arr.every(o, oi => this.shape.check(oi))\n /* c8 ignore next */\n !c && err?.extend(null, 'Array', '')\n return c\n }\n}\n\n/**\n * @template {Array<Schema<any>>} T\n * @param {T} def\n * @return {Schema<Array<T extends Array<Schema<infer S>> ? S : never>>}\n */\nexport const $array = (...def) => new $Array(def)\nexport const $$array = $constructedBy($Array)\n/**\n * @type {Schema<Array<any>>}\n */\nexport const $arrayAny = $custom(o => arr.isArray(o))\n\n/**\n * @template T\n * @extends {Schema<T>}\n */\nexport class $InstanceOf extends Schema {\n /**\n * @param {new (...args:any) => T} constructor\n * @param {((o:T) => boolean)|null} check\n */\n constructor (constructor, check) {\n super()\n this.shape = constructor\n this._c = check\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} err\n * @return {o is T}\n */\n check (o, err) {\n const c = o instanceof this.shape && (this._c == null || this._c(o))\n /* c8 ignore next */\n !c && err?.extend(null, this.shape.name, o?.constructor.name)\n return c\n }\n}\n\n/**\n * @template T\n * @param {new (...args:any) => T} c\n * @param {((o:T) => boolean)|null} check\n * @return {Schema<T>}\n */\nexport const $instanceOf = (c, check = null) => new $InstanceOf(c, check)\nexport const $$instanceOf = $constructedBy($InstanceOf)\n\nexport const $$schema = $instanceOf(Schema)\n\n/**\n * @template {Schema<any>[]} Args\n * @typedef {(...args:UnwrapArray<TuplePop<Args>>)=>Unwrap<TupleLast<Args>>} _LArgsToLambdaDef\n */\n\n/**\n * @template {Array<Schema<any>>} Args\n * @extends {Schema<_LArgsToLambdaDef<Args>>}\n */\nexport class $Lambda extends Schema {\n /**\n * @param {Args} args\n */\n constructor (args) {\n super()\n this.len = args.length - 1\n this.args = $tuple(...args.slice(-1))\n this.res = args[this.len]\n }\n\n /**\n * @param {any} f\n * @param {ValidationError} err\n * @return {f is _LArgsToLambdaDef<Args>}\n */\n check (f, err) {\n const c = f.constructor === Function && f.length <= this.len\n /* c8 ignore next */\n !c && err?.extend(null, 'function', typeof f)\n return c\n }\n}\n\n/**\n * @template {Schema<any>[]} Args\n * @param {Args} args\n * @return {Schema<(...args:UnwrapArray<TuplePop<Args>>)=>Unwrap<TupleLast<Args>>>}\n */\nexport const $lambda = (...args) => new $Lambda(args.length > 0 ? args : [$void])\nexport const $$lambda = $constructedBy($Lambda)\n\n/**\n * @type {Schema<Function>}\n */\nexport const $function = $custom(o => typeof o === 'function')\n\n/**\n * @template {Array<Schema<any>>} T\n * @extends {Schema<Intersect<UnwrapArray<T>>>}\n */\nexport class $Intersection extends Schema {\n /**\n * @param {T} v\n */\n constructor (v) {\n super()\n /**\n * @type {T}\n */\n this.shape = v\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is Intersect<UnwrapArray<T>>}\n */\n check (o, err) {\n // @ts-ignore\n const c = arr.every(this.shape, check => check.check(o, err))\n /* c8 ignore next */\n !c && err?.extend(null, 'Intersectinon', typeof o)\n return c\n }\n}\n\n/**\n * @template {Schema<any>[]} T\n * @param {T} def\n * @return {CastToSchema<$Intersection<T>>}\n */\nexport const $intersect = (...def) => new $Intersection(def)\nexport const $$intersect = $constructedBy($Intersection, o => o.shape.length > 0) // Intersection with length=0 is considered \"any\"\n\n/**\n * @template S\n * @extends {Schema<S>}\n */\nexport class $Union extends Schema {\n static _dilutes = true\n\n /**\n * @param {Array<Schema<S>>} v\n */\n constructor (v) {\n super()\n this.shape = v\n }\n\n /**\n * @param {any} o\n * @param {ValidationError} [err]\n * @return {o is S}\n */\n check (o, err) {\n const c = arr.some(this.shape, (vv) => vv.check(o, err))\n err?.extend(null, 'Union', typeof o)\n return c\n }\n}\n\n/**\n * @template {Array<any>} T\n * @param {T} schemas\n * @return {CastToSchema<$Union<Unwrap<ReadSchema<T>>>>}\n */\nexport const $union = (...schemas) => schemas.findIndex($s => $$union.check($s)) >= 0\n ? $union(...schemas.map($s => $($s)).map($s => $$union.check($s) ? $s.shape : [$s]).flat(1))\n : (schemas.length === 1\n ? schemas[0]\n : new $Union(schemas))\nexport const $$union = /** @type {Schema<$Union<any>>} */ ($constructedBy($Union))\n\nconst _t = () => true\n/**\n * @type {Schema<any>}\n */\nexport const $any = $custom(_t)\nexport const $$any = /** @type {Schema<Schema<any>>} */ ($constructedBy($Custom, o => o.shape === _t))\n\n/**\n * @type {Schema<bigint>}\n */\nexport const $bigint = $custom(o => typeof o === 'bigint')\nexport const $$bigint = /** @type {Schema<Schema<BigInt>>} */ ($custom(o => o === $bigint))\n\n/**\n * @type {Schema<symbol>}\n */\nexport const $symbol = $custom(o => typeof o === 'symbol')\nexport const $$symbol = /** @type {Schema<Schema<Symbol>>} */ ($custom(o => o === $symbol))\n\n/**\n * @type {Schema<number>}\n */\nexport const $number = $custom(o => typeof o === 'number')\nexport const $$number = /** @type {Schema<Schema<number>>} */ ($custom(o => o === $number))\n\n/**\n * @type {Schema<string>}\n */\nexport const $string = $custom(o => typeof o === 'string')\nexport const $$string = /** @type {Schema<Schema<string>>} */ ($custom(o => o === $string))\n\n/**\n * @type {Schema<boolean>}\n */\nexport const $boolean = $custom(o => typeof o === 'boolean')\nexport const $$boolean = /** @type {Schema<Schema<Boolean>>} */ ($custom(o => o === $boolean))\n\n/**\n * @type {Schema<undefined>}\n */\nexport const $undefined = $literal(undefined)\nexport const $$undefined = /** @type {Schema<Schema<undefined>>} */ ($constructedBy($Literal, o => o.shape.length === 1 && o.shape[0] === undefined))\n\n/**\n * @type {Schema<void>}\n */\nexport const $void = $literal(undefined)\nexport const $$void = /** @type {Schema<Schema<void>>} */ ($$undefined)\n\nexport const $null = $literal(null)\nexport const $$null = /** @type {Schema<Schema<null>>} */ ($constructedBy($Literal, o => o.shape.length === 1 && o.shape[0] === null))\n\nexport const $uint8Array = $constructedBy(Uint8Array)\nexport const $$uint8Array = /** @type {Schema<Schema<Uint8Array>>} */ ($constructedBy($ConstructedBy, o => o.shape === Uint8Array))\n\n/**\n * @type {Schema<Primitive>}\n */\nexport const $primitive = $union($number, $string, $null, $undefined, $bigint, $boolean, $symbol)\n\n/**\n * @typedef {JSON[]} JSONArray\n */\n/**\n * @typedef {Primitive|JSONArray|{ [key:string]:JSON }} JSON\n */\n/**\n * @type {Schema<null|number|string|boolean|JSON[]|{[key:string]:JSON}>}\n */\nexport const $json = (() => {\n const $jsonArr = /** @type {$Array<$any>} */ ($array($any))\n const $jsonRecord = /** @type {$Record<$string,$any>} */ ($record($string, $any))\n const $json = $union($number, $string, $null, $boolean, $jsonArr, $jsonRecord)\n $jsonArr.shape = $json\n $jsonRecord.shape.values = $json\n return $json\n})()\n\n/**\n * @template {any} IN\n * @typedef {IN extends Schema<any> ? IN\n * : (IN extends string|number|boolean|null ? Schema<IN>\n * : (IN extends new (...args:any[])=>any ? Schema<InstanceType<IN>>\n * : (IN extends any[] ? Schema<{ [K in keyof IN]: Unwrap<ReadSchema<IN[K]>> }[number]>\n * : (IN extends object ? (_ObjectDefToSchema<{[K in keyof IN]:ReadSchema<IN[K]>}> extends Schema<infer S> ? Schema<{ [K in keyof S]: S[K] }> : never)\n * : never)\n * )\n * )\n * )\n * } ReadSchemaOld\n */\n\n/**\n * @template {any} IN\n * @typedef {[Extract<IN,Schema<any>>,Extract<IN,string|number|boolean|null>,Extract<IN,new (...args:any[])=>any>,Extract<IN,any[]>,Extract<Exclude<IN,Schema<any>|string|number|boolean|null|(new (...args:any[])=>any)|any[]>,object>] extends [infer Schemas, infer Primitives, infer Constructors, infer Arrs, infer Obj]\n * ? Schema<\n * (Schemas extends Schema<infer S> ? S : never)\n * | Primitives\n * | (Constructors extends new (...args:any[])=>any ? InstanceType<Constructors> : never)\n * | (Arrs extends any[] ? { [K in keyof Arrs]: Unwrap<ReadSchema<Arrs[K]>> }[number] : never)\n * | (Obj extends object ? Unwrap<(_ObjectDefToSchema<{[K in keyof Obj]:ReadSchema<Obj[K]>}> extends Schema<infer S> ? Schema<{ [K in keyof S]: S[K] }> : never)> : never)>\n * : never\n * } ReadSchema\n */\n\n/**\n * @typedef {ReadSchema<{x:42}|{y:99}|Schema<string>|[1,2,{}]>} Q\n */\n\n/**\n * @template IN\n * @param {IN} o\n * @return {ReadSchema<IN>}\n */\nexport const $ = o => {\n if ($$schema.check(o)) {\n return /** @type {any} */ (o)\n } else if ($objectAny.check(o)) {\n /**\n * @type {any}\n */\n const o2 = {}\n for (const k in o) {\n o2[k] = $(o[k])\n }\n return /** @type {any} */ ($object(o2))\n } else if ($arrayAny.check(o)) {\n return /** @type {any} */ ($union(...o.map($)))\n } else if ($primitive.check(o)) {\n return /** @type {any} */ ($literal(o))\n } else if ($function.check(o)) {\n return /** @type {any} */ ($constructedBy(/** @type {any} */ (o)))\n }\n /* c8 ignore next */\n error.unexpectedCase()\n}\n\n/* c8 ignore start */\n/**\n * Assert that a variable is of this specific type.\n * The assertion check is only performed in non-production environments.\n *\n * @type {<T>(o:any,schema:Schema<T>) => asserts o is T}\n */\nexport const assert = env.production\n ? () => {}\n : (o, schema) => {\n const err = new ValidationError()\n if (!schema.check(o, err)) {\n throw error.create(`Expected value to be of type ${schema.constructor.name}.\\n${err.toString()}`)\n }\n }\n/* c8 ignore end */\n\n/**\n * @template In\n * @template Out\n * @typedef {{ if: Schema<In>, h: (o:In,state?:any)=>Out }} Pattern\n */\n\n/**\n * @template {Pattern<any,any>} P\n * @template In\n * @typedef {ReturnType<Extract<P,Pattern<In extends number ? number : (In extends string ? string : In),any>>['h']>} PatternMatchResult\n */\n\n/**\n * @todo move this to separate library\n * @template {any} [State=undefined]\n * @template {Pattern<any,any>} [Patterns=never]\n */\nexport class PatternMatcher {\n /**\n * @param {Schema<State>} [$state]\n */\n constructor ($state) {\n /**\n * @type {Array<Patterns>}\n */\n this.patterns = []\n this.$state = $state\n }\n\n /**\n * @template P\n * @template R\n * @param {P} pattern\n * @param {(o:NoInfer<Unwrap<ReadSchema<P>>>,s:State)=>R} handler\n * @return {PatternMatcher<State,Patterns|Pattern<Unwrap<ReadSchema<P>>,R>>}\n */\n if (pattern, handler) {\n // @ts-ignore\n this.patterns.push({ if: $(pattern), h: handler })\n // @ts-ignore\n return this\n }\n\n /**\n * @template R\n * @param {(o:any,s:State)=>R} h\n */\n else (h) {\n return this.if($any, h)\n }\n\n /**\n * @return {State extends undefined\n * ? <In extends Unwrap<Patterns['if']>>(o:In,state?:undefined)=>PatternMatchResult<Patterns,In>\n * : <In extends Unwrap<Patterns['if']>>(o:In,state:State)=>PatternMatchResult<Patterns,In>}\n */\n done () {\n // @ts-ignore\n return /** @type {any} */ (o, s) => {\n for (let i = 0; i < this.patterns.length; i++) {\n const p = this.patterns[i]\n if (p.if.check(o)) {\n // @ts-ignore\n return p.h(o, s)\n }\n }\n throw error.create('Unhandled pattern')\n }\n }\n}\n\n/**\n * @template [State=undefined]\n * @param {State} [state]\n * @return {PatternMatcher<State extends undefined ? undefined : Unwrap<ReadSchema<State>>>}\n */\nexport const match = state => new PatternMatcher(/** @type {any} */ (state))\n\n/**\n * Helper function to generate a (non-exhaustive) sample set from a gives schema.\n *\n * @type {<T>(o:T,gen:prng.PRNG)=>T}\n */\nconst _random = /** @type {any} */ (match(/** @type {Schema<prng.PRNG>} */ ($any))\n .if($$number, (_o, gen) => prng.int53(gen, number.MIN_SAFE_INTEGER, number.MAX_SAFE_INTEGER))\n .if($$string, (_o, gen) => prng.word(gen))\n .if($$boolean, (_o, gen) => prng.bool(gen))\n .if($$bigint, (_o, gen) => BigInt(prng.int53(gen, number.MIN_SAFE_INTEGER, number.MAX_SAFE_INTEGER)))\n .if($$union, (o, gen) => random(gen, prng.oneOf(gen, o.shape)))\n .if($$object, (o, gen) => {\n /**\n * @type {any}\n */\n const res = {}\n for (const k in o.shape) {\n let prop = o.shape[k]\n if ($$optional.check(prop)) {\n if (prng.bool(gen)) { continue }\n prop = prop.shape\n }\n res[k] = _random(prop, gen)\n }\n return res\n })\n .if($$array, (o, gen) => {\n const arr = []\n const n = prng.int32(gen, 0, 42)\n for (let i = 0; i < n; i++) {\n arr.push(random(gen, o.shape))\n }\n return arr\n })\n .if($$literal, (o, gen) => {\n return prng.oneOf(gen, o.shape)\n })\n .if($$null, (o, gen) => {\n return null\n })\n .if($$lambda, (o, gen) => {\n const res = random(gen, o.res)\n return () => res\n })\n .if($$any, (o, gen) => random(gen, prng.oneOf(gen, [\n $number, $string, $null, $undefined, $bigint, $boolean,\n $array($number),\n $record($union('a', 'b', 'c'), $number)\n ])))\n .if($$record, (o, gen) => {\n /**\n * @type {any}\n */\n const res = {}\n const keysN = prng.int53(gen, 0, 3)\n for (let i = 0; i < keysN; i++) {\n const key = random(gen, o.shape.keys)\n const val = random(gen, o.shape.values)\n res[key] = val\n }\n return res\n })\n .done())\n\n/**\n * @template S\n * @param {prng.PRNG} gen\n * @param {S} schema\n * @return {Unwrap<ReadSchema<S>>}\n */\nexport const random = (gen, schema) => /** @type {any} */ (_random($(schema), gen))\n"],"names":["string.repeat","equalityTraits.EqualityTraitSymbol","equalityTraits.equals","arr.isArray","arr.every","arr.some","obj.isObject","obj.every","fun.equalityDeep","error.methodUnimplemented","error.unexpectedCase","obj.hasProperty","env.production","error.create","prng.int53","number.MIN_SAFE_INTEGER","number.MAX_SAFE_INTEGER","prng.word","prng.bool","prng.oneOf","prng.int32"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,EAAC;AACtC;AACO,MAAM,eAAe,CAAC;AAC7B,EAAE,WAAW,CAAC,GAAG;AACjB;AACA;AACA;AACA;AACA,IAAI,IAAI,CAAC,MAAM,GAAG,GAAE;AACpB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,EAAE;AAC/C,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,EAAC;AACtD,GAAG;AACH;AACA,EAAE,QAAQ,CAAC,GAAG;AACd,IAAI,MAAM,CAAC,GAAG,GAAE;AAChB,IAAI,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AACrD,MAAM,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAC;AAC9B;AACA,MAAM,CAAC,CAAC,IAAI,CAACA,aAAa,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,EAAC;AAC5J,KAAK;AACL,IAAI,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AACvB,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,EAAE,OAAO,KAAK;AAC7E,EAAE,IAAI,CAAC,CAACC,4BAAkC,CAAC,EAAE,OAAOC,eAAqB,CAAC,CAAC,EAAE,CAAC,CAAC;AAC/E,EAAE,IAAIC,aAAW,CAAC,CAAC,CAAC,EAAE;AACtB,IAAI,OAAOC,WAAS,CAAC,CAAC,EAAE,KAAK;AAC7B,MAAMC,UAAQ,CAAC,CAAC,EAAE,KAAK,IAAI,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACtD,KAAK;AACL,GAAG,MAAM,IAAIC,eAAY,CAAC,CAAC,CAAC,EAAE;AAC9B,IAAI,OAAOC,YAAS,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI;AACpC,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAClC,KAAK;AACL,GAAG;AACH;AACA,EAAE,OAAO,KAAK;AACd,EAAC;AACD;AACA;AACA;AACA;AACA;AACO,MAAM,MAAM,CAAC;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,OAAO,QAAQ,GAAG,KAAK;AACzB;AACA;AACA;AACA;AACA,EAAE,OAAO,CAAC,CAAC,KAAK,EAAE;AAClB,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAC;AACnF,IAAI,sCAAsC,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAC;AACtF,IAAI,OAAO,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;AAC7B,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE;AACjB;AACA,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,IAAIC,sBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;AAC9F,GAAG;AACH;AACA,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE;AACnC;AACA;AACA;AACA;AACA,EAAE,CAACP,4BAAkC,EAAE,CAAC,KAAK,EAAE;AAC/C,IAAI,OAAO,IAAI,CAAC,MAAM,qBAAqB,KAAK,EAAE;AAClD,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE;AACf,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACxB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE;AACnB,IAAIQ,yBAAyB,GAAE;AAC/B,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,QAAQ,CAAC,GAAG;AAClB;AACA,IAAI,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;AAC9B,GAAG;AACH;AACA;AACA;AACA;AACA,EAAE,IAAI,QAAQ,CAAC,GAAG;AAClB,IAAI,OAAO,IAAI,SAAS,2BAA2B,IAAI,EAAE;AACzD,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;AACX,IAAI,MAAM,CAAC,CAAC,EAAE,IAAI,EAAC;AACnB,IAAI,2BAA2B,CAAC,CAAC;AACjC,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE;AACb,IAAI,MAAM,CAAC,CAAC,EAAE,IAAI,EAAC;AACnB,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,cAAc,SAAS,MAAM,CAAC;AAC3C;AACA;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE;AACzB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,EAAC;AAClB,IAAI,IAAI,CAAC,EAAE,GAAG,MAAK;AACnB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,SAAS,EAAE;AAC7B,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAC;AAC9E;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC,KAAK,GAAG,0BAA0B,GAAG,cAAc,EAAC;AAC9I,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,cAAc,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,cAAc,CAAC,CAAC,EAAE,KAAK,EAAC;AACnE,MAAC,eAAe,GAAG,cAAc,CAAC,cAAc,EAAC;AAC7D;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,OAAO,SAAS,MAAM,CAAC;AACpC;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE;AACtB,IAAI,KAAK,GAAE;AACX;AACA;AACA;AACA,IAAI,IAAI,CAAC,KAAK,GAAG,MAAK;AACtB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAC;AAC3B;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,WAAW,CAAC,IAAI,EAAE,6BAA6B,EAAC;AAC9F,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,CAAC,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,EAAC;AACxC,MAAC,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAC;AAC/C;AACA;AACA;AACA;AACA;AACO,MAAM,QAAQ,SAAS,MAAM,CAAC;AACrC;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,QAAQ,EAAE;AACzB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,SAAQ;AACzB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAC;AAC3C;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAC;AACjE,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,QAAQ,GAAG,CAAC,GAAG,QAAQ,KAAK,IAAI,QAAQ,CAAC,QAAQ,EAAC;AACnD,MAAC,SAAS,GAAG,cAAc,CAAC,QAAQ,EAAC;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,YAAY,sBAAsB,CAAC,MAAM,EAAE,MAAM,2CAA2C,GAAG;AACrG,EAAE,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;AAC9C,EAAC;AACD;AACA;AACA;AACA;AACA;AACA,MAAM,4BAA4B,GAAG,CAAC,IAAI;AAC1C,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACxB,IAAI,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC5B,GAAG;AACH,EAAE,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AAC1B,IAAI,2CAA2C,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;AACzE,GAAG;AACH,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACzB,IAAI,OAAO,CAAC,iBAAiB,CAAC;AAC9B,GAAG;AACH,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACzB,IAAI,OAAO,CAAC,IAAI,CAAC;AACjB,GAAG;AACH,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACxB,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5D,GAAG;AACH;AACA;AACA,EAAEC,oBAAoB,GAAE;AACxB,EAAC;AACD;AACA;AACA;AACA;AACA;AACO,MAAM,eAAe,SAAS,MAAM,CAAC;AAC5C;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE;AACtB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,MAAK;AACtB,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,EAAC;AACzH,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAI;AACrC;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,wCAAwC,EAAC;AACvG,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,eAAe,GAAG,CAAC,GAAG,QAAQ,KAAK,IAAI,eAAe,CAAC,QAAQ,EAAC;AACjE,MAAC,gBAAgB,GAAG,cAAc,CAAC,eAAe,EAAC;AAC/D;AACA,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,EAAC;AAC3C;AACA;AACA;AACA;AACA,MAAM,SAAS,SAAS,MAAM,CAAC;AAC/B;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE;AACtB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,MAAK;AACtB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAC;AACpD;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,sBAAsB,EAAE,IAAI,EAAC;AACzD,IAAI,OAAO,CAAC;AACZ,GAAG;AACH;AACA,EAAE,KAAK,gBAAgB,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE;AAC3C,CAAC;AACW,MAAC,UAAU,GAAG,cAAc,CAAC,SAAS,EAAC;AACnD;AACA;AACA;AACA;AACA,MAAM,MAAM,SAAS,MAAM,CAAC;AAC5B;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE;AAClB;AACA,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAC;AACzC,IAAI,OAAO,KAAK;AAChB,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,IAAI,MAAM,GAAE;AACtB,MAAC,OAAO,GAAG,cAAc,CAAC,MAAM,EAAC;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,OAAO,SAAS,MAAM,CAAC;AACpC;AACA;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE;AACvC,IAAI,KAAK,GAAE;AACX;AACA;AACA;AACA,IAAI,IAAI,CAAC,KAAK,GAAG,MAAK;AACtB,IAAI,IAAI,CAAC,UAAU,GAAG,QAAO;AAC7B,GAAG;AACH;AACA,EAAE,OAAO,QAAQ,GAAG,IAAI;AACxB;AACA;AACA;AACA;AACA,EAAE,IAAI,OAAO,CAAC,GAAG;AACjB,IAAI,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC;AACxC,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE;AACnB;AACA,MAAM,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAC;AACzC,MAAM,OAAO,KAAK;AAClB,KAAK;AACL,IAAI,OAAOH,YAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK;AAC7C,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,CAACI,kBAAe,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAC;AACpF,MAAM,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,gCAAgC,EAAC;AACrG,MAAM,OAAO,CAAC;AACd,KAAK,CAAC;AACN,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,GAAG,wBAAwB,IAAI,OAAO,CAAC,GAAG,CAAC,EAAC;AACvD,MAAC,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAC;AAC/C;AACA;AACA;AACY,MAAC,UAAU,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,WAAW,KAAK,MAAM,IAAI,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,EAAC;AACxG;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,OAAO,SAAS,MAAM,CAAC;AACpC;AACA;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE;AAC7B,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG;AACjB,MAAM,IAAI,EAAE,MAAM;AAClB,MAAK;AACL,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,OAAO,CAAC,IAAI,IAAI,IAAIJ,YAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK;AACjD,MAAM,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,EAAC;AAC/C;AACA,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,2BAA2B,GAAG,4BAA4B,EAAC;AACtH,MAAM,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC;AACnD,KAAK,CAAC;AACN,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,MAAM,EAAC;AACtD,MAAC,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAC;AAC/C;AACA;AACA;AACA;AACA;AACO,MAAM,MAAM,SAAS,MAAM,CAAC;AACnC;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,KAAK,EAAE;AACtB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,MAAK;AACtB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,OAAO,CAAC,IAAI,IAAI,IAAIA,YAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK;AAC1D,MAAM,MAAM,CAAC,8BAA8B,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAC;AACjE;AACA,MAAM,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,EAAC;AAC1D,MAAM,OAAO,CAAC;AACd,KAAK,CAAC;AACN,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,CAAC,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC,GAAG,EAAC;AACrC,MAAC,OAAO,GAAG,cAAc,CAAC,MAAM,EAAC;AAC7C;AACA;AACA;AACA;AACA;AACO,MAAM,MAAM,SAAS,MAAM,CAAC;AACnC;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE;AAClB,IAAI,KAAK,GAAE;AACX;AACA;AACA;AACA,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC,EAAC;AACtD,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAGJ,aAAW,CAAC,CAAC,CAAC,IAAIC,WAAS,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,EAAC;AACxE;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAC;AACxC,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,CAAC,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC,GAAG,EAAC;AACrC,MAAC,OAAO,GAAG,cAAc,CAAC,MAAM,EAAC;AAC7C;AACA;AACA;AACY,MAAC,SAAS,GAAG,OAAO,CAAC,CAAC,IAAID,aAAW,CAAC,CAAC,CAAC,EAAC;AACrD;AACA;AACA;AACA;AACA;AACO,MAAM,WAAW,SAAS,MAAM,CAAC;AACxC;AACA;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE;AACnC,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,YAAW;AAC5B,IAAI,IAAI,CAAC,EAAE,GAAG,MAAK;AACnB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,IAAI,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAC;AACxE;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,WAAW,CAAC,IAAI,EAAC;AACjE,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,WAAW,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,KAAK,EAAC;AAC7D,MAAC,YAAY,GAAG,cAAc,CAAC,WAAW,EAAC;AACvD;AACY,MAAC,QAAQ,GAAG,WAAW,CAAC,MAAM,EAAC;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,OAAO,SAAS,MAAM,CAAC;AACpC;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,IAAI,EAAE;AACrB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,EAAC;AAC9B,IAAI,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAC;AACzC,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAC;AAC7B,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,IAAG;AAChE;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAAC;AACjD,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,CAAC,GAAG,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,EAAC;AACrE,MAAC,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAC;AAC/C;AACA;AACA;AACA;AACY,MAAC,SAAS,GAAG,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,UAAU,EAAC;AAC9D;AACA;AACA;AACA;AACA;AACO,MAAM,aAAa,SAAS,MAAM,CAAC;AAC1C;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE;AAClB,IAAI,KAAK,GAAE;AACX;AACA;AACA;AACA,IAAI,IAAI,CAAC,KAAK,GAAG,EAAC;AAClB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB;AACA,IAAI,MAAM,CAAC,GAAGC,WAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAC;AACjE;AACA,IAAI,CAAC,CAAC,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC,EAAC;AACtD,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,UAAU,GAAG,CAAC,GAAG,GAAG,KAAK,IAAI,aAAa,CAAC,GAAG,EAAC;AAChD,MAAC,WAAW,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAC;AACjF;AACA;AACA;AACA;AACA;AACO,MAAM,MAAM,SAAS,MAAM,CAAC;AACnC,EAAE,OAAO,QAAQ,GAAG,IAAI;AACxB;AACA;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE;AAClB,IAAI,KAAK,GAAE;AACX,IAAI,IAAI,CAAC,KAAK,GAAG,EAAC;AAClB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,GAAGC,UAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAC;AAC5D,IAAI,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAC;AACxC,IAAI,OAAO,CAAC;AACZ,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,SAAS,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC;AACrF,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9F,KAAK,OAAO,CAAC,MAAM,KAAK,CAAC;AACzB,QAAQ,OAAO,CAAC,CAAC,CAAC;AAClB,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,EAAC;AAChB,MAAC,OAAO,uCAAuC,cAAc,CAAC,MAAM,CAAC,EAAC;AAClF;AACA,MAAM,EAAE,GAAG,MAAM,KAAI;AACrB;AACA;AACA;AACY,MAAC,IAAI,GAAG,OAAO,CAAC,EAAE,EAAC;AACnB,MAAC,KAAK,uCAAuC,cAAc,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,EAAC;AACtG;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAC;AAC9C,MAAC,QAAQ,0CAA0C,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,EAAC;AAC3F;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAC;AAC9C,MAAC,QAAQ,0CAA0C,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,EAAC;AAC3F;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAC;AAC9C,MAAC,QAAQ,0CAA0C,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,EAAC;AAC3F;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAC;AAC9C,MAAC,QAAQ,0CAA0C,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,EAAC;AAC3F;AACA;AACA;AACA;AACY,MAAC,QAAQ,GAAG,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,SAAS,EAAC;AAChD,MAAC,SAAS,2CAA2C,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,EAAC;AAC9F;AACA;AACA;AACA;AACY,MAAC,UAAU,GAAG,QAAQ,CAAC,SAAS,EAAC;AACjC,MAAC,WAAW,6CAA6C,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,EAAC;AACrJ;AACA;AACA;AACA;AACY,MAAC,KAAK,GAAG,QAAQ,CAAC,SAAS,EAAC;AAC5B,MAAC,MAAM,wCAAwC,WAAW,EAAC;AACvE;AACY,MAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAC;AACvB,MAAC,MAAM,wCAAwC,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAC;AACtI;AACY,MAAC,WAAW,GAAG,cAAc,CAAC,UAAU,EAAC;AACzC,MAAC,YAAY,8CAA8C,cAAc,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,EAAC;AACnI;AACA;AACA;AACA;AACY,MAAC,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAC;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,KAAK,GAAG,CAAC,MAAM;AAC5B,EAAE,MAAM,QAAQ,gCAAgC,MAAM,CAAC,IAAI,CAAC,EAAC;AAC7D,EAAE,MAAM,WAAW,yCAAyC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,EAAC;AACnF,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAC;AAChF,EAAE,QAAQ,CAAC,KAAK,GAAG,MAAK;AACxB,EAAE,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,MAAK;AAClC,EAAE,OAAO,KAAK;AACd,CAAC,IAAG;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,CAAC,GAAG,CAAC,IAAI;AACtB,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACzB,IAAI,2BAA2B,CAAC,CAAC;AACjC,GAAG,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AAClC;AACA;AACA;AACA,IAAI,MAAM,EAAE,GAAG,GAAE;AACjB,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;AACvB,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC;AACrB,KAAK;AACL,IAAI,2BAA2B,OAAO,CAAC,EAAE,CAAC,CAAC;AAC3C,GAAG,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACjC,IAAI,2BAA2B,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACnD,GAAG,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AAClC,IAAI,2BAA2B,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC3C,GAAG,MAAM,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AACjC,IAAI,2BAA2B,cAAc,qBAAqB,CAAC,EAAE,CAAC;AACtE,GAAG;AACH;AACA,EAAEK,oBAAoB,GAAE;AACxB,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAGE,sBAAc;AACpC,IAAI,MAAM,EAAE;AACZ,IAAI,CAAC,CAAC,EAAE,MAAM,KAAK;AACnB,MAAM,MAAM,GAAG,GAAG,IAAI,eAAe,GAAE;AACvC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;AACjC,QAAQ,MAAMC,YAAY,CAAC,CAAC,6BAA6B,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AACzG,OAAO;AACP,MAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAM,cAAc,CAAC;AAC5B;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,MAAM,EAAE;AACvB;AACA;AACA;AACA,IAAI,IAAI,CAAC,QAAQ,GAAG,GAAE;AACtB,IAAI,IAAI,CAAC,MAAM,GAAG,OAAM;AACxB,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE;AACxB;AACA,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,EAAC;AACtD;AACA,IAAI,OAAO,IAAI;AACf,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;AACX,IAAI,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3B,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE,IAAI,CAAC,GAAG;AACV;AACA,IAAI,0BAA0B,CAAC,CAAC,EAAE,CAAC,KAAK;AACxC,MAAM,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACrD,QAAQ,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAC;AAClC,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;AAC3B;AACA,UAAU,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC1B,SAAS;AACT,OAAO;AACP,MAAM,MAAMA,YAAY,CAAC,mBAAmB,CAAC;AAC7C,KAAK;AACL,GAAG;AACH,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,KAAK,GAAG,KAAK,IAAI,IAAI,cAAc,qBAAqB,KAAK,GAAE;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,OAAO,uBAAuB,KAAK,mCAAmC,IAAI,EAAE;AAClF,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,KAAKC,UAAU,CAAC,GAAG,EAAEC,uBAAuB,EAAEC,uBAAuB,CAAC,CAAC;AAC/F,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,KAAKC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC5C,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,GAAG,KAAKC,SAAS,CAAC,GAAG,CAAC,CAAC;AAC7C,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,MAAM,CAACJ,UAAU,CAAC,GAAG,EAAEC,uBAAuB,EAAEC,uBAAuB,CAAC,CAAC,CAAC;AACvG,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,EAAEG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACjE,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK;AAC5B;AACA;AACA;AACA,IAAI,MAAM,GAAG,GAAG,GAAE;AAClB,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE;AAC7B,MAAM,IAAI,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAC;AAC3B,MAAM,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClC,QAAQ,IAAID,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE;AACxC,QAAQ,IAAI,GAAG,IAAI,CAAC,MAAK;AACzB,OAAO;AACP,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,GAAG,EAAC;AACjC,KAAK;AACL,IAAI,OAAO,GAAG;AACd,GAAG,CAAC;AACJ,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK;AAC3B,IAAI,MAAM,GAAG,GAAG,GAAE;AAClB,IAAI,MAAM,CAAC,GAAGE,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAC;AACpC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAChC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAC;AACpC,KAAK;AACL,IAAI,OAAO,GAAG;AACd,GAAG,CAAC;AACJ,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK;AAC7B,IAAI,OAAOD,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC;AACnC,GAAG,CAAC;AACJ,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK;AAC1B,IAAI,OAAO,IAAI;AACf,GAAG,CAAC;AACJ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK;AAC5B,IAAI,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAC;AAClC,IAAI,OAAO,MAAM,GAAG;AACpB,GAAG,CAAC;AACJ,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,EAAEA,UAAU,CAAC,GAAG,EAAE;AACrD,IAAI,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ;AAC1D,IAAI,MAAM,CAAC,OAAO,CAAC;AACnB,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC;AAC3C,GAAG,CAAC,CAAC,CAAC;AACN,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK;AAC5B;AACA;AACA;AACA,IAAI,MAAM,GAAG,GAAG,GAAE;AAClB,IAAI,MAAM,KAAK,GAAGL,UAAU,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAC;AACvC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;AACpC,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAC;AAC3C,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAC;AAC7C,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,IAAG;AACpB,KAAK;AACL,IAAI,OAAO,GAAG;AACd,GAAG,CAAC;AACJ,GAAG,IAAI,EAAE,EAAC;AACV;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,CAAC,GAAG,EAAE,MAAM,yBAAyB,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}