@zephyr3d/scene 0.9.21 → 0.9.23

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 (238) hide show
  1. package/dist/animation/joint_dynamics/collision.js +1 -7
  2. package/dist/animation/joint_dynamics/collision.js.map +1 -1
  3. package/dist/animation/joint_dynamics/constraints.js +2 -17
  4. package/dist/animation/joint_dynamics/constraints.js.map +1 -1
  5. package/dist/animation/joint_dynamics/controller.js +2 -20
  6. package/dist/animation/joint_dynamics/controller.js.map +1 -1
  7. package/dist/animation/joint_dynamics/joint_dynamics_system.js +1 -3
  8. package/dist/animation/joint_dynamics/joint_dynamics_system.js.map +1 -1
  9. package/dist/animation/joint_dynamics/solver.js +14 -60
  10. package/dist/animation/joint_dynamics/solver.js.map +1 -1
  11. package/dist/animation/joint_dynamics/types.js +3 -3
  12. package/dist/animation/joint_dynamics/types.js.map +1 -1
  13. package/dist/app/app.js +23 -0
  14. package/dist/app/app.js.map +1 -1
  15. package/dist/app/scriptregistry.js +16 -53
  16. package/dist/app/scriptregistry.js.map +1 -1
  17. package/dist/asset/assetmanager.js +2 -0
  18. package/dist/asset/assetmanager.js.map +1 -1
  19. package/dist/asset/model.js +22 -0
  20. package/dist/asset/model.js.map +1 -1
  21. package/dist/blitter/bilateralblur.js +3 -1
  22. package/dist/blitter/bilateralblur.js.map +1 -1
  23. package/dist/blitter/blitter.js +3 -3
  24. package/dist/blitter/blitter.js.map +1 -1
  25. package/dist/camera/camera.js +398 -45
  26. package/dist/camera/camera.js.map +1 -1
  27. package/dist/camera/perspectivecamera.js +69 -2
  28. package/dist/camera/perspectivecamera.js.map +1 -1
  29. package/dist/index.d.ts +9100 -8712
  30. package/dist/index.js +9 -1
  31. package/dist/index.js.map +1 -1
  32. package/dist/material/blinn.js +1 -1
  33. package/dist/material/blinn.js.map +1 -1
  34. package/dist/material/lambert.js +3 -3
  35. package/dist/material/lambert.js.map +1 -1
  36. package/dist/material/material.js +8 -5
  37. package/dist/material/material.js.map +1 -1
  38. package/dist/material/meshmaterial.js +17 -10
  39. package/dist/material/meshmaterial.js.map +1 -1
  40. package/dist/material/mixins/lightmodel/blinnphong.js +1 -1
  41. package/dist/material/mixins/lightmodel/blinnphong.js.map +1 -1
  42. package/dist/material/mixins/lightmodel/lambert.js +1 -1
  43. package/dist/material/mixins/lightmodel/lambert.js.map +1 -1
  44. package/dist/material/mixins/lightmodel/pbrblueprintmixin.js +21 -6
  45. package/dist/material/mixins/lightmodel/pbrblueprintmixin.js.map +1 -1
  46. package/dist/material/mixins/lightmodel/pbrmetallicroughness.js +1 -1
  47. package/dist/material/mixins/lightmodel/pbrmetallicroughness.js.map +1 -1
  48. package/dist/material/mixins/lightmodel/pbrspecularglossness.js +1 -1
  49. package/dist/material/mixins/lightmodel/pbrspecularglossness.js.map +1 -1
  50. package/dist/material/mixins/lit.js +33 -11
  51. package/dist/material/mixins/lit.js.map +1 -1
  52. package/dist/material/mixins/pbr/brdf.js +44 -12
  53. package/dist/material/mixins/pbr/brdf.js.map +1 -1
  54. package/dist/material/mixins/pbr/common.js +149 -14
  55. package/dist/material/mixins/pbr/common.js.map +1 -1
  56. package/dist/material/mtoon.js +7 -4
  57. package/dist/material/mtoon.js.map +1 -1
  58. package/dist/material/pbrblueprint.js +5 -1
  59. package/dist/material/pbrblueprint.js.map +1 -1
  60. package/dist/material/pbrmr.js +1 -1
  61. package/dist/material/pbrmr.js.map +1 -1
  62. package/dist/material/pbrsg.js +1 -1
  63. package/dist/material/pbrsg.js.map +1 -1
  64. package/dist/material/shader/helper.js +186 -11
  65. package/dist/material/shader/helper.js.map +1 -1
  66. package/dist/material/skin.js +2 -2
  67. package/dist/material/skin.js.map +1 -1
  68. package/dist/material/terrain-cm.js +5 -5
  69. package/dist/material/terrain-cm.js.map +1 -1
  70. package/dist/material/water.js +6 -4
  71. package/dist/material/water.js.map +1 -1
  72. package/dist/posteffect/bloom.js +54 -4
  73. package/dist/posteffect/bloom.js.map +1 -1
  74. package/dist/posteffect/compositor.js +41 -0
  75. package/dist/posteffect/compositor.js.map +1 -1
  76. package/dist/posteffect/posteffect.js +51 -0
  77. package/dist/posteffect/posteffect.js.map +1 -1
  78. package/dist/posteffect/sao.js +7 -6
  79. package/dist/posteffect/sao.js.map +1 -1
  80. package/dist/posteffect/skinsss.js +3 -3
  81. package/dist/posteffect/skinsss.js.map +1 -1
  82. package/dist/posteffect/ssgi.js +1196 -0
  83. package/dist/posteffect/ssgi.js.map +1 -0
  84. package/dist/posteffect/ssr.js +83 -45
  85. package/dist/posteffect/ssr.js.map +1 -1
  86. package/dist/posteffect/sss.js +137 -49
  87. package/dist/posteffect/sss.js.map +1 -1
  88. package/dist/posteffect/taa.js +5 -4
  89. package/dist/posteffect/taa.js.map +1 -1
  90. package/dist/posteffect/tonemap.js +15 -3
  91. package/dist/posteffect/tonemap.js.map +1 -1
  92. package/dist/render/abuffer_oit.js +2 -2
  93. package/dist/render/abuffer_oit.js.map +1 -1
  94. package/dist/render/cluster_light.js +12 -6
  95. package/dist/render/cluster_light.js.map +1 -1
  96. package/dist/render/drawable_mixin.js +8 -5
  97. package/dist/render/drawable_mixin.js.map +1 -1
  98. package/dist/render/dualdepthpeeling_oit.js +10 -5
  99. package/dist/render/dualdepthpeeling_oit.js.map +1 -1
  100. package/dist/render/envlight.js +298 -5
  101. package/dist/render/envlight.js.map +1 -1
  102. package/dist/render/gpu_picking.js +7 -5
  103. package/dist/render/gpu_picking.js.map +1 -1
  104. package/dist/render/hzb.js +28 -19
  105. package/dist/render/hzb.js.map +1 -1
  106. package/dist/render/lightpass.js +18 -4
  107. package/dist/render/lightpass.js.map +1 -1
  108. package/dist/render/render_queue.js +37 -4
  109. package/dist/render/render_queue.js.map +1 -1
  110. package/dist/render/renderer.js +8 -3
  111. package/dist/render/renderer.js.map +1 -1
  112. package/dist/render/rendergraph/blackboard.js +20 -48
  113. package/dist/render/rendergraph/blackboard.js.map +1 -1
  114. package/dist/render/rendergraph/device_pool_allocator.js +18 -58
  115. package/dist/render/rendergraph/device_pool_allocator.js.map +1 -1
  116. package/dist/render/rendergraph/executor.js +89 -115
  117. package/dist/render/rendergraph/executor.js.map +1 -1
  118. package/dist/render/rendergraph/forward_plus_builder.js +1003 -715
  119. package/dist/render/rendergraph/forward_plus_builder.js.map +1 -1
  120. package/dist/render/rendergraph/frame_graph_context.js +41 -0
  121. package/dist/render/rendergraph/frame_graph_context.js.map +1 -0
  122. package/dist/render/rendergraph/frame_resource_requirements.js +14 -0
  123. package/dist/render/rendergraph/frame_resource_requirements.js.map +1 -0
  124. package/dist/render/rendergraph/history_resource_manager.js +74 -140
  125. package/dist/render/rendergraph/history_resource_manager.js.map +1 -1
  126. package/dist/render/rendergraph/history_resources.js +7 -5
  127. package/dist/render/rendergraph/history_resources.js.map +1 -1
  128. package/dist/render/rendergraph/render_context.js +19 -0
  129. package/dist/render/rendergraph/render_context.js.map +1 -0
  130. package/dist/render/rendergraph/render_pipeline.js +315 -0
  131. package/dist/render/rendergraph/render_pipeline.js.map +1 -0
  132. package/dist/render/rendergraph/rendergraph.js +158 -141
  133. package/dist/render/rendergraph/rendergraph.js.map +1 -1
  134. package/dist/render/rendergraph/scene_render_context.js +267 -0
  135. package/dist/render/rendergraph/scene_render_context.js.map +1 -0
  136. package/dist/render/rendergraph/texture_affinity_cache.js +19 -0
  137. package/dist/render/rendergraph/texture_affinity_cache.js.map +1 -0
  138. package/dist/render/rendergraph/types.js +19 -31
  139. package/dist/render/rendergraph/types.js.map +1 -1
  140. package/dist/render/renderpass.js +3 -3
  141. package/dist/render/renderpass.js.map +1 -1
  142. package/dist/render/shadow_mask_pass.js +10 -6
  143. package/dist/render/shadow_mask_pass.js.map +1 -1
  144. package/dist/render/sky.js +197 -35
  145. package/dist/render/sky.js.map +1 -1
  146. package/dist/render/weightedblended_oit.js +4 -3
  147. package/dist/render/weightedblended_oit.js.map +1 -1
  148. package/dist/scene/basesprite.js +2 -0
  149. package/dist/scene/basesprite.js.map +1 -1
  150. package/dist/scene/batchgroup.js +10 -0
  151. package/dist/scene/batchgroup.js.map +1 -1
  152. package/dist/scene/environment.js +61 -2
  153. package/dist/scene/environment.js.map +1 -1
  154. package/dist/scene/light.js +178 -10
  155. package/dist/scene/light.js.map +1 -1
  156. package/dist/scene/meshdrawable.js +89 -2
  157. package/dist/scene/meshdrawable.js.map +1 -1
  158. package/dist/scene/msdftext.js +2 -0
  159. package/dist/scene/msdftext.js.map +1 -1
  160. package/dist/scene/msdftextsprite.js +2 -0
  161. package/dist/scene/msdftextsprite.js.map +1 -1
  162. package/dist/scene/particlesys.js +2 -0
  163. package/dist/scene/particlesys.js.map +1 -1
  164. package/dist/scene/scene.js +34 -1
  165. package/dist/scene/scene.js.map +1 -1
  166. package/dist/scene/terrain-cm/grass.js +2 -1
  167. package/dist/scene/terrain-cm/grass.js.map +1 -1
  168. package/dist/scene/terrain-cm/terrain-cm.js +2 -0
  169. package/dist/scene/terrain-cm/terrain-cm.js.map +1 -1
  170. package/dist/scene/water.js +2 -0
  171. package/dist/scene/water.js.map +1 -1
  172. package/dist/shaders/atmosphere.js +5 -4
  173. package/dist/shaders/atmosphere.js.map +1 -1
  174. package/dist/shaders/fog.js +10 -3
  175. package/dist/shaders/fog.js.map +1 -1
  176. package/dist/shaders/shadow.js +96 -29
  177. package/dist/shaders/shadow.js.map +1 -1
  178. package/dist/shaders/ssgi.js +63 -0
  179. package/dist/shaders/ssgi.js.map +1 -0
  180. package/dist/shaders/ssgi_reprojection.js +118 -0
  181. package/dist/shaders/ssgi_reprojection.js.map +1 -0
  182. package/dist/shaders/ssr.js +322 -154
  183. package/dist/shaders/ssr.js.map +1 -1
  184. package/dist/shadow/esm.js +13 -8
  185. package/dist/shadow/esm.js.map +1 -1
  186. package/dist/shadow/pcf_opt.js +15 -12
  187. package/dist/shadow/pcf_opt.js.map +1 -1
  188. package/dist/shadow/pcf_pd.js +15 -12
  189. package/dist/shadow/pcf_pd.js.map +1 -1
  190. package/dist/shadow/pcss.js +17 -11
  191. package/dist/shadow/pcss.js.map +1 -1
  192. package/dist/shadow/shadow_impl.js +20 -2
  193. package/dist/shadow/shadow_impl.js.map +1 -1
  194. package/dist/shadow/shadowmapper.js +10 -3
  195. package/dist/shadow/shadowmapper.js.map +1 -1
  196. package/dist/shadow/ssm.js +16 -13
  197. package/dist/shadow/ssm.js.map +1 -1
  198. package/dist/shadow/vsm.js +10 -8
  199. package/dist/shadow/vsm.js.map +1 -1
  200. package/dist/utility/physical.js +74 -0
  201. package/dist/utility/physical.js.map +1 -0
  202. package/dist/utility/rendermipmap.js +2 -2
  203. package/dist/utility/rendermipmap.js.map +1 -1
  204. package/dist/utility/serialization/manager.js +3 -1
  205. package/dist/utility/serialization/manager.js.map +1 -1
  206. package/dist/utility/serialization/scene/animation.js +3 -1
  207. package/dist/utility/serialization/scene/animation.js.map +1 -1
  208. package/dist/utility/serialization/scene/batch.js +3 -1
  209. package/dist/utility/serialization/scene/batch.js.map +1 -1
  210. package/dist/utility/serialization/scene/camera.js +598 -2
  211. package/dist/utility/serialization/scene/camera.js.map +1 -1
  212. package/dist/utility/serialization/scene/light.js +180 -9
  213. package/dist/utility/serialization/scene/light.js.map +1 -1
  214. package/dist/utility/serialization/scene/material.js +43 -3
  215. package/dist/utility/serialization/scene/material.js.map +1 -1
  216. package/dist/utility/serialization/scene/mesh.js +3 -1
  217. package/dist/utility/serialization/scene/mesh.js.map +1 -1
  218. package/dist/utility/serialization/scene/node.js +3 -1
  219. package/dist/utility/serialization/scene/node.js.map +1 -1
  220. package/dist/utility/serialization/scene/particle.js +3 -1
  221. package/dist/utility/serialization/scene/particle.js.map +1 -1
  222. package/dist/utility/serialization/scene/primitive.js +2 -0
  223. package/dist/utility/serialization/scene/primitive.js.map +1 -1
  224. package/dist/utility/serialization/scene/scene.js +70 -0
  225. package/dist/utility/serialization/scene/scene.js.map +1 -1
  226. package/dist/utility/serialization/scene/sprite.js +3 -1
  227. package/dist/utility/serialization/scene/sprite.js.map +1 -1
  228. package/dist/utility/serialization/scene/terrain.js +3 -1
  229. package/dist/utility/serialization/scene/terrain.js.map +1 -1
  230. package/dist/utility/serialization/scene/text.js +3 -0
  231. package/dist/utility/serialization/scene/text.js.map +1 -1
  232. package/dist/utility/serialization/scene/water.js +3 -1
  233. package/dist/utility/serialization/scene/water.js.map +1 -1
  234. package/dist/values.js +2 -3
  235. package/dist/values.js.map +1 -1
  236. package/package.json +3 -3
  237. package/dist/animation/joint_dynamics/convex_collider.js +0 -320
  238. package/dist/animation/joint_dynamics/convex_collider.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"camera.js","sources":["../../../../src/utility/serialization/scene/camera.ts"],"sourcesContent":["import { defineProps, type SerializableClass } from '../types';\r\nimport { Camera, OrthoCamera, PerspectiveCamera } from '../../../camera';\r\nimport type { CameraOITMode, SSSDebugView, SSSQualityPreset } from '../../../camera';\r\nimport { SceneNode } from '../../../scene';\r\nimport {\r\n TAA_DEBUG_ALAPH,\r\n TAA_DEBUG_CURRENT_COLOR,\r\n TAA_DEBUG_EDGE,\r\n TAA_DEBUG_HISTORY_COLOR,\r\n TAA_DEBUG_MOTION_VECTOR,\r\n TAA_DEBUG_NONE,\r\n TAA_DEBUG_STRENGTH,\r\n TAA_DEBUG_VELOCITY\r\n} from '../../../shaders';\r\n\r\n/** @internal */\r\nexport function getCameraClass(): SerializableClass {\r\n return {\r\n ctor: Camera,\r\n name: 'Camera',\r\n parent: SceneNode,\r\n createFunc(ctx: SceneNode) {\r\n const node = new Camera(ctx.scene);\r\n node.parent = ctx;\r\n return { obj: node };\r\n },\r\n getProps() {\r\n return defineProps([\r\n {\r\n name: 'UseScreenSettings',\r\n type: 'bool',\r\n default: false,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.adapted;\r\n },\r\n set(this: Camera, value) {\r\n this.adapted = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'DesignWidth',\r\n type: 'int',\r\n options: { minValue: 1 },\r\n default: 1280,\r\n isHidden(this: Camera) {\r\n return !this.adapted;\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.screenConfig.designWidth;\r\n },\r\n set(this: Camera, value) {\r\n this.screenConfig = { ...this.screenConfig, designWidth: value.num[0] };\r\n }\r\n },\r\n {\r\n name: 'DesignHeight',\r\n type: 'int',\r\n options: { minValue: 1 },\r\n default: 720,\r\n isHidden(this: Camera) {\r\n return !this.adapted;\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.screenConfig.designHeight;\r\n },\r\n set(this: Camera, value) {\r\n this.screenConfig = { ...this.screenConfig, designHeight: value.num[0] };\r\n }\r\n },\r\n {\r\n name: 'ScreenScaleMode',\r\n type: 'string',\r\n default: 'cover',\r\n options: {\r\n enum: {\r\n labels: ['ShowAll', 'NoBorder', 'ExactFit', 'FixedWidth', 'FixedHeight'],\r\n values: ['fit', 'cover', 'stretch', 'fit-width', 'fit-height']\r\n }\r\n },\r\n isHidden(this: Camera) {\r\n return !this.adapted;\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.screenConfig.scaleMode;\r\n },\r\n set(this: Camera, value) {\r\n this.screenConfig = { ...this.screenConfig, scaleMode: value.str[0] as any };\r\n }\r\n },\r\n {\r\n name: 'HDR',\r\n type: 'bool',\r\n default: false,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.HDR;\r\n },\r\n set(this: Camera, value) {\r\n this.HDR = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'HiZ',\r\n type: 'bool',\r\n default: false,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.HiZ;\r\n },\r\n set(this: Camera, value) {\r\n this.HiZ = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'ScreenSpaceShadow',\r\n type: 'bool',\r\n default: true,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.screenSpaceShadowMask;\r\n },\r\n set(this: Camera, value) {\r\n this.screenSpaceShadowMask = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'OITMode',\r\n type: 'string',\r\n default: 'none',\r\n options: {\r\n label: 'OIT',\r\n group: 'Rendering',\r\n enum: {\r\n labels: ['None', 'Weighted', 'ABuffer', 'DualDepthPeeling'],\r\n values: ['none', 'weighted', 'abuffer', 'dual-depth']\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.oitMode;\r\n },\r\n set(this: Camera, value) {\r\n this.oitMode = value.str[0] as CameraOITMode;\r\n }\r\n },\r\n {\r\n name: 'ABufferLayers',\r\n type: 'int',\r\n default: 20,\r\n options: {\r\n label: 'ABuffer Layers',\r\n group: 'Rendering',\r\n minValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.oitABufferLayers;\r\n },\r\n set(this: Camera, value) {\r\n this.oitABufferLayers = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.oitMode === 'abuffer';\r\n }\r\n },\r\n {\r\n name: 'DualDepthPeels',\r\n type: 'int',\r\n default: 8,\r\n options: {\r\n label: 'Depth Peels',\r\n group: 'Rendering',\r\n minValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.oitDualDepthPeels;\r\n },\r\n set(this: Camera, value) {\r\n this.oitDualDepthPeels = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.oitMode === 'dual-depth';\r\n }\r\n },\r\n {\r\n name: 'ToneMapEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: true,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/ToneMap'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.toneMap;\r\n },\r\n set(this: Camera, value) {\r\n this.toneMap = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'ToneMapExposure',\r\n type: 'float',\r\n options: { minValue: 0, maxValue: 8, label: 'Exposure', group: 'PostProcessing/ToneMap' },\r\n phase: 0,\r\n default: 1,\r\n get(this: Camera, value) {\r\n value.num[0] = this.toneMapExposure;\r\n },\r\n set(this: Camera, value) {\r\n this.toneMapExposure = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/ColorAdjust'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.colorAdjust;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjust = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustSaturation',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Saturation',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: 0,\r\n maxValue: 2,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustSaturation;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustSaturation = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustContrast',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Contrast',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: 0,\r\n maxValue: 2,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustContrast;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustContrast = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustHue',\r\n type: 'float',\r\n phase: 1,\r\n default: 0,\r\n options: {\r\n label: 'Hue',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: -1,\r\n maxValue: 1,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustHue / 180;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustHue = value.num[0] * 180;\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'Sharpen',\r\n type: 'float',\r\n phase: 1,\r\n default: 0,\r\n options: {\r\n label: 'Sharpen',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: 0,\r\n maxValue: 2,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustSharpen;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustSharpen = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'BloomEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: true,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.bloom;\r\n },\r\n set(this: Camera, value) {\r\n this.bloom = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'BloomMaxDownsampleLevels',\r\n type: 'int',\r\n options: { minValue: 0, maxValue: 8, label: 'MaxDownsampleLevels', group: 'PostProcessing/Bloom' },\r\n phase: 0,\r\n default: 4,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomMaxDownsampleLevels;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomMaxDownsampleLevels = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomDownsampleLimit',\r\n type: 'int',\r\n options: { minValue: 2, maxValue: 64, label: 'DownsampleLimit', group: 'PostProcessing/Bloom' },\r\n phase: 0,\r\n default: 32,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomDownsampleLimit;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomDownsampleLimit = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomThreshold',\r\n type: 'float',\r\n options: {\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 1,\r\n label: 'Threshold',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n phase: 0,\r\n default: 0.8,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomThreshold;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomThreshold = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomThresholdKnee',\r\n type: 'float',\r\n options: {\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 1,\r\n label: 'ThresholdKnee',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n phase: 0,\r\n default: 0,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomThresholdKnee;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomThresholdKnee = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomIntensity',\r\n type: 'float',\r\n options: {\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 8,\r\n label: 'Intensity',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n phase: 0,\r\n default: 1,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomIntensity;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomIntensity = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'FXAAEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/FXAA'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.FXAA;\r\n },\r\n set(this: Camera, value) {\r\n this.FXAA = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'TAAEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/TAA'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.TAA;\r\n },\r\n set(this: Camera, value) {\r\n this.TAA = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'TAADebug',\r\n type: 'int',\r\n phase: 1,\r\n options: {\r\n label: 'Debug',\r\n group: 'PostProcessing/TAA',\r\n enum: {\r\n labels: [\r\n 'None',\r\n 'Current Color',\r\n 'History Color',\r\n 'Velocity',\r\n 'Edge',\r\n 'Alpha',\r\n 'Motion Vector',\r\n 'Strength'\r\n ],\r\n values: [\r\n TAA_DEBUG_NONE,\r\n TAA_DEBUG_CURRENT_COLOR,\r\n TAA_DEBUG_HISTORY_COLOR,\r\n TAA_DEBUG_VELOCITY,\r\n TAA_DEBUG_EDGE,\r\n TAA_DEBUG_ALAPH,\r\n TAA_DEBUG_MOTION_VECTOR,\r\n TAA_DEBUG_STRENGTH\r\n ]\r\n }\r\n },\r\n default: TAA_DEBUG_NONE,\r\n get(this: Camera, value) {\r\n value.num[0] = this.TAADebug;\r\n },\r\n set(this: Camera, value) {\r\n this.TAADebug = value.num[0];\r\n },\r\n isValid() {\r\n return !!this.TAA;\r\n }\r\n },\r\n {\r\n name: 'MotionBlurEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/MotionBlur'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.motionBlur;\r\n },\r\n set(this: Camera, value) {\r\n this.motionBlur = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'MotionBlurStrength',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Strength',\r\n group: 'PostProcessing/MotionBlur',\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 10\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.motionBlurStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.motionBlurStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.motionBlur;\r\n }\r\n },\r\n {\r\n name: 'SSREnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SSR'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSR;\r\n },\r\n set(this: Camera, value) {\r\n this.SSR = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSRMaxRoughness',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.8,\r\n options: {\r\n label: 'RoughnessThreshold',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrMaxRoughness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrMaxRoughness = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRRoughnessFactor',\r\n type: 'float',\r\n phase: 1,\r\n default: 1.0,\r\n options: {\r\n label: 'RoughnessFactor',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrRoughnessFactor;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrRoughnessFactor = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRStride',\r\n type: 'int',\r\n phase: 1,\r\n default: 2,\r\n options: {\r\n label: 'Stride',\r\n group: 'PostProcessing/SSR',\r\n minValue: 1,\r\n maxValue: 32\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrStride;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrStride = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR && !this.HiZ;\r\n }\r\n },\r\n {\r\n name: 'SSRMaxDistance',\r\n type: 'float',\r\n phase: 1,\r\n default: 100,\r\n options: {\r\n label: 'MaxDistance',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 9999\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrMaxDistance;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrMaxDistance = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRMaxSteps',\r\n type: 'int',\r\n phase: 1,\r\n default: 120,\r\n options: {\r\n label: 'MaxSteps',\r\n group: 'PostProcessing/SSR',\r\n minValue: 1,\r\n maxValue: 2000\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrIterations;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrIterations = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRThickness',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.5,\r\n options: {\r\n label: 'Thickness',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrThickness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrThickness = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurScale',\r\n phase: 1,\r\n type: 'float',\r\n default: 0.01,\r\n options: {\r\n label: 'BlurScale',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurScale;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurScale = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurDepthCutoff',\r\n phase: 1,\r\n type: 'float',\r\n default: 2,\r\n options: {\r\n label: 'BlurDepthCutoff',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurDepthCutoff;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurDepthCutoff = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurKernelSize',\r\n type: 'int',\r\n phase: 1,\r\n default: 10,\r\n options: {\r\n label: 'BlurKernelSize',\r\n group: 'PostProcessing/SSR',\r\n minValue: 1,\r\n maxValue: 65\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurKernelSize;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurKernelSize = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurStdDev',\r\n type: 'float',\r\n phase: 1,\r\n default: 10,\r\n options: {\r\n label: 'BlurStdDev',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 100\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurStdDev;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurStdDev = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRCalcThickness',\r\n type: 'bool',\r\n phase: 1,\r\n default: false,\r\n options: {\r\n label: 'CalcThickness',\r\n group: 'PostProcessing/SSR'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.ssrCalcThickness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrCalcThickness = value.bool[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRTemporal',\r\n type: 'bool',\r\n phase: 1,\r\n default: true,\r\n options: {\r\n label: 'Temporal',\r\n group: 'PostProcessing/SSR'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.ssrTemporal;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrTemporal = value.bool[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRTemporalWeight',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.85,\r\n options: {\r\n label: 'TemporalWeight',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrTemporalWeight;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrTemporalWeight = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR && this.ssrTemporal;\r\n }\r\n },\r\n {\r\n name: 'SSSEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SSS'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSS;\r\n },\r\n set(this: Camera, value) {\r\n this.SSS = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSSQualityPreset',\r\n type: 'string',\r\n phase: 0,\r\n default: 'balanced',\r\n options: {\r\n label: 'QualityPreset',\r\n group: 'PostProcessing/SSS',\r\n enum: {\r\n labels: ['Quality', 'Balanced', 'Performance'],\r\n values: ['quality', 'balanced', 'performance']\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.sssQualityPreset;\r\n },\r\n set(this: Camera, value) {\r\n this.sssQualityPreset = value.str[0] as SSSQualityPreset;\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSBlurScale',\r\n type: 'float',\r\n phase: 0,\r\n default: 11,\r\n options: {\r\n label: 'BlurScale',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 64\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssBlurScale;\r\n },\r\n set(this: Camera, value) {\r\n this.sssBlurScale = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSStrength',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.65,\r\n options: {\r\n label: 'Strength',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.sssStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSTransmissionStrength',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.18,\r\n options: {\r\n label: 'Transmission',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssTransmissionStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.sssTransmissionStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSTransmissionPower',\r\n type: 'float',\r\n phase: 0,\r\n default: 2.1,\r\n options: {\r\n label: 'TransmissionPower',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0.1,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssTransmissionPower;\r\n },\r\n set(this: Camera, value) {\r\n this.sssTransmissionPower = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSMultiScatter',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.08,\r\n options: {\r\n label: 'MultiScatter',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 2\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssMultiScatter;\r\n },\r\n set(this: Camera, value) {\r\n this.sssMultiScatter = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSDebugView',\r\n type: 'string',\r\n phase: 0,\r\n default: 'none',\r\n options: {\r\n label: 'DebugView',\r\n group: 'PostProcessing/SSS',\r\n enum: {\r\n labels: [\r\n 'None',\r\n 'ScatterMask',\r\n 'ScatterSoftness',\r\n 'ScatterRadius',\r\n 'ScatterFalloff',\r\n 'ProfileEnergy',\r\n 'ProfileTransmission',\r\n 'ProfileBoundary',\r\n 'Diffuse',\r\n 'Blur',\r\n 'ScreenThinness',\r\n 'ThinTransmissionMask',\r\n 'ThinLighting',\r\n 'TransmissionShadow'\r\n ],\r\n values: [\r\n 'none',\r\n 'scatter_mask',\r\n 'scatter_softness',\r\n 'scatter_radius',\r\n 'scatter_falloff',\r\n 'profile_energy',\r\n 'profile_transmission',\r\n 'profile_boundary',\r\n 'diffuse',\r\n 'blur',\r\n 'screen_thinness',\r\n 'thin_transmission_mask',\r\n 'thin_lighting',\r\n 'transmission_shadow'\r\n ]\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.sssDebugView;\r\n },\r\n set(this: Camera, value) {\r\n this.sssDebugView = value.str[0] as SSSDebugView;\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SkinSSS'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.skinSSS;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSS = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SkinSSSStrength',\r\n type: 'float',\r\n phase: 0,\r\n default: 1,\r\n options: {\r\n label: 'Strength',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSOpacity',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.18,\r\n options: {\r\n label: 'Opacity',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSOpacity;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSOpacity = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSSampleStep',\r\n type: 'float',\r\n phase: 0,\r\n default: 2,\r\n options: {\r\n label: 'SampleStep',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0.25,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSSampleStep;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSSampleStep = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSDepthScale',\r\n type: 'float',\r\n phase: 0,\r\n default: 80,\r\n options: {\r\n label: 'DepthScale',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 256\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSDepthScale;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSDepthScale = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSColorBoost',\r\n type: 'float',\r\n phase: 0,\r\n default: 1,\r\n options: {\r\n label: 'ColorBoost',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSColorBoost;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSColorBoost = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SSAOEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSAO;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAO = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSAOScale',\r\n type: 'float',\r\n phase: 0,\r\n default: 10,\r\n options: {\r\n label: 'Scale',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAOScale;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAOScale = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'SSAOBias',\r\n type: 'float',\r\n phase: 0,\r\n default: 1,\r\n options: {\r\n label: 'Bias',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAOBias;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAOBias = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'SSAORadius',\r\n type: 'float',\r\n phase: 0,\r\n default: 100,\r\n options: {\r\n label: 'Radius',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAORadius;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAORadius = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'SSAOIntensity',\r\n type: 'float',\r\n phase: 0,\r\n default: 2.5,\r\n options: {\r\n label: 'Intensity',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAOIntensity * 100;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAOIntensity = value.num[0] * 0.01;\r\n }\r\n }\r\n ]);\r\n }\r\n };\r\n}\r\n\r\n/** @internal */\r\nexport function getPerspectiveCameraClass(): SerializableClass {\r\n return {\r\n ctor: PerspectiveCamera,\r\n parent: Camera,\r\n name: 'PerspectiveCamera',\r\n createFunc(ctx: SceneNode) {\r\n const node = new PerspectiveCamera(ctx.scene);\r\n node.parent = ctx;\r\n return { obj: node };\r\n },\r\n getProps() {\r\n return defineProps([\r\n {\r\n name: 'FovVertical',\r\n type: 'float',\r\n default: Math.PI / 3,\r\n options: {\r\n minValue: 0,\r\n maxValue: Math.PI\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.fovY;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.fovY = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Near',\r\n type: 'float',\r\n default: 1,\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.near;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.near = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Far',\r\n type: 'float',\r\n default: 1000,\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.far;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.far = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'AutoAspect',\r\n type: 'bool',\r\n default: true,\r\n get(this: PerspectiveCamera, value) {\r\n value.bool[0] = this.autoAspect;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.autoAspect = value.bool[0];\r\n }\r\n }\r\n ]);\r\n }\r\n };\r\n}\r\n\r\n/** @internal */\r\nexport function getOrthoCameraClass(): SerializableClass {\r\n return {\r\n ctor: OrthoCamera,\r\n parent: Camera,\r\n name: 'OrthoCamera',\r\n createFunc(ctx: SceneNode) {\r\n const node = new OrthoCamera(ctx.scene!);\r\n node.parent = ctx;\r\n return { obj: node };\r\n },\r\n getProps() {\r\n return defineProps([\r\n {\r\n name: 'Left',\r\n type: 'float',\r\n default: -1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.left;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.left = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Right',\r\n type: 'float',\r\n default: 1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.right;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.right = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Bottom',\r\n type: 'float',\r\n default: -1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.bottom;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.bottom = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Top',\r\n type: 'float',\r\n default: 1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.top;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.top = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Near',\r\n type: 'float',\r\n default: -1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.near;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.near = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Far',\r\n type: 'float',\r\n default: 1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.far;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.far = value.num[0];\r\n }\r\n }\r\n ]);\r\n }\r\n };\r\n}\r\n"],"names":["getCameraClass","ctor","Camera","name","parent","SceneNode","createFunc","ctx","node","scene","obj","getProps","defineProps","type","default","get","value","bool","adapted","set","options","minValue","isHidden","num","screenConfig","designWidth","designHeight","enum","labels","values","str","scaleMode","HDR","HiZ","screenSpaceShadowMask","label","group","oitMode","oitABufferLayers","isValid","oitDualDepthPeels","phase","toneMap","maxValue","toneMapExposure","colorAdjust","animatable","colorAdjustSaturation","colorAdjustContrast","colorAdjustHue","colorAdjustSharpen","bloom","bloomMaxDownsampleLevels","bloomDownsampleLimit","bloomThreshold","bloomThresholdKnee","bloomIntensity","FXAA","TAA","TAA_DEBUG_NONE","TAA_DEBUG_CURRENT_COLOR","TAA_DEBUG_HISTORY_COLOR","TAA_DEBUG_VELOCITY","TAA_DEBUG_EDGE","TAA_DEBUG_ALAPH","TAA_DEBUG_MOTION_VECTOR","TAA_DEBUG_STRENGTH","TAADebug","motionBlur","motionBlurStrength","SSR","ssrMaxRoughness","ssrRoughnessFactor","ssrStride","ssrMaxDistance","ssrIterations","ssrThickness","ssrBlurScale","ssrBlurDepthCutoff","ssrBlurKernelSize","ssrBlurStdDev","ssrCalcThickness","ssrTemporal","ssrTemporalWeight","SSS","sssQualityPreset","sssBlurScale","sssStrength","sssTransmissionStrength","sssTransmissionPower","sssMultiScatter","sssDebugView","skinSSS","skinSSSStrength","skinSSSOpacity","skinSSSSampleStep","skinSSSDepthScale","skinSSSColorBoost","SSAO","SSAOScale","SSAOBias","SSAORadius","SSAOIntensity","getPerspectiveCameraClass","PerspectiveCamera","Math","PI","fovY","near","far","autoAspect","getOrthoCameraClass","OrthoCamera","left","right","bottom","top"],"mappings":"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"}
1
+ {"version":3,"file":"camera.js","sources":["../../../../src/utility/serialization/scene/camera.ts"],"sourcesContent":["import { defineProps, type SerializableClass } from '../types';\r\nimport { Camera, OrthoCamera, PerspectiveCamera } from '../../../camera';\r\nimport type { CameraOITMode, SSGIQualityPreset, SSSDebugView, SSSQualityPreset } from '../../../camera';\r\nimport { SceneNode } from '../../../scene';\r\nimport type { CameraProjectionMode, CameraSensorFit } from '../../physical';\r\nimport {\r\n TAA_DEBUG_ALAPH,\r\n TAA_DEBUG_CURRENT_COLOR,\r\n TAA_DEBUG_EDGE,\r\n TAA_DEBUG_HISTORY_COLOR,\r\n TAA_DEBUG_MOTION_VECTOR,\r\n TAA_DEBUG_NONE,\r\n TAA_DEBUG_STRENGTH,\r\n TAA_DEBUG_VELOCITY\r\n} from '../../../shaders';\r\n\r\n/** @internal */\r\nexport function getCameraClass(): SerializableClass {\r\n return {\r\n ctor: Camera,\r\n name: 'Camera',\r\n parent: SceneNode,\r\n createFunc(ctx: SceneNode) {\r\n const node = new Camera(ctx.scene);\r\n node.parent = ctx;\r\n return { obj: node };\r\n },\r\n getProps() {\r\n return defineProps([\r\n {\r\n name: 'UseScreenSettings',\r\n type: 'bool',\r\n default: false,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.adapted;\r\n },\r\n set(this: Camera, value) {\r\n this.adapted = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'DesignWidth',\r\n type: 'int',\r\n options: { minValue: 1 },\r\n default: 1280,\r\n isHidden(this: Camera) {\r\n return !this.adapted;\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.screenConfig.designWidth;\r\n },\r\n set(this: Camera, value) {\r\n this.screenConfig = { ...this.screenConfig, designWidth: value.num[0] };\r\n }\r\n },\r\n {\r\n name: 'DesignHeight',\r\n type: 'int',\r\n options: { minValue: 1 },\r\n default: 720,\r\n isHidden(this: Camera) {\r\n return !this.adapted;\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.screenConfig.designHeight;\r\n },\r\n set(this: Camera, value) {\r\n this.screenConfig = { ...this.screenConfig, designHeight: value.num[0] };\r\n }\r\n },\r\n {\r\n name: 'ScreenScaleMode',\r\n type: 'string',\r\n default: 'cover',\r\n options: {\r\n enum: {\r\n labels: ['ShowAll', 'NoBorder', 'ExactFit', 'FixedWidth', 'FixedHeight'],\r\n values: ['fit', 'cover', 'stretch', 'fit-width', 'fit-height']\r\n }\r\n },\r\n isHidden(this: Camera) {\r\n return !this.adapted;\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.screenConfig.scaleMode;\r\n },\r\n set(this: Camera, value) {\r\n this.screenConfig = { ...this.screenConfig, scaleMode: value.str[0] as any };\r\n }\r\n },\r\n {\r\n name: 'HDR',\r\n type: 'bool',\r\n default: false,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.HDR;\r\n },\r\n set(this: Camera, value) {\r\n this.HDR = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'HiZ',\r\n type: 'bool',\r\n default: false,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.HiZ;\r\n },\r\n set(this: Camera, value) {\r\n this.HiZ = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'ScreenSpaceShadow',\r\n type: 'bool',\r\n default: true,\r\n get(this: Camera, value) {\r\n value.bool[0] = this.screenSpaceShadowMask;\r\n },\r\n set(this: Camera, value) {\r\n this.screenSpaceShadowMask = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'OITMode',\r\n type: 'string',\r\n default: 'none',\r\n options: {\r\n label: 'OIT',\r\n group: 'Rendering',\r\n enum: {\r\n labels: ['None', 'Weighted', 'ABuffer', 'DualDepthPeeling'],\r\n values: ['none', 'weighted', 'abuffer', 'dual-depth']\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.oitMode;\r\n },\r\n set(this: Camera, value) {\r\n this.oitMode = value.str[0] as CameraOITMode;\r\n }\r\n },\r\n {\r\n name: 'ABufferLayers',\r\n type: 'int',\r\n default: 20,\r\n options: {\r\n label: 'ABuffer Layers',\r\n group: 'Rendering',\r\n minValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.oitABufferLayers;\r\n },\r\n set(this: Camera, value) {\r\n this.oitABufferLayers = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.oitMode === 'abuffer';\r\n }\r\n },\r\n {\r\n name: 'DualDepthPeels',\r\n type: 'int',\r\n default: 8,\r\n options: {\r\n label: 'Depth Peels',\r\n group: 'Rendering',\r\n minValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.oitDualDepthPeels;\r\n },\r\n set(this: Camera, value) {\r\n this.oitDualDepthPeels = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.oitMode === 'dual-depth';\r\n }\r\n },\r\n {\r\n name: 'ToneMapEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: true,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/ToneMap'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.toneMap;\r\n },\r\n set(this: Camera, value) {\r\n this.toneMap = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'ToneMapExposure',\r\n type: 'float',\r\n options: { minValue: 0, maxValue: 8, label: 'Exposure', group: 'PostProcessing/ToneMap' },\r\n phase: 0,\r\n default: 1,\r\n get(this: Camera, value) {\r\n value.num[0] = this.toneMapExposure;\r\n },\r\n set(this: Camera, value) {\r\n this.toneMapExposure = value.num[0];\r\n },\r\n isHidden(this: Camera) {\r\n return this.scene?.lightingMode === 'physical';\r\n }\r\n },\r\n {\r\n name: 'Aperture',\r\n type: 'float',\r\n phase: 1,\r\n default: 16,\r\n options: {\r\n label: 'Aperture (f-number)',\r\n group: 'PostProcessing/ToneMap',\r\n minValue: 0.1,\r\n maxValue: 64,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.aperture;\r\n },\r\n set(this: Camera, value) {\r\n this.aperture = value.num[0];\r\n },\r\n isHidden(this: Camera) {\r\n return this.scene?.lightingMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'ShutterSpeed',\r\n description: 'Shutter-open time in seconds',\r\n type: 'float',\r\n phase: 1,\r\n default: 1 / 125,\r\n options: {\r\n label: 'Shutter (seconds)',\r\n group: 'PostProcessing/ToneMap',\r\n minValue: 0.000001,\r\n maxValue: 60,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.shutterSpeed;\r\n },\r\n set(this: Camera, value) {\r\n this.shutterSpeed = value.num[0];\r\n },\r\n isHidden(this: Camera) {\r\n return this.scene?.lightingMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'ISO',\r\n type: 'float',\r\n phase: 1,\r\n default: 100,\r\n options: {\r\n group: 'PostProcessing/ToneMap',\r\n minValue: 1,\r\n maxValue: 204800,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ISO;\r\n },\r\n set(this: Camera, value) {\r\n this.ISO = value.num[0];\r\n },\r\n isHidden(this: Camera) {\r\n return this.scene?.lightingMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'ExposureCompensation',\r\n description: 'Exposure compensation in stops',\r\n type: 'float',\r\n phase: 1,\r\n default: 0,\r\n options: {\r\n label: 'Compensation (EV)',\r\n group: 'PostProcessing/ToneMap',\r\n minValue: -10,\r\n maxValue: 10,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.exposureCompensation;\r\n },\r\n set(this: Camera, value) {\r\n this.exposureCompensation = value.num[0];\r\n },\r\n isHidden(this: Camera) {\r\n return this.scene?.lightingMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/ColorAdjust'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.colorAdjust;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjust = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustSaturation',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Saturation',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: 0,\r\n maxValue: 2,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustSaturation;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustSaturation = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustContrast',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Contrast',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: 0,\r\n maxValue: 2,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustContrast;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustContrast = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'ColorAdjustHue',\r\n type: 'float',\r\n phase: 1,\r\n default: 0,\r\n options: {\r\n label: 'Hue',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: -1,\r\n maxValue: 1,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustHue / 180;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustHue = value.num[0] * 180;\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'Sharpen',\r\n type: 'float',\r\n phase: 1,\r\n default: 0,\r\n options: {\r\n label: 'Sharpen',\r\n group: 'PostProcessing/ColorAdjust',\r\n minValue: 0,\r\n maxValue: 2,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.colorAdjustSharpen;\r\n },\r\n set(this: Camera, value) {\r\n this.colorAdjustSharpen = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.colorAdjust;\r\n }\r\n },\r\n {\r\n name: 'BloomEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: true,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.bloom;\r\n },\r\n set(this: Camera, value) {\r\n this.bloom = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'BloomMaxDownsampleLevels',\r\n type: 'int',\r\n options: { minValue: 0, maxValue: 8, label: 'MaxDownsampleLevels', group: 'PostProcessing/Bloom' },\r\n phase: 0,\r\n default: 4,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomMaxDownsampleLevels;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomMaxDownsampleLevels = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomDownsampleLimit',\r\n type: 'int',\r\n options: { minValue: 2, maxValue: 64, label: 'DownsampleLimit', group: 'PostProcessing/Bloom' },\r\n phase: 0,\r\n default: 32,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomDownsampleLimit;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomDownsampleLimit = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomThreshold',\r\n description:\r\n 'Luminance above which a pixel blooms. Under physical lighting the buffer is camera ' +\r\n 'pre-exposed, where 0.8 is roughly a white surface in direct sunlight; lower it for a ' +\r\n 'more pronounced glow.',\r\n type: 'float',\r\n options: {\r\n animatable: true,\r\n minValue: 0,\r\n // Not capped at 1: physical scenes legitimately threshold above sunlit white to\r\n // restrict blooming to genuine emitters.\r\n maxValue: 8,\r\n label: 'Threshold',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n phase: 0,\r\n default: 0.8,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomThreshold;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomThreshold = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomThresholdKnee',\r\n type: 'float',\r\n options: {\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 1,\r\n label: 'ThresholdKnee',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n phase: 0,\r\n default: 0,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomThresholdKnee;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomThresholdKnee = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'BloomIntensity',\r\n type: 'float',\r\n options: {\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 8,\r\n label: 'Intensity',\r\n group: 'PostProcessing/Bloom'\r\n },\r\n phase: 0,\r\n default: 1,\r\n get(this: Camera, value) {\r\n value.num[0] = this.bloomIntensity;\r\n },\r\n set(this: Camera, value) {\r\n this.bloomIntensity = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'FXAAEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/FXAA'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.FXAA;\r\n },\r\n set(this: Camera, value) {\r\n this.FXAA = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'TAAEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/TAA'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.TAA;\r\n },\r\n set(this: Camera, value) {\r\n this.TAA = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'TAADebug',\r\n type: 'int',\r\n phase: 1,\r\n options: {\r\n label: 'Debug',\r\n group: 'PostProcessing/TAA',\r\n enum: {\r\n labels: [\r\n 'None',\r\n 'Current Color',\r\n 'History Color',\r\n 'Velocity',\r\n 'Edge',\r\n 'Alpha',\r\n 'Motion Vector',\r\n 'Strength'\r\n ],\r\n values: [\r\n TAA_DEBUG_NONE,\r\n TAA_DEBUG_CURRENT_COLOR,\r\n TAA_DEBUG_HISTORY_COLOR,\r\n TAA_DEBUG_VELOCITY,\r\n TAA_DEBUG_EDGE,\r\n TAA_DEBUG_ALAPH,\r\n TAA_DEBUG_MOTION_VECTOR,\r\n TAA_DEBUG_STRENGTH\r\n ]\r\n }\r\n },\r\n default: TAA_DEBUG_NONE,\r\n get(this: Camera, value) {\r\n value.num[0] = this.TAADebug;\r\n },\r\n set(this: Camera, value) {\r\n this.TAADebug = value.num[0];\r\n },\r\n isValid() {\r\n return !!this.TAA;\r\n }\r\n },\r\n {\r\n name: 'MotionBlurEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/MotionBlur'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.motionBlur;\r\n },\r\n set(this: Camera, value) {\r\n this.motionBlur = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'MotionBlurStrength',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Strength',\r\n group: 'PostProcessing/MotionBlur',\r\n animatable: true,\r\n minValue: 0,\r\n maxValue: 10\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.motionBlurStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.motionBlurStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.motionBlur;\r\n }\r\n },\r\n {\r\n name: 'SSGIEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: { label: 'Enabled', group: 'PostProcessing/SSGI' },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSGI;\r\n },\r\n set(this: Camera, value) {\r\n this.SSGI = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSGIQualityPreset',\r\n type: 'string',\r\n phase: 1,\r\n default: 'quality',\r\n options: {\r\n label: 'Quality',\r\n group: 'PostProcessing/SSGI',\r\n enum: {\r\n labels: ['Quality', 'Balanced', 'Performance', 'Custom'],\r\n values: ['quality', 'balanced', 'performance', 'custom']\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.ssgiQualityPreset;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiQualityPreset = value.str[0] as SSGIQualityPreset;\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIHalfResolution',\r\n type: 'bool',\r\n phase: 2,\r\n default: false,\r\n options: {\r\n label: 'HalfResolution',\r\n group: 'PostProcessing/SSGI'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.ssgiHalfResolution;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiHalfResolution = value.bool[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI && this.ssgiQualityPreset === 'custom';\r\n }\r\n },\r\n {\r\n name: 'SSGIRaysPerPixel',\r\n type: 'int',\r\n phase: 2,\r\n default: 2,\r\n options: {\r\n label: 'RaysPerPixel',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 1,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiRaysPerPixel;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiRaysPerPixel = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI && this.ssgiQualityPreset === 'custom';\r\n }\r\n },\r\n {\r\n name: 'SSGIMaxSteps',\r\n type: 'int',\r\n phase: 2,\r\n default: 64,\r\n options: {\r\n label: 'MaxSteps',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 1,\r\n maxValue: 256\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiMaxSteps;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiMaxSteps = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI && this.ssgiQualityPreset === 'custom';\r\n }\r\n },\r\n {\r\n name: 'SSGIDenoisePasses',\r\n type: 'int',\r\n phase: 2,\r\n default: 4,\r\n options: {\r\n label: 'DenoisePasses',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 5\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiDenoisePasses;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiDenoisePasses = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI && this.ssgiQualityPreset === 'custom';\r\n }\r\n },\r\n {\r\n name: 'SSGIIntensity',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.7,\r\n options: {\r\n label: 'Intensity',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 4,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiIntensity;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiIntensity = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIAOIntensity',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.8,\r\n options: {\r\n label: 'AO intensity',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 1,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiAOIntensity;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiAOIntensity = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIAOPower',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'AO contrast',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0.01,\r\n maxValue: 4,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiAOPower;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiAOPower = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGISkyOcclusion',\r\n type: 'float',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Sky occlusion',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 1,\r\n animatable: true\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiSkyOcclusion;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiSkyOcclusion = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIMaxDistance',\r\n type: 'float',\r\n phase: 1,\r\n default: 32,\r\n options: {\r\n label: 'MaxDistance',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0.1,\r\n maxValue: 512\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiMaxDistance;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiMaxDistance = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIThickness',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.5,\r\n options: {\r\n label: 'Thickness',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0.001,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiThickness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiThickness = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIStride',\r\n type: 'int',\r\n phase: 1,\r\n default: 1,\r\n options: {\r\n label: 'Stride',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 1,\r\n maxValue: 16\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiStride;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiStride = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGIMaxRayIntensity',\r\n description: 'Maximum ray radiance after camera exposure in physical lighting mode',\r\n type: 'float',\r\n phase: 1,\r\n default: 10,\r\n options: {\r\n label: 'MaxRayIntensity',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 64\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiMaxRayIntensity;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiMaxRayIntensity = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGITemporalEnabled',\r\n type: 'bool',\r\n phase: 1,\r\n default: true,\r\n options: { label: 'Temporal', group: 'PostProcessing/SSGI' },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.ssgiTemporal;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiTemporal = value.bool[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGITemporalWeight',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.94,\r\n options: {\r\n label: 'TemporalWeight',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 0.99\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiTemporalWeight;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiTemporalWeight = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI && this.ssgiTemporal;\r\n }\r\n },\r\n {\r\n name: 'SSGIDepthReject',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.5,\r\n options: {\r\n label: 'DepthReject',\r\n group: 'PostProcessing/SSGI',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiDepthReject;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiDepthReject = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSGINormalReject',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.75,\r\n options: {\r\n label: 'NormalReject',\r\n group: 'PostProcessing/SSGI',\r\n minValue: -1,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssgiNormalReject;\r\n },\r\n set(this: Camera, value) {\r\n this.ssgiNormalReject = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSGI;\r\n }\r\n },\r\n {\r\n name: 'SSREnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SSR'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSR;\r\n },\r\n set(this: Camera, value) {\r\n this.SSR = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSRMaxRoughness',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.8,\r\n options: {\r\n label: 'RoughnessThreshold',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrMaxRoughness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrMaxRoughness = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRRoughnessFactor',\r\n type: 'float',\r\n phase: 1,\r\n default: 1.0,\r\n options: {\r\n label: 'RoughnessFactor',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrRoughnessFactor;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrRoughnessFactor = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRStride',\r\n type: 'int',\r\n phase: 1,\r\n default: 2,\r\n options: {\r\n label: 'Stride',\r\n group: 'PostProcessing/SSR',\r\n minValue: 1,\r\n maxValue: 32\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrStride;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrStride = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR && !this.HiZ;\r\n }\r\n },\r\n {\r\n name: 'SSRMaxDistance',\r\n type: 'float',\r\n phase: 1,\r\n default: 100,\r\n options: {\r\n label: 'MaxDistance',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 9999\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrMaxDistance;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrMaxDistance = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRMaxSteps',\r\n type: 'int',\r\n phase: 1,\r\n default: 120,\r\n options: {\r\n label: 'MaxSteps',\r\n group: 'PostProcessing/SSR',\r\n minValue: 1,\r\n maxValue: 2000\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrIterations;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrIterations = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRThickness',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.5,\r\n options: {\r\n label: 'Thickness',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrThickness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrThickness = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurScale',\r\n phase: 1,\r\n type: 'float',\r\n default: 0.01,\r\n options: {\r\n label: 'BlurScale',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurScale;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurScale = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurDepthCutoff',\r\n phase: 1,\r\n type: 'float',\r\n default: 2,\r\n options: {\r\n label: 'BlurDepthCutoff',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurDepthCutoff;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurDepthCutoff = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurKernelSize',\r\n type: 'int',\r\n phase: 1,\r\n default: 10,\r\n options: {\r\n label: 'BlurKernelSize',\r\n group: 'PostProcessing/SSR',\r\n minValue: 1,\r\n maxValue: 65\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurKernelSize;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurKernelSize = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRBlurStdDev',\r\n type: 'float',\r\n phase: 1,\r\n default: 10,\r\n options: {\r\n label: 'BlurStdDev',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 100\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrBlurStdDev;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrBlurStdDev = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRCalcThickness',\r\n type: 'bool',\r\n phase: 1,\r\n default: false,\r\n options: {\r\n label: 'CalcThickness',\r\n group: 'PostProcessing/SSR'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.ssrCalcThickness;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrCalcThickness = value.bool[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRTemporal',\r\n type: 'bool',\r\n phase: 1,\r\n default: true,\r\n options: {\r\n label: 'Temporal',\r\n group: 'PostProcessing/SSR'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.ssrTemporal;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrTemporal = value.bool[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR;\r\n }\r\n },\r\n {\r\n name: 'SSRTemporalWeight',\r\n type: 'float',\r\n phase: 1,\r\n default: 0.85,\r\n options: {\r\n label: 'TemporalWeight',\r\n group: 'PostProcessing/SSR',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.ssrTemporalWeight;\r\n },\r\n set(this: Camera, value) {\r\n this.ssrTemporalWeight = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSR && this.ssrTemporal;\r\n }\r\n },\r\n {\r\n name: 'SSSEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SSS'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSS;\r\n },\r\n set(this: Camera, value) {\r\n this.SSS = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSSQualityPreset',\r\n type: 'string',\r\n phase: 0,\r\n default: 'balanced',\r\n options: {\r\n label: 'QualityPreset',\r\n group: 'PostProcessing/SSS',\r\n enum: {\r\n labels: ['Quality', 'Balanced', 'Performance'],\r\n values: ['quality', 'balanced', 'performance']\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.sssQualityPreset;\r\n },\r\n set(this: Camera, value) {\r\n this.sssQualityPreset = value.str[0] as SSSQualityPreset;\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSBlurScale',\r\n type: 'float',\r\n phase: 0,\r\n default: 11,\r\n options: {\r\n label: 'BlurScale',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 64\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssBlurScale;\r\n },\r\n set(this: Camera, value) {\r\n this.sssBlurScale = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSStrength',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.65,\r\n options: {\r\n label: 'Strength',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.sssStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSTransmissionStrength',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.18,\r\n options: {\r\n label: 'Transmission',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssTransmissionStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.sssTransmissionStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSTransmissionPower',\r\n type: 'float',\r\n phase: 0,\r\n default: 2.1,\r\n options: {\r\n label: 'TransmissionPower',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0.1,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssTransmissionPower;\r\n },\r\n set(this: Camera, value) {\r\n this.sssTransmissionPower = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSMultiScatter',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.08,\r\n options: {\r\n label: 'MultiScatter',\r\n group: 'PostProcessing/SSS',\r\n minValue: 0,\r\n maxValue: 2\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.sssMultiScatter;\r\n },\r\n set(this: Camera, value) {\r\n this.sssMultiScatter = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SSSDebugView',\r\n type: 'string',\r\n phase: 0,\r\n default: 'none',\r\n options: {\r\n label: 'DebugView',\r\n group: 'PostProcessing/SSS',\r\n enum: {\r\n labels: [\r\n 'None',\r\n 'ScatterMask',\r\n 'ScatterSoftness',\r\n 'ScatterRadius',\r\n 'ScatterFalloff',\r\n 'ProfileEnergy',\r\n 'ProfileTransmission',\r\n 'ProfileBoundary',\r\n 'Diffuse',\r\n 'Blur',\r\n 'ScreenThinness',\r\n 'ThinTransmissionMask',\r\n 'ThinLighting',\r\n 'TransmissionShadow'\r\n ],\r\n values: [\r\n 'none',\r\n 'scatter_mask',\r\n 'scatter_softness',\r\n 'scatter_radius',\r\n 'scatter_falloff',\r\n 'profile_energy',\r\n 'profile_transmission',\r\n 'profile_boundary',\r\n 'diffuse',\r\n 'blur',\r\n 'screen_thinness',\r\n 'thin_transmission_mask',\r\n 'thin_lighting',\r\n 'transmission_shadow'\r\n ]\r\n }\r\n },\r\n get(this: Camera, value) {\r\n value.str[0] = this.sssDebugView;\r\n },\r\n set(this: Camera, value) {\r\n this.sssDebugView = value.str[0] as SSSDebugView;\r\n },\r\n isValid(this: Camera) {\r\n return this.SSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SkinSSS'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.skinSSS;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSS = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SkinSSSStrength',\r\n type: 'float',\r\n phase: 0,\r\n default: 1,\r\n options: {\r\n label: 'Strength',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSStrength;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSStrength = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSOpacity',\r\n type: 'float',\r\n phase: 0,\r\n default: 0.18,\r\n options: {\r\n label: 'Opacity',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 1\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSOpacity;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSOpacity = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSSampleStep',\r\n type: 'float',\r\n phase: 0,\r\n default: 2,\r\n options: {\r\n label: 'SampleStep',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0.25,\r\n maxValue: 8\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSSampleStep;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSSampleStep = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSDepthScale',\r\n type: 'float',\r\n phase: 0,\r\n default: 80,\r\n options: {\r\n label: 'DepthScale',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 256\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSDepthScale;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSDepthScale = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SkinSSSColorBoost',\r\n type: 'float',\r\n phase: 0,\r\n default: 1,\r\n options: {\r\n label: 'ColorBoost',\r\n group: 'PostProcessing/SkinSSS',\r\n minValue: 0,\r\n maxValue: 4\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.skinSSSColorBoost;\r\n },\r\n set(this: Camera, value) {\r\n this.skinSSSColorBoost = value.num[0];\r\n },\r\n isValid(this: Camera) {\r\n return this.skinSSS;\r\n }\r\n },\r\n {\r\n name: 'SSAOEnabled',\r\n type: 'bool',\r\n phase: 0,\r\n default: false,\r\n options: {\r\n label: 'Enabled',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.bool[0] = this.SSAO;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAO = value.bool[0];\r\n }\r\n },\r\n {\r\n name: 'SSAOScale',\r\n type: 'float',\r\n phase: 0,\r\n default: 10,\r\n options: {\r\n label: 'Scale',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAOScale;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAOScale = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'SSAOBias',\r\n type: 'float',\r\n phase: 0,\r\n default: 1,\r\n options: {\r\n label: 'Bias',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAOBias;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAOBias = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'SSAORadius',\r\n type: 'float',\r\n phase: 0,\r\n default: 100,\r\n options: {\r\n label: 'Radius',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAORadius;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAORadius = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'SSAOIntensity',\r\n type: 'float',\r\n phase: 0,\r\n default: 2.5,\r\n options: {\r\n label: 'Intensity',\r\n group: 'PostProcessing/SSAO'\r\n },\r\n get(this: Camera, value) {\r\n value.num[0] = this.SSAOIntensity * 100;\r\n },\r\n set(this: Camera, value) {\r\n this.SSAOIntensity = value.num[0] * 0.01;\r\n }\r\n }\r\n ]);\r\n }\r\n };\r\n}\r\n\r\n/** @internal */\r\nexport function getPerspectiveCameraClass(): SerializableClass {\r\n return {\r\n ctor: PerspectiveCamera,\r\n parent: Camera,\r\n name: 'PerspectiveCamera',\r\n createFunc(ctx: SceneNode) {\r\n const node = new PerspectiveCamera(ctx.scene);\r\n node.parent = ctx;\r\n return { obj: node };\r\n },\r\n getProps() {\r\n return defineProps([\r\n {\r\n name: 'ProjectionMode',\r\n type: 'string',\r\n phase: 0,\r\n default: 'fov',\r\n options: {\r\n enum: {\r\n labels: ['Field of View', 'Physical Lens'],\r\n values: ['fov', 'physical']\r\n }\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.str[0] = this.projectionMode;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.projectionMode = value.str[0] as CameraProjectionMode;\r\n }\r\n },\r\n {\r\n name: 'FovVertical',\r\n type: 'float',\r\n default: Math.PI / 3,\r\n options: {\r\n minValue: 0,\r\n maxValue: Math.PI\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.fovY;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.fovY = value.num[0];\r\n },\r\n isHidden(this: PerspectiveCamera) {\r\n return this.projectionMode === 'physical';\r\n }\r\n },\r\n {\r\n name: 'FocalLength',\r\n description: 'Physical focal length in millimeters',\r\n type: 'float',\r\n default: 50,\r\n options: {\r\n minValue: 0.1,\r\n maxValue: 2000,\r\n animatable: true\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.focalLengthMm;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.focalLengthMm = value.num[0];\r\n },\r\n isHidden(this: PerspectiveCamera) {\r\n return this.projectionMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'SensorWidth',\r\n description: 'Physical sensor width in millimeters',\r\n type: 'float',\r\n default: 36,\r\n options: {\r\n minValue: 0.1,\r\n maxValue: 200,\r\n animatable: true\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.sensorWidthMm;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.sensorWidthMm = value.num[0];\r\n },\r\n isHidden(this: PerspectiveCamera) {\r\n return this.projectionMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'SensorHeight',\r\n description: 'Physical sensor height in millimeters',\r\n type: 'float',\r\n default: 24,\r\n options: {\r\n minValue: 0.1,\r\n maxValue: 200,\r\n animatable: true\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.sensorHeightMm;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.sensorHeightMm = value.num[0];\r\n },\r\n isHidden(this: PerspectiveCamera) {\r\n return this.projectionMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'SensorFit',\r\n type: 'string',\r\n default: 'horizontal',\r\n options: {\r\n enum: {\r\n labels: ['Horizontal', 'Vertical'],\r\n values: ['horizontal', 'vertical']\r\n }\r\n },\r\n get(this: PerspectiveCamera, value) {\r\n value.str[0] = this.sensorFit;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.sensorFit = value.str[0] as CameraSensorFit;\r\n },\r\n isHidden(this: PerspectiveCamera) {\r\n return this.projectionMode !== 'physical';\r\n }\r\n },\r\n {\r\n name: 'Near',\r\n type: 'float',\r\n default: 1,\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.near;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.near = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Far',\r\n type: 'float',\r\n default: 1000,\r\n get(this: PerspectiveCamera, value) {\r\n value.num[0] = this.far;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.far = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'AutoAspect',\r\n type: 'bool',\r\n default: true,\r\n get(this: PerspectiveCamera, value) {\r\n value.bool[0] = this.autoAspect;\r\n },\r\n set(this: PerspectiveCamera, value) {\r\n this.autoAspect = value.bool[0];\r\n }\r\n }\r\n ]);\r\n }\r\n };\r\n}\r\n\r\n/** @internal */\r\nexport function getOrthoCameraClass(): SerializableClass {\r\n return {\r\n ctor: OrthoCamera,\r\n parent: Camera,\r\n name: 'OrthoCamera',\r\n createFunc(ctx: SceneNode) {\r\n const node = new OrthoCamera(ctx.scene!);\r\n node.parent = ctx;\r\n return { obj: node };\r\n },\r\n getProps() {\r\n return defineProps([\r\n {\r\n name: 'Left',\r\n type: 'float',\r\n default: -1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.left;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.left = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Right',\r\n type: 'float',\r\n default: 1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.right;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.right = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Bottom',\r\n type: 'float',\r\n default: -1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.bottom;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.bottom = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Top',\r\n type: 'float',\r\n default: 1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.top;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.top = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Near',\r\n type: 'float',\r\n default: -1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.near;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.near = value.num[0];\r\n }\r\n },\r\n {\r\n name: 'Far',\r\n type: 'float',\r\n default: 1,\r\n get(this: OrthoCamera, value) {\r\n value.num[0] = this.far;\r\n },\r\n set(this: OrthoCamera, value) {\r\n this.far = value.num[0];\r\n }\r\n }\r\n ]);\r\n }\r\n };\r\n}\r\n"],"names":["getCameraClass","ctor","Camera","name","parent","SceneNode","createFunc","ctx","node","scene","obj","getProps","defineProps","type","default","get","value","bool","adapted","set","options","minValue","isHidden","num","screenConfig","designWidth","designHeight","enum","labels","values","str","scaleMode","HDR","HiZ","screenSpaceShadowMask","label","group","oitMode","oitABufferLayers","isValid","oitDualDepthPeels","phase","toneMap","maxValue","toneMapExposure","lightingMode","animatable","aperture","description","shutterSpeed","ISO","exposureCompensation","colorAdjust","colorAdjustSaturation","colorAdjustContrast","colorAdjustHue","colorAdjustSharpen","bloom","bloomMaxDownsampleLevels","bloomDownsampleLimit","bloomThreshold","bloomThresholdKnee","bloomIntensity","FXAA","TAA","TAA_DEBUG_NONE","TAA_DEBUG_CURRENT_COLOR","TAA_DEBUG_HISTORY_COLOR","TAA_DEBUG_VELOCITY","TAA_DEBUG_EDGE","TAA_DEBUG_ALAPH","TAA_DEBUG_MOTION_VECTOR","TAA_DEBUG_STRENGTH","TAADebug","motionBlur","motionBlurStrength","SSGI","ssgiQualityPreset","ssgiHalfResolution","ssgiRaysPerPixel","ssgiMaxSteps","ssgiDenoisePasses","ssgiIntensity","ssgiAOIntensity","ssgiAOPower","ssgiSkyOcclusion","ssgiMaxDistance","ssgiThickness","ssgiStride","ssgiMaxRayIntensity","ssgiTemporal","ssgiTemporalWeight","ssgiDepthReject","ssgiNormalReject","SSR","ssrMaxRoughness","ssrRoughnessFactor","ssrStride","ssrMaxDistance","ssrIterations","ssrThickness","ssrBlurScale","ssrBlurDepthCutoff","ssrBlurKernelSize","ssrBlurStdDev","ssrCalcThickness","ssrTemporal","ssrTemporalWeight","SSS","sssQualityPreset","sssBlurScale","sssStrength","sssTransmissionStrength","sssTransmissionPower","sssMultiScatter","sssDebugView","skinSSS","skinSSSStrength","skinSSSOpacity","skinSSSSampleStep","skinSSSDepthScale","skinSSSColorBoost","SSAO","SSAOScale","SSAOBias","SSAORadius","SSAOIntensity","getPerspectiveCameraClass","PerspectiveCamera","projectionMode","Math","PI","fovY","focalLengthMm","sensorWidthMm","sensorHeightMm","sensorFit","near","far","autoAspect","getOrthoCameraClass","OrthoCamera","left","right","bottom","top"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,iBACO,SAASA,cAAAA,GAAAA;IACd,OAAO;QACLC,IAAMC,EAAAA,MAAAA;QACNC,IAAM,EAAA,QAAA;QACNC,MAAQC,EAAAA,SAAAA;AACRC,QAAAA,UAAAA,CAAAA,CAAWC,GAAc,EAAA;AACvB,YAAA,MAAMC,IAAO,GAAA,IAAIN,MAAOK,CAAAA,GAAAA,CAAIE,KAAK,CAAA;AACjCD,YAAAA,IAAAA,CAAKJ,MAAM,GAAGG,GAAAA;YACd,OAAO;gBAAEG,GAAKF,EAAAA;AAAK,aAAA;AACrB,SAAA;AACAG,QAAAA,QAAAA,CAAAA,GAAAA;AACE,YAAA,OAAOC,WAAY,CAAA;AACjB,gBAAA;oBACET,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,MAAA;oBACNC,OAAS,EAAA,KAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACC,OAAO;AAC9B,qBAAA;AACAC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACE,OAAO,GAAGF,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC9B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,KAAA;oBACNO,OAAS,EAAA;wBAAEC,QAAU,EAAA;AAAE,qBAAA;oBACvBP,OAAS,EAAA,IAAA;AACTQ,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,CAAC,IAAI,CAACJ,OAAO;AACtB,qBAAA;AACAH,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;wBACrBA,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA,GAAG,IAAI,CAACC,YAAY,CAACC,WAAW;AAC9C,qBAAA;AACAN,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;wBACrB,IAAI,CAACQ,YAAY,GAAG;4BAAE,GAAG,IAAI,CAACA,YAAY;4BAAEC,WAAaT,EAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAE;AAAC,yBAAA;AACxE;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,cAAA;oBACNU,IAAM,EAAA,KAAA;oBACNO,OAAS,EAAA;wBAAEC,QAAU,EAAA;AAAE,qBAAA;oBACvBP,OAAS,EAAA,GAAA;AACTQ,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,CAAC,IAAI,CAACJ,OAAO;AACtB,qBAAA;AACAH,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;wBACrBA,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA,GAAG,IAAI,CAACC,YAAY,CAACE,YAAY;AAC/C,qBAAA;AACAP,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;wBACrB,IAAI,CAACQ,YAAY,GAAG;4BAAE,GAAG,IAAI,CAACA,YAAY;4BAAEE,YAAcV,EAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAE;AAAC,yBAAA;AACzE;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,QAAA;oBACNC,OAAS,EAAA,OAAA;oBACTM,OAAS,EAAA;wBACPO,IAAM,EAAA;4BACJC,MAAQ,EAAA;AAAC,gCAAA,SAAA;AAAW,gCAAA,UAAA;AAAY,gCAAA,UAAA;AAAY,gCAAA,YAAA;AAAc,gCAAA;AAAc,6BAAA;4BACxEC,MAAQ,EAAA;AAAC,gCAAA,KAAA;AAAO,gCAAA,OAAA;AAAS,gCAAA,SAAA;AAAW,gCAAA,WAAA;AAAa,gCAAA;AAAa;AAChE;AACF,qBAAA;AACAP,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,CAAC,IAAI,CAACJ,OAAO;AACtB,qBAAA;AACAH,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;wBACrBA,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA,GAAG,IAAI,CAACN,YAAY,CAACO,SAAS;AAC5C,qBAAA;AACAZ,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;wBACrB,IAAI,CAACQ,YAAY,GAAG;4BAAE,GAAG,IAAI,CAACA,YAAY;4BAAEO,SAAWf,EAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAE;AAAQ,yBAAA;AAC7E;AACF,iBAAA;AACA,gBAAA;oBACE3B,IAAM,EAAA,KAAA;oBACNU,IAAM,EAAA,MAAA;oBACNC,OAAS,EAAA,KAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACe,GAAG;AAC1B,qBAAA;AACAb,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACgB,GAAG,GAAGhB,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,KAAA;oBACNU,IAAM,EAAA,MAAA;oBACNC,OAAS,EAAA,KAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACgB,GAAG;AAC1B,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACiB,GAAG,GAAGjB,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,MAAA;oBACNC,OAAS,EAAA,IAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACiB,qBAAqB;AAC5C,qBAAA;AACAf,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACkB,qBAAqB,GAAGlB,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC5C;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,SAAA;oBACNU,IAAM,EAAA,QAAA;oBACNC,OAAS,EAAA,MAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,KAAA;wBACPC,KAAO,EAAA,WAAA;wBACPT,IAAM,EAAA;4BACJC,MAAQ,EAAA;AAAC,gCAAA,MAAA;AAAQ,gCAAA,UAAA;AAAY,gCAAA,SAAA;AAAW,gCAAA;AAAmB,6BAAA;4BAC3DC,MAAQ,EAAA;AAAC,gCAAA,MAAA;AAAQ,gCAAA,UAAA;AAAY,gCAAA,SAAA;AAAW,gCAAA;AAAa;AACvD;AACF,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACO,OAAO;AAC7B,qBAAA;AACAlB,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACqB,OAAO,GAAGrB,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC7B;AACF,iBAAA;AACA,gBAAA;oBACE3B,IAAM,EAAA,eAAA;oBACNU,IAAM,EAAA,KAAA;oBACNC,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,gBAAA;wBACPC,KAAO,EAAA,WAAA;wBACPf,QAAU,EAAA;AACZ,qBAAA;AACAN,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACe,gBAAgB;AACtC,qBAAA;AACAnB,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACsB,gBAAgB,GAAGtB,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACtC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACF,OAAO,KAAK,SAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACElC,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,KAAA;oBACNC,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,aAAA;wBACPC,KAAO,EAAA,WAAA;wBACPf,QAAU,EAAA;AACZ,qBAAA;AACAN,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACiB,iBAAiB;AACvC,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACwB,iBAAiB,GAAGxB,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACF,OAAO,KAAK,YAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACElC,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyB,OAAO;AAC9B,qBAAA;AACAvB,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC0B,OAAO,GAAG1B,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC9B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACNO,OAAS,EAAA;wBAAEC,QAAU,EAAA,CAAA;wBAAGsB,QAAU,EAAA,CAAA;wBAAGR,KAAO,EAAA,UAAA;wBAAYC,KAAO,EAAA;AAAyB,qBAAA;oBACxFK,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACqB,eAAe;AACrC,qBAAA;AACAzB,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC4B,eAAe,GAAG5B,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACb,KAAK,EAAEoC,YAAiB,KAAA,UAAA;AACtC;AACF,iBAAA;AACA,gBAAA;oBACE1C,IAAM,EAAA,UAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,qBAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,GAAA;wBACVsB,QAAU,EAAA,EAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwB,QAAQ;AAC9B,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC+B,QAAQ,GAAG/B,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC9B,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACb,KAAK,EAAEoC,YAAiB,KAAA,UAAA;AACtC;AACF,iBAAA;AACA,gBAAA;oBACE1C,IAAM,EAAA,cAAA;oBACN6C,WAAa,EAAA,8BAAA;oBACbnC,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;AACP3B,oBAAAA,OAAAA,EAAS,CAAI,GAAA,GAAA;oBACbM,OAAS,EAAA;wBACPe,KAAO,EAAA,mBAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,QAAA;wBACVsB,QAAU,EAAA,EAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0B,YAAY;AAClC,qBAAA;AACA9B,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACiC,YAAY,GAAGjC,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACb,KAAK,EAAEoC,YAAiB,KAAA,UAAA;AACtC;AACF,iBAAA;AACA,gBAAA;oBACE1C,IAAM,EAAA,KAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPgB,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,MAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC2B,GAAG;AACzB,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACkC,GAAG,GAAGlC,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACzB,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACb,KAAK,EAAEoC,YAAiB,KAAA,UAAA;AACtC;AACF,iBAAA;AACA,gBAAA;oBACE1C,IAAM,EAAA,sBAAA;oBACN6C,WAAa,EAAA,gCAAA;oBACbnC,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,mBAAA;wBACPC,KAAO,EAAA,wBAAA;AACPf,wBAAAA,QAAAA,EAAU,GAAC;wBACXsB,QAAU,EAAA,EAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC4B,oBAAoB;AAC1C,qBAAA;AACAhC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACmC,oBAAoB,GAAGnC,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1C,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACb,KAAK,EAAEoC,YAAiB,KAAA,UAAA;AACtC;AACF,iBAAA;AACA,gBAAA;oBACE1C,IAAM,EAAA,oBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACmC,WAAW;AAClC,qBAAA;AACAjC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACoC,WAAW,GAAGpC,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAClC;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,uBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,YAAA;wBACPC,KAAO,EAAA,4BAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC8B,qBAAqB;AAC3C,qBAAA;AACAlC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACqC,qBAAqB,GAAGrC,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC3C,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACa,WAAW;AACzB;AACF,iBAAA;AACA,gBAAA;oBACEjD,IAAM,EAAA,qBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA,4BAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+B,mBAAmB;AACzC,qBAAA;AACAnC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACsC,mBAAmB,GAAGtC,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACzC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACa,WAAW;AACzB;AACF,iBAAA;AACA,gBAAA;oBACEjD,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,KAAA;wBACPC,KAAO,EAAA,4BAAA;AACPf,wBAAAA,QAAAA,EAAU,EAAC;wBACXsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACgC,cAAc,GAAG,GAAA;AACvC,qBAAA;AACApC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACuC,cAAc,GAAGvC,MAAMO,GAAG,CAAC,EAAE,GAAG,GAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACa,WAAW;AACzB;AACF,iBAAA;AACA,gBAAA;oBACEjD,IAAM,EAAA,SAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA,4BAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACiC,kBAAkB;AACxC,qBAAA;AACArC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACwC,kBAAkB,GAAGxC,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACxC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACa,WAAW;AACzB;AACF,iBAAA;AACA,gBAAA;oBACEjD,IAAM,EAAA,cAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwC,KAAK;AAC5B,qBAAA;AACAtC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACyC,KAAK,GAAGzC,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC5B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,0BAAA;oBACNU,IAAM,EAAA,KAAA;oBACNO,OAAS,EAAA;wBAAEC,QAAU,EAAA,CAAA;wBAAGsB,QAAU,EAAA,CAAA;wBAAGR,KAAO,EAAA,qBAAA;wBAAuBC,KAAO,EAAA;AAAuB,qBAAA;oBACjGK,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACmC,wBAAwB;AAC9C,qBAAA;AACAvC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC0C,wBAAwB,GAAG1C,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC9C;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,sBAAA;oBACNU,IAAM,EAAA,KAAA;oBACNO,OAAS,EAAA;wBAAEC,QAAU,EAAA,CAAA;wBAAGsB,QAAU,EAAA,EAAA;wBAAIR,KAAO,EAAA,iBAAA;wBAAmBC,KAAO,EAAA;AAAuB,qBAAA;oBAC9FK,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACoC,oBAAoB;AAC1C,qBAAA;AACAxC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC2C,oBAAoB,GAAG3C,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1C;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,gBAAA;AACN6C,oBAAAA,WAAAA,EACE,wFACA,uFACA,GAAA,uBAAA;oBACFnC,IAAM,EAAA,OAAA;oBACNO,OAAS,EAAA;wBACP0B,UAAY,EAAA,IAAA;wBACZzB,QAAU,EAAA,CAAA;;;wBAGVsB,QAAU,EAAA,CAAA;wBACVR,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;oBACAK,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACqC,cAAc;AACpC,qBAAA;AACAzC,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC4C,cAAc,GAAG5C,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACpC;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,oBAAA;oBACNU,IAAM,EAAA,OAAA;oBACNO,OAAS,EAAA;wBACP0B,UAAY,EAAA,IAAA;wBACZzB,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVR,KAAO,EAAA,eAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;oBACAK,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACsC,kBAAkB;AACxC,qBAAA;AACA1C,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC6C,kBAAkB,GAAG7C,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACxC;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,OAAA;oBACNO,OAAS,EAAA;wBACP0B,UAAY,EAAA,IAAA;wBACZzB,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVR,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;oBACAK,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACuC,cAAc;AACpC,qBAAA;AACA3C,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC8C,cAAc,GAAG9C,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACpC;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC8C,IAAI;AAC3B,qBAAA;AACA5C,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC+C,IAAI,GAAG/C,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC3B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,YAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+C,GAAG;AAC1B,qBAAA;AACA7C,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACgD,GAAG,GAAGhD,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,UAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACPrB,OAAS,EAAA;wBACPe,KAAO,EAAA,OAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPT,IAAM,EAAA;4BACJC,MAAQ,EAAA;AACN,gCAAA,MAAA;AACA,gCAAA,eAAA;AACA,gCAAA,eAAA;AACA,gCAAA,UAAA;AACA,gCAAA,MAAA;AACA,gCAAA,OAAA;AACA,gCAAA,eAAA;AACA,gCAAA;AACD,6BAAA;4BACDC,MAAQ,EAAA;AACNoC,gCAAAA,cAAAA;AACAC,gCAAAA,uBAAAA;AACAC,gCAAAA,uBAAAA;AACAC,gCAAAA,kBAAAA;AACAC,gCAAAA,cAAAA;AACAC,gCAAAA,eAAAA;AACAC,gCAAAA,uBAAAA;AACAC,gCAAAA;AACD;AACH;AACF,qBAAA;oBACA1D,OAASmD,EAAAA,cAAAA;AACTlD,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACkD,QAAQ;AAC9B,qBAAA;AACAtD,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACyD,QAAQ,GAAGzD,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC9B,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,CAAC,CAAC,IAAI,CAACyB,GAAG;AACnB;AACF,iBAAA;AACA,gBAAA;oBACE7D,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyD,UAAU;AACjC,qBAAA;AACAvD,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC0D,UAAU,GAAG1D,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AACjC;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,oBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA,2BAAA;wBACPU,UAAY,EAAA,IAAA;wBACZzB,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACoD,kBAAkB;AACxC,qBAAA;AACAxD,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC2D,kBAAkB,GAAG3D,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACxC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACmC,UAAU;AACxB;AACF,iBAAA;AACA,gBAAA;oBACEvE,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBAAEe,KAAO,EAAA,SAAA;wBAAWC,KAAO,EAAA;AAAsB,qBAAA;AAC1DrB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC2D,IAAI;AAC3B,qBAAA;AACAzD,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC4D,IAAI,GAAG5D,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC3B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,QAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,SAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPT,IAAM,EAAA;4BACJC,MAAQ,EAAA;AAAC,gCAAA,SAAA;AAAW,gCAAA,UAAA;AAAY,gCAAA,aAAA;AAAe,gCAAA;AAAS,6BAAA;4BACxDC,MAAQ,EAAA;AAAC,gCAAA,SAAA;AAAW,gCAAA,UAAA;AAAY,gCAAA,aAAA;AAAe,gCAAA;AAAS;AAC1D;AACF,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+C,iBAAiB;AACvC,qBAAA;AACA1D,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC6D,iBAAiB,GAAG7D,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAS,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,oBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,gBAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC6D,kBAAkB;AACzC,qBAAA;AACA3D,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC8D,kBAAkB,GAAG9D,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AACzC,qBAAA;AACAsB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACqC,IAAI,IAAI,IAAI,CAACC,iBAAiB,KAAK,QAAA;AACjD;AACF,iBAAA;AACA,gBAAA;oBACE1E,IAAM,EAAA,kBAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,cAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwD,gBAAgB;AACtC,qBAAA;AACA5D,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC+D,gBAAgB,GAAG/D,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACtC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACqC,IAAI,IAAI,IAAI,CAACC,iBAAiB,KAAK,QAAA;AACjD;AACF,iBAAA;AACA,gBAAA;oBACE1E,IAAM,EAAA,cAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyD,YAAY;AAClC,qBAAA;AACA7D,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACgE,YAAY,GAAGhE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACqC,IAAI,IAAI,IAAI,CAACC,iBAAiB,KAAK,QAAA;AACjD;AACF,iBAAA;AACA,gBAAA;oBACE1E,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,eAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0D,iBAAiB;AACvC,qBAAA;AACA9D,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACiE,iBAAiB,GAAGjE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACqC,IAAI,IAAI,IAAI,CAACC,iBAAiB,KAAK,QAAA;AACjD;AACF,iBAAA;AACA,gBAAA;oBACE1E,IAAM,EAAA,eAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC2D,aAAa;AACnC,qBAAA;AACA/D,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACkE,aAAa,GAAGlE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,cAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC4D,eAAe;AACrC,qBAAA;AACAhE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACmE,eAAe,GAAGnE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,aAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,IAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC6D,WAAW;AACjC,qBAAA;AACAjE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACoE,WAAW,GAAGpE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACjC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,kBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,eAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA,CAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC8D,gBAAgB;AACtC,qBAAA;AACAlE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACqE,gBAAgB,GAAGrE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACtC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,aAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,GAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+D,eAAe;AACrC,qBAAA;AACAnE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACsE,eAAe,GAAGtE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,eAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,KAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACgE,aAAa;AACnC,qBAAA;AACApE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACuE,aAAa,GAAGvE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,YAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,QAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACiE,UAAU;AAChC,qBAAA;AACArE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACwE,UAAU,GAAGxE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAChC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,qBAAA;oBACN6C,WAAa,EAAA,sEAAA;oBACbnC,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,iBAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACkE,mBAAmB;AACzC,qBAAA;AACAtE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACyE,mBAAmB,GAAGzE,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACzC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,qBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBAAEe,KAAO,EAAA,UAAA;wBAAYC,KAAO,EAAA;AAAsB,qBAAA;AAC3DrB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyE,YAAY;AACnC,qBAAA;AACAvE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC0E,YAAY,GAAG1E,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAsB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,oBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,gBAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACoE,kBAAkB;AACxC,qBAAA;AACAxE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC2E,kBAAkB,GAAG3E,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACxC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACqC,IAAI,IAAI,IAAI,CAACc,YAAY;AACvC;AACF,iBAAA;AACA,gBAAA;oBACEvF,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,aAAA;wBACPC,KAAO,EAAA,qBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACqE,eAAe;AACrC,qBAAA;AACAzE,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC4E,eAAe,GAAG5E,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,kBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,cAAA;wBACPC,KAAO,EAAA,qBAAA;AACPf,wBAAAA,QAAAA,EAAU,EAAC;wBACXsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACsE,gBAAgB;AACtC,qBAAA;AACA1E,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC6E,gBAAgB,GAAG7E,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACtC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqC,IAAI;AAClB;AACF,iBAAA;AACA,gBAAA;oBACEzE,IAAM,EAAA,YAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC6E,GAAG;AAC1B,qBAAA;AACA3E,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC8E,GAAG,GAAG9E,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,oBAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwE,eAAe;AACrC,qBAAA;AACA5E,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC+E,eAAe,GAAG/E,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,oBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,iBAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyE,kBAAkB;AACxC,qBAAA;AACA7E,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACgF,kBAAkB,GAAGhF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACxC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,WAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,QAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0E,SAAS;AAC/B,qBAAA;AACA9E,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACiF,SAAS,GAAGjF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC/B,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACuD,GAAG,IAAI,CAAC,IAAI,CAAC7D,GAAG;AAC9B;AACF,iBAAA;AACA,gBAAA;oBACE9B,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,aAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC2E,cAAc;AACpC,qBAAA;AACA/E,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACkF,cAAc,GAAGlF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACpC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC4E,aAAa;AACnC,qBAAA;AACAhF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACmF,aAAa,GAAGnF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,cAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC6E,YAAY;AAClC,qBAAA;AACAjF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACoF,YAAY,GAAGpF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,cAAA;oBACNsC,KAAO,EAAA,CAAA;oBACP5B,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC8E,YAAY;AAClC,qBAAA;AACAlF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACqF,YAAY,GAAGrF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,oBAAA;oBACNsC,KAAO,EAAA,CAAA;oBACP5B,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,iBAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+E,kBAAkB;AACxC,qBAAA;AACAnF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACsF,kBAAkB,GAAGtF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACxC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,KAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,gBAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACgF,iBAAiB;AACvC,qBAAA;AACApF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACuF,iBAAiB,GAAGvF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,eAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,YAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACiF,aAAa;AACnC,qBAAA;AACArF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACwF,aAAa,GAAGxF,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,kBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,eAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwF,gBAAgB;AACvC,qBAAA;AACAtF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACyF,gBAAgB,GAAGzF,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAsB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyF,WAAW;AAClC,qBAAA;AACAvF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC0F,WAAW,GAAG1F,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAsB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACuD,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACE3F,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,gBAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACoF,iBAAiB;AACvC,qBAAA;AACAxF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC2F,iBAAiB,GAAG3F,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;AACE,wBAAA,OAAO,IAAI,CAACuD,GAAG,IAAI,IAAI,CAACY,WAAW;AACrC;AACF,iBAAA;AACA,gBAAA;oBACEvG,IAAM,EAAA,YAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC2F,GAAG;AAC1B,qBAAA;AACAzF,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC4F,GAAG,GAAG5F,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,kBAAA;oBACNU,IAAM,EAAA,QAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,UAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,eAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPT,IAAM,EAAA;4BACJC,MAAQ,EAAA;AAAC,gCAAA,SAAA;AAAW,gCAAA,UAAA;AAAY,gCAAA;AAAc,6BAAA;4BAC9CC,MAAQ,EAAA;AAAC,gCAAA,SAAA;AAAW,gCAAA,UAAA;AAAY,gCAAA;AAAc;AAChD;AACF,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+E,gBAAgB;AACtC,qBAAA;AACA1F,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC6F,gBAAgB,GAAG7F,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA;AACtC,qBAAA;AACAS,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,cAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACuF,YAAY;AAClC,qBAAA;AACA3F,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC8F,YAAY,GAAG9F,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwF,WAAW;AACjC,qBAAA;AACA5F,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC+F,WAAW,GAAG/F,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACjC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,yBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,cAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyF,uBAAuB;AAC7C,qBAAA;AACA7F,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACgG,uBAAuB,GAAGhG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC7C,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,sBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,mBAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,GAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0F,oBAAoB;AAC1C,qBAAA;AACA9F,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACiG,oBAAoB,GAAGjG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1C,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,cAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC2F,eAAe;AACrC,qBAAA;AACA/F,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACkG,eAAe,GAAGlG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,cAAA;oBACNU,IAAM,EAAA,QAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,MAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA,oBAAA;wBACPT,IAAM,EAAA;4BACJC,MAAQ,EAAA;AACN,gCAAA,MAAA;AACA,gCAAA,aAAA;AACA,gCAAA,iBAAA;AACA,gCAAA,eAAA;AACA,gCAAA,gBAAA;AACA,gCAAA,eAAA;AACA,gCAAA,qBAAA;AACA,gCAAA,iBAAA;AACA,gCAAA,SAAA;AACA,gCAAA,MAAA;AACA,gCAAA,gBAAA;AACA,gCAAA,sBAAA;AACA,gCAAA,cAAA;AACA,gCAAA;AACD,6BAAA;4BACDC,MAAQ,EAAA;AACN,gCAAA,MAAA;AACA,gCAAA,cAAA;AACA,gCAAA,kBAAA;AACA,gCAAA,gBAAA;AACA,gCAAA,iBAAA;AACA,gCAAA,gBAAA;AACA,gCAAA,sBAAA;AACA,gCAAA,kBAAA;AACA,gCAAA,SAAA;AACA,gCAAA,MAAA;AACA,gCAAA,iBAAA;AACA,gCAAA,wBAAA;AACA,gCAAA,eAAA;AACA,gCAAA;AACD;AACH;AACF,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACqF,YAAY;AAClC,qBAAA;AACAhG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACmG,YAAY,GAAGnG,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA;AAClC,qBAAA;AACAS,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAACqE,GAAG;AACjB;AACF,iBAAA;AACA,gBAAA;oBACEzG,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACmG,OAAO;AAC9B,qBAAA;AACAjG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACoG,OAAO,GAAGpG,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC9B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,iBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,UAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC8F,eAAe;AACrC,qBAAA;AACAlG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACqG,eAAe,GAAGrG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACrC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC6E,OAAO;AACrB;AACF,iBAAA;AACA,gBAAA;oBACEjH,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,IAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+F,cAAc;AACpC,qBAAA;AACAnG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACsG,cAAc,GAAGtG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACpC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC6E,OAAO;AACrB;AACF,iBAAA;AACA,gBAAA;oBACEjH,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,YAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,IAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACgG,iBAAiB;AACvC,qBAAA;AACApG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACuG,iBAAiB,GAAGvG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC6E,OAAO;AACrB;AACF,iBAAA;AACA,gBAAA;oBACEjH,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,YAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACiG,iBAAiB;AACvC,qBAAA;AACArG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACwG,iBAAiB,GAAGxG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC6E,OAAO;AACrB;AACF,iBAAA;AACA,gBAAA;oBACEjH,IAAM,EAAA,mBAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,YAAA;wBACPC,KAAO,EAAA,wBAAA;wBACPf,QAAU,EAAA,CAAA;wBACVsB,QAAU,EAAA;AACZ,qBAAA;AACA5B,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACkG,iBAAiB;AACvC,qBAAA;AACAtG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAACyG,iBAAiB,GAAGzG,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACvC,qBAAA;AACAgB,oBAAAA,OAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC6E,OAAO;AACrB;AACF,iBAAA;AACA,gBAAA;oBACEjH,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,MAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,SAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyG,IAAI;AAC3B,qBAAA;AACAvG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC0G,IAAI,GAAG1G,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AAC3B;AACF,iBAAA;AACA,gBAAA;oBACEd,IAAM,EAAA,WAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,OAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACoG,SAAS;AAC/B,qBAAA;AACAxG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC2G,SAAS,GAAG3G,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC/B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,UAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,CAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,MAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACqG,QAAQ;AAC9B,qBAAA;AACAzG,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC4G,QAAQ,GAAG5G,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC9B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,YAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,QAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACsG,UAAU;AAChC,qBAAA;AACA1G,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC6G,UAAU,GAAG7G,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAChC;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,eAAA;oBACNU,IAAM,EAAA,OAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,GAAA;oBACTM,OAAS,EAAA;wBACPe,KAAO,EAAA,WAAA;wBACPC,KAAO,EAAA;AACT,qBAAA;AACArB,oBAAAA,GAAAA,CAAAA,CAAkBC,KAAK,EAAA;AACrBA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACuG,aAAa,GAAG,GAAA;AACtC,qBAAA;AACA3G,oBAAAA,GAAAA,CAAAA,CAAkBH,KAAK,EAAA;AACrB,wBAAA,IAAI,CAAC8G,aAAa,GAAG9G,MAAMO,GAAG,CAAC,EAAE,GAAG,IAAA;AACtC;AACF;AACD,aAAA,CAAA;AACH;AACF,KAAA;AACF;AAEA,iBACO,SAASwG,yBAAAA,GAAAA;IACd,OAAO;QACL9H,IAAM+H,EAAAA,iBAAAA;QACN5H,MAAQF,EAAAA,MAAAA;QACRC,IAAM,EAAA,mBAAA;AACNG,QAAAA,UAAAA,CAAAA,CAAWC,GAAc,EAAA;AACvB,YAAA,MAAMC,IAAO,GAAA,IAAIwH,iBAAkBzH,CAAAA,GAAAA,CAAIE,KAAK,CAAA;AAC5CD,YAAAA,IAAAA,CAAKJ,MAAM,GAAGG,GAAAA;YACd,OAAO;gBAAEG,GAAKF,EAAAA;AAAK,aAAA;AACrB,SAAA;AACAG,QAAAA,QAAAA,CAAAA,GAAAA;AACE,YAAA,OAAOC,WAAY,CAAA;AACjB,gBAAA;oBACET,IAAM,EAAA,gBAAA;oBACNU,IAAM,EAAA,QAAA;oBACN4B,KAAO,EAAA,CAAA;oBACP3B,OAAS,EAAA,KAAA;oBACTM,OAAS,EAAA;wBACPO,IAAM,EAAA;4BACJC,MAAQ,EAAA;AAAC,gCAAA,eAAA;AAAiB,gCAAA;AAAgB,6BAAA;4BAC1CC,MAAQ,EAAA;AAAC,gCAAA,KAAA;AAAO,gCAAA;AAAW;AAC7B;AACF,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACmG,cAAc;AACpC,qBAAA;AACA9G,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACiH,cAAc,GAAGjH,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA;AACpC;AACF,iBAAA;AACA,gBAAA;oBACE3B,IAAM,EAAA,aAAA;oBACNU,IAAM,EAAA,OAAA;oBACNC,OAASoH,EAAAA,IAAAA,CAAKC,EAAE,GAAG,CAAA;oBACnB/G,OAAS,EAAA;wBACPC,QAAU,EAAA,CAAA;AACVsB,wBAAAA,QAAAA,EAAUuF,KAAKC;AACjB,qBAAA;AACApH,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC6G,IAAI;AAC1B,qBAAA;AACAjH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACoH,IAAI,GAAGpH,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1B,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC2G,cAAc,KAAK,UAAA;AACjC;AACF,iBAAA;AACA,gBAAA;oBACE9H,IAAM,EAAA,aAAA;oBACN6C,WAAa,EAAA,sCAAA;oBACbnC,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPC,QAAU,EAAA,GAAA;wBACVsB,QAAU,EAAA,IAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC8G,aAAa;AACnC,qBAAA;AACAlH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACqH,aAAa,GAAGrH,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC2G,cAAc,KAAK,UAAA;AACjC;AACF,iBAAA;AACA,gBAAA;oBACE9H,IAAM,EAAA,aAAA;oBACN6C,WAAa,EAAA,sCAAA;oBACbnC,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPC,QAAU,EAAA,GAAA;wBACVsB,QAAU,EAAA,GAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC+G,aAAa;AACnC,qBAAA;AACAnH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACsH,aAAa,GAAGtH,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACnC,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC2G,cAAc,KAAK,UAAA;AACjC;AACF,iBAAA;AACA,gBAAA;oBACE9H,IAAM,EAAA,cAAA;oBACN6C,WAAa,EAAA,uCAAA;oBACbnC,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,EAAA;oBACTM,OAAS,EAAA;wBACPC,QAAU,EAAA,GAAA;wBACVsB,QAAU,EAAA,GAAA;wBACVG,UAAY,EAAA;AACd,qBAAA;AACA/B,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACgH,cAAc;AACpC,qBAAA;AACApH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACuH,cAAc,GAAGvH,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACpC,qBAAA;AACAD,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC2G,cAAc,KAAK,UAAA;AACjC;AACF,iBAAA;AACA,gBAAA;oBACE9H,IAAM,EAAA,WAAA;oBACNU,IAAM,EAAA,QAAA;oBACNC,OAAS,EAAA,YAAA;oBACTM,OAAS,EAAA;wBACPO,IAAM,EAAA;4BACJC,MAAQ,EAAA;AAAC,gCAAA,YAAA;AAAc,gCAAA;AAAW,6BAAA;4BAClCC,MAAQ,EAAA;AAAC,gCAAA,YAAA;AAAc,gCAAA;AAAW;AACpC;AACF,qBAAA;AACAd,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMc,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0G,SAAS;AAC/B,qBAAA;AACArH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACwH,SAAS,GAAGxH,KAAMc,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC/B,qBAAA;AACAR,oBAAAA,QAAAA,CAAAA,GAAAA;wBACE,OAAO,IAAI,CAAC2G,cAAc,KAAK,UAAA;AACjC;AACF,iBAAA;AACA,gBAAA;oBACE9H,IAAM,EAAA,MAAA;oBACNU,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACkH,IAAI;AAC1B,qBAAA;AACAtH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAACyH,IAAI,GAAGzH,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,KAAA;oBACNU,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,IAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACmH,GAAG;AACzB,qBAAA;AACAvH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAAC0H,GAAG,GAAG1H,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACzB;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,YAAA;oBACNU,IAAM,EAAA,MAAA;oBACNC,OAAS,EAAA,IAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAA6BC,KAAK,EAAA;AAChCA,wBAAAA,KAAAA,CAAMC,IAAI,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0H,UAAU;AACjC,qBAAA;AACAxH,oBAAAA,GAAAA,CAAAA,CAA6BH,KAAK,EAAA;AAChC,wBAAA,IAAI,CAAC2H,UAAU,GAAG3H,KAAMC,CAAAA,IAAI,CAAC,CAAE,CAAA;AACjC;AACF;AACD,aAAA,CAAA;AACH;AACF,KAAA;AACF;AAEA,iBACO,SAAS2H,mBAAAA,GAAAA;IACd,OAAO;QACL3I,IAAM4I,EAAAA,WAAAA;QACNzI,MAAQF,EAAAA,MAAAA;QACRC,IAAM,EAAA,aAAA;AACNG,QAAAA,UAAAA,CAAAA,CAAWC,GAAc,EAAA;AACvB,YAAA,MAAMC,IAAO,GAAA,IAAIqI,WAAYtI,CAAAA,GAAAA,CAAIE,KAAK,CAAA;AACtCD,YAAAA,IAAAA,CAAKJ,MAAM,GAAGG,GAAAA;YACd,OAAO;gBAAEG,GAAKF,EAAAA;AAAK,aAAA;AACrB,SAAA;AACAG,QAAAA,QAAAA,CAAAA,GAAAA;AACE,YAAA,OAAOC,WAAY,CAAA;AACjB,gBAAA;oBACET,IAAM,EAAA,MAAA;oBACNU,IAAM,EAAA,OAAA;AACNC,oBAAAA,OAAAA,EAAS,EAAC;AACVC,oBAAAA,GAAAA,CAAAA,CAAuBC,KAAK,EAAA;AAC1BA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACuH,IAAI;AAC1B,qBAAA;AACA3H,oBAAAA,GAAAA,CAAAA,CAAuBH,KAAK,EAAA;AAC1B,wBAAA,IAAI,CAAC8H,IAAI,GAAG9H,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,OAAA;oBACNU,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAuBC,KAAK,EAAA;AAC1BA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACwH,KAAK;AAC3B,qBAAA;AACA5H,oBAAAA,GAAAA,CAAAA,CAAuBH,KAAK,EAAA;AAC1B,wBAAA,IAAI,CAAC+H,KAAK,GAAG/H,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC3B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,QAAA;oBACNU,IAAM,EAAA,OAAA;AACNC,oBAAAA,OAAAA,EAAS,EAAC;AACVC,oBAAAA,GAAAA,CAAAA,CAAuBC,KAAK,EAAA;AAC1BA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACyH,MAAM;AAC5B,qBAAA;AACA7H,oBAAAA,GAAAA,CAAAA,CAAuBH,KAAK,EAAA;AAC1B,wBAAA,IAAI,CAACgI,MAAM,GAAGhI,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC5B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,KAAA;oBACNU,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAuBC,KAAK,EAAA;AAC1BA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAAC0H,GAAG;AACzB,qBAAA;AACA9H,oBAAAA,GAAAA,CAAAA,CAAuBH,KAAK,EAAA;AAC1B,wBAAA,IAAI,CAACiI,GAAG,GAAGjI,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACzB;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,MAAA;oBACNU,IAAM,EAAA,OAAA;AACNC,oBAAAA,OAAAA,EAAS,EAAC;AACVC,oBAAAA,GAAAA,CAAAA,CAAuBC,KAAK,EAAA;AAC1BA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACkH,IAAI;AAC1B,qBAAA;AACAtH,oBAAAA,GAAAA,CAAAA,CAAuBH,KAAK,EAAA;AAC1B,wBAAA,IAAI,CAACyH,IAAI,GAAGzH,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AAC1B;AACF,iBAAA;AACA,gBAAA;oBACEpB,IAAM,EAAA,KAAA;oBACNU,IAAM,EAAA,OAAA;oBACNC,OAAS,EAAA,CAAA;AACTC,oBAAAA,GAAAA,CAAAA,CAAuBC,KAAK,EAAA;AAC1BA,wBAAAA,KAAAA,CAAMO,GAAG,CAAC,CAAA,CAAE,GAAG,IAAI,CAACmH,GAAG;AACzB,qBAAA;AACAvH,oBAAAA,GAAAA,CAAAA,CAAuBH,KAAK,EAAA;AAC1B,wBAAA,IAAI,CAAC0H,GAAG,GAAG1H,KAAMO,CAAAA,GAAG,CAAC,CAAE,CAAA;AACzB;AACF;AACD,aAAA,CAAA;AACH;AACF,KAAA;AACF;;;;"}