@rspack/core 0.0.7 → 0.0.9

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 (223) hide show
  1. package/dist/compilation.d.ts +64 -0
  2. package/dist/compilation.d.ts.map +1 -0
  3. package/dist/compilation.js +148 -0
  4. package/dist/compilation.js.map +1 -0
  5. package/dist/compiler.d.ts +52 -0
  6. package/dist/compiler.d.ts.map +1 -0
  7. package/dist/compiler.js +383 -0
  8. package/dist/compiler.js.map +1 -0
  9. package/dist/config/RspackOptions.d.ts +36 -0
  10. package/dist/config/RspackOptions.d.ts.map +1 -0
  11. package/{lib/config/define.js → dist/config/RspackOptions.js} +1 -0
  12. package/dist/config/RspackOptions.js.map +1 -0
  13. package/dist/config/browserslistTargetHandler.d.ts +20 -0
  14. package/dist/config/browserslistTargetHandler.d.ts.map +1 -0
  15. package/dist/config/browserslistTargetHandler.js +320 -0
  16. package/dist/config/browserslistTargetHandler.js.map +1 -0
  17. package/dist/config/builtins.d.ts +15 -0
  18. package/dist/config/builtins.d.ts.map +1 -0
  19. package/dist/config/builtins.js +49 -0
  20. package/dist/config/builtins.js.map +1 -0
  21. package/{lib → dist}/config/context.d.ts +1 -0
  22. package/dist/config/context.d.ts.map +1 -0
  23. package/{lib → dist}/config/context.js +1 -0
  24. package/dist/config/context.js.map +1 -0
  25. package/dist/config/defaults.d.ts +4 -0
  26. package/dist/config/defaults.d.ts.map +1 -0
  27. package/dist/config/defaults.js +57 -0
  28. package/dist/config/defaults.js.map +1 -0
  29. package/dist/config/devServer.d.ts +21 -0
  30. package/dist/config/devServer.d.ts.map +1 -0
  31. package/{lib/config/builtins.js → dist/config/devServer.js} +1 -0
  32. package/dist/config/devServer.js.map +1 -0
  33. package/dist/config/devtool.d.ts +5 -0
  34. package/dist/config/devtool.d.ts.map +1 -0
  35. package/dist/config/devtool.js +13 -0
  36. package/dist/config/devtool.js.map +1 -0
  37. package/dist/config/entry.d.ts +8 -0
  38. package/dist/config/entry.d.ts.map +1 -0
  39. package/dist/config/entry.js +39 -0
  40. package/dist/config/entry.js.map +1 -0
  41. package/dist/config/external.d.ts +5 -0
  42. package/dist/config/external.d.ts.map +1 -0
  43. package/{lib → dist}/config/external.js +1 -0
  44. package/dist/config/external.js.map +1 -0
  45. package/dist/config/index.d.ts +57 -0
  46. package/dist/config/index.d.ts.map +1 -0
  47. package/dist/config/index.js +55 -0
  48. package/dist/config/index.js.map +1 -0
  49. package/{lib → dist}/config/mode.d.ts +1 -0
  50. package/dist/config/mode.d.ts.map +1 -0
  51. package/{lib → dist}/config/mode.js +1 -0
  52. package/dist/config/mode.js.map +1 -0
  53. package/{lib → dist}/config/module.d.ts +22 -7
  54. package/dist/config/module.d.ts.map +1 -0
  55. package/{lib → dist}/config/module.js +29 -21
  56. package/dist/config/module.js.map +1 -0
  57. package/{lib → dist}/config/output.d.ts +6 -0
  58. package/dist/config/output.d.ts.map +1 -0
  59. package/dist/config/output.js +10 -0
  60. package/dist/config/output.js.map +1 -0
  61. package/dist/config/plugin.d.ts +6 -0
  62. package/dist/config/plugin.d.ts.map +1 -0
  63. package/{lib → dist}/config/plugin.js +1 -0
  64. package/dist/config/plugin.js.map +1 -0
  65. package/dist/config/resolve.d.ts +22 -0
  66. package/dist/config/resolve.d.ts.map +1 -0
  67. package/dist/config/resolve.js +33 -0
  68. package/dist/config/resolve.js.map +1 -0
  69. package/dist/config/stats.d.ts +21 -0
  70. package/dist/config/stats.d.ts.map +1 -0
  71. package/dist/config/stats.js +17 -0
  72. package/dist/config/stats.js.map +1 -0
  73. package/dist/config/target.d.ts +7 -0
  74. package/dist/config/target.d.ts.map +1 -0
  75. package/dist/config/target.js +21 -0
  76. package/dist/config/target.js.map +1 -0
  77. package/dist/config/watch.d.ts +8 -0
  78. package/dist/config/watch.d.ts.map +1 -0
  79. package/dist/config/watch.js +16 -0
  80. package/dist/config/watch.js.map +1 -0
  81. package/dist/index.d.ts +4 -0
  82. package/dist/index.d.ts.map +1 -0
  83. package/dist/index.js +20 -0
  84. package/dist/index.js.map +1 -0
  85. package/dist/logging/Logger.d.ts +43 -0
  86. package/dist/logging/Logger.d.ts.map +1 -0
  87. package/dist/logging/Logger.js +136 -0
  88. package/dist/logging/Logger.js.map +1 -0
  89. package/dist/logging/createConsoleLogger.d.ts +7 -0
  90. package/dist/logging/createConsoleLogger.d.ts.map +1 -0
  91. package/dist/logging/createConsoleLogger.js +227 -0
  92. package/dist/logging/createConsoleLogger.js.map +1 -0
  93. package/dist/logging/runtime.d.ts +14 -0
  94. package/dist/logging/runtime.d.ts.map +1 -0
  95. package/dist/logging/runtime.js +42 -0
  96. package/dist/logging/runtime.js.map +1 -0
  97. package/dist/logging/truncateArgs.d.ts +8 -0
  98. package/dist/logging/truncateArgs.d.ts.map +1 -0
  99. package/dist/logging/truncateArgs.js +81 -0
  100. package/dist/logging/truncateArgs.js.map +1 -0
  101. package/dist/node/NodeTargetPlugin.d.ts +5 -0
  102. package/dist/node/NodeTargetPlugin.d.ts.map +1 -0
  103. package/dist/node/NodeTargetPlugin.js +70 -0
  104. package/dist/node/NodeTargetPlugin.js.map +1 -0
  105. package/dist/node/nodeConsole.d.ts +22 -0
  106. package/dist/node/nodeConsole.d.ts.map +1 -0
  107. package/dist/node/nodeConsole.js +121 -0
  108. package/dist/node/nodeConsole.js.map +1 -0
  109. package/dist/rspack.d.ts +8 -0
  110. package/dist/rspack.d.ts.map +1 -0
  111. package/dist/rspack.js +59 -0
  112. package/dist/rspack.js.map +1 -0
  113. package/dist/rspackOptionsApply.d.ts +6 -0
  114. package/dist/rspackOptionsApply.d.ts.map +1 -0
  115. package/dist/rspackOptionsApply.js +25 -0
  116. package/dist/rspackOptionsApply.js.map +1 -0
  117. package/dist/stats.d.ts +21 -0
  118. package/dist/stats.d.ts.map +1 -0
  119. package/dist/stats.js +870 -0
  120. package/dist/stats.js.map +1 -0
  121. package/dist/utils/createHash.d.ts +7 -0
  122. package/dist/utils/createHash.d.ts.map +1 -0
  123. package/dist/utils/createHash.js +166 -0
  124. package/dist/utils/createHash.js.map +1 -0
  125. package/dist/utils/createSource.d.ts +6 -0
  126. package/dist/utils/createSource.d.ts.map +1 -0
  127. package/dist/utils/createSource.js +48 -0
  128. package/dist/utils/createSource.js.map +1 -0
  129. package/dist/utils/hash/BatchedHash.d.ts +16 -0
  130. package/dist/utils/hash/BatchedHash.d.ts.map +1 -0
  131. package/dist/utils/hash/BatchedHash.js +61 -0
  132. package/dist/utils/hash/BatchedHash.js.map +1 -0
  133. package/dist/utils/hash/index.d.ts +19 -0
  134. package/dist/utils/hash/index.d.ts.map +1 -0
  135. package/dist/utils/hash/index.js +28 -0
  136. package/dist/utils/hash/index.js.map +1 -0
  137. package/dist/utils/hash/md4.d.ts +3 -0
  138. package/dist/utils/hash/md4.d.ts.map +1 -0
  139. package/dist/utils/hash/md4.js +13 -0
  140. package/dist/utils/hash/md4.js.map +1 -0
  141. package/dist/utils/hash/wasm-hash.d.ts +7 -0
  142. package/dist/utils/hash/wasm-hash.d.ts.map +1 -0
  143. package/dist/utils/hash/wasm-hash.js +162 -0
  144. package/dist/utils/hash/wasm-hash.js.map +1 -0
  145. package/dist/utils/hash/xxhash64.d.ts +3 -0
  146. package/dist/utils/hash/xxhash64.d.ts.map +1 -0
  147. package/dist/utils/hash/xxhash64.js +13 -0
  148. package/dist/utils/hash/xxhash64.js.map +1 -0
  149. package/dist/utils/index.d.ts +4 -0
  150. package/dist/utils/index.d.ts.map +1 -0
  151. package/dist/utils/index.js +8 -0
  152. package/dist/utils/index.js.map +1 -0
  153. package/dist/utils/memoize.d.ts +2 -0
  154. package/dist/utils/memoize.d.ts.map +1 -0
  155. package/dist/utils/memoize.js +22 -0
  156. package/dist/utils/memoize.js.map +1 -0
  157. package/dist/web/polyfillBuiltins.d.ts +5 -0
  158. package/dist/web/polyfillBuiltins.d.ts.map +1 -0
  159. package/dist/web/polyfillBuiltins.js +43 -0
  160. package/dist/web/polyfillBuiltins.js.map +1 -0
  161. package/package.json +28 -23
  162. package/CHANGELOG.md +0 -51
  163. package/bin.js +0 -1
  164. package/example/basic.ts +0 -71
  165. package/example/react-example/index.html +0 -12
  166. package/example/react-example/package.json +0 -17
  167. package/example/react-example/rspack.config.json +0 -13
  168. package/example/react-example/src/app.jsx +0 -44
  169. package/example/react-example/src/base.css +0 -9
  170. package/example/react-example/src/button.jsx +0 -3
  171. package/example/react-example/src/dark.svg +0 -1
  172. package/example/react-example/src/data.json +0 -5
  173. package/example/react-example/src/file.jpg +0 -0
  174. package/example/react-example/src/file.png +0 -0
  175. package/example/react-example/src/file.svg +0 -1
  176. package/example/react-example/src/foo.css +0 -3
  177. package/example/react-example/src/index.html +0 -32
  178. package/example/react-example/src/index.js +0 -1
  179. package/example/react-example/src/light.svg +0 -48
  180. package/example/react-example/src/logo.svg +0 -18
  181. package/example/react-with-sass.ts +0 -28
  182. package/lib/bin/index.d.ts +0 -1
  183. package/lib/bin/index.js +0 -32
  184. package/lib/build.d.ts +0 -1
  185. package/lib/build.js +0 -12
  186. package/lib/config/builtins.d.ts +0 -3
  187. package/lib/config/define.d.ts +0 -2
  188. package/lib/config/dev.d.ts +0 -17
  189. package/lib/config/dev.js +0 -17
  190. package/lib/config/entry.d.ts +0 -2
  191. package/lib/config/entry.js +0 -2
  192. package/lib/config/external.d.ts +0 -2
  193. package/lib/config/index.d.ts +0 -45
  194. package/lib/config/index.js +0 -37
  195. package/lib/config/output.js +0 -14
  196. package/lib/config/plugin.d.ts +0 -5
  197. package/lib/config/resolve.d.ts +0 -6
  198. package/lib/config/resolve.js +0 -2
  199. package/lib/config/target.d.ts +0 -5
  200. package/lib/config/target.js +0 -13
  201. package/lib/index.d.ts +0 -39
  202. package/lib/index.js +0 -154
  203. package/lib/server/index.d.ts +0 -0
  204. package/lib/server/index.js +0 -0
  205. package/src/bin/index.ts +0 -36
  206. package/src/build.ts +0 -8
  207. package/src/config/builtins.ts +0 -5
  208. package/src/config/context.ts +0 -3
  209. package/src/config/define.ts +0 -3
  210. package/src/config/dev.ts +0 -32
  211. package/src/config/entry.ts +0 -3
  212. package/src/config/external.ts +0 -3
  213. package/src/config/index.ts +0 -80
  214. package/src/config/mode.ts +0 -2
  215. package/src/config/module.ts +0 -240
  216. package/src/config/output.ts +0 -29
  217. package/src/config/plugin.ts +0 -6
  218. package/src/config/resolve.ts +0 -6
  219. package/src/config/target.ts +0 -28
  220. package/src/index.ts +0 -140
  221. package/src/server/index.ts +0 -0
  222. package/tests/config.test.ts +0 -40
  223. package/tsconfig.json +0 -14
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.js","sourceRoot":"","sources":["../src/stats.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,6CAA2C;AAS3C,MAAa,KAAK;IAIjB,YAAY,SAAmC;QAH/C,6DAA6D;QAC7D,mCAAkC;QAGjC,uBAAA,IAAI,oBAAc;YACjB,GAAG,SAAS;YACZ,WAAW,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACtD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;gBACpB,OAAO,GAAG,CAAC;YACZ,CAAC,EAAE,EAAE,CAAC;SACN,MAAA,CAAC;IACH,CAAC;IAED,SAAS;QACR,OAAO,uBAAA,IAAI,wBAAW,CAAC,WAAW,GAAG,CAAC,CAAC;IACxC,CAAC;IAED,WAAW;QACV,OAAO,uBAAA,IAAI,wBAAW,CAAC,aAAa,GAAG,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,IAAmB,EAAE,WAAqB;QAChD,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACxB,MAAM,qBAAqB,GAAG,CAAO,CAAI,EAAE,GAAM,EAAE,EAAE,CACpD,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAErD,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/D,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC;QACvE,MAAM,WAAW,GAAG,qBAAqB,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACjE,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,qBAAqB,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/D,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,qBAAqB,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACpE,MAAM,iBAAiB,GAAG,qBAAqB,CAC9C,OAAO,CAAC,aAAa,EACrB,IAAI,CACJ,CAAC;QAEF,IAAI,GAAG,GAAqB,EAAE,CAAC;QAC/B,IAAI,UAAU,EAAE;YACf,GAAG,CAAC,MAAM,GAAG,uBAAA,IAAI,wBAAW,CAAC,MAAM,CAAC;SACpC;QACD,IAAI,UAAU,EAAE;YACf,GAAG,CAAC,MAAM,GAAG,uBAAA,IAAI,wBAAW,CAAC,MAAM,CAAC;SACpC;QACD,IAAI,WAAW,EAAE;YAChB,GAAG,CAAC,OAAO,GAAG,uBAAA,IAAI,wBAAW,CAAC,OAAO,CAAC;SACtC;QACD,IAAI,eAAe,EAAE;YACpB,GAAG,CAAC,WAAW,GAAG,uBAAA,IAAI,wBAAW,CAAC,WAAW,CAAC;SAC9C;QACD,IAAI,UAAU,EAAE;YACf,GAAG,CAAC,MAAM,GAAG,uBAAA,IAAI,wBAAW,CAAC,MAAM,CAAC;SACpC;QACD,IAAI,eAAe,EAAE;YACpB,GAAG,CAAC,WAAW,GAAG,uBAAA,IAAI,wBAAW,CAAC,WAAW,CAAC;SAC9C;QACD,IAAI,aAAa,EAAE;YAClB,GAAG,CAAC,QAAQ,GAAG,uBAAA,IAAI,wBAAW,CAAC,QAAQ,CAAC;SACxC;QACD,IAAI,iBAAiB,EAAE;YACtB,GAAG,CAAC,aAAa,GAAG,uBAAA,IAAI,wBAAW,CAAC,aAAa,CAAC;SAClD;QACD,IAAI,GAAG,CAAC,OAAO,IAAI,WAAW,EAAE;YAC/B,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC;YAC9C,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;SACvC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,QAAQ,CAAC,IAAmB;QAC3B,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAA,yBAAiB,EAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAQ,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,SAAkB;;QAC1C,MAAM,GAAG,GAAG,EAAE,CAAC;QAEf,MAAM,aAAa,GAAG;YACrB,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,qBAAqB;YAC7B,GAAG,EAAE,qBAAqB;YAC1B,KAAK,EAAE,qBAAqB;YAC5B,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,qBAAqB;SAC9B,CAAC;QAEF,MAAM,MAAM,GAAQ,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACpD,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACd,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,EAAE;gBAClB,IAAI,SAAS,EAAE;oBACd,GAAG,CAAC,IAAI,CACP,SAAS,KAAK,IAAI,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,SAAS;wBACnD,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC;wBACtB,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CACnB,CAAC;iBACF;gBACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACd,IAAI,SAAS,EAAE;oBACd,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;iBACjC;YACF,CAAC,CAAC;YACF,OAAO,GAAG,CAAC;QACZ,CAAC,EACD;YACC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;SAC5B,CACD,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE;YAC1B,IAAI,KAAK,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACjC,IAAI,GAAG,CAAC,IAAI,EAAE;gBACb,KAAK,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;aAClE;YACD,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;gBAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;iBAC3C,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;iBAC9C,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;gBAAE,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;iBAC/C,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;gBAAE,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;;gBAChD,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QAC9B,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAErC,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACjC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;QAC5B,CAAC,CAAC;QAEF,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,QAAiB,EAAE,EAAE;YACjD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;YACjC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE;gBACpC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aAClB;YACD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE;gBACpC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE;oBACpC,MAAM,KAAK,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC5C,IAAI,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE;wBACjC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;qBAC7B;iBACD;aACD;YACD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE;gBACpC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE;oBACpC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;oBACrC,MAAM,KAAK,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC5C,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;oBACrB,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE;wBACvB,MAAM,CAAC,KAAK,CAAC,CAAC;qBACd;oBACD,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;wBAClD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACnB;oBACD,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,EAAE;wBACvB,MAAM,CAAC,KAAK,CAAC,CAAC;qBACd;oBACD,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;wBAC1C,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;qBAChC;iBACD;gBACD,OAAO,EAAE,CAAC;aACV;QACF,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE;YAC7C,IAAI,KAAK,CAAC,eAAe,EAAE;gBAC1B,OAAO,MAAM,CAAC,MAAM,CAAC;aACrB;YAED,OAAO,YAAY,CAAC;QACrB,CAAC,CAAC;QAEF,IAAI,GAAG,CAAC,IAAI,EAAE;YACb,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,EAAE,CAAC;SACV;QACD,IAAI,GAAG,CAAC,OAAO,EAAE;YAChB,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzB,OAAO,EAAE,CAAC;SACV;QACD,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;YACjC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACpB,OAAO,EAAE,CAAC;SACV;QACD,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE;YACpC,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,QAAQ,GAAG,SAAS,CAAC;YAEzB,IAAI;gBACH,WAAW,CAAC,kBAAkB,EAAE,CAAC;aACjC;YAAC,OAAO,GAAG,EAAE;gBACb,+CAA+C;gBAC/C,QAAQ,GAAG,KAAK,CAAC;aACjB;YAED,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC5B,MAAM,CAAC,MAAM,CACZ,WAAW,CAAC,kBAAkB,CAAC,SAAS,EAAE;gBACzC,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE,SAAS;gBAChB,IAAI,EAAE,SAAS;gBACf,QAAQ;aACR,CAAC,CACF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;YACrE,OAAO,EAAE,CAAC;SACV;QACD,IAAI,GAAG,CAAC,GAAG,EAAE;YACZ,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC;SACV;QACD,IAAI,GAAG,CAAC,UAAU,EAAE;YACnB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC5B,OAAO,EAAE,CAAC;SACV;QAED,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACxC,MAAM,CAAC,GAAG;gBACT;oBACC;wBACC,KAAK,EAAE,OAAO;wBACd,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;oBACD;wBACC,KAAK,EAAE,MAAM;wBACb,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;oBACD;wBACC,KAAK,EAAE,QAAQ;wBACf,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;oBACD;wBACC,KAAK,EAAE,EAAE;wBACT,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;oBACD;wBACC,KAAK,EAAE,EAAE;wBACT,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;oBACD;wBACC,KAAK,EAAE,aAAa;wBACpB,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;iBACD;aACD,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE;gBAC/B,CAAC,CAAC,IAAI,CAAC;oBACN;wBACC,KAAK,EAAE,KAAK,CAAC,IAAI;wBACjB,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACzC;oBACD;wBACC,KAAK,EAAE,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC;wBAC/C,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;qBAC1C;oBACD;wBACC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;wBAC9B,KAAK,EAAE,MAAM,CAAC,IAAI;qBAClB;oBACD;wBACC,KAAK,EAAE;4BACN,KAAK,CAAC,OAAO,IAAI,WAAW;4BAC5B,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,SAAS,KAAI,aAAa;4BACtC,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,WAAW,KAAI,OAAO;4BAClC,CAAA,MAAA,KAAK,CAAC,IAAI,0CAAE,oBAAoB,KAAI,OAAO;yBAC3C;6BACC,MAAM,CAAC,OAAO,CAAC;6BACf,IAAI,CAAC,GAAG,CAAC;wBACX,KAAK,EAAE,MAAM,CAAC,KAAK;qBACnB;oBACD;wBACC,KAAK,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBAC3C,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;qBAC1C;oBACD;wBACC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;wBAClC,KAAK,EAAE,MAAM,CAAC,MAAM;qBACpB;iBACD,CAAC,CAAC;aACH;YACD,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;SACnB;QACD,IAAI,GAAG,CAAC,cAAc,GAAG,CAAC,EAAE;YAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnB,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/D,OAAO,EAAE,CAAC;SACV;QAED,MAAM,kBAAkB,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE;YAClD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBAC5C,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC7B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClB,IAAI,EAAE,CAAC,eAAe,EAAE;oBACvB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACnB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;iBACvB;gBACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,MAAM,EAAE;oBAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACnB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACzB;gBACD,oDAAoD;gBACpD,wCAAwC;gBACxC,sCAAsC;gBACtC,wBAAwB;gBACxB,iCAAiC;gBACjC,kCAAkC;gBAClC,yBAAyB;gBACzB,0BAA0B;gBAC1B,MAAM;gBACN,yBAAyB;gBACzB,KAAK;gBACL,IAAI;gBACJ,OAAO,EAAE,CAAC;aACV;QACF,CAAC,CAAC;QAEF,IAAI,GAAG,CAAC,WAAW,EAAE;YACpB,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;SAClD;QAED,IAAI,GAAG,CAAC,gBAAgB,EAAE;YACzB,IAAI,iBAAiB,GAAG,GAAG,CAAC,gBAAgB,CAAC;YAC7C,IAAI,GAAG,CAAC,WAAW,EAAE;gBACpB,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;qBAChD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;qBACtC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;oBACxB,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;oBAC1C,OAAO,MAAM,CAAC;gBACf,CAAC,EAAE,EAAE,CAAC,CAAC;aACR;YACD,kBAAkB,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;SACrD;QAED,MAAM,mBAAmB,GAAG,EAAE,CAAC;QAC/B,IAAI,GAAG,CAAC,OAAO,EAAE;YAChB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;gBACjC,mBAAmB,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC;aACtD;SACD;aAAM,IAAI,GAAG,CAAC,MAAM,EAAE;YACtB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE;gBAC/B,IAAI,KAAK,CAAC,OAAO,EAAE;oBAClB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE;wBACnC,mBAAmB,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,MAAM,CAAC;qBACtD;iBACD;aACD;SACD;QAED,MAAM,uBAAuB,GAAG,MAAM,CAAC,EAAE;YACxC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACzD,IAAI,MAAM,CAAC,MAAM,EAAE;gBAClB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE;oBAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACrB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;iBACnB;aACD;YACD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE;gBACrC,MAAM,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;aAC1C;YACD,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,EAAE;gBAC/B,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;aAC/B;YACD,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACpB,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;aAC7B;YACD,IAAI,MAAM,CAAC,KAAK,EAAE;gBACjB,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;aACzB;YACD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC1C,MAAM,CAAC,OAAO,CACb,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,SACxB,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GACnC,GAAG,CACH,CAAC;aACF;YACD,IAAI,MAAM,CAAC,UAAU,EAAE;gBACtB,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;aAChC;YACD,IAAI,MAAM,CAAC,MAAM;gBAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,QAAQ,EAAE;gBACpB,MAAM,CAAC,MAAM,CACZ,KAAK,MAAM,CAAC,QAAQ,WAAW,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAClE,CAAC;aACF;YACD,IAAI,MAAM,CAAC,MAAM,EAAE;gBAClB,MAAM,CAAC,GAAG,CACT,KAAK,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAC5D,CAAC;aACF;QACF,CAAC,CAAC;QAEF,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;gBAC1C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtB,IAAI,MAAM,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;oBACxC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;iBAC5B;qBAAM;oBACN,MAAM,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC/D;gBACD,OAAO,EAAE,CAAC;aACV;YACD,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE;gBACrC,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE;oBAChC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtB,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,EAAE;wBAChC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;qBACtC;yBAAM,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE;wBACxC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;qBACjC;yBAAM,IACN,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;wBACjC,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAC9B;wBACD,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;qBACjC;yBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE;wBAC7C,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC;4BACjE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM;4BAC/B,CAAC,CAAC,IAAI,CAAC;wBACR,IACC,oBAAoB,KAAK,IAAI;4BAC7B,oBAAoB,KAAK,MAAM,CAAC,WAAW,CAAC,MAAM,EACjD;4BACD,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;yBAClC;6BAAM;4BACN,MAAM,CAAC,IAAI,CACV,4BAA4B,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC5D,CAAC;yBACF;qBACD;oBACD,OAAO,EAAE,CAAC;iBACV;aACD;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE;gBAC9C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,mBAAmB,EAAE;oBAC9C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACpB,OAAO,EAAE,CAAC;iBACV;aACD;YACD,IAAI,MAAM,CAAC,OAAO,EAAE;gBACnB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE;oBACpC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtB,IAAI,MAAM,CAAC,IAAI,EAAE;wBAChB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC3B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACnB;oBACD,IAAI,MAAM,CAAC,WAAW,EAAE;wBACvB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;wBAChC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACnB;oBACD,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE;wBAC7B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;wBAC/B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACnB;oBACD,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,EAAE;wBACvD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;qBAC9B;oBACD,IAAI,MAAM,CAAC,GAAG,EAAE;wBACf,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBAC1B;oBACD,IAAI,MAAM,CAAC,WAAW,EAAE;wBACvB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;qBAChC;oBACD,OAAO,EAAE,CAAC;iBACV;aACD;YACD,IAAI,MAAM,CAAC,OAAO,EAAE;gBACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtB,IAAI,GAAG,GAAG,CAAC,CAAC;gBACZ,IAAI,MAAM,CAAC,UAAU,EAAE;oBACtB,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,UAAU,EAAE;wBAClC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACpB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACpB,IAAI,CAAC,CAAC,OAAO,EAAE;4BACd,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;4BAClE,WAAW,CAAC,IAAI,CAAC,CAAC;4BAClB,GAAG,IAAI,IAAI,CAAC;4BACZ,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACnB;wBACD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;qBACrB;iBACD;gBACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;oBAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;oBACzB,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oBACjC,WAAW,CAAC,IAAI,CAAC,CAAC;oBAClB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACnB,GAAG,IAAI,IAAI,CAAC;iBACZ;gBACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpB,WAAW,CAAC,GAAG,CAAC,CAAC;gBACjB,OAAO,EAAE,CAAC;aACV;YACD,IAAI,MAAM,CAAC,OAAO,EAAE;gBACnB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;aAC1C;QACF,CAAC,CAAC;QAEF,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YAC1C,IAAI,GAAG,CAAC,OAAO,EAAE;gBAChB,IAAI,WAAW,GAAG,CAAC,CAAC;gBACpB,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;oBACjC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE;wBAClC,IAAI,WAAW,GAAG,MAAM,CAAC,EAAE;4BAAE,WAAW,GAAG,MAAM,CAAC,EAAE,CAAC;qBACrD;iBACD;gBACD,IAAI,aAAa,GAAG,MAAM,GAAG,MAAM,CAAC;gBACpC,IAAI,WAAW,IAAI,EAAE;oBAAE,aAAa,IAAI,GAAG,CAAC;gBAC5C,IAAI,WAAW,IAAI,GAAG;oBAAE,aAAa,IAAI,GAAG,CAAC;gBAC7C,IAAI,WAAW,IAAI,IAAI;oBAAE,aAAa,IAAI,GAAG,CAAC;gBAC9C,KAAK,MAAM,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE;oBACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC;oBAC9C,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE;wBACnE,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE;4BAClC,IAAI,MAAM,CAAC,EAAE,GAAG,IAAI,IAAI,WAAW,IAAI,IAAI;gCAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BAChE,IAAI,MAAM,CAAC,EAAE,GAAG,GAAG,IAAI,WAAW,IAAI,GAAG;gCAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BAC9D,IAAI,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,WAAW,IAAI,EAAE;gCAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBAC5D;6BAAM;4BACN,IAAI,WAAW,IAAI,IAAI;gCAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BAC5C,IAAI,WAAW,IAAI,GAAG;gCAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BAC3C,IAAI,WAAW,IAAI,EAAE;gCAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBAC1C;wBACD,IAAI,IAAI,KAAK,MAAM,CAAC,EAAE,EAAE;4BACvB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;4BACzB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACnB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACnB;6BAAM;4BACN,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACnB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;4BACvB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACnB;qBACD;oBACD,IAAI,IAAI,KAAK,MAAM,CAAC,EAAE,EAAE;wBACvB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAClB;oBACD,uBAAuB,CAAC,MAAM,CAAC,CAAC;oBAChC,OAAO,EAAE,CAAC;oBACV,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;iBAC5C;gBACD,IAAI,GAAG,CAAC,eAAe,GAAG,CAAC,EAAE;oBAC5B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACrB,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACjD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;oBACnC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;oBACrD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAClE,OAAO,EAAE,CAAC;iBACV;aACD;QACF,CAAC,CAAC;QAEF,IAAI,GAAG,CAAC,MAAM,EAAE;YACf,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE;gBAC/B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACxB,IAAI,KAAK,CAAC,EAAE,GAAG,IAAI;oBAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACxC,IAAI,KAAK,CAAC,EAAE,GAAG,GAAG;oBAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACvC,IAAI,KAAK,CAAC,EAAE,GAAG,EAAE;oBAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACxB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACrC,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC1C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBACtC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;iBACnB;gBACD,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACnB,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxD,6BAA6B;gBAC7B,oCAAoC;gBACpC,yBAAyB;gBACzB,sBAAsB;gBACtB,wBAAwB;gBACxB,IAAI;gBACJ,qCAAqC;gBACrC,yBAAyB;gBACzB,sBAAsB;gBACtB,wBAAwB;gBACxB,IAAI;gBACJ,qCAAqC;gBACrC,yBAAyB;gBACzB,sBAAsB;gBACtB,wBAAwB;gBACxB,IAAI;gBACJ,IAAI,KAAK,CAAC,eAAe,EAAE;oBAC1B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE;wBACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;wBAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnB,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;wBAC5B,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE;4BAC1B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;4BACpB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;4BAClB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACnB;wBACD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;qBACpB;iBACD;gBACD,IAAI,KAAK,CAAC,KAAK,EAAE;oBAChB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;iBAC1B;qBAAM,IAAI,KAAK,CAAC,OAAO,EAAE;oBACzB,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;iBAC5B;gBACD,IAAI,KAAK,CAAC,QAAQ,EAAE;oBACnB,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;iBAC5B;gBACD,IAAI,KAAK,CAAC,QAAQ,EAAE;oBACnB,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;iBAC5B;gBACD,IAAI,KAAK,CAAC,MAAM,EAAE;oBACjB,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;iBAClC;gBACD,OAAO,EAAE,CAAC;gBACV,IAAI,KAAK,CAAC,OAAO,EAAE;oBAClB,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE;wBACnC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;wBACxB,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE;4BAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;4BACxC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACnB;wBACD,IAAI,MAAM,CAAC,OAAO,EAAE;4BACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;4BAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBACnB;wBACD,IAAI,MAAM,CAAC,MAAM,EAAE;4BAClB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;4BACnB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;4BAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;4BACpB,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;4BACxD,IAAI,MAAM,EAAE;gCACX,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gCACzB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;6BACnB;yBACD;wBACD,IAAI,MAAM,CAAC,GAAG,EAAE;4BACf,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;yBAC1B;wBACD,OAAO,EAAE,CAAC;qBACV;iBACD;gBACD,kBAAkB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;aAC/B;SACD;QAED,kBAAkB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAE5B,IAAI,GAAG,CAAC,OAAO,EAAE;YAChB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;gBAC9C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBACpC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC/B,OAAO,EAAE,CAAC;oBACV,IAAI,OAAO,CAAC,KAAK,EAAE;wBAClB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;qBACrB;oBACD,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,CAAC;oBAClC,OAAO,EAAE,CAAC;oBACV,IAAI,MAAM,GAAG,EAAE,CAAC;oBAChB,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE;wBACpC,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;wBAC1B,IAAI,MAAM,GAAG,MAAM,CAAC;wBACpB,QAAQ,KAAK,CAAC,IAAI,EAAE;4BACnB,KAAK,gBAAO,CAAC,KAAK;gCACjB,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC;gCAClC,OAAO,EAAE,CAAC;gCACV,SAAS;4BACV,KAAK,gBAAO,CAAC,KAAK;gCACjB,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC;gCACnB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,IAAI;gCAChB,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;gCACtB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,IAAI;gCAChB,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;gCACrB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,GAAG;gCACf,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;gCACpB,MAAM;4BACP,KAAK,gBAAO,CAAC,KAAK,CAAC;4BACnB,KAAK,gBAAO,CAAC,KAAK;gCACjB,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;gCACtB,MAAM;4BACP,KAAK,gBAAO,CAAC,MAAM;gCAClB,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;gCACvB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,OAAO;gCACnB,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;gCACvB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,UAAU;gCACtB,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;gCACvB,MAAM,GAAG,OAAO,CAAC;gCACjB,MAAM;4BACP,KAAK,gBAAO,CAAC,IAAI;gCAChB,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC;gCACvB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,KAAK;gCACjB,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;gCACpB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,cAAc;gCAC1B,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;gCACpB,MAAM,GAAG,MAAM,CAAC;gCAChB,MAAM;4BACP,KAAK,gBAAO,CAAC,QAAQ;gCACpB,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;oCACrB,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gCAC7C,SAAS;yBACV;wBACD,IAAI,KAAK,CAAC,OAAO,EAAE;4BAClB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;gCAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;gCACpC,KAAK,CAAC,IAAI,CAAC,CAAC;gCACZ,OAAO,EAAE,CAAC;6BACV;yBACD;wBACD,IAAI,KAAK,CAAC,KAAK,EAAE;4BAChB,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;gCAC/B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,KAAK,IAAI,EAAE,CAAC,CAAC;gCACpC,OAAO,EAAE,CAAC;6BACV;yBACD;wBACD,QAAQ,KAAK,CAAC,IAAI,EAAE;4BACnB,KAAK,gBAAO,CAAC,KAAK;gCACjB,MAAM,IAAI,IAAI,CAAC;gCACf,MAAM;yBACP;qBACD;oBACD,IAAI,OAAO,CAAC,eAAe,EAAE;wBAC5B,MAAM,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,eAAe,eAAe,CAAC,CAAC;wBAC3D,OAAO,EAAE,CAAC;qBACV;iBACD;aACD;SACD;QAED,IAAI,GAAG,CAAC,QAAQ,EAAE;YACjB,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,QAAQ,EAAE;gBACnC,OAAO,EAAE,CAAC;gBACV,wCAAwC;gBACxC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;gBACpC,OAAO,EAAE,CAAC;aACV;SACD;QACD,IAAI,GAAG,CAAC,MAAM,EAAE;YACf,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,MAAM,EAAE;gBAC/B,OAAO,EAAE,CAAC;gBACV,sCAAsC;gBACtC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClC,OAAO,EAAE,CAAC;aACV;SACD;QACD,IAAI,GAAG,CAAC,QAAQ,EAAE;YACjB,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE;gBACjC,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;gBACzD,IAAI,WAAW,EAAE;oBAChB,IAAI,KAAK,CAAC,IAAI,EAAE;wBACf,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;wBACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACxB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;qBACnB;yBAAM;wBACN,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;qBACvB;oBACD,OAAO,EAAE,CAAC;oBACV,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACjB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;oBAC/C,OAAO,EAAE,CAAC;iBACV;aACD;SACD;QACD,IAAI,GAAG,CAAC,kBAAkB,EAAE;YAC3B,MAAM,CAAC,MAAM,CACZ,8DAA8D,CAC9D,CAAC;SACF;QAED,OAAO,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE;YACpC,GAAG,CAAC,GAAG,EAAE,CAAC;SACV;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrB,CAAC;CACD;AAxyBD,sBAwyBC;;AAED,MAAM,iBAAiB,GAAG;IACzB,UAAU,EAAE,IAAI,CAAC,EAAE;QAClB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE;YAC5D,OAAO,cAAc,CAAC;SACtB;QAED,IAAI,IAAI,IAAI,CAAC,EAAE;YACd,OAAO,SAAS,CAAC;SACjB;QAED,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1D,OAAO,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IACvD,aAAa,CAAC,KAAK,CACpB,EAAE,CAAC;IACJ,CAAC;CACD,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,CAAqB,EAAE,EAAE;IAC7C,OAAO,CAAC,CAAC,SAAS,CAAC;AACpB,CAAC,CAAC;AAEK,MAAM,iBAAiB,GAAG,CAAC,GAAG,IAAI,EAAE,EAAE;IAC5C,IAAI,YAAY,GAAG,EAAE,CAAC;IACtB,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3B,OAAO,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC;AACpE,CAAC,CAAC;AAJW,QAAA,iBAAiB,qBAI5B;AAEF,SAAgB,oBAAoB,CAAC,OAAsB;IAC1D,IAAI,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,OAAO,KAAK,QAAQ;QAC9D,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;SAC5B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;SACxB;QACJ,IAAI,GAAG,GAAG,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;QAC7D,OAAO,GAAG,CAAC,MAAM,CAAC;QAClB,OAAO,GAAG,CAAC;KACX;AACF,CAAC;AATD,oDASC;AAED,SAAS,eAAe,CAAC,IAAuB;IAC/C,MAAM,EAAE,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,IAAI,CAAC;IACpE,QAAQ,EAAE,EAAE;QACX,KAAK,MAAM;YACV,OAAO;gBACN,GAAG,EAAE,KAAK;aACV,CAAC;QACH,KAAK,SAAS;YACb,OAAO;gBACN,GAAG,EAAE,IAAI;aACT,CAAC;QACH,KAAK,aAAa;YACjB,OAAO;gBACN,GAAG,EAAE,KAAK;gBACV,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;gBACjB,2BAA2B;gBAC3B,yBAAyB;aACzB,CAAC;QACH,KAAK,iBAAiB;YACrB,OAAO;gBACN,GAAG,EAAE,KAAK;gBACV,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;gBACjB,QAAQ,EAAE,IAAI;gBACd,aAAa,EAAE,IAAI;gBACnB,wBAAwB;aACxB,CAAC;QACH;YACC,OAAO,EAAE,CAAC;KACX;AACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Creates a hash by name or function
3
+ * @param {string | typeof Hash} algorithm the algorithm name or a constructor creating a hash
4
+ * @returns {Hash} the hash
5
+ */
6
+ export declare const createHash: (algorithm: any) => any;
7
+ //# sourceMappingURL=createHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createHash.d.ts","sourceRoot":"","sources":["../../src/utils/createHash.ts"],"names":[],"mappings":"AAkIA;;;;GAIG;AACH,eAAO,MAAM,UAAU,yBAkCtB,CAAC"}
@@ -0,0 +1,166 @@
1
+ "use strict";
2
+ /*
3
+ MIT License http://www.opensource.org/licenses/mit-license.php
4
+ Author Tobias Koppers @sokra
5
+ */
6
+ //@ts-nocheck
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.createHash = void 0;
9
+ const Hash = require("./hash");
10
+ const BULK_SIZE = 2000;
11
+ // We are using an object instead of a Map as this will stay static during the runtime
12
+ // so access to it can be optimized by v8
13
+ const digestCaches = {};
14
+ class BulkUpdateDecorator extends Hash {
15
+ /**
16
+ * @param {Hash | function(): Hash} hashOrFactory function to create a hash
17
+ * @param {string=} hashKey key for caching
18
+ */
19
+ constructor(hashOrFactory, hashKey) {
20
+ super();
21
+ this.hashKey = hashKey;
22
+ if (typeof hashOrFactory === "function") {
23
+ this.hashFactory = hashOrFactory;
24
+ this.hash = undefined;
25
+ }
26
+ else {
27
+ this.hashFactory = undefined;
28
+ this.hash = hashOrFactory;
29
+ }
30
+ this.buffer = "";
31
+ }
32
+ /**
33
+ * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
34
+ * @param {string|Buffer} data data
35
+ * @param {string=} inputEncoding data encoding
36
+ * @returns {this} updated hash
37
+ */
38
+ update(data, inputEncoding) {
39
+ if (inputEncoding !== undefined ||
40
+ typeof data !== "string" ||
41
+ data.length > BULK_SIZE) {
42
+ if (this.hash === undefined)
43
+ this.hash = this.hashFactory();
44
+ if (this.buffer.length > 0) {
45
+ this.hash.update(this.buffer);
46
+ this.buffer = "";
47
+ }
48
+ this.hash.update(data, inputEncoding);
49
+ }
50
+ else {
51
+ this.buffer += data;
52
+ if (this.buffer.length > BULK_SIZE) {
53
+ if (this.hash === undefined)
54
+ this.hash = this.hashFactory();
55
+ this.hash.update(this.buffer);
56
+ this.buffer = "";
57
+ }
58
+ }
59
+ return this;
60
+ }
61
+ /**
62
+ * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
63
+ * @param {string=} encoding encoding of the return value
64
+ * @returns {string|Buffer} digest
65
+ */
66
+ digest(encoding) {
67
+ let digestCache;
68
+ const buffer = this.buffer;
69
+ if (this.hash === undefined) {
70
+ // short data for hash, we can use caching
71
+ const cacheKey = `${this.hashKey}-${encoding}`;
72
+ digestCache = digestCaches[cacheKey];
73
+ if (digestCache === undefined) {
74
+ digestCache = digestCaches[cacheKey] = new Map();
75
+ }
76
+ const cacheEntry = digestCache.get(buffer);
77
+ if (cacheEntry !== undefined)
78
+ return cacheEntry;
79
+ this.hash = this.hashFactory();
80
+ }
81
+ if (buffer.length > 0) {
82
+ this.hash.update(buffer);
83
+ }
84
+ const digestResult = this.hash.digest(encoding);
85
+ const result = typeof digestResult === "string" ? digestResult : digestResult.toString();
86
+ if (digestCache !== undefined) {
87
+ digestCache.set(buffer, result);
88
+ }
89
+ return result;
90
+ }
91
+ }
92
+ /* istanbul ignore next */
93
+ class DebugHash extends Hash {
94
+ constructor() {
95
+ super();
96
+ this.string = "";
97
+ }
98
+ /**
99
+ * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
100
+ * @param {string|Buffer} data data
101
+ * @param {string=} inputEncoding data encoding
102
+ * @returns {this} updated hash
103
+ */
104
+ update(data, inputEncoding) {
105
+ if (typeof data !== "string")
106
+ data = data.toString("utf-8");
107
+ if (data.startsWith("debug-digest-")) {
108
+ data = Buffer.from(data.slice("debug-digest-".length), "hex").toString();
109
+ }
110
+ this.string += `[${data}](${new Error().stack.split("\n", 3)[2]})\n`;
111
+ return this;
112
+ }
113
+ /**
114
+ * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
115
+ * @param {string=} encoding encoding of the return value
116
+ * @returns {string|Buffer} digest
117
+ */
118
+ digest(encoding) {
119
+ return "debug-digest-" + Buffer.from(this.string).toString("hex");
120
+ }
121
+ }
122
+ let crypto = undefined;
123
+ let createXXHash64 = undefined;
124
+ let createMd4 = undefined;
125
+ let BatchedHash = undefined;
126
+ /**
127
+ * Creates a hash by name or function
128
+ * @param {string | typeof Hash} algorithm the algorithm name or a constructor creating a hash
129
+ * @returns {Hash} the hash
130
+ */
131
+ const createHash = algorithm => {
132
+ if (typeof algorithm === "function") {
133
+ return new BulkUpdateDecorator(() => new algorithm());
134
+ }
135
+ switch (algorithm) {
136
+ // TODO add non-cryptographic algorithm here
137
+ case "debug":
138
+ return new DebugHash();
139
+ case "xxhash64":
140
+ if (createXXHash64 === undefined) {
141
+ createXXHash64 = require("./hash/xxhash64");
142
+ if (BatchedHash === undefined) {
143
+ BatchedHash = require("./hash/BatchedHash");
144
+ }
145
+ }
146
+ return new BatchedHash(createXXHash64());
147
+ case "md4":
148
+ if (createMd4 === undefined) {
149
+ createMd4 = require("./hash/md4");
150
+ if (BatchedHash === undefined) {
151
+ BatchedHash = require("./hash/BatchedHash");
152
+ }
153
+ }
154
+ return new BatchedHash(createMd4());
155
+ case "native-md4":
156
+ if (crypto === undefined)
157
+ crypto = require("crypto");
158
+ return new BulkUpdateDecorator(() => crypto.createHash("md4"), "md4");
159
+ default:
160
+ if (crypto === undefined)
161
+ crypto = require("crypto");
162
+ return new BulkUpdateDecorator(() => crypto.createHash(algorithm), algorithm);
163
+ }
164
+ };
165
+ exports.createHash = createHash;
166
+ //# sourceMappingURL=createHash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createHash.js","sourceRoot":"","sources":["../../src/utils/createHash.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { JsCompatSource } from "@rspack/binding";
2
+ import { Source } from "webpack-sources";
3
+ declare function createSourceFromRaw(source: JsCompatSource): Source;
4
+ declare function createRawFromSource(source: Source): JsCompatSource;
5
+ export { createSourceFromRaw, createRawFromSource };
6
+ //# sourceMappingURL=createSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSource.d.ts","sourceRoot":"","sources":["../../src/utils/createSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,EAA2B,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAElE,iBAAS,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAwB3D;AAED,iBAAS,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAwB3D;AAED,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createRawFromSource = exports.createSourceFromRaw = void 0;
4
+ const webpack_sources_1 = require("webpack-sources");
5
+ function createSourceFromRaw(source) {
6
+ if (source.isRaw) {
7
+ return new webpack_sources_1.RawSource(
8
+ // @ts-expect-error: webpack-sources can accept buffer as source, see: https://github.com/webpack/webpack-sources/blob/9f98066311d53a153fdc7c633422a1d086528027/lib/RawSource.js#L12
9
+ source.isBuffer ? source.source : source.source.toString("utf-8"));
10
+ }
11
+ if (!source.map) {
12
+ return new webpack_sources_1.RawSource(source.source.toString("utf-8"));
13
+ }
14
+ return new webpack_sources_1.CompatSource({
15
+ source() {
16
+ return source.source.toString("utf-8");
17
+ },
18
+ map(_) {
19
+ if (source.map) {
20
+ return JSON.parse(source.map.toString("utf-8"));
21
+ }
22
+ return null;
23
+ }
24
+ });
25
+ }
26
+ exports.createSourceFromRaw = createSourceFromRaw;
27
+ function createRawFromSource(source) {
28
+ const isBuffer = Buffer.isBuffer(source.source());
29
+ if (source instanceof webpack_sources_1.RawSource) {
30
+ return {
31
+ source: source.buffer(),
32
+ isRaw: true,
33
+ isBuffer
34
+ };
35
+ }
36
+ const buffer = source.buffer();
37
+ const map = JSON.stringify(source.map({
38
+ columns: true
39
+ }));
40
+ return {
41
+ source: buffer,
42
+ map: Buffer.from(map),
43
+ isRaw: false,
44
+ isBuffer
45
+ };
46
+ }
47
+ exports.createRawFromSource = createRawFromSource;
48
+ //# sourceMappingURL=createSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createSource.js","sourceRoot":"","sources":["../../src/utils/createSource.ts"],"names":[],"mappings":";;;AAEA,qDAAkE;AAElE,SAAS,mBAAmB,CAAC,MAAsB;IAClD,IAAI,MAAM,CAAC,KAAK,EAAE;QACjB,OAAO,IAAI,2BAAS;QACnB,oLAAoL;QACpL,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CACjE,CAAC;KACF;IAED,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;QAChB,OAAO,IAAI,2BAAS,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;KACtD;IAED,OAAO,IAAI,8BAAY,CAAC;QACvB,MAAM;YACL,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QACD,GAAG,CAAC,CAAC;YACJ,IAAI,MAAM,CAAC,GAAG,EAAE;gBACf,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;aAChD;YAED,OAAO,IAAI,CAAC;QACb,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AA4BQ,kDAAmB;AA1B5B,SAAS,mBAAmB,CAAC,MAAc;IAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAElD,IAAI,MAAM,YAAY,2BAAS,EAAE;QAChC,OAAO;YACN,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;YACvB,KAAK,EAAE,IAAI;YACX,QAAQ;SACR,CAAC;KACF;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;IAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CACzB,MAAM,CAAC,GAAG,CAAC;QACV,OAAO,EAAE,IAAI;KACb,CAAC,CACF,CAAC;IAEF,OAAO;QACN,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QACrB,KAAK,EAAE,KAAK;QACZ,QAAQ;KACR,CAAC;AACH,CAAC;AAE6B,kDAAmB"}
@@ -0,0 +1,16 @@
1
+ export = BatchedHash;
2
+ declare class BatchedHash extends Hash {
3
+ constructor(hash: any);
4
+ string: string;
5
+ encoding: string;
6
+ hash: any;
7
+ /**
8
+ * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
9
+ * @param {string|Buffer} data data
10
+ * @param {string=} inputEncoding data encoding
11
+ * @returns {this} updated hash
12
+ */
13
+ update(data: string | Buffer, inputEncoding?: string | undefined): this;
14
+ }
15
+ import Hash = require("../hash");
16
+ //# sourceMappingURL=BatchedHash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BatchedHash.d.ts","sourceRoot":"","sources":["../../../src/utils/hash/BatchedHash.js"],"names":[],"mappings":";AAUA;IACC,uBAKC;IAHA,eAAuB;IACvB,iBAAyB;IACzB,UAAgB;IAGjB;;;;;OAKG;IACH,aAJW,MAAM,GAAC,MAAM,kBACb,MAAM,eACJ,IAAI,CA8BhB;CAaD"}
@@ -0,0 +1,61 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const Hash = require("../hash");
7
+ const MAX_SHORT_STRING = require("./wasm-hash").MAX_SHORT_STRING;
8
+ class BatchedHash extends Hash {
9
+ constructor(hash) {
10
+ super();
11
+ this.string = undefined;
12
+ this.encoding = undefined;
13
+ this.hash = hash;
14
+ }
15
+ /**
16
+ * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
17
+ * @param {string|Buffer} data data
18
+ * @param {string=} inputEncoding data encoding
19
+ * @returns {this} updated hash
20
+ */
21
+ update(data, inputEncoding) {
22
+ if (this.string !== undefined) {
23
+ if (typeof data === "string" &&
24
+ inputEncoding === this.encoding &&
25
+ this.string.length + data.length < MAX_SHORT_STRING) {
26
+ this.string += data;
27
+ return this;
28
+ }
29
+ this.hash.update(this.string, this.encoding);
30
+ this.string = undefined;
31
+ }
32
+ if (typeof data === "string") {
33
+ if (data.length < MAX_SHORT_STRING &&
34
+ // base64 encoding is not valid since it may contain padding chars
35
+ (!inputEncoding || !inputEncoding.startsWith("ba"))) {
36
+ this.string = data;
37
+ this.encoding = inputEncoding;
38
+ }
39
+ else {
40
+ this.hash.update(data, inputEncoding);
41
+ }
42
+ }
43
+ else {
44
+ this.hash.update(data);
45
+ }
46
+ return this;
47
+ }
48
+ /**
49
+ * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
50
+ * @param {string=} encoding encoding of the return value
51
+ * @returns {string|Buffer} digest
52
+ */
53
+ digest(encoding) {
54
+ if (this.string !== undefined) {
55
+ this.hash.update(this.string, this.encoding);
56
+ }
57
+ return this.hash.digest(encoding);
58
+ }
59
+ }
60
+ module.exports = BatchedHash;
61
+ //# sourceMappingURL=BatchedHash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BatchedHash.js","sourceRoot":"","sources":["../../../src/utils/hash/BatchedHash.js"],"names":[],"mappings":"AAAA;;;EAGE;AAEF,YAAY,CAAC;AAEb,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;AAChC,MAAM,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,gBAAgB,CAAC;AAEjE,MAAM,WAAY,SAAQ,IAAI;IAC7B,YAAY,IAAI;QACf,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,aAAa;QACzB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;YAC9B,IACC,OAAO,IAAI,KAAK,QAAQ;gBACxB,aAAa,KAAK,IAAI,CAAC,QAAQ;gBAC/B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,gBAAgB,EAClD;gBACD,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;gBACpB,OAAO,IAAI,CAAC;aACZ;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7C,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;SACxB;QACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC7B,IACC,IAAI,CAAC,MAAM,GAAG,gBAAgB;gBAC9B,kEAAkE;gBAClE,CAAC,CAAC,aAAa,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAClD;gBACD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC;aAC9B;iBAAM;gBACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;aACtC;SACD;aAAM;YACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SACvB;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ;QACd,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC7C;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;CACD;AAED,MAAM,CAAC,OAAO,GAAG,WAAW,CAAC"}
@@ -0,0 +1,19 @@
1
+ export = Hash;
2
+ declare class Hash {
3
+ /**
4
+ * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
5
+ * @abstract
6
+ * @param {string|Buffer} data data
7
+ * @param {string=} inputEncoding data encoding
8
+ * @returns {this} updated hash
9
+ */
10
+ update(data: string | Buffer, inputEncoding?: string | undefined): this;
11
+ /**
12
+ * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
13
+ * @abstract
14
+ * @param {string=} encoding encoding of the return value
15
+ * @returns {string|Buffer} digest
16
+ */
17
+ digest(encoding?: string | undefined): string | Buffer;
18
+ }
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/hash/index.js"],"names":[],"mappings":";AAEA;IAEC;;;;;;OAMG;IACH,aAJW,MAAM,GAAC,MAAM,kBACb,MAAM,eACJ,IAAI,CAKhB;IAGD;;;;;OAKG;IACH,kBAHW,MAAM,eACJ,MAAM,GAAC,MAAM,CAKzB;CACD"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ class Hash {
3
+ /* istanbul ignore next */
4
+ /**
5
+ * Update hash {@link https://nodejs.org/api/crypto.html#crypto_hash_update_data_inputencoding}
6
+ * @abstract
7
+ * @param {string|Buffer} data data
8
+ * @param {string=} inputEncoding data encoding
9
+ * @returns {this} updated hash
10
+ */
11
+ update(data, inputEncoding) {
12
+ const AbstractMethodError = require("../AbstractMethodError");
13
+ throw new AbstractMethodError();
14
+ }
15
+ /* istanbul ignore next */
16
+ /**
17
+ * Calculates the digest {@link https://nodejs.org/api/crypto.html#crypto_hash_digest_encoding}
18
+ * @abstract
19
+ * @param {string=} encoding encoding of the return value
20
+ * @returns {string|Buffer} digest
21
+ */
22
+ digest(encoding) {
23
+ const AbstractMethodError = require("../AbstractMethodError");
24
+ throw new AbstractMethodError();
25
+ }
26
+ }
27
+ module.exports = Hash;
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/hash/index.js"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,MAAM,IAAI;IACT,0BAA0B;IAC1B;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,EAAE,aAAa;QACzB,MAAM,mBAAmB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAC9D,MAAM,IAAI,mBAAmB,EAAE,CAAC;IACjC,CAAC;IAED,0BAA0B;IAC1B;;;;;OAKG;IACH,MAAM,CAAC,QAAQ;QACd,MAAM,mBAAmB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;QAC9D,MAAM,IAAI,mBAAmB,EAAE,CAAC;IACjC,CAAC;CACD;AAED,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const _exports: any;
2
+ export = _exports;
3
+ //# sourceMappingURL=md4.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"md4.d.ts","sourceRoot":"","sources":["../../../src/utils/hash/md4.js"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ /*
2
+ MIT License http://www.opensource.org/licenses/mit-license.php
3
+ Author Tobias Koppers @sokra
4
+ */
5
+ "use strict";
6
+ const create = require("./wasm-hash");
7
+ //#region wasm code: md4 (../../../assembly/hash/md4.asm.ts) --initialMemory 1
8
+ const md4 = new WebAssembly.Module(Buffer.from(
9
+ // 2156 bytes
10
+ "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", "base64"));
11
+ //#endregion
12
+ module.exports = create.bind(null, md4, [], 64, 32);
13
+ //# sourceMappingURL=md4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"md4.js","sourceRoot":"","sources":["../../../src/utils/hash/md4.js"],"names":[],"mappings":"AAAA;;;EAGE;AAEF,YAAY,CAAC;AAEb,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEtC,8EAA8E;AAC9E,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,MAAM,CACjC,MAAM,CAAC,IAAI;AACV,aAAa;AACb,8zFAA8zF,EAC9zF,QAAQ,CACR,CACD,CAAC;AACF,YAAY;AAEZ,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export = create;
2
+ declare function create(wasmModule: any, instancesPool: any, chunkSize: any, digestSize: any): any;
3
+ declare namespace create {
4
+ export { MAX_SHORT_STRING };
5
+ }
6
+ declare const MAX_SHORT_STRING: number;
7
+ //# sourceMappingURL=wasm-hash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-hash.d.ts","sourceRoot":"","sources":["../../../src/utils/hash/wasm-hash.js"],"names":[],"mappings":";AAkJA,mGAaC;;;;AApJD,uCAA2D"}