@kurot/core 1.0.14 → 1.0.15

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 (286) hide show
  1. package/README.md +63 -1
  2. package/dist/kurot/display/Bitmap.d.ts +0 -1
  3. package/dist/kurot/display/Bitmap.d.ts.map +1 -1
  4. package/dist/kurot/display/Bitmap.js +0 -3
  5. package/dist/kurot/display/Bitmap.js.map +1 -1
  6. package/dist/kurot/display/DisplayObject.d.ts +16 -35
  7. package/dist/kurot/display/DisplayObject.d.ts.map +1 -1
  8. package/dist/kurot/display/DisplayObject.js +6 -41
  9. package/dist/kurot/display/DisplayObject.js.map +1 -1
  10. package/dist/kurot/display/DisplayObjectContainer.d.ts +0 -10
  11. package/dist/kurot/display/DisplayObjectContainer.d.ts.map +1 -1
  12. package/dist/kurot/display/DisplayObjectContainer.js +0 -14
  13. package/dist/kurot/display/DisplayObjectContainer.js.map +1 -1
  14. package/dist/kurot/display/Graphics.d.ts +0 -1
  15. package/dist/kurot/display/Graphics.d.ts.map +1 -1
  16. package/dist/kurot/display/Graphics.js +0 -3
  17. package/dist/kurot/display/Graphics.js.map +1 -1
  18. package/dist/kurot/display/Mesh.d.ts +9 -3
  19. package/dist/kurot/display/Mesh.d.ts.map +1 -1
  20. package/dist/kurot/display/Mesh.js +9 -3
  21. package/dist/kurot/display/Mesh.js.map +1 -1
  22. package/dist/kurot/display/Stage.d.ts +0 -1
  23. package/dist/kurot/display/Stage.d.ts.map +1 -1
  24. package/dist/kurot/display/Stage.js +0 -2
  25. package/dist/kurot/display/Stage.js.map +1 -1
  26. package/dist/kurot/display/enums/BlendMode.d.ts.map +1 -1
  27. package/dist/kurot/display/enums/BlendMode.js +0 -2
  28. package/dist/kurot/display/enums/BlendMode.js.map +1 -1
  29. package/dist/kurot/display/texture/RenderTexture.d.ts +0 -1
  30. package/dist/kurot/display/texture/RenderTexture.d.ts.map +1 -1
  31. package/dist/kurot/display/texture/RenderTexture.js +0 -4
  32. package/dist/kurot/display/texture/RenderTexture.js.map +1 -1
  33. package/dist/kurot/display/texture/Texture.d.ts +9 -3
  34. package/dist/kurot/display/texture/Texture.d.ts.map +1 -1
  35. package/dist/kurot/display/texture/Texture.js +9 -3
  36. package/dist/kurot/display/texture/Texture.js.map +1 -1
  37. package/dist/kurot/events/Event.d.ts +3 -1
  38. package/dist/kurot/events/Event.d.ts.map +1 -1
  39. package/dist/kurot/events/Event.js +0 -2
  40. package/dist/kurot/events/Event.js.map +1 -1
  41. package/dist/kurot/events/EventDispatcher.d.ts.map +1 -1
  42. package/dist/kurot/events/EventDispatcher.js +0 -2
  43. package/dist/kurot/events/EventDispatcher.js.map +1 -1
  44. package/dist/kurot/events/TimerEvent.d.ts +0 -1
  45. package/dist/kurot/events/TimerEvent.d.ts.map +1 -1
  46. package/dist/kurot/events/TimerEvent.js +0 -1
  47. package/dist/kurot/events/TimerEvent.js.map +1 -1
  48. package/dist/kurot/events/TouchEvent.d.ts +0 -1
  49. package/dist/kurot/events/TouchEvent.d.ts.map +1 -1
  50. package/dist/kurot/events/TouchEvent.js +0 -1
  51. package/dist/kurot/events/TouchEvent.js.map +1 -1
  52. package/dist/kurot/filters/BlurFilter.d.ts.map +1 -1
  53. package/dist/kurot/filters/BlurFilter.js +0 -3
  54. package/dist/kurot/filters/BlurFilter.js.map +1 -1
  55. package/dist/kurot/filters/DropShadowFilter.d.ts.map +1 -1
  56. package/dist/kurot/filters/DropShadowFilter.js +0 -2
  57. package/dist/kurot/filters/DropShadowFilter.js.map +1 -1
  58. package/dist/kurot/geom/Matrix.d.ts +3 -9
  59. package/dist/kurot/geom/Matrix.d.ts.map +1 -1
  60. package/dist/kurot/geom/Matrix.js +3 -9
  61. package/dist/kurot/geom/Matrix.js.map +1 -1
  62. package/dist/kurot/geom/Point.d.ts +3 -1
  63. package/dist/kurot/geom/Point.d.ts.map +1 -1
  64. package/dist/kurot/geom/Point.js +3 -1
  65. package/dist/kurot/geom/Point.js.map +1 -1
  66. package/dist/kurot/geom/Rectangle.d.ts +3 -3
  67. package/dist/kurot/geom/Rectangle.d.ts.map +1 -1
  68. package/dist/kurot/geom/Rectangle.js +3 -3
  69. package/dist/kurot/geom/Rectangle.js.map +1 -1
  70. package/dist/kurot/media/Sound.d.ts.map +1 -1
  71. package/dist/kurot/media/Sound.js +1 -8
  72. package/dist/kurot/media/Sound.js.map +1 -1
  73. package/dist/kurot/media/SoundChannel.d.ts +0 -1
  74. package/dist/kurot/media/SoundChannel.d.ts.map +1 -1
  75. package/dist/kurot/media/SoundChannel.js +0 -3
  76. package/dist/kurot/media/SoundChannel.js.map +1 -1
  77. package/dist/kurot/player/InstructionSet.d.ts +4 -17
  78. package/dist/kurot/player/InstructionSet.d.ts.map +1 -1
  79. package/dist/kurot/player/InstructionSet.js +3 -20
  80. package/dist/kurot/player/InstructionSet.js.map +1 -1
  81. package/dist/kurot/player/KurotOptions.d.ts +24 -9
  82. package/dist/kurot/player/KurotOptions.d.ts.map +1 -1
  83. package/dist/kurot/player/Player.d.ts +15 -9
  84. package/dist/kurot/player/Player.d.ts.map +1 -1
  85. package/dist/kurot/player/Player.js +20 -22
  86. package/dist/kurot/player/Player.js.map +1 -1
  87. package/dist/kurot/player/RenderBuffer.d.ts +4 -14
  88. package/dist/kurot/player/RenderBuffer.d.ts.map +1 -1
  89. package/dist/kurot/player/RenderContext.d.ts +11 -27
  90. package/dist/kurot/player/RenderContext.d.ts.map +1 -1
  91. package/dist/kurot/player/RenderPipe.d.ts +3 -13
  92. package/dist/kurot/player/RenderPipe.d.ts.map +1 -1
  93. package/dist/kurot/player/ScreenAdapter.d.ts +6 -5
  94. package/dist/kurot/player/ScreenAdapter.d.ts.map +1 -1
  95. package/dist/kurot/player/ScreenAdapter.js +6 -15
  96. package/dist/kurot/player/ScreenAdapter.js.map +1 -1
  97. package/dist/kurot/player/SystemTicker.d.ts +13 -9
  98. package/dist/kurot/player/SystemTicker.d.ts.map +1 -1
  99. package/dist/kurot/player/SystemTicker.js +10 -13
  100. package/dist/kurot/player/SystemTicker.js.map +1 -1
  101. package/dist/kurot/player/TouchHandler.d.ts +3 -4
  102. package/dist/kurot/player/TouchHandler.d.ts.map +1 -1
  103. package/dist/kurot/player/TouchHandler.js +3 -12
  104. package/dist/kurot/player/TouchHandler.js.map +1 -1
  105. package/dist/kurot/player/canvas/CanvasBuffer.d.ts.map +1 -1
  106. package/dist/kurot/player/canvas/CanvasBuffer.js +0 -3
  107. package/dist/kurot/player/canvas/CanvasBuffer.js.map +1 -1
  108. package/dist/kurot/player/canvas/CanvasRenderer.d.ts +9 -17
  109. package/dist/kurot/player/canvas/CanvasRenderer.d.ts.map +1 -1
  110. package/dist/kurot/player/canvas/CanvasRenderer.js +182 -74
  111. package/dist/kurot/player/canvas/CanvasRenderer.js.map +1 -1
  112. package/dist/kurot/player/canvas/DisplayList.d.ts +1 -5
  113. package/dist/kurot/player/canvas/DisplayList.d.ts.map +1 -1
  114. package/dist/kurot/player/canvas/DisplayList.js +1 -5
  115. package/dist/kurot/player/canvas/DisplayList.js.map +1 -1
  116. package/dist/kurot/player/createPlayer.d.ts.map +1 -1
  117. package/dist/kurot/player/createPlayer.js +0 -2
  118. package/dist/kurot/player/createPlayer.js.map +1 -1
  119. package/dist/kurot/player/pipes/BitmapPipe.d.ts +3 -9
  120. package/dist/kurot/player/pipes/BitmapPipe.d.ts.map +1 -1
  121. package/dist/kurot/player/pipes/BitmapPipe.js +19 -33
  122. package/dist/kurot/player/pipes/BitmapPipe.js.map +1 -1
  123. package/dist/kurot/player/pipes/FilterPipe.d.ts +11 -28
  124. package/dist/kurot/player/pipes/FilterPipe.d.ts.map +1 -1
  125. package/dist/kurot/player/pipes/FilterPipe.js +8 -51
  126. package/dist/kurot/player/pipes/FilterPipe.js.map +1 -1
  127. package/dist/kurot/player/pipes/GraphicsPipe.d.ts +2 -7
  128. package/dist/kurot/player/pipes/GraphicsPipe.d.ts.map +1 -1
  129. package/dist/kurot/player/pipes/GraphicsPipe.js +28 -38
  130. package/dist/kurot/player/pipes/GraphicsPipe.js.map +1 -1
  131. package/dist/kurot/player/pipes/MaskPipe.d.ts +9 -14
  132. package/dist/kurot/player/pipes/MaskPipe.d.ts.map +1 -1
  133. package/dist/kurot/player/pipes/MaskPipe.js +24 -46
  134. package/dist/kurot/player/pipes/MaskPipe.js.map +1 -1
  135. package/dist/kurot/player/pipes/MeshPipe.d.ts +4 -1
  136. package/dist/kurot/player/pipes/MeshPipe.d.ts.map +1 -1
  137. package/dist/kurot/player/pipes/MeshPipe.js +20 -22
  138. package/dist/kurot/player/pipes/MeshPipe.js.map +1 -1
  139. package/dist/kurot/player/pipes/ParticlePipe.d.ts +1 -2
  140. package/dist/kurot/player/pipes/ParticlePipe.d.ts.map +1 -1
  141. package/dist/kurot/player/pipes/ParticlePipe.js +6 -14
  142. package/dist/kurot/player/pipes/ParticlePipe.js.map +1 -1
  143. package/dist/kurot/player/pipes/TextPipe.d.ts +3 -23
  144. package/dist/kurot/player/pipes/TextPipe.d.ts.map +1 -1
  145. package/dist/kurot/player/pipes/TextPipe.js +31 -74
  146. package/dist/kurot/player/pipes/TextPipe.js.map +1 -1
  147. package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts +1 -12
  148. package/dist/kurot/player/webgl/MultiTextureBatcher.d.ts.map +1 -1
  149. package/dist/kurot/player/webgl/MultiTextureBatcher.js +2 -11
  150. package/dist/kurot/player/webgl/MultiTextureBatcher.js.map +1 -1
  151. package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts +4 -4
  152. package/dist/kurot/player/webgl/WebGLDrawCmdManager.d.ts.map +1 -1
  153. package/dist/kurot/player/webgl/WebGLDrawCmdManager.js +11 -10
  154. package/dist/kurot/player/webgl/WebGLDrawCmdManager.js.map +1 -1
  155. package/dist/kurot/player/webgl/WebGLProgram.d.ts.map +1 -1
  156. package/dist/kurot/player/webgl/WebGLProgram.js.map +1 -1
  157. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts +2 -0
  158. package/dist/kurot/player/webgl/WebGLRenderBuffer.d.ts.map +1 -1
  159. package/dist/kurot/player/webgl/WebGLRenderBuffer.js +9 -6
  160. package/dist/kurot/player/webgl/WebGLRenderBuffer.js.map +1 -1
  161. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts +14 -43
  162. package/dist/kurot/player/webgl/WebGLRenderContext.d.ts.map +1 -1
  163. package/dist/kurot/player/webgl/WebGLRenderContext.js +34 -114
  164. package/dist/kurot/player/webgl/WebGLRenderContext.js.map +1 -1
  165. package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts +2 -0
  166. package/dist/kurot/player/webgl/WebGLRenderTarget.d.ts.map +1 -1
  167. package/dist/kurot/player/webgl/WebGLRenderTarget.js +6 -0
  168. package/dist/kurot/player/webgl/WebGLRenderTarget.js.map +1 -1
  169. package/dist/kurot/player/webgl/WebGLRenderer.d.ts +3 -147
  170. package/dist/kurot/player/webgl/WebGLRenderer.d.ts.map +1 -1
  171. package/dist/kurot/player/webgl/WebGLRenderer.js +6 -210
  172. package/dist/kurot/player/webgl/WebGLRenderer.js.map +1 -1
  173. package/dist/kurot/player/webgl/WebGLUtils.d.ts +4 -4
  174. package/dist/kurot/player/webgl/WebGLUtils.d.ts.map +1 -1
  175. package/dist/kurot/player/webgl/WebGLUtils.js +3 -2
  176. package/dist/kurot/player/webgl/WebGLUtils.js.map +1 -1
  177. package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts +6 -2
  178. package/dist/kurot/player/webgl/WebGLVertexArrayObject.d.ts.map +1 -1
  179. package/dist/kurot/player/webgl/WebGLVertexArrayObject.js +6 -11
  180. package/dist/kurot/player/webgl/WebGLVertexArrayObject.js.map +1 -1
  181. package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts +1 -2
  182. package/dist/kurot/player/webgl/shaders/ShaderLib.d.ts.map +1 -1
  183. package/dist/kurot/player/webgl/shaders/ShaderLib.js +1 -6
  184. package/dist/kurot/player/webgl/shaders/ShaderLib.js.map +1 -1
  185. package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts +1 -2
  186. package/dist/kurot/player/webgl/shaders/ShaderLib2.d.ts.map +1 -1
  187. package/dist/kurot/player/webgl/shaders/ShaderLib2.js +1 -13
  188. package/dist/kurot/player/webgl/shaders/ShaderLib2.js.map +1 -1
  189. package/dist/kurot/player/webgl/shaders/index.d.ts.map +1 -1
  190. package/dist/kurot/player/webgl/shaders/index.js +0 -2
  191. package/dist/kurot/player/webgl/shaders/index.js.map +1 -1
  192. package/dist/kurot/resource/Resource.d.ts +1 -1
  193. package/dist/kurot/resource/Resource.d.ts.map +1 -1
  194. package/dist/kurot/resource/Resource.js +1 -12
  195. package/dist/kurot/resource/Resource.js.map +1 -1
  196. package/dist/kurot/resource/ResourceEvent.d.ts +15 -5
  197. package/dist/kurot/resource/ResourceEvent.d.ts.map +1 -1
  198. package/dist/kurot/resource/ResourceLoader.d.ts +15 -24
  199. package/dist/kurot/resource/ResourceLoader.d.ts.map +1 -1
  200. package/dist/kurot/resource/ResourceLoader.js +17 -35
  201. package/dist/kurot/resource/ResourceLoader.js.map +1 -1
  202. package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts +3 -4
  203. package/dist/kurot/resource/analyzers/AnalyzerBase.d.ts.map +1 -1
  204. package/dist/kurot/resource/analyzers/AnalyzerBase.js +3 -5
  205. package/dist/kurot/resource/analyzers/AnalyzerBase.js.map +1 -1
  206. package/dist/kurot/resource/analyzers/ImageAnalyzer.d.ts.map +1 -1
  207. package/dist/kurot/resource/analyzers/ImageAnalyzer.js +0 -1
  208. package/dist/kurot/resource/analyzers/ImageAnalyzer.js.map +1 -1
  209. package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts +6 -5
  210. package/dist/kurot/resource/analyzers/SheetAnalyzer.d.ts.map +1 -1
  211. package/dist/kurot/resource/analyzers/SheetAnalyzer.js +6 -12
  212. package/dist/kurot/resource/analyzers/SheetAnalyzer.js.map +1 -1
  213. package/dist/kurot/resource/analyzers/SoundAnalyzer.d.ts.map +1 -1
  214. package/dist/kurot/resource/analyzers/SoundAnalyzer.js +0 -1
  215. package/dist/kurot/resource/analyzers/SoundAnalyzer.js.map +1 -1
  216. package/dist/kurot/resource/index.d.ts.map +1 -1
  217. package/dist/kurot/resource/index.js +0 -3
  218. package/dist/kurot/resource/index.js.map +1 -1
  219. package/dist/kurot/system/Capabilities.d.ts +11 -13
  220. package/dist/kurot/system/Capabilities.d.ts.map +1 -1
  221. package/dist/kurot/system/Capabilities.js +12 -18
  222. package/dist/kurot/system/Capabilities.js.map +1 -1
  223. package/dist/kurot/text/BitmapFont.d.ts +0 -1
  224. package/dist/kurot/text/BitmapFont.d.ts.map +1 -1
  225. package/dist/kurot/text/BitmapFont.js +0 -2
  226. package/dist/kurot/text/BitmapFont.js.map +1 -1
  227. package/dist/kurot/text/BitmapText.d.ts +0 -5
  228. package/dist/kurot/text/BitmapText.d.ts.map +1 -1
  229. package/dist/kurot/text/BitmapText.js +0 -6
  230. package/dist/kurot/text/BitmapText.js.map +1 -1
  231. package/dist/kurot/text/HtmlTextParser.d.ts +3 -1
  232. package/dist/kurot/text/HtmlTextParser.d.ts.map +1 -1
  233. package/dist/kurot/text/HtmlTextParser.js +3 -1
  234. package/dist/kurot/text/HtmlTextParser.js.map +1 -1
  235. package/dist/kurot/text/InputController.d.ts.map +1 -1
  236. package/dist/kurot/text/InputController.js +0 -2
  237. package/dist/kurot/text/InputController.js.map +1 -1
  238. package/dist/kurot/text/StageText.d.ts +1 -20
  239. package/dist/kurot/text/StageText.d.ts.map +1 -1
  240. package/dist/kurot/text/StageText.js +2 -46
  241. package/dist/kurot/text/StageText.js.map +1 -1
  242. package/dist/kurot/text/TextField.d.ts +0 -12
  243. package/dist/kurot/text/TextField.d.ts.map +1 -1
  244. package/dist/kurot/text/TextField.js +0 -41
  245. package/dist/kurot/text/TextField.js.map +1 -1
  246. package/dist/kurot/text/WordWrap.d.ts +0 -1
  247. package/dist/kurot/text/WordWrap.d.ts.map +1 -1
  248. package/dist/kurot/text/WordWrap.js +0 -3
  249. package/dist/kurot/text/WordWrap.js.map +1 -1
  250. package/dist/kurot/utils/Base64Util.d.ts +1 -6
  251. package/dist/kurot/utils/Base64Util.d.ts.map +1 -1
  252. package/dist/kurot/utils/Base64Util.js +1 -7
  253. package/dist/kurot/utils/Base64Util.js.map +1 -1
  254. package/dist/kurot/utils/DebugLog.js +0 -1
  255. package/dist/kurot/utils/DebugLog.js.map +1 -1
  256. package/dist/kurot/utils/FontManager.d.ts.map +1 -1
  257. package/dist/kurot/utils/FontManager.js +3 -1
  258. package/dist/kurot/utils/FontManager.js.map +1 -1
  259. package/dist/kurot/utils/NumberUtils.d.ts.map +1 -1
  260. package/dist/kurot/utils/NumberUtils.js +0 -1
  261. package/dist/kurot/utils/NumberUtils.js.map +1 -1
  262. package/package.json +14 -3
  263. package/dist/kurot/benchmark/BenchmarkRunner.d.ts +0 -60
  264. package/dist/kurot/benchmark/BenchmarkRunner.d.ts.map +0 -1
  265. package/dist/kurot/benchmark/BenchmarkRunner.js +0 -112
  266. package/dist/kurot/benchmark/BenchmarkRunner.js.map +0 -1
  267. package/dist/kurot/benchmark/MetricsCollector.d.ts +0 -34
  268. package/dist/kurot/benchmark/MetricsCollector.d.ts.map +0 -1
  269. package/dist/kurot/benchmark/MetricsCollector.js +0 -123
  270. package/dist/kurot/benchmark/MetricsCollector.js.map +0 -1
  271. package/dist/kurot/benchmark/PerfPanel.d.ts +0 -24
  272. package/dist/kurot/benchmark/PerfPanel.d.ts.map +0 -1
  273. package/dist/kurot/benchmark/PerfPanel.js +0 -131
  274. package/dist/kurot/benchmark/PerfPanel.js.map +0 -1
  275. package/dist/kurot/benchmark/ReportExporter.d.ts +0 -8
  276. package/dist/kurot/benchmark/ReportExporter.d.ts.map +0 -1
  277. package/dist/kurot/benchmark/ReportExporter.js +0 -54
  278. package/dist/kurot/benchmark/ReportExporter.js.map +0 -1
  279. package/dist/kurot/benchmark/SceneRegistry.d.ts +0 -16
  280. package/dist/kurot/benchmark/SceneRegistry.d.ts.map +0 -1
  281. package/dist/kurot/benchmark/SceneRegistry.js +0 -233
  282. package/dist/kurot/benchmark/SceneRegistry.js.map +0 -1
  283. package/dist/kurot/benchmark/types.d.ts +0 -47
  284. package/dist/kurot/benchmark/types.d.ts.map +0 -1
  285. package/dist/kurot/benchmark/types.js +0 -2
  286. package/dist/kurot/benchmark/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasRenderer.js","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CanvasRenderer.js","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/CanvasRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAAU,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAIxE,OAAO,EAAY,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAIzE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEhE,MAAM,QAAQ,GAAkC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AACnG,MAAM,wBAAwB,GAAG,IAAI,CAAC;AAYtC,SAAS,aAAa,CAAC,KAAa;IACnC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;IAC/B,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;IAC9B,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;IACvB,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,cAAc;IAEvB,6EAA6E;IACxE,QAAQ,GAAG,KAAK,CAAC;IACjB,UAAU,GAAG,KAAK,CAAC;IACV,gBAAgB,GAAG,IAAI,OAAO,EAA6B,CAAC;IAC5D,kBAAkB,GAAG,IAAI,OAAO,EAA+B,CAAC;IACzE,WAAW,GAAG,QAAQ,CAAC;IAE/B,6EAA6E;IAE7E;;OAEG;IACI,MAAM,CAAC,aAA4B,EAAE,MAAoB,EAAE,MAAe;QAChF,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;QAC5B,IAAI,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,MAAM;YAAE,GAAG,CAAC,OAAO,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IAClB,CAAC;IAEM,eAAe,CACrB,aAA4B,EAC5B,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACpE,CAAC;IAEM,uBAAuB,CAC7B,QAAkB,EAClB,GAA6B,EAC7B,OAAe,EACf,OAAe,EACf,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK;QAEjB,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAC7E,CAAC;IAEM,wBAAwB,CAC9B,EAAa,EACb,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAEM,qBAAqB,CAC3B,MAAc,EACd,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IACD,6EAA6E;IAErE,iBAAiB,CACxB,aAA4B,EAC5B,GAA6B,EAC7B,OAAe,EACf,OAAe,EACf,QAAQ,GAAG,KAAK;QAEhB,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;QAChD,IAAI,YAAY,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,IAAI,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,YAAY,EAAE,CAAC;gBAC7D,IAAI,YAAY,CAAC,iBAAiB,EAAE,EAAE,CAAC;oBACtC,YAAY,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;oBAClC,MAAM,UAAU,GAAG,YAAY,CAAC,gBAAgB,CAAC;oBACjD,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACnF,IAAI,CAAC,iBAAiB,CACrB,aAAa,EACb,YAAY,CAAC,YAAY,CAAC,OAAO,EACjC,YAAY,CAAC,OAAO,EACpB,YAAY,CAAC,OAAO,EACpB,IAAI,CACJ,CAAC;oBACF,YAAY,CAAC,gBAAgB,EAAE,CAAC;gBACjC,CAAC;gBACD,aAAa,CAAC,WAAW,GAAG,KAAK,CAAC;gBAClC,aAAa,CAAC,YAAY,GAAG,KAAK,CAAC;YACpC,CAAC;YACD,IAAI,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;gBACrC,MAAM,UAAU,GAAG,YAAY,CAAC,gBAAgB,CAAC;gBACjD,MAAM,iBAAiB,GAAG,GAAG,CAAC,qBAAqB,CAAC;gBACpD,GAAG,CAAC,qBAAqB,GAAG,YAAY,CAAC,SAAS,KAAK,QAAQ,CAAC;gBAChE,GAAG,CAAC,SAAS,CACZ,YAAY,CAAC,UAAU,CAAC,MAA2B,EACnD,OAAO,GAAG,YAAY,CAAC,OAAO,EAC9B,OAAO,GAAG,YAAY,CAAC,OAAO,EAC9B,YAAY,CAAC,YAAY,CAAC,KAAK,GAAG,UAAU,EAC5C,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,UAAU,CAC7C,CAAC;gBACF,GAAG,CAAC,qBAAqB,GAAG,iBAAiB,CAAC;gBAC9C,SAAS,EAAE,CAAC;YACb,CAAC;YACD,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEnE,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;QAC1C,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAC;QAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,KAAK,CAAC,WAAW,4BAAoB;gBAAE,SAAS;YACpD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC;YACtC,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;YAC/B,CAAC;YAED,IAAI,YAAoB,CAAC;YACzB,IAAI,YAAoB,CAAC;YAEzB,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;gBAC7B,YAAY,GAAG,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;gBAClC,YAAY,GAAG,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC;gBAClC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACX,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;gBAC9D,YAAY,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC;gBACrC,YAAY,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACP,YAAY,GAAG,OAAO,GAAG,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC;gBACzD,YAAY,GAAG,OAAO,GAAG,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC;YAC1D,CAAC;YAED,IAAI,SAA6B,CAAC;YAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACxB,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC;gBAC5B,GAAG,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC;YACjC,CAAC;YAED,IAAI,KAAK,CAAC,WAAW,8BAAsB,EAAE,CAAC;gBAC7C,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC1E,CAAC;iBAAM,IAAI,KAAK,CAAC,WAAW,kCAA0B,EAAE,CAAC;gBACxD,SAAS,IAAI,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC9E,CAAC;iBAAM,IAAI,KAAK,CAAC,WAAW,4BAAoB,EAAE,CAAC;gBAClD,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACP,SAAS,IAAI,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YAC7E,CAAC;YAED,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACzB,GAAG,CAAC,OAAO,EAAE,CAAC;YACf,CAAC;iBAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBACpC,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;YAC7B,CAAC;YACD,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;QACjC,CAAC;QAED,OAAO,SAAS,CAAC;IAClB,CAAC;IAEO,kBAAkB,CACzB,aAA4B,EAC5B,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,MAAM,IAAI,GAAG,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,SAAS,CAAC;QAClE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO,CAAC,CAAC;QACtC,IAAI,aAAa,CAAC,WAAW,EAAE,CAAC;YAC/B,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC;YAClB,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC;QACnB,CAAC;QACD,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtE,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC/E,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,SAAS,CAAC;IAClB,CAAC;IAEO,cAAc,CACrB,aAA4B,EAC5B,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAEzF,MAAM,MAAM,GAAG,aAAa,CAAC,kBAAkB,EAAE,CAAC;QAClD,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,IAAI,YAAY,GAAG,KAAK,CAAC;QAEzB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,MAAM,YAAY,UAAU,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,wBAAwB,CAAC;gBAC9E,IAAI,MAAM,GAAG,CAAC;oBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,MAAM,KAAK,CAAC,CAAC;YACtD,CAAC;iBAAM,IAAI,MAAM,YAAY,gBAAgB,EAAE,CAAC;gBAC/C,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;gBAChD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC5D,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAC5D,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/C,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;gBACtC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;gBACrC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;gBAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;gBACzC,UAAU,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YAC3F,CAAC;iBAAM,IAAI,MAAM,YAAY,UAAU,EAAE,CAAC;gBACzC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/C,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;gBACtC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;gBACrC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;gBAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC;gBAC3D,UAAU,CAAC,IAAI,CAAC,uBAAuB,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;YACnF,CAAC;iBAAM,IAAI,MAAM,YAAY,iBAAiB,EAAE,CAAC;gBAChD,YAAY,GAAG,IAAI,CAAC;YACrB,CAAC;QACF,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,UAAU,KAAK,CAAC,CAAC;QAEpD,yEAAyE;QACzE,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,GAAG,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,YAAY;gBAAE,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC,SAAqC,CAAC;YAErG,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;gBACzB,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;gBACjE,SAAS,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACP,SAAS,IAAI,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC3E,CAAC;YAED,GAAG,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,yEAAyE;QACzE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QAEjC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEhE,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACzB,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7E,CAAC;aAAM,IAAI,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;YACjE,SAAS,IAAI,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACnF,CAAC;aAAM,CAAC;YACP,SAAS,IAAI,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACrB,SAAS,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC;QACV,CAAC;QAED,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QAEvB,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAC/E,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;QAC5B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,MAAM,YAAY,iBAAiB,EAAE,CAAC;gBACzC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACvC,CAAC;QACF,CAAC;QACD,MAAM,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAErC,IAAI,YAAY;YAAE,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC,SAAqC,CAAC;QACrG,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,YAAY;YAAE,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC;QAE/D,SAAS,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,SAAS,GAAG,CAAC,CAAC;IACtB,CAAC;IAEO,YAAY,CACnB,aAA4B,EAC5B,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,IAAI,aAAa,CAAC,SAAS,CAAC;QACxE,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC;QACjC,MAAM,YAAY,GAAG,aAAa,CAAC,UAAU,KAAK,CAAC,CAAC;QAEpD,IAAI,YAAY,EAAE,CAAC;YAClB,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC,SAAqC,CAAC;QACpF,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,CAAC,SAAS,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;YAC9F,GAAG,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,MAAM,GAAG,aAAa,CAAC,kBAAkB,EAAE,CAAC;YAClD,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC7C,IAAI,UAAU;oBAAE,GAAG,CAAC,OAAO,EAAE,CAAC;gBAC9B,IAAI,YAAY;oBAAE,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC;gBAC/D,OAAO,CAAC,CAAC;YACV,CAAC;YACD,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;YACpB,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC;YAEpB,MAAM,aAAa,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAE9E,UAAU,CAAC,wBAAwB,GAAG,gBAAgB,CAAC;YACvD,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;YACjD,MAAM,YAAY,GAAG,aAAa,CAAC,sBAAsB,EAAE,CAAC;YAC5D,UAAU,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,EAC1B,IAAI,GAAG,YAAY,CAAC,CAAC,EACrB,IAAI,GAAG,YAAY,CAAC,CAAC,EACrB,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC;YACvB,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,EAC5B,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;YACtC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC1B,MAAM,EAAE,GAAG,IAAI,GAAG,GAAG,EACpB,EAAE,GAAG,CAAC,IAAI,GAAG,GAAG,EAChB,EAAE,GAAG,CAAC,IAAI,GAAG,GAAG,EAChB,EAAE,GAAG,IAAI,GAAG,GAAG,CAAC;gBACjB,MAAM,GAAG,GAAG,CAAC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;gBAChD,MAAM,GAAG,GAAG,CAAC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;gBAChD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;gBACjD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;gBACjD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;gBACjD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;gBACjD,MAAM,GAAG,GAAG,EAAE,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;gBAC/D,MAAM,GAAG,GAAG,EAAE,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,UAAU,CAAC,EAAE,GAAG,GAAG,GAAG,EAAE,CAAC;gBAC/D,UAAU,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACP,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC;YACD,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,UAAU,CAAC,OAAO,EAAE,CAAC;YACrB,UAAU,CAAC,wBAAwB,GAAG,aAAa,CAAC;YAEpD,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,GAAG,EAAE,CAAC,CAAC;YACjE,aAAa,CAAC,OAAO,EAAE,CAAC;YAExB,IAAI,UAAU;gBAAE,GAAG,CAAC,OAAO,EAAE,CAAC;YAC9B,IAAI,YAAY;gBAAE,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC;YAC/D,OAAO,SAAS,GAAG,CAAC,CAAC;QACtB,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAE/E,IAAI,UAAU;YAAE,GAAG,CAAC,OAAO,EAAE,CAAC;QAC9B,IAAI,YAAY;YAAE,GAAG,CAAC,wBAAwB,GAAG,aAAa,CAAC;QAE/D,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,6EAA6E;IAErE,UAAU,CACjB,aAA4B,EAC5B,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,QAAQ,aAAa,CAAC,iBAAiB,EAAE,CAAC;YACzC;gBACC,OAAO,IAAI,CAAC,UAAU,CAAC,aAAqB,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACtE;gBACC,OAAO,IAAI,CAAC,YAAY,CAAC,aAAuB,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC1E;gBACC,OAAO,IAAI,CAAC,cAAc,CAAE,aAAuB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACtF;gBACC,OAAO,IAAI,CAAC,cAAc,CAAE,aAAwB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACvF;gBACC,OAAO,IAAI,CAAC,eAAe,CAAC,aAA0B,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAChF;gBACC,OAAO,IAAI,CAAC,oBAAoB,CAAC,aAAa,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACxE;gBACC,OAAO,CAAC,CAAC;QACX,CAAC;IACF,CAAC;IAEO,UAAU,CAAC,IAAU,EAAE,GAA6B,EAAE,OAAe,EAAE,OAAe;QAC7F,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QAC3B,IAAI,CAAC,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC;QAEpG,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM;YACpB,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC;YACpD,CAAC,CAAE,EAAE,CAAC,MAA4B,CAAC;QACpC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,GAAG,CAAC,qBAAqB,GAAG,IAAI,CAAC,SAAS,CAAC;QAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACrD,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,IACC,EAAE,GAAG,CAAC;gBACN,EAAE,GAAG,CAAC;gBACN,EAAE,GAAG,CAAC;gBACN,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM;gBAClC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM;gBAClC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EACjC,CAAC;gBACF,SAAS;YACV,CAAC;YACD,IAAI,CAAC,oBAAoB,CACxB,GAAG,EACH,MAAM,EACN,OAAO,EACP,OAAO,EACP,WAAW,EACX,YAAY,EACZ,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,GAAG,EACR,EAAE,EACF,EAAE,EACF,EAAE,EACF,OAAO,GAAG,IAAI,CAAC,aAAa,EAC5B,OAAO,GAAG,IAAI,CAAC,aAAa,CAC5B,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAC;IACV,CAAC;IAEO,YAAY,CAAC,MAAc,EAAE,GAA6B,EAAE,OAAe,EAAE,OAAe;QACnG,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;QAC7B,IAAI,CAAC,EAAE,EAAE,MAAM;YAAE,OAAO,CAAC,CAAC;QAE1B,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;QACxE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3E,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAEvC,GAAG,CAAC,qBAAqB,GAAG,MAAM,CAAC,SAAS,CAAC;QAC7C,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;YACnC,GAAG,CAAC,SAAS,CACZ,EAAE,CAAC,MAA2B,EAC9B,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,YAAY,EACnB,OAAO,GAAG,MAAM,CAAC,aAAa,EAC9B,OAAO,GAAG,MAAM,CAAC,aAAa,EAC9B,KAAK,EACL,KAAK,CACL,CAAC;QACH,CAAC;aAAM,CAAC;YACP,GAAG,CAAC,SAAS,CACZ,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,EACpD,OAAO,GAAG,MAAM,CAAC,aAAa,EAC9B,OAAO,GAAG,MAAM,CAAC,aAAa,EAC9B,KAAK,EACL,KAAK,CACL,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAC;IACV,CAAC;IAEO,qBAAqB,CAAC,MAAc,EAAE,IAAY;QACzD,MAAM,UAAU,GAAG,MAAM,CAAC,UAAW,CAAC;QACtC,IAAI,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,WAAW,GAChB,CAAC,KAAK;YACN,KAAK,CAAC,IAAI,KAAK,IAAI;YACnB,KAAK,CAAC,cAAc,KAAK,UAAU,CAAC,cAAc;YAClD,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO;YAChC,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO;YAChC,KAAK,CAAC,WAAW,KAAK,MAAM,CAAC,WAAW;YACxC,KAAK,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY,CAAC;QAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,KAAK,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACvC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,kBAAkB,CACtB,KAAK,EACL,UAAU,CAAC,MAA2B,EACtC,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,YAAY,EACnB,IAAI,EACJ,UAAU,CAAC,cAAc,CACzB,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAEO,uBAAuB,CAAC,QAAkB,EAAE,IAAY,EAAE,aAAsB;QACvF,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAgB,CAAC;QACzC,IAAI,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,WAAW,GAChB,aAAa;YACb,CAAC,KAAK;YACN,KAAK,CAAC,IAAI,KAAK,IAAI;YACnB,KAAK,CAAC,WAAW,KAAK,MAAM,CAAC,KAAK;YAClC,KAAK,CAAC,YAAY,KAAK,MAAM,CAAC,MAAM,CAAC;QACtC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,KAAK,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACvC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;QAC3G,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IAC7B,CAAC;IAEO,uBAAuB;QAC9B,OAAO;YACN,MAAM,EAAE,IAAI,YAAY,EAAE;YAC1B,IAAI,EAAE,QAAQ;YACd,cAAc,EAAE,CAAC,CAAC;YAClB,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;SACf,CAAC;IACH,CAAC;IAEO,kBAAkB,CACzB,KAAwB,EACxB,MAAyB,EACzB,OAAe,EACf,OAAe,EACf,WAAmB,EACnB,YAAoB,EACpB,IAAY,EACZ,cAAsB;QAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACpD,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACpE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACP,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;QACrC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5F,OAAO,CAAC,wBAAwB,GAAG,UAAU,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,OAAO,CAAC,wBAAwB,GAAG,gBAAgB,CAAC;QACpD,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC5F,OAAO,CAAC,wBAAwB,GAAG,aAAa,CAAC;QACjD,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAClB,KAAK,CAAC,cAAc,GAAG,cAAc,CAAC;QACtC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACxB,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QAChC,KAAK,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAEO,oBAAoB,CAC3B,GAA6B,EAC7B,MAAyB,EACzB,OAAe,EACf,OAAe,EACf,WAAmB,EACnB,YAAoB,EACpB,QAAkB,EAClB,GAAa,EACb,EAAU,EACV,EAAU,EACV,EAAU,EACV,OAAe,EACf,OAAe;QAEf,MAAM,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QAChD,MAAM,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC;QACrD,MAAM,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QAChD,MAAM,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC;QACrD,MAAM,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QAChD,MAAM,GAAG,GAAG,OAAO,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC;QACrD,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAC9E,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO;QAEpD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QACpF,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QACpF,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QACpF,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;QACpF,MAAM,CAAC,GACN,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;YAC7B,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;YAC7B,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAC/B,WAAW,CAAC;QACb,MAAM,CAAC,GACN,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;YAC7B,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;YAC7B,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAC/B,WAAW,CAAC;QAEb,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC;QAC1B,MAAM,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC;QAC1B,MAAM,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC;QAC1B,MAAM,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC;QAC1B,MAAM,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC;QAC1B,MAAM,GAAG,GAAG,GAAG,GAAG,OAAO,CAAC;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,gGAAgG;QAChG,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;QACtC,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3B,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3B,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3B,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,GAAG,CAAC,OAAO,EAAE,CAAC;IACf,CAAC;IAEO,cAAc,CACrB,QAAkB,EAClB,GAA6B,EAC7B,OAAe,EACf,OAAe,EACf,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK;QAEjB,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAE7C,iFAAiF;QACjF,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,QAAQ,CAAC,gBAAgB,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC5D,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC/B,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAEzC,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;oBAC/B,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAC5D,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAE,CAAC;gBAClG,CAAC;gBACD,MAAM,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC;gBACpC,IAAI,EAAE,CAAC,KAAK,KAAK,EAAE,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;oBACzC,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC;oBACd,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACP,QAAQ,CAAC,YAAa,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChD,CAAC;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAa,CAAC;gBACpC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACZ,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACrC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACrC,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC/C,CAAC;gBACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,EAAE,CAAC;gBAEf,QAAQ,CAAC,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC;gBACrC,QAAQ,CAAC,gBAAgB,GAAG,MAAM,CAAC,CAAC,CAAC;gBACrC,QAAQ,CAAC,gBAAgB,GAAG,KAAK,CAAC;YACnC,CAAC;YAED,MAAM,MAAM,GACX,IAAI,CAAC,WAAW,KAAK,QAAQ;gBAC5B,CAAC,CAAC,QAAQ,CAAC,eAAgB;gBAC3B,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;YACtE,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ,CAAC,gBAAiB,EAAE,OAAO,GAAG,QAAQ,CAAC,gBAAiB,CAAC,CAAC;YAClG,OAAO,CAAC,CAAC;QACV,CAAC;QAED,yEAAyE;QACzE,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACnD,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACxB,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,CAAC,CAAC;IACV,CAAC;IAEO,eAAe,CAAC,EAAa,EAAE,GAA6B,EAAE,OAAe,EAAE,OAAe;QACrG,EAAE,CAAC,WAAW,EAAE,CAAC;QAEjB,MAAM,YAAY,GAAG,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC;QAEpE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;QAC3E,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC;QAC/E,IAAI,KAAK,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAExC,GAAG,CAAC,IAAI,EAAE,CAAC;QACX,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAEhC,yEAAyE;QACzE,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;YACnB,GAAG,CAAC,SAAS,GAAG,aAAa,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC;YAClD,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,yEAAyE;QACzE,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;YACf,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YAChD,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC;YAClB,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,YAAY,EAAE,CAAC;YAClB,GAAG,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,CAAC,CAAC;QACV,CAAC;QAED,yEAAyE;QACzE,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAC9B,GAAG,CAAC,IAAI,EAAE,CAAC;QAEX,yEAAyE;QACzE,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC;QACnC,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,eAAe,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC;gBAAE,eAAe,IAAI,WAAW,CAAC;QAC3C,CAAC;QAED,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,EAAE,CAAC,aAAa,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;YAC/C,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9D,CAAC;aAAM,IAAI,EAAE,CAAC,aAAa,KAAK,aAAa,CAAC,MAAM,EAAE,CAAC;YACtD,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,CAAC;QACxD,CAAC;QAED,yEAAyE;QACzE,MAAM,YAAY,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAE3C,4EAA4E;QAC5E,IAAI,KAAK,GAAG,cAAc,GAAG,YAAY,CAAC;QAC1C,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC;YAEf,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,CAAC;gBACjD,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;gBAC7B,SAAS;YACV,CAAC;YAED,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,IAAI,EAAE,CAAC,SAAS,KAAK,eAAe,CAAC,KAAK,EAAE,CAAC;gBAC5C,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YAC5B,CAAC;iBAAM,IAAI,EAAE,CAAC,SAAS,KAAK,eAAe,CAAC,MAAM,EAAE,CAAC;gBACpD,KAAK,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YAED,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC;gBACvB,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC;gBACxC,MAAM,UAAU,GAAG,KAAK,EAAE,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC;gBACtD,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC;gBACpC,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC,SAAS,CAAC;gBACnD,MAAM,WAAW,GAAG,KAAK,EAAE,WAAW,IAAI,EAAE,CAAC,WAAW,CAAC;gBACzD,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC;gBAE1C,MAAM,OAAO,GAAG,aAAa,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBAClE,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;gBACnB,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC5B,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC;gBAEvB,MAAM,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAEzC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChB,GAAG,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;oBAC7C,GAAG,CAAC,SAAS,GAAG,MAAM,GAAG,CAAC,CAAC;oBAC3B,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC;oBACvB,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;oBACtC,SAAS,EAAE,CAAC;gBACb,CAAC;gBAED,GAAG,CAAC,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;gBACzC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACpC,SAAS,EAAE,CAAC;gBAEZ,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC;YACnB,CAAC;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;QAC9B,CAAC;QAED,yEAAyE;QACzE,IAAI,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;YACpD,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC;YACjC,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;YAC1E,GAAG,CAAC,IAAI,GAAG,OAAO,CAAC;YACnB,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAC;YAE5B,IAAI,OAAO,GAAG,CAAC,CAAC;YAChB,IAAI,SAAS,GAAG,CAAC,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAChC,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;oBAC7B,IAAI,SAAS,GAAG,KAAK,IAAI,UAAU,EAAE,CAAC;wBACrC,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC,CAAC;wBAC7D,OAAO,IAAI,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC;wBAC1C,SAAS,GAAG,UAAU,CAAC;wBACvB,MAAM;oBACP,CAAC;oBACD,OAAO,IAAI,EAAE,CAAC,KAAK,CAAC;oBACpB,SAAS,IAAI,KAAK,CAAC;gBACpB,CAAC;gBACD,IAAI,SAAS,IAAI,UAAU;oBAAE,MAAM;gBACnC,OAAO,GAAG,CAAC,CAAC;YACb,CAAC;YAED,MAAM,OAAO,GAAG,cAAc,GAAG,YAAY,CAAC;YAC9C,GAAG,CAAC,SAAS,GAAG,aAAa,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5C,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC3C,SAAS,EAAE,CAAC;QACb,CAAC;QAED,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAEO,oBAAoB,CAC3B,GAAkB,EAClB,GAA6B,EAC7B,OAAe,EACf,OAAe;QAEf,MAAM,EAAE,GAAG,GAYV,CAAC;QAEF,IAAI,EAAE,CAAC,YAAY,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAEpC,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;QAC3B,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;QAC9B,IAAI,CAAC,EAAE,EAAE,MAAM;YAAE,OAAO,CAAC,CAAC;QAE1B,MAAM,MAAM,GAAG,EAAE,CAAC,MAA2B,CAAC;QAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACxC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QACtB,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QAEtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAE/C,GAAG,CAAC,IAAI,EAAE,CAAC;YACX,GAAG,CAAC,WAAW,IAAI,QAAQ,CAAC,KAAK,CAAC;YAClC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;YAEhG,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAErF,GAAG,CAAC,OAAO,EAAE,CAAC;QACf,CAAC;QAED,OAAO,EAAE,CAAC,YAAY,CAAC;IACxB,CAAC;IAEO,aAAa,CAAC,GAA6B;QAClD,IAAI,IAAI,CAAC,QAAQ;YAAE,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,UAAU;YAAE,GAAG,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IACzB,CAAC;IAEO,sBAAsB,CAAC,GAAoB,EAAE,GAA6B,EAAE,UAAU,GAAG,KAAK;QACrG,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YAClB;gBACC,GAAG,CAAC,SAAS,GAAG,UAAU;oBACzB,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC;gBACnG,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrB,MAAM;YACP,+CAAsC,CAAC,CAAC,CAAC;gBACxC,IAAI,UAAU,EAAE,CAAC;oBAChB,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC;oBACvB,GAAG,CAAC,SAAS,EAAE,CAAC;oBAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACrB,MAAM;gBACP,CAAC;gBACD,MAAM,EAAE,GAAG,KAAK,CAAC;gBACjB,IAAI,QAAwB,CAAC;gBAC7B,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;oBAChB,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC;oBACrB,IAAI,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACnC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;wBAChB,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;wBAChB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;wBACjD,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;wBACjD,QAAQ,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;oBAC1E,CAAC;yBAAM,CAAC;wBACP,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC3B,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;wBAC3B,QAAQ,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;oBACrD,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,IAAI,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;wBACnC,QAAQ,GAAG,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxD,CAAC;yBAAM,CAAC;wBACP,QAAQ,GAAG,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;oBACpD,CAAC;gBACF,CAAC;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC5C,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;oBACxB,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;oBACrC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC3F,CAAC;gBACD,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC;gBACzB,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACrB,MAAM;YACP,CAAC;YACD;gBACC,IAAI,IAAI,CAAC,QAAQ;oBAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,UAAU;oBAAE,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,MAAM;YACP;gBACC,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,CAAC;gBAC9B,GAAG,CAAC,WAAW,GAAG,UAAU;oBAC3B,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC;gBACnG,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC;gBACrD,GAAG,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,OAAO,CAAmB,CAAC;gBACzD,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;gBAChC,IAAI,GAAG,CAAC,QAAQ;oBAAE,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,MAAM;YACP;gBACC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM;YACP;gBACC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM;YACP;gBACC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACrD,MAAM;YACP;gBACC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACtE,MAAM;YACP;gBACC,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrC,IAAI,IAAI,CAAC,QAAQ;oBAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,UAAU;oBAAE,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM;YACP,0CAAkC,CAAC,CAAC,CAAC;gBACpC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC;gBACnC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,EAChB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBACb,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;gBACtB,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC1B,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5D,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC/D,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1B,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBACtB,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;gBAC/D,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,QAAQ;oBAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,UAAU;oBAAE,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM;YACP,CAAC;YACD;gBACC,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC7C,IAAI,IAAI,CAAC,QAAQ;oBAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,UAAU;oBAAE,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM;YACP,wCAAgC,CAAC,CAAC,CAAC;gBAClC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC7B,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC7B,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC7D,IAAI,IAAI,CAAC,QAAQ;oBAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,UAAU;oBAAE,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM;YACP,CAAC;YACD;gBACC,GAAG,CAAC,SAAS,EAAE,CAAC;gBAChB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBAC1D,IAAI,IAAI,CAAC,UAAU;oBAAE,GAAG,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM;YACP;gBACC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,MAAM;QACR,CAAC;IACF,CAAC;CACD;AAED,iFAAiF;AAEjF,SAAS,gBAAgB,CAAC,IAAuB,EAAE,MAAgB;IAClE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAChB,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EACf,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EACf,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChH,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACrB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CACxF,CAAC;QACF,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACrB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAC7F,CAAC;QACF,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACrB,CAAC,EACD,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAC7F,CAAC;IACH,CAAC;AACF,CAAC;AAED,gFAAgF;AAEhF,MAAM,YAAY,GAAG,IAAI,cAAc,EAAE,CAAC;AAE1C,kBAAkB,CAAC,CAAC,QAAkB,EAAE,MAAc,EAAE,MAAc,EAAW,EAAE;IAClF,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;IAC5B,GAAG,CAAC,KAAK,EAAE,CAAC;IACZ,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC;IACxB,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;IACrD,YAAY,CAAC,uBAAuB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAChE,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,IAAI,CAAC;QACJ,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC,CAAC,CAAC;AAEH,gFAAgF;AAEhF,qBAAqB,CAAC,CAAC,MAAc,EAAE,MAAc,EAAE,MAAc,EAAW,EAAE;IACjF,MAAM,GAAG,GAAG,aAAa,EAAE,CAAC;IAC5B,GAAG,CAAC,KAAK,EAAE,CAAC;IACZ,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC;IACxB,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC;IACrD,YAAY,CAAC,qBAAqB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,IAAI,CAAC;QACJ,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC,CAAC,CAAC"}
@@ -2,11 +2,7 @@ import { BitmapData } from '../../display/texture/BitmapData.js';
2
2
  import type { CacheAsTextureOptions, DisplayObject } from '../../display/DisplayObject.js';
3
3
  import { CanvasBuffer } from './CanvasBuffer.js';
4
4
  /**
5
- * DisplayList provides per-object offscreen caching for DisplayObjects with
6
- * cacheAsBitmap = true. When the object is not dirty, the cached canvas is
7
- * reused directly, avoiding re-traversal of the subtree.
8
- *
9
- * Equivalent to Egret's sys.DisplayList (non-stage variant).
5
+ * Caches a display-object subtree in an offscreen bitmap.
10
6
  */
11
7
  export declare class DisplayList {
12
8
  private static _pool;
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayList.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/DisplayList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;;;;;GAMG;AACH,qBAAa,WAAW;IAEvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAqB;IAGlC,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,SAAK;IACZ,OAAO,SAAK;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,SAAK;IACf,SAAS,EAAE,QAAQ,GAAG,SAAS,CAAY;IAC3C,gBAAgB,SAAK;IAG5B,OAAO;WAMO,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,GAAG,SAAS;WAUtD,OAAO,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAa5C,OAAO,CAAC,MAAM;IASP,SAAS,CAAC,OAAO,GAAE,qBAA0B,GAAG,IAAI;IAM3D;;;OAGG;IACI,iBAAiB,CAAC,cAAc,GAAE,MAAiC,GAAG,OAAO;IAgBpF;;OAEG;IACI,gBAAgB,IAAI,IAAI;CAW/B"}
1
+ {"version":3,"file":"DisplayList.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/DisplayList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;GAEG;AACH,qBAAa,WAAW;IAGvB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAqB;IAGlC,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,SAAK;IACZ,OAAO,SAAK;IACZ,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,UAAU,SAAK;IACf,SAAS,EAAE,QAAQ,GAAG,SAAS,CAAY;IAC3C,gBAAgB,SAAK;IAG5B,OAAO;WAMO,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,GAAG,SAAS;WAUtD,OAAO,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAa5C,OAAO,CAAC,MAAM;IASP,SAAS,CAAC,OAAO,GAAE,qBAA0B,GAAG,IAAI;IAM3D;;;OAGG;IACI,iBAAiB,CAAC,cAAc,GAAE,MAAiC,GAAG,OAAO;IAgBpF;;OAEG;IACI,gBAAgB,IAAI,IAAI;CAW/B"}
@@ -2,11 +2,7 @@ import { BitmapData } from '../../display/texture/BitmapData.js';
2
2
  import { deleteWebGLTexture, SYM_GL_CONTEXT } from '../webgl/WebGLUtils.js';
3
3
  import { CanvasBuffer } from './CanvasBuffer.js';
4
4
  /**
5
- * DisplayList provides per-object offscreen caching for DisplayObjects with
6
- * cacheAsBitmap = true. When the object is not dirty, the cached canvas is
7
- * reused directly, avoiding re-traversal of the subtree.
8
- *
9
- * Equivalent to Egret's sys.DisplayList (non-stage variant).
5
+ * Caches a display-object subtree in an offscreen bitmap.
10
6
  */
11
7
  export class DisplayList {
12
8
  // ── Static fields ─────────────────────────────────────────────────────────
@@ -1 +1 @@
1
- {"version":3,"file":"DisplayList.js","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/DisplayList.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DisplayList.js","sourceRoot":"","sources":["../../../../src/kurot/player/canvas/DisplayList.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"createPlayer.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/createPlayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,MAAM,WAAW,QAAQ;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAClC,IAAI,IAAI,IAAI,CAAC;IACb,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,QAAQ,CA+D5D"}
1
+ {"version":3,"file":"createPlayer.d.ts","sourceRoot":"","sources":["../../../src/kurot/player/createPlayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,MAAM,WAAW,QAAQ;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;IACb,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAClC,IAAI,IAAI,IAAI,CAAC;IACb,OAAO,IAAI,IAAI,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,GAAG,QAAQ,CA6D5D"}
@@ -29,9 +29,7 @@ import { Capabilities } from '../system/Capabilities.js';
29
29
  * ```
30
30
  */
31
31
  export function createPlayer(options) {
32
- // Detect runtime environment once per session.
33
32
  Capabilities._init();
34
- // Wire up RenderTexture renderer once on first call
35
33
  if (!RenderTexture.renderer) {
36
34
  const _renderer = new CanvasRenderer();
37
35
  RenderTexture.renderer = (displayObject, width, height, offsetX, offsetY) => {
@@ -1 +1 @@
1
- {"version":3,"file":"createPlayer.js","sourceRoot":"","sources":["../../../src/kurot/player/createPlayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createPlayer.js","sourceRoot":"","sources":["../../../src/kurot/player/createPlayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAYzD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,YAAY,CAAC,OAAqB;IACjD,YAAY,CAAC,KAAK,EAAE,CAAC;IAErB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,cAAc,EAAE,CAAC;QACvC,aAAa,CAAC,QAAQ,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;YAC3E,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,CAAC,GAAG,IAAI,MAAM,EAAE,CAAC;YACvB,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,SAAS,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3C,OAAO,MAAM,CAAC,OAAO,CAAC;QACvB,CAAC,CAAC;IACH,CAAC;IACD,MAAM,EACL,MAAM,EACN,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,cAAc,CAAC,QAAQ,EACnC,YAAY,GAAG,MAAM,CAAC,KAAK,IAAI,GAAG,EAClC,aAAa,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,EACrC,WAAW,GAAG,eAAe,CAAC,IAAI,EAClC,UAAU,GAAG,EAAE,EACf,UAAU,GACV,GAAG,OAAO,CAAC;IAEZ,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,CAAC,KAAK,CAAC,eAAe,GAAG,UAAU,CAAC;IAC3C,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;IAC1B,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;IAChC,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;IAC9B,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAE5B,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IACnG,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,OAAO;QACN,MAAM;QACN,KAAK;QACL,YAAY;QACZ,aAAa;QACb,KAAK,CAAC,IAAoB;YACzB,IAAI,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC9E,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;QACD,IAAI;YACH,MAAM,CAAC,IAAI,EAAE,CAAC;QACf,CAAC;QACD,OAAO;YACN,IAAI,SAAS;gBAAE,OAAO;YACtB,SAAS,GAAG,IAAI,CAAC;YACjB,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,YAAY,CAAC,OAAO,EAAE,CAAC;YACvB,aAAa,CAAC,OAAO,EAAE,CAAC;YACxB,gBAAgB,EAAE,CAAC;QACpB,CAAC;KACD,CAAC;AACH,CAAC"}
@@ -6,30 +6,24 @@ import type { RenderPipe } from '../RenderPipe.js';
6
6
  export interface BitmapInstruction extends Instruction {
7
7
  readonly renderPipeId: 'bitmap';
8
8
  renderable: Bitmap;
9
- /** Snapshot of the buffer state at build time — updated each frame. */
10
9
  offsetX: number;
11
10
  offsetY: number;
12
11
  }
13
12
  /**
14
- * Handles WebGL rendering of Bitmap display objects.
15
- *
16
- * addToInstructionSet — called once when the scene structure changes.
17
- * updateRenderable — called every frame when only data changed.
18
- * execute — issues the actual WebGL draw call.
13
+ * Renders bitmap instructions through a render buffer.
19
14
  */
20
15
  export declare class BitmapPipe implements RenderPipe<Bitmap> {
21
16
  static readonly PIPE_ID = "bitmap";
22
17
  private static readonly _pool;
23
- private static _alloc;
24
18
  static release(inst: BitmapInstruction): void;
25
19
  addToInstructionSet(bitmap: Bitmap, set: InstructionSet): void;
26
20
  updateRenderable(_bitmap: Bitmap): void;
27
21
  destroyRenderable(_bitmap: Bitmap): void;
28
22
  /**
29
- * Issue the draw call for a BitmapInstruction.
30
- * Called by WebGLRenderer._executeInstructions().
23
+ * Draws a bitmap instruction into the active render buffer.
31
24
  */
32
25
  execute(inst: BitmapInstruction, buffer: RenderBuffer): void;
26
+ private static _alloc;
33
27
  private _drawScale9;
34
28
  }
35
29
  //# sourceMappingURL=BitmapPipe.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BitmapPipe.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/pipes/BitmapPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAID;;;;;;GAMG;AACH,qBAAa,UAAW,YAAW,UAAU,CAAC,MAAM,CAAC;IACpD,gBAAuB,OAAO,YAAY;IAG1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAA2B;IAExD,OAAO,CAAC,MAAM,CAAC,MAAM;WAaP,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAM7C,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI;IAM9D,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKvC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO/C;;;OAGG;IACI,OAAO,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAqCnE,OAAO,CAAC,WAAW;CAsFnB"}
1
+ {"version":3,"file":"BitmapPipe.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/pipes/BitmapPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACrD,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,qBAAa,UAAW,YAAW,UAAU,CAAC,MAAM,CAAC;IAGpD,gBAAuB,OAAO,YAAY;IAE1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAA2B;WAI1C,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAI7C,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI;IAI9D,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAEvC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAE/C;;OAEG;IACI,OAAO,CAAC,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAuCnE,OAAO,CAAC,MAAM,CAAC,MAAM;IAarB,OAAO,CAAC,WAAW;CAsFnB"}
@@ -1,48 +1,21 @@
1
- // ── Pipe ──────────────────────────────────────────────────────────────────────
2
1
  /**
3
- * Handles WebGL rendering of Bitmap display objects.
4
- *
5
- * addToInstructionSet — called once when the scene structure changes.
6
- * updateRenderable — called every frame when only data changed.
7
- * execute — issues the actual WebGL draw call.
2
+ * Renders bitmap instructions through a render buffer.
8
3
  */
9
4
  export class BitmapPipe {
5
+ // ── Static fields ─────────────────────────────────────────────────────────
10
6
  static PIPE_ID = 'bitmap';
11
- // Pool of reusable instruction objects to avoid per-frame allocation.
12
7
  static _pool = [];
13
- static _alloc(bitmap, offsetX, offsetY) {
14
- const inst = BitmapPipe._pool.pop() ?? {
15
- renderPipeId: 'bitmap',
16
- renderable: bitmap,
17
- offsetX,
18
- offsetY,
19
- };
20
- inst.renderable = bitmap;
21
- inst.offsetX = offsetX;
22
- inst.offsetY = offsetY;
23
- return inst;
24
- }
8
+ // ── Public methods ────────────────────────────────────────────────────────
25
9
  static release(inst) {
26
10
  BitmapPipe._pool.push(inst);
27
11
  }
28
- // ── RenderPipe impl ───────────────────────────────────────────────────────
29
12
  addToInstructionSet(bitmap, set) {
30
- // offsetX/Y are patched at execute time from the buffer state;
31
- // store 0 as placeholder — the renderer sets them before calling execute.
32
13
  set.add(BitmapPipe._alloc(bitmap, 0, 0));
33
14
  }
34
- updateRenderable(_bitmap) {
35
- // Bitmap data is read directly from the DisplayObject at execute time,
36
- // so no pre-upload step is needed here.
37
- }
38
- destroyRenderable(_bitmap) {
39
- // BitmapData GPU textures are managed by WebGLRenderContext.getWebGLTexture()
40
- // and released when BitmapData itself is destroyed — nothing to do here.
41
- }
42
- // ── Execute ───────────────────────────────────────────────────────────────
15
+ updateRenderable(_bitmap) { }
16
+ destroyRenderable(_bitmap) { }
43
17
  /**
44
- * Issue the draw call for a BitmapInstruction.
45
- * Called by WebGLRenderer._executeInstructions().
18
+ * Draws a bitmap instruction into the active render buffer.
46
19
  */
47
20
  execute(inst, buffer) {
48
21
  const bitmap = inst.renderable;
@@ -65,6 +38,19 @@ export class BitmapPipe {
65
38
  buffer.offsetX = 0;
66
39
  buffer.offsetY = 0;
67
40
  }
41
+ // ── Private methods ───────────────────────────────────────────────────────
42
+ static _alloc(bitmap, offsetX, offsetY) {
43
+ const inst = BitmapPipe._pool.pop() ?? {
44
+ renderPipeId: 'bitmap',
45
+ renderable: bitmap,
46
+ offsetX,
47
+ offsetY,
48
+ };
49
+ inst.renderable = bitmap;
50
+ inst.offsetX = offsetX;
51
+ inst.offsetY = offsetY;
52
+ return inst;
53
+ }
68
54
  _drawScale9(bitmap, bd, grid, destW, destH, buffer) {
69
55
  const bx = bitmap.bitmapX;
70
56
  const by = bitmap.bitmapY;
@@ -1 +1 @@
1
- {"version":3,"file":"BitmapPipe.js","sourceRoot":"","sources":["../../../../src/kurot/player/pipes/BitmapPipe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BitmapPipe.js","sourceRoot":"","sources":["../../../../src/kurot/player/pipes/BitmapPipe.ts"],"names":[],"mappings":"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"}
@@ -4,35 +4,27 @@ import type { WebGLRenderBuffer } from '../webgl/WebGLRenderBuffer.js';
4
4
  import type { Instruction } from '../InstructionSet.js';
5
5
  import type { InstructionSet } from '../InstructionSet.js';
6
6
  import type { RenderPipe } from '../RenderPipe.js';
7
- /** Marks the start of a filtered subtree. */
7
+ /**
8
+ * Starts a filtered subtree.
9
+ */
8
10
  export interface FilterPushInstruction extends Instruction {
9
11
  readonly renderPipeId: 'filterPush';
10
12
  renderable: DisplayObject;
11
13
  filters: Filter[];
12
14
  offsetX: number;
13
15
  offsetY: number;
14
- /**
15
- * The blend mode that was active before this filter changed it.
16
- * Set during executePush() so executePop() can restore it.
17
- */
18
16
  savedBlendMode: string;
19
17
  }
20
- /** Marks the end of a filtered subtree — composites the offscreen result. */
18
+ /**
19
+ * Ends a filtered subtree and composites its result.
20
+ */
21
21
  export interface FilterPopInstruction extends Instruction {
22
22
  readonly renderPipeId: 'filterPop';
23
23
  renderable: DisplayObject;
24
- /** Back-reference to the matching push instruction. */
25
24
  push: FilterPushInstruction;
26
25
  }
27
26
  /**
28
- * Handles filter rendering for WebGL.
29
- *
30
- * The renderer calls pushFilter() before traversing the filtered subtree and
31
- * popFilter() after. The pop instruction composites the offscreen buffer back
32
- * onto the main buffer with the filter applied.
33
- *
34
- * This mirrors the old WebGLRenderer._drawWithFilter() logic but expressed as
35
- * a pair of instructions so the traversal and execution phases are separated.
27
+ * Renders filtered subtrees through paired push and pop instructions.
36
28
  */
37
29
  export declare class FilterPipe implements RenderPipe<DisplayObject> {
38
30
  static readonly PUSH_ID = "filterPush";
@@ -46,22 +38,13 @@ export declare class FilterPipe implements RenderPipe<DisplayObject> {
46
38
  static releasePush(inst: FilterPushInstruction): void;
47
39
  static releasePop(inst: FilterPopInstruction): void;
48
40
  /**
49
- * Called by the renderer when it encounters a filterPush instruction.
50
- *
51
- * Two paths:
52
- * - ColorMatrix inline: sets activeFilter on the main buffer, returns undefined.
53
- * Subsequent leaf instructions draw directly to the main buffer with the
54
- * filter applied per-draw-call.
55
- * - All other filters: allocates an offscreen buffer and activates it via
56
- * pushBuffer so that ALL subsequent draw calls (until filterPop) land in
57
- * the offscreen buffer, not the main buffer.
58
- *
59
- * Returns the offscreen buffer (or undefined for inline path).
41
+ * Activates inline color-matrix rendering or an offscreen filter buffer.
42
+ * Pending commands are flushed before inline rendering so the framebuffer
43
+ * and activation command match the current buffer.
60
44
  */
61
45
  executePush(inst: FilterPushInstruction, buffer: WebGLRenderBuffer): WebGLRenderBuffer | undefined;
62
46
  /**
63
- * Called by the renderer when it encounters a filterPop instruction.
64
- * Deactivates the offscreen buffer and composites it back onto the main buffer.
47
+ * Restores the parent buffer and composites an offscreen filter result.
65
48
  */
66
49
  executePop(inst: FilterPopInstruction, buffer: WebGLRenderBuffer, offscreen: WebGLRenderBuffer | undefined): void;
67
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FilterPipe.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/pipes/FilterPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKnD,6CAA6C;AAC7C,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACzD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,6EAA6E;AAC7E,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC;IACnC,UAAU,EAAE,aAAa,CAAC;IAC1B,uDAAuD;IACvD,IAAI,EAAE,qBAAqB,CAAC;CAC5B;AAYD;;;;;;;;;GASG;AACH,qBAAa,UAAW,YAAW,UAAU,CAAC,aAAa,CAAC;IAE3D,gBAAuB,OAAO,gBAAgB;IAC9C,gBAAuB,MAAM,eAAe;IAC5C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA+B;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAIvD,mBAAmB,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAK3E,gBAAgB,CAAC,WAAW,EAAE,aAAa,GAAG,IAAI;WAI3C,QAAQ,CACrB,UAAU,EAAE,aAAa,EACzB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,qBAAqB;WAaV,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,qBAAqB,GAAG,oBAAoB;WAUrF,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI;WAM9C,UAAU,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI;IAQ1D;;;;;;;;;;;;OAYG;IACI,WAAW,CAAC,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,SAAS;IAuDzG;;;OAGG;IACI,UAAU,CAChB,IAAI,EAAE,oBAAoB,EAC1B,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,iBAAiB,GAAG,SAAS,GACtC,IAAI;CA6CP"}
1
+ {"version":3,"file":"FilterPipe.d.ts","sourceRoot":"","sources":["../../../../src/kurot/player/pipes/FilterPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACzD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC;IACnC,UAAU,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,qBAAqB,CAAC;CAC5B;AAUD;;GAEG;AACH,qBAAa,UAAW,YAAW,UAAU,CAAC,aAAa,CAAC;IAG3D,gBAAuB,OAAO,gBAAgB;IAC3C,gBAAuB,MAAM,eAAe;IAE/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA+B;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAIvD,mBAAmB,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAE3E,gBAAgB,CAAC,WAAW,EAAE,aAAa,GAAG,IAAI;WAE3C,QAAQ,CACrB,UAAU,EAAE,aAAa,EACzB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,qBAAqB;WAaV,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,qBAAqB,GAAG,oBAAoB;WAUrF,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI;WAM9C,UAAU,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI;IAM1D;;;;OAIG;IACI,WAAW,CAAC,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,SAAS;IA0CzG;;OAEG;IACI,UAAU,CAChB,IAAI,EAAE,oBAAoB,EAC1B,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,iBAAiB,GAAG,SAAS,GACtC,IAAI;CAqCP"}