@fps-games/editor 0.2.0-beta.2 → 0.2.0-beta.4
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.
- package/dist/agent-bridge/capabilities/assets.js.map +1 -1
- package/dist/agent-bridge/capabilities/editor-state.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/editor-state.js +26 -17
- package/dist/agent-bridge/capabilities/editor-state.js.map +1 -1
- package/dist/agent-bridge/capabilities/host-lifecycle.js.map +1 -1
- package/dist/agent-bridge/capabilities/prefabs.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/prefabs.js +61 -13
- package/dist/agent-bridge/capabilities/prefabs.js.map +1 -1
- package/dist/agent-bridge/capabilities/scene-objects.d.ts +1 -1
- package/dist/agent-bridge/capabilities/scene-objects.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/scene-objects.js +110 -25
- package/dist/agent-bridge/capabilities/scene-objects.js.map +1 -1
- package/dist/agent-bridge/capabilities/selection.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/selection.js +8 -5
- package/dist/agent-bridge/capabilities/selection.js.map +1 -1
- package/dist/agent-bridge/capabilities/shadows.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/shadows.js +11 -2
- package/dist/agent-bridge/capabilities/shadows.js.map +1 -1
- package/dist/agent-bridge/capabilities/transform.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/transform.js +6 -4
- package/dist/agent-bridge/capabilities/transform.js.map +1 -1
- package/dist/agent-bridge/capabilities/ui-regions.js.map +1 -1
- package/dist/agent-bridge/capabilities/viewport.d.ts.map +1 -1
- package/dist/agent-bridge/capabilities/viewport.js +79 -47
- package/dist/agent-bridge/capabilities/viewport.js.map +1 -1
- package/dist/agent-bridge/capability-sources.js.map +1 -1
- package/dist/agent-bridge/diagnostics.js.map +1 -1
- package/dist/agent-bridge/index.js.map +1 -1
- package/dist/agent-bridge/register.js.map +1 -1
- package/dist/agent-bridge/shared.d.ts +8 -3
- package/dist/agent-bridge/shared.d.ts.map +1 -1
- package/dist/agent-bridge/shared.js +32 -0
- package/dist/agent-bridge/shared.js.map +1 -1
- package/dist/agent-bridge/source-types.js.map +1 -1
- package/dist/authoring-apply.js.map +1 -1
- package/dist/build-info.json +48 -48
- package/dist/editor-plugin-agent-capabilities.js.map +1 -1
- package/dist/editor-plugin-hierarchy-command.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/local-editor-lifecycle-operations.js.map +1 -1
- package/dist/local-editor-agent-actions.d.ts.map +1 -1
- package/dist/local-editor-agent-actions.js +9 -5
- package/dist/local-editor-agent-actions.js.map +1 -1
- package/dist/local-editor-agent-bridge-transport.js.map +1 -1
- package/dist/local-editor-agent-bridge.js.map +1 -1
- package/dist/local-editor-agent-context.js.map +1 -1
- package/dist/local-editor-harness.d.ts +57 -1
- package/dist/local-editor-harness.d.ts.map +1 -1
- package/dist/local-editor-harness.js +393 -41
- package/dist/local-editor-harness.js.map +1 -1
- package/dist/local-editor-marker-graph.js.map +1 -1
- package/dist/local-editor-performance-stats.js.map +1 -1
- package/dist/local-editor-plugin-inspector.js.map +1 -1
- package/dist/local-editor-plugin-panel.js.map +1 -1
- package/dist/local-editor-scene-render-scheduler.js.map +1 -1
- package/dist/local-editor-scene-view-interaction-runtime.js.map +1 -1
- package/dist/local-editor-viewport-render-coordinator.js.map +1 -1
- package/dist/playable-babylon-facade.js.map +1 -1
- package/dist/playable-babylon-outline-inspector.js.map +1 -1
- package/dist/playable-babylon-outline-runtime.js.map +1 -1
- package/dist/playable-babylon-rendering.js.map +1 -1
- package/dist/playable-local-editor-host.d.ts +36 -0
- package/dist/playable-local-editor-host.d.ts.map +1 -1
- package/dist/playable-local-editor-host.js.map +1 -1
- package/dist/playable-product-local-editor.js.map +1 -1
- package/dist/playable-product-projection-preview.js.map +1 -1
- package/dist/playable-product-rendering.js.map +1 -1
- package/dist/playable-product-scene-capabilities.d.ts.map +1 -1
- package/dist/playable-product-scene-capabilities.js +49 -2
- package/dist/playable-product-scene-capabilities.js.map +1 -1
- package/dist/playable-runtime-babylon.js.map +1 -1
- package/dist/playable-runtime.js.map +1 -1
- package/dist/playable-sdk-upgrade-doctor.js.map +1 -1
- package/dist/playable-sdk-vite.js.map +1 -1
- package/dist/playable-sdk.js.map +1 -1
- package/dist/playable-standard-project.js.map +1 -1
- package/dist/static-shadow-cpu-worker.js.map +1 -1
- package/dist/vite.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/environment-texture-controller.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/profile.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/environment/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/lighting/directional-light-angles.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/apply.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/babylon-default/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/outlines/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/placement/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/placement/runtime-drop-position.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/plugin.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/babylon-default-pipeline.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/profile.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/post-process/volume-stack.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/rendering/index.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/rendering/node-rendering.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-shaders.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/blob-shadow-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/dynamic-shadow-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-shaders.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/planar-shadow-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-artifact-system.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-atlas.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-bake.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-baker.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-options.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/static-projected-shadow-rendering.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/dist/shadows/types.js.map +1 -1
- package/node_modules/@fps-games/babylon-renderer/package.json +7 -7
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/edit-session.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/editor-sky.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/event-guard.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/infinite-grid-layer.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/infinite-grid.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/input-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/inspector-host.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/main-camera-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/marker-overlay.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/material-slot-source-resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/monitor.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/performance-monitor.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/prefab-comparison-preview-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/primitive-projection-instancing.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-asset-container-importer.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-pick-resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection-source-owner-path.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-camera-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-measurement-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-spatial-overlay-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/selection-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/shadow-preview-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/tool-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/transform-solver.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/dist/types.js.map +1 -1
- package/node_modules/@fps-games/editor-babylon/package.json +5 -5
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts +3 -1
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/index.js +2 -0
- package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-clipboard.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-inspector-groups.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-rendering-actions.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-root-ownership.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-asset-kind.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-context-menu.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-dock-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-actions.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-attach-dialog.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-auto-scroll.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-command-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts +2 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js +260 -94
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-drag-policy.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.d.ts +7 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.js +186 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-projection.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts +2 -2
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js +14 -8
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-scope.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js +23 -7
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-tree.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-hierarchy-view.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js +6 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-icons.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts +3 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js +60 -13
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-modal-dialog.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-plugin-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-prefab-stage.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.d.ts +24 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.js +69 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-status-diagnostics.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-auto-scroll.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-policy.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-preview.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-structured-drag-session.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-tooltip.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +58 -14
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +196 -11
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/plugin-contributions.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-camera-debug-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-debug-panel-shell.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/dist/runtime-lighting-debug-panel.js.map +1 -1
- package/node_modules/@fps-games/editor-browser/package.json +4 -4
- package/node_modules/@fps-games/editor-core/dist/agent-bridge.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/agent-interaction.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/authoring-source.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/document-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-plugin-host.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +9 -1
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/editor-session.js +18 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/events.d.ts +1 -1
- package/node_modules/@fps-games/editor-core/dist/events.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/events.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/index.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/schema.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/types.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/field-schema/validators.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/host-services.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/lifecycle.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/marker-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/scene-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/scene-view-input.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/selection-strategy.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/serialized-object.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-command.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-gizmo.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-operation-policy.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/transform-operations.js.map +1 -1
- package/node_modules/@fps-games/editor-core/dist/viewport-tools.js.map +1 -1
- package/node_modules/@fps-games/editor-core/package.json +6 -6
- package/node_modules/@fps-games/editor-forge-play/dist/agent-transport.js.map +1 -1
- package/node_modules/@fps-games/editor-forge-play/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-forge-play/package.json +2 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/drop-cache.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js +28 -5
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/payload.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-bridge/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/config.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/generated-module.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/managed-facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js +13 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/manager-core.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/metadata.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/node.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js +58 -23
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/registry.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-database/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/catalog.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/document.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-library/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/document.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/identity.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/managed-runtime-instance.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/placement.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/runtime-scene.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-placement/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js +3 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/result.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/transport.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js +7 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/asset-registration/workflow.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/constants.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/drift.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/runtime-transform-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring/source.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/client.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-client/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/handler.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/payload.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/response.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/routes.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/authoring-server/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/adapter-dispatcher.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/payload.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/project-asset-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/protocol.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/readers.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/bridge-command/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/binding.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/math.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/pan.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-format.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-state.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-storage.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/panel-text.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/rig.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/save-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/snapshot.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/camera-debug/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/commands/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/commands/transform.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/commands/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/core-contracts/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/helpers.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/document/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/schema.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/field-schema/validators.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/camera-section.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-property.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/document-sections.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/format.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/light-sections.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/marker-section.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/object-assembly.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/readonly.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-sections.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime-summary.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/runtime.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/safe-value.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/inspector/validation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/internal/local-harness.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/binding.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/math.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/save-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/snapshot.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/storage.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/text.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-debug/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/math.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/profile.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/lighting-preview/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/agent-descriptions.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play-types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js +5 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/forge-play.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/host-controller.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/lifecycle.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/loading-overlay.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts +18 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js +60 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/project-asset-commands.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/timing.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/local-harness/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/game-objects.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/geometry.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/marker-scene/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/asset-fields.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/binding.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/default-assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js +28 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/document-assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/duplicate.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/paths.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/preview.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/profile.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js +26 -9
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/reimport.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/scene-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js +0 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/slot-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/text.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts +8 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/material-binding/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/field-patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/json-field.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/reducer.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/rendering-alpha-index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/transform.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/mutation/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js +18 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/aliases.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts +2 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/package-resolution/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/action-patches.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/material-override-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/projection.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/shadow-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/source-structure-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/stage-inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/structure.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/prefab-stage/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/asset-manager.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal-scene-feature.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/ground-decal.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js +3 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/project-host-services.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-session.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/scene-source.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-asset-actions.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/product/standard-scene-assembly.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/draft.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/panel.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/route.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/rendering-profile/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/assets.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/import-plan.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/nodes.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/runtime-preview/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js +13 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/compiler.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-compiler/validation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/artifacts.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/client.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/companion-configs.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/driver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/protocol.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/scene-source/validation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/descriptors.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/inspector.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/object.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/patch.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/serialized-property/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/classification.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy-facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/hierarchy.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/identity.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/object-command-facade.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/patches.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/property-patches.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/reducer-core.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/system-defaults.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/transform.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/session/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shadow-system/resolver.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/http.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/shared/json.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/artifact.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/static-shadows/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/host.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/inspectors.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/report.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/upgrade-doctor/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/asset-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js +1 -0
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/authoring-http.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-core.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/build-info-node.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts +6 -5
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/editor-scene-workflow.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/index.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.d.ts +3 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.js +37 -8
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/module-invalidation.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/path-write-coordinator.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts +4 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js +14 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/plugin.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts +5 -4
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-adapter.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts +3 -2
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.js +2 -11
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-asset-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.d.ts +8 -7
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js +84 -6
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-authoring-api.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.d.ts +2 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-rendering-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts +4 -3
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.js +1 -4
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/product-scene-authoring.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/session-metadata.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts +0 -33
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.d.ts.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/dist/vite/types.js.map +1 -1
- package/node_modules/@fps-games/editor-playable-sdk/package.json +9 -6
- package/node_modules/@fps-games/editor-protocol/dist/agent-bridge.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent-trace.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/agent.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/dist/marker-graph.js.map +1 -1
- package/node_modules/@fps-games/editor-protocol/package.json +2 -2
- package/node_modules/@fps-games/editor-tooling/dist/contributions.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/data-object.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/index.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/migration.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/package-metadata-node.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/dist/vite.js.map +1 -1
- package/node_modules/@fps-games/editor-tooling/package.json +3 -3
- package/node_modules/@fps-games/playable-assets/dist/identity.js.map +1 -1
- package/node_modules/@fps-games/playable-assets/dist/index.d.ts +1 -0
- package/node_modules/@fps-games/playable-assets/dist/index.d.ts.map +1 -1
- package/node_modules/@fps-games/playable-assets/dist/index.js +1 -0
- package/node_modules/@fps-games/playable-assets/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-assets/dist/portable-path.d.ts +2 -0
- package/node_modules/@fps-games/playable-assets/dist/portable-path.d.ts.map +1 -0
- package/node_modules/@fps-games/playable-assets/dist/portable-path.js +25 -0
- package/node_modules/@fps-games/playable-assets/dist/portable-path.js.map +1 -0
- package/node_modules/@fps-games/playable-assets/package.json +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/marker-graph-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/dist/marker-graph.js.map +1 -1
- package/node_modules/@fps-games/playable-contracts/package.json +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-authoring.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-types.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile-values.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/rendering-profile.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-quality.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-settings.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-types.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/shadow-validation.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/dist/value.js.map +1 -1
- package/node_modules/@fps-games/playable-rendering/package.json +2 -2
- package/node_modules/@fps-games/playable-runtime/dist/compiled-scene-data.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/runtime-data.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/standard-plugins.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/tokens.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/dist/types.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime/package.json +12 -12
- package/node_modules/@fps-games/playable-runtime-data/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-runtime-data/package.json +4 -4
- package/node_modules/@fps-games/playable-scene/dist/index.js.map +1 -1
- package/node_modules/@fps-games/playable-scene/dist/transform-math.js.map +1 -1
- package/node_modules/@fps-games/playable-scene/package.json +2 -2
- package/node_modules/@fps-games/plugin-api/dist/index.js.map +1 -1
- package/node_modules/@fps-games/plugin-api/package.json +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-assets/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-assets/package.json +5 -5
- package/node_modules/@fps-games/plugin-host/dist/index.js.map +1 -1
- package/node_modules/@fps-games/plugin-host/package.json +2 -2
- package/node_modules/@fps-games/plugin-markers/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-markers/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-markers/package.json +5 -5
- package/node_modules/@fps-games/plugin-materials/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-materials/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-materials/package.json +5 -5
- package/node_modules/@fps-games/plugin-rendering/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-rendering/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-rendering/package.json +5 -5
- package/node_modules/@fps-games/plugin-scene/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-scene/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-scene/package.json +5 -5
- package/node_modules/@fps-games/plugin-shadows/dist/reference.js.map +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/runtime.js.map +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/version.d.ts +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/version.js +1 -1
- package/node_modules/@fps-games/plugin-shadows/dist/version.js.map +1 -1
- package/node_modules/@fps-games/plugin-shadows/package.json +7 -7
- package/package.json +27 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shadows.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/shadows.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qCAAqC,EACrC,iDAAiD,EACjD,wBAAwB,EACxB,wCAAwC,EACxC,0CAA0C,EAC1C,uBAAuB,GAIxB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,kCAAkC,EAClC,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAK1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,iCAAiC,GAkClC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,mCAAmC,EACnC,uCAAuC,GACxC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,GAM3B,MAAM,cAAc,CAAC;AAGtB,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAChD,MAAM,oBAAoB,GAAG;IAC3B,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,gBAAgB;IAChB,mBAAmB;IACnB,sBAAsB;IACtB,uBAAuB;IACvB,wBAAwB;IACxB,oBAAoB;IACpB,0BAA0B;IAC1B,2BAA2B;IAC3B,0BAA0B;IAC1B,4BAA4B;IAC5B,2BAA2B;IAC3B,0BAA0B;CAClB,CAAC;AA0CX,MAAM,UAAU,wCAAwC,CACtD,KAA4D,EAC5D,OAA6D,EAC7D,QAAoB,EACpB,UAAuE;IAEvE,OAAO;QACL,SAAS,CAAC,KAAK;YACb,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,iBAAiB,EACnD,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,OAAO,2BAA2B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC;QACD,SAAS,CAAC,KAAK;YACb,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,iBAAiB,EACnD,MAAM,CAAC,OAAO,EACd,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,EAAE,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,iBAAiB,EACnD,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrC,OAAO,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtG,CAAC;YACD,OAAO,0BAA0B,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC5F,CAAC;QACD,aAAa,CAAC,KAAK;YACjB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,qBAAqB,EACvD,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC5D,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACrF,OAAO;gBACL,SAAS,EAAE,kBAAkB,CAC3B,qCAAqC,CAAC;oBACpC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;oBAClC,QAAQ;iBACT,CAAC,EACF,KAAK,EACL,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAChC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC;gBAC9E,WAAW,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,CAAC;aACP,CAAC;QACzD,CAAC;QACD,cAAc,CAAC,KAAK;YAClB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7H,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,sBAAsB,EACxD,MAAM,CAAC,OAAO,EACd,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,EAAE,EAAE,CAC9E,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,sBAAsB,EACxD,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,WAAW,GAAG,0BAA0B,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAG,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC5D,MAAM,SAAS,GAAuC;gBACpD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAClC,QAAQ;gBACR,mBAAmB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;gBACrE,uBAAuB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;gBAC/C,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtF,CAAC;YACF,MAAM,IAAI,GAAG,aAAa,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/D,MAAM,YAAY,GAAG,kBAAkB,CACrC,qCAAqC,CAAC;gBACpC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAClC,QAAQ;gBACR,mBAAmB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;aACtE,CAAC,EACF,KAAK,EACL;gBACE,QAAQ;gBACR,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,iBAAiB,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;aAC9E,CACF,CAAC;YACF,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;gBACtC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACzE,CAAC,CAAC,YAAY,CAAC;YACjB,MAAM,KAAK,GAAG,wBAAwB,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/E,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;gBAC9B,IAAI;gBACJ,MAAM,EAAE,8BAA8B,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;gBAC1H,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3B,SAAS,EAAE,4BAA4B,CACrC,IAAI,EACJ,SAAS,EACT,KAAK,EACL,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,EAC1D,KAAK,CACN;gBACD,SAAS;gBACT,WAAW,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,CAAC;aACN,CAAC;QAC1D,CAAC;QACD,YAAY,CAAC,KAAK;YAChB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,oBAAoB,EACtD,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,OAAO,8BAA8B,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE;gBAC5D,iBAAiB,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;aAC9E,EAAE;gBACD,sBAAsB,EAAE,UAAU,CAAC,yBAAyB,EAAE,EAAE,IAAI,IAAI;aACzE,CAAC,CAAC;QACL,CAAC;QACD,iBAAiB,CAAC,KAAK;YACrB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,0BAA0B,EAC5D,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,OAAO,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtF,CAAC;QACD,iBAAiB;YACf,OAAO,uBAAuB,CAAC,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC9D,CAAC;QACD,eAAe,CAAC,KAAK;YACnB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,wBAAwB,EAC1D,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,OAAO,GAAG,8BAA8B,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE;gBACrE,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;gBACpC,iBAAiB,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;aAC9E,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,6BAA6B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACnE,MAAM,UAAU,GAAG,UAAU,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC;mBAC9D,KAAK,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC,YAAY,CAAC;mBACvD,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvC,UAAU,CAAC,iBAAiB,CAAC,gCAAgC,CAAC,CAAC;YAC/D,QAAQ,EAAE,CAAC;YACX,MAAM,WAAW,GAAG;gBAClB,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;gBAC9B,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC1B,QAAQ,EAAE,SAAkB;wBAC5B,MAAM,EAAE,QAAiB;wBACzB,IAAI,EAAE,0BAA0B;wBAChC,OAAO,EAAE,yEAAyE;qBACnF,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;aACT,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU;gBACV,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACQ,CAAC;QAC3D,CAAC;QACD,iBAAiB;YACf,MAAM,OAAO,GAAG,UAAU,CAAC,uBAAuB,EAAE,EAAE;mBACjD,KAAK,CAAC,UAAU,EAAE,uBAAuB,EAAE,EAAE;mBAC7C,KAAK,CAAC;YACX,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;YACjE,QAAQ,EAAE,CAAC;YACX,OAAO;gBACL,OAAO;aACiD,CAAC;QAC7D,CAAC;QACD,iBAAiB,CAAC,KAAK;YACrB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,+BAA+B,EACjE,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,OAAO,GAAG,8BAA8B,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE;gBACrE,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;gBACpC,iBAAiB,EAAE,6BAA6B,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;aAC9E,CAAC,CAAC;YACH,OAAO,wCAAwC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC;QACD,KAAK,CAAC,UAAU,CAAC,KAAK;YACpB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,kBAAkB,EACpD,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,WAAW,GAAG,0BAA0B,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAG,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACzF,MAAM,eAAe,GAAG,6BAA6B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvE,MAAM,UAAU,GAAG,yBAAyB,CAC1C,eAAe,EACf;gBACE,IAAI,EAAE,QAAQ;gBACd,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAChC,CACF,CAAC;YACF,MAAM,SAAS,GAAuC;gBACpD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAClC,QAAQ;gBACR,mBAAmB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;gBACrE,uBAAuB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;gBAC/C,QAAQ,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE;aACnC,CAAC;YACF,MAAM,IAAI,GAAG,aAAa,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC;YAC/D,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzE,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrC,OAAO;oBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;oBAC9B,KAAK,EAAE,KAAK;oBACZ,IAAI;oBACJ,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE;wBACX,GAAG,iBAAiB;wBACpB;4BACE,QAAQ,EAAE,SAAS;4BACnB,MAAM,EAAE,QAAQ;4BAChB,IAAI,EAAE,4BAA4B;4BAClC,OAAO,EAAE,iIAAiI;yBAC3I;qBACF;iBACgD,CAAC;YACtD,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;gBACnC,OAAO;oBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;oBAC9B,KAAK,EAAE,KAAK;oBACZ,IAAI;oBACJ,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE;wBACX,GAAG,iBAAiB;wBACpB;4BACE,QAAQ,EAAE,SAAS;4BACnB,MAAM,EAAE,QAAQ;4BAChB,IAAI,EAAE,8BAA8B;4BACpC,OAAO,EAAE,8GAA8G;yBACxH;qBACF;iBACgD,CAAC;YACtD,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;YAChF,MAAM,kBAAkB,GAAG,0CAA0C,CAAC,YAAY,CAAC,CAAC;YACpF,MAAM,eAAe,GAAG,kBAAkB,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;YACxE,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,KAAK,IAAI,IAAI,YAAY,CAAC,OAAO,KAAK,IAAI,IAAI,eAAe,CAAC;YAC3F,MAAM,cAAc,GAAG,0BAA0B,CAAC,YAAY,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC;YACrG,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;gBAC9B,KAAK;gBACL,IAAI;gBACJ,KAAK,EAAE,CAAC,KAAK;gBACb,WAAW,EAAE;oBACX,GAAG,iBAAiB;oBACpB,cAAc;iBACf;aACgD,CAAC;QACtD,CAAC;QACD,gBAAgB,CAAC,KAAK;YACpB,MAAM,QAAQ,GAAG,mBAAmB,CAClC,iCAAiC,CAAC,wBAAwB,EAC1D,KAAK,EACL,KAAK,EACL,UAAU,CACX,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACzE,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrC,OAAO;oBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;oBAC9B,WAAW,EAAE,KAAK;oBAClB,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE;wBACX,GAAG,iBAAiB;wBACpB;4BACE,QAAQ,EAAE,SAAS;4BACnB,MAAM,EAAE,QAAQ;4BAChB,IAAI,EAAE,kCAAkC;4BACxC,OAAO,EAAE,4HAA4H;yBACtI;qBACF;iBACsD,CAAC;YAC5D,CAAC;YACD,MAAM,IAAI,GAAG,aAAa,CAAC,uBAAuB,CAAC;gBACjD,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAClC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;aACnC,CAAC,CAAC,CAAC;YACJ,IAAI,IAAI,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;gBACpC,OAAO;oBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;oBAC9B,WAAW,EAAE,KAAK;oBAClB,KAAK,EAAE,KAAK;oBACZ,WAAW,EAAE;wBACX,GAAG,iBAAiB;wBACpB;4BACE,QAAQ,EAAE,SAAS;4BACnB,MAAM,EAAE,QAAQ;4BAChB,IAAI,EAAE,wCAAwC;4BAC9C,OAAO,EAAE,0FAA0F;4BACnG,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;yBACpD;qBACF;iBACsD,CAAC;YAC5D,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,8BAA8B,EAAE,CAAC;gBAC/C,OAAO;oBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;oBAC9B,WAAW,EAAE,KAAK;oBAClB,KAAK,EAAE,IAAI;oBACX,WAAW,EAAE;wBACX,GAAG,iBAAiB;wBACpB;4BACE,QAAQ,EAAE,SAAS;4BACnB,MAAM,EAAE,QAAQ;4BAChB,IAAI,EAAE,oCAAoC;4BAC1C,OAAO,EAAE,8HAA8H;yBACxI;qBACF;iBACsD,CAAC;YAC5D,CAAC;YACD,MAAM,WAAW,GAAG,UAAU,CAAC,8BAA8B,EAAE,CAAC;YAChE,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;gBAC9B,WAAW;gBACX,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE;oBACX,GAAG,iBAAiB;oBACpB;wBACE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;wBAC1C,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,mCAAmC;wBACpF,OAAO,EAAE,WAAW;4BAClB,CAAC,CAAC,oGAAoG;4BACtG,CAAC,CAAC,6FAA6F;wBACjG,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;qBACpD;iBACF;aACsD,CAAC;QAC5D,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,QAAyC;IAEzC,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,0CAA0C,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrG,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAoC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjI,eAAe,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAoC;YACnH,IAAI,EAAE,aAAa,CAAC,uBAAuB,CAAC;gBAC1C,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;aAC5B,CAAC,CAAC;YACH,WAAW,EAAE;gBACX,GAAG,oBAAoB,CAAC,SAAS,CAAC,WAAW,CAAC;gBAC9C,GAAG,6BAA6B,CAAC,QAAQ,CAAC;aAC3C;SACF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzD,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,CAAoC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,eAAe,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAoC;QAC3F,IAAI,EAAE,aAAa,CAAC,uBAAuB,CAAC;YAC1C,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,QAAQ,EAAE,QAAQ,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,WAAW,EAAE,6BAA6B,CAAC,QAAQ,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CACrC,QAAyC,EACzC,KAA4D,EAC5D,UAA6F,EAAE,EAC/F,YAA+F;IAE/F,MAAM,QAAQ,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,qCAAqC,EAAE,CAAC;IAC/F,MAAM,eAAe,GAAG,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IAChE,MAAM,WAAW,GAAG,0BAA0B,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAuC;QACpD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ;QACR,mBAAmB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QACrE,uBAAuB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC;KAChD,CAAC;IACF,MAAM,IAAI,GAAG,aAAa,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,kBAAkB,CACrC,qCAAqC,CAAC;QACpC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ;QACR,mBAAmB,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;KACtE,CAAC,EACF,KAAK,EACL,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,CACvD,CAAC;IACF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;QACtC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC/E,CAAC,CAAC,YAAY,CAAC;IACjB,MAAM,cAAc,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,wBAAwB,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACxE,MAAM,eAAe,GAAG,gCAAgC,CACtD,IAAI,EACJ,SAAS,EACT,YAAY,EAAE,sBAAsB,EACpC,oCAAoC,CAAC,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAC5E,CAAC;IACF,MAAM,WAAW,GAAG;QAClB,GAAG,6BAA6B,CAAC,QAAQ,CAAC;QAC1C,GAAG,IAAI,CAAC,WAAW;QACnB,GAAG,CAAC,eAAe,CAAC,WAAW,IAAI,EAAE,CAAC;KACvC,CAAC;IACF,OAAO;QACL,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,8BAA8B,CAAC,QAAQ,EAAE,KAAK,EAAE,iBAAiB,CAAC;QAC1E,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,cAAc,CAAoC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzG,eAAe,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAoC;QAC7G,IAAI;QACJ,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,SAAS;QACT,SAAS,EAAE,4BAA4B,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,CAAC;QACzF,eAAe;QACf,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAA4D,EAC5D,QAAoB,EACpB,UAAuE,EACvE,QAAyC,EACzC,KAAoD;IAEpD,MAAM,iBAAiB,GAAG,6BAA6B,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,0BAA0B,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACxE,MAAM,cAAc,GAAG,8BAA8B,CAAC,QAAQ,EAAE,KAAK,EAAE;QACrE,WAAW;QACX,iBAAiB;KAClB,EAAE;QACD,sBAAsB,EAAE,UAAU,CAAC,yBAAyB,EAAE,EAAE,IAAI,IAAI;KACzE,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,cAAc,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACrE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,WAAW;QACjC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAClE,KAAK,MAAM,UAAU,IAAI,oBAAoB;QAAE,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9E,IAAI,cAAc,CAAC,KAAK,EAAE,OAAO;QAAE,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACpF,MAAM,eAAe,GAAG,KAAK,CAAC,oBAAoB,KAAK,KAAK;QAC1D,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,iCAAiC,CAAC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxF,KAAK,MAAM,SAAS,IAAI,eAAe;QAAE,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEvE,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC5C,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;QAChC,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC/D,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACpC,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,UAAU,EAAE,sBAAsB,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;YACtF,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,EAAE,mBAAmB,EAAE,EAAE,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;IACtF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,0BAA0B,EAC5D,0FAA0F,EAC1F,EAAE,IAAI,EAAE,gCAAgC,EAAE,CAC3C,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,GAA4B,EAAE,CAAC;IAClD,KAAK,MAAM,QAAQ,IAAI,SAAS;QAAE,aAAa,CAAC,QAAQ,CAAC,GAAG,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACzD,KAAK,CAAC,iBAAiB,CAAC,SAAS,GAAG,aAAa,CAAC;IAClD,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,CAAC,GAAG,iBAAiB,CAAC,CAAC;IACnE,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YAC5F,EAAE;YACF,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC;SAC1C,CAAC,CAAC,CAAC,CAAC;IACL,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1I,EAAE;gBACF,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC;aAC1C,CAAC,CAAC,CAAC,CAAC,CAAC;IACN,KAAK,CAAC,iBAAiB,CAAC,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,MAAM,CAAC;WACpE,4BAA4B,QAAQ,EAAE,CAAC;IAC5C,KAAK,CAAC,UAAU,EAAE,+BAA+B,EAAE,EAAE,CAAC;IACtD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,6BAA6B,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;IACvF,MAAM,OAAO,GAAG,8BAA8B,CAAC,QAAQ,EAAE,KAAK,EAAE;QAC9D,WAAW;QACX,iBAAiB;KAClB,EAAE;QACD,sBAAsB,EAAE,UAAU,CAAC,yBAAyB,EAAE,EAAE,IAAI,IAAI;KACzE,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,KAAK,KAAK;QAC9C,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,6BAA6B,CAAC,OAAO,EAAE;YACvC,GAAG,KAAK;YACR,gBAAgB,EAAE,IAAI;YACtB,kBAAkB,EAAE,IAAI;YACxB,kBAAkB,EAAE,IAAI;YACxB,aAAa,EAAE,IAAI;YACnB,kBAAkB,EAAE,IAAI;SACzB,CAAC,CAAC;IACL,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC;QACxC,CAAC,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC,YAAY,CAAC;eAC7C,KAAK,CAAC,UAAU,EAAE,qBAAqB,EAAE,CAAC,YAAY,CAAC;eACvD,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,iBAAiB,GAAG,wCAAwC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACnF,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvF,MAAM,WAAW,GAAkC;QACjD,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QAC9B,GAAG,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAClC,QAAQ,EAAE,SAAkB;gBAC5B,MAAM,EAAE,QAAiB;gBACzB,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,mGAAmG;gBAC5G,OAAO,EAAE,EAAE,QAAQ,EAAE;aACtB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACR,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;gBAC9E,QAAQ,EAAE,SAAkB;gBAC5B,MAAM,EAAE,QAAiB;gBACzB,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,oEAAoE;gBAC7E,OAAO,EAAE,EAAE,OAAO,EAAE,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE;aAC5D,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACR,GAAG,CAAC,CAAC,eAAe,CAAC,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;gBACrE,QAAQ,EAAE,MAAe;gBACzB,MAAM,EAAE,QAAiB;gBACzB,IAAI,EAAE,mCAAmC;gBACzC,OAAO,EAAE,0EAA0E;aACpF,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACT,CAAC;IACF,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;IACjE,QAAQ,EAAE,CAAC;IACX,OAAO;QACL,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;QACtF,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,aAAa,EAAE,CAAC,GAAG,cAAc,CAAC;QAClC,eAAe;QACf,oBAAoB;QACpB,QAAQ,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;QAC7E,eAAe;QACf,UAAU;QACV,QAAQ,EAAE,0CAA0C,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,CAAC;QACjF,OAAO;QACP,iBAAiB;QACjB,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAA4D,EAC5D,QAAoB,EACpB,UAAuE;IAEvE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;IAC5E,MAAM,YAAY,GAAG,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC1E,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;WAC9E,CAAC,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACrE,KAAK,CAAC,iBAAiB,CAAC,SAAS,GAAG,EAAE,CAAC;IACvC,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAC/C,OAAO,KAAK,CAAC,iBAAiB,CAAC,kBAAkB,CAAC;IAClD,OAAO,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,CAAC;IACpD,OAAO,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC;IACtC,KAAK,CAAC,UAAU,EAAE,+BAA+B,EAAE,EAAE,CAAC;IACtD,MAAM,cAAc,GAAG,UAAU,CAAC,uBAAuB,EAAE,EAAE;WACxD,KAAK,CAAC,UAAU,EAAE,uBAAuB,EAAE,EAAE;WAC7C,KAAK,CAAC;IACX,MAAM,iBAAiB,GAAG,aAAa,GAAG,CAAC,IAAI,YAAY,IAAI,aAAa,CAAC;IAC7E,UAAU,CAAC,iBAAiB,CAAC,kCAAkC,CAAC,CAAC;IACjE,QAAQ,EAAE,CAAC;IACX,OAAO;QACL,OAAO,EAAE,iBAAiB,IAAI,cAAc;QAC5C,cAAc;QACd,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,SAAS,0CAA0C,CACjD,KAA4D,EAC5D,OAA0F,EAC1F,WAAmD;IAEnD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS;QAChC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC;QACjD,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;QACrC,GAAG,KAAK,CAAC,iBAAiB,CAAC,iBAAiB;KAC7C,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IACvE,OAAO;QACL,QAAQ,EAAE,WAAW,CAAC,IAAI,GAAG,CAAC;QAC9B,iBAAiB,EAAE,CAAC,GAAG,WAAW,CAAC;QACnC,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACpE,MAAM,eAAe,GAAG,KAAK,EAAE,cAAc,IAAI,IAAI,CAAC;YACtD,OAAO;gBACL,QAAQ;gBACR,eAAe;gBACf,cAAc,EAAE,KAAK,EAAE,gBAAgB,IAAI,CAAC,eAAe,IAAI,eAAe,KAAK,KAAK,CAAC;gBACzF,GAAG,CAAC,OAAO,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpE,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACnC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;oBACrE,WAAW,EAAE,CAAC;4BACZ,QAAQ,EAAE,MAAe;4BACzB,MAAM,EAAE,QAAiB;4BACzB,IAAI,EAAE,wCAAwC;4BAC9C,OAAO,EAAE,oHAAoH;4BAC7H,OAAO,EAAE,EAAE,QAAQ,EAAE;yBACtB,CAAC;iBACH,CAAC,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACJ,CAAC,CAAC;QACF,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CAAC,QAA6B,EAAE,aAAsB;IAC9F,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IACjG,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,SAAS;QACpC,MAAM,EAAE,GAAG,OAAO,UAAU,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS;QAC1D,MAAM,IAAI,GAAG,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,MAAM,SAAS,GAAG,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,MAAM,QAAQ,GAAG,GAAG,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,SAAS,GAAG,SAAS,KAAK,aAAa;eACxC,SAAS,KAAK,SAAS;eACvB,SAAS,KAAK,aAAa;eAC3B,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC;eACtC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC;eACtC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,6BAA6B,CACpC,OAAkD,EAClD,KAAkD;IAElD,MAAM,KAAK,GAAmD,EAAE,CAAC;IACjE,MAAM,KAAK,GAAG,2BAA2B,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,0BAA0B,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;IACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,QAAQ,CAAC;IAChF,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjE,IAAI,KAAK,CAAC,gBAAgB,IAAI,YAAY,EAAE,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,uBAAuB,QAAQ,EAAE;YACrC,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI;QAChC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC5E,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACtB,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,yBAAyB,QAAQ,CAAC,UAAU,EAAE;gBAClD,IAAI,EAAE,iBAAiB;gBACvB,MAAM;aACP,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,iCAAiC,QAAQ,CAAC,UAAU,EAAE;gBAC1D,IAAI,EAAE,kBAAkB;gBACxB,MAAM;aACP,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,0BAA0B,OAAO,CAAC,SAAS,CAAC,UAAU,IAAI,QAAQ,EAAE;YACxE,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE;YACvC,IAAI,EAAE;gBACJ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;gBAC3C,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC;gBAC5C,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;aAC5C;SACF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,EAAE,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;QAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,YAAY,EAAE,MAAM,CAAC;QAChE,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,IAAI,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAClF,IAAI,MAAM,IAAI,cAAc,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,sBAAsB,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ,EAAE;gBAC9D,IAAI,EAAE,iBAAiB;gBACvB,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;gBACrB,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE;gBACjB,SAAS,EAAE,EAAE,GAAG,cAAc,EAAE;aACjC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,kBAAkB,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACtE,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI;YACvE,CAAC,CAAC,iCAAiC,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YACrF,CAAC,CAAC,SAAS,CAAC;QACd,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,yBAAyB,QAAQ,EAAE;gBACvC,IAAI,EAAE,iBAAiB;gBACvB,MAAM,EAAE,cAAc;aACvB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,wCAAwC,CAC/C,OAAkD,EAClD,KAAyD;IAEzD,MAAM,WAAW,GAAkC;QACjD,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QAC9B;YACE,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,uKAAuK;SACjL;KACF,CAAC;IACF,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACjF,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,8BAA8B,IAAI,CAAC,CAAC;IACpF,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,KAAK,KAAK,CAAC;IAC7F,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW,CAAC;IAChJ,MAAM,YAAY,GAAG,aAAa,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC;IAC9D,MAAM,mBAAmB,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;IACpD,MAAM,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACtH,MAAM,uBAAuB,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,mCAAmC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACnH,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;IACvF,MAAM,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;WAC5D,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9I,MAAM,iBAAiB,GAAG,gBAAgB;SACvC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC;SAC3E,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACxC,MAAM,wBAAwB,GAAG,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,KAAK,gBAAgB,EAAE,UAAU,CAAC,CAAC;IACrH,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACpE,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,6BAA6B;YACnC,OAAO,EAAE,sEAAsE;YAC/E,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;SACpE,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QAC5B,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,uEAAuE;YAChF,OAAO,EAAE,EAAE,OAAO,EAAE;SACrB,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,cAAc,EAAE,CAAC;QAC1B,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,8EAA8E;YACvF,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE;SAC9E,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,YAAY,EAAE,CAAC;QACxB,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,+BAA+B;YACrC,OAAO,EAAE,wFAAwF;YACjG,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE;SAC1E,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,mBAAmB,IAAI,qBAAqB,EAAE,CAAC;QACxD,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,oCAAoC;YAC1C,OAAO,EAAE,iHAAiH;YAC1H,OAAO,EAAE,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;SAC/F,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,uBAAuB,CAAC,MAAM,KAAK,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChF,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,mCAAmC;YACzC,OAAO,EAAE,yIAAyI;YAClJ,OAAO,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnF,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,6BAA6B;YACnC,OAAO,EAAE,2EAA2E;YACpF,OAAO,EAAE,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,EAAE;SACzE,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,eAAe,IAAI,CAAC,EAAE,CAAC;QAChC,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,qCAAqC;YAC3C,OAAO,EAAE,oFAAoF;YAC7F,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,8BAA8B,EAAE,eAAe,EAAE;SAC5F,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,IAAI,wBAAwB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,wCAAwC;gBAC9C,OAAO,EAAE,0HAA0H;gBACnI,OAAO,EAAE;oBACP,WAAW,EAAE,wBAAwB;oBACrC,kBAAkB,EAAE,gBAAgB,EAAE,UAAU;iBACjD;aACF,CAAC,CAAC;QACL,CAAC;QACD,MAAM,mBAAmB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;QACnF,MAAM,gBAAgB,GAAG,OAAO,CAAC,CAAC,uBAAuB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YAC1I,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;YAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACP,IAAI,gBAAgB,IAAI,IAAI,EAAE,CAAC;YAC7B,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,yCAAyC;gBAC/C,OAAO,EAAE,8HAA8H;gBACvI,OAAO,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE;aAC/E,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACR,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,aAAa;gBAC1D,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,cAAc;oBACvC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;oBAC3C,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,WAAW;wBACvE,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,GAAG,CAAC;YACZ,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,mBAAmB,GAAG,IAAI,CAAC,CAAC,CAAC;YAC3E,YAAY,GAAG,OAAO,CAAC,CAAC,GAAG,GAAG,OAAO,GAAG,IAAI,GAAG,QAAQ,GAAG,GAAG,GAAG,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvH,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBAClF,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gBAC5C,WAAW,CAAC,IAAI,CAAC;oBACf,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EAAE,oFAAoF;iBAC9F,CAAC,CAAC;YACL,CAAC;QACD,CAAC;IACH,CAAC;IACD,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,OAAO,EAAE,YAAY,IAAI,IAAI;QAC7B,YAAY;QACZ,QAAQ;QACR,8BAA8B,EAAE,eAAe;QAC/C,eAAe,EAAE,YAAY;QAC7B,WAAW;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,mCAAmC,CAAC,QAAkD;IAC7F,OAAO,QAAQ,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;AACtF,CAAC;AAED,SAAS,UAAU,CAAC,KAAc,EAAE,QAAgB;IAClD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAChF,CAAC;AAED,SAAS,OAAO,CAAC,KAAa;IAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAkD;IAOrF,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,KAAK,SAAS;WAChD,KAAK,CAAC,kBAAkB,KAAK,SAAS;WACtC,KAAK,CAAC,kBAAkB,KAAK,SAAS;WACtC,KAAK,CAAC,aAAa,KAAK,SAAS;WACjC,KAAK,CAAC,kBAAkB,KAAK,SAAS,CAAC;IAC5C,OAAO;QACL,gBAAgB,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;QACnE,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;QACvE,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;QACvE,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;QAC7D,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;KACxE,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,MAA2C;IACtE,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI;QACxB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACtC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACtC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;KACvC,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI;QACxB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACtC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACtC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;KACvC,CAAC;IACF,OAAO;QACL,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE;QACf,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE;QACf,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE;QACxB,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE;KAC7B,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CACxC,MAA2C,EAC3C,IAAyC;IAEzC,OAAO;QACL,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,IAAI,EAAE,EAAE,GAAG,IAAI,EAAE;QACjB,GAAG,EAAE;YACH,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;YACxB,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;YACxB,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;SACzB;QACD,GAAG,EAAE;YACH,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;YACxB,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;YACxB,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC;SACzB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,KAA4D,EAC5D,OAA6D,EAC7D,QAAoB,EACpB,UAAuE,EACvE,QAAqE,EACrE,MAAwC;IAExC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,iBAAiB,EACnD,6BAA6B,EAC7B,EAAE,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CACzD,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,eAAe,GAAG,QAAQ,CAAC,WAAW,CAAC;IAC3C,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,8BAA8B,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC,6BAA6B,CAAC;YAClE,QAAQ,EAAE,eAAe;YACzB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,IAAI;YACJ,KAAK;YACL,UAAU,EAAE,QAAQ;YACpB,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACpC,IAAI,EAAE,gBAAgB;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,oBAAoB,IAAI,EAAE;YAChD,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,GAAG,UAAU,CAAC,oBAAoB,CAAC,UAAU,CAAC,uBAAuB,CACnE,KAAK,EACL,UAAU,CAAC,+BAA+B,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CACzG,CAAC;SACH,CAAC,CAAC;QACH,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;QACzC,IAAI,MAAM,CAAC,eAAe;YAAE,OAAO,GAAG,IAAI,CAAC;IAC7C,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;QACrD,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,KAAK;YACd,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;IACJ,CAAC;IACD,UAAU,CAAC,gCAAgC,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClF,KAAK,CAAC,OAAO,GAAG,UAAU,CAAC,iBAAiB,CAAC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IACzF,KAAK,CAAC,MAAM,GAAG,2BAA2B,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC9D,QAAQ,EAAE,CAAC;IACX,MAAM,YAAY,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/F,IAAI,CAAC,YAAY,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,iBAAiB,EACnD,0CAA0C,QAAQ,CAAC,QAAQ,EAAE,EAC7D,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAC9D,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,2BAA2B,CAAC;QACzC,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ,EAAE,YAAY;QACtB,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,UAAU,EAAE,UAAU;KACvB,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,IAAI;QACb,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,QAAoB,EACpB,UAAuE,EACvE,QAA4E,EAC5E,MAAwC;IAExC,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,KAAK,UAAU;QAC5C,CAAC,CAAC,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;QACjE,CAAC,CAAC,UAAU,CAAC,yBAAyB,CAAC;YACnC,QAAQ,EAAE,uBAAuB;YACjC,mBAAmB,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO;YACnD,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK,EAAE,MAAM,IAAI,IAAI;SACtB,CAAC,CAAC;IACP,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,mCAAmC,CACxC,iCAAiC,CAAC,iBAAiB,EACnD,oDAAoD,QAAQ,CAAC,MAAM,EAAE,EACrE,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,CAClH,CAAC;IACJ,CAAC;IACD,QAAQ,EAAE,CAAC;IACX,MAAM,WAAW,GAAG,UAAU,CAAC,qBAAqB,EAAE,IAAI,QAAQ,CAAC,OAAO,CAAC;IAC3E,MAAM,YAAY,GAAG,oCAAoC,CAAC,WAAW,EAAE;QACrE,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO;KACxC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,2BAA2B,CAAC,YAAY,IAAI,QAAQ,CAAC,CAAC;IACrE,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,IAAI;QACb,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,UAAuE,EACvE,OAA4D,EAC5D,MAAwC;IAExC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,8BAA8B,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG,UAAU,CAAC,yBAAyB,CAAC;YACnD,QAAQ,EAAE,yBAAyB;YACnC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC9B,cAAc,EAAE,OAAO,CAAC,KAAK,CAAC,cAAc;YAC5C,SAAS,EAAE,QAAQ;YACnB,mBAAmB,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;YAC1C,SAAS,EAAE,mBAAmB,IAAI,EAAE;YACpC,KAAK;SACN,CAAC,CAAC;QACH,IAAI,OAAO;YAAE,OAAO,GAAG,IAAI,CAAC;IAC9B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,6BAA6B,CACpC,QAAyC,EACzC,UAAuE;IAEvE,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,qCAAqC,EAAE,CAAC;IACrF,OAAO;QACL,mBAAmB,EAAE,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,kCAAkC,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ;KACvG,CAAC;AACJ,CAAC;AAED,SAAS,qCAAqC;IAC5C,OAAO;QACL,mBAAmB,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ;KAC1C,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,YAAoB,EACpB,KAA4D,EAC5D,KAAgF,EAChF,UAAuE;IAEvE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mCAAmC,CAAC,YAAY,EAAE,6BAA6B,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;SACtH,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,qBAAqB,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,0BAA0B,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC5D,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,mCAAmC,CAAC,YAAY,EAAE,uDAAuD,EAAE;oBACjH,IAAI,EAAE,4BAA4B;oBAClC,OAAO,EAAE,EAAE,QAAQ,EAAE;iBACtB,CAAC;aACH,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,mCAAmC,CAAC,YAAY,EAAE,mCAAmC,QAAQ,EAAE,EAAE;oBACvG,IAAI,EAAE,uBAAuB;oBAC7B,QAAQ;iBACT,CAAC;aACH,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,IAAI;YACR,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,EAAE,QAAQ,EAAE;gBACpB,QAAQ;gBACR,WAAW,EAAE,YAAY,CAAC,eAAe;gBACzC,QAAQ;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,UAAU,CAAC,qBAAqB,EAAE,CAAC;IACnD,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,YAAY,GAAG,oCAAoC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1E,IAAI,YAAY;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAC9D,CAAC;IACD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7E,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5D,IAAI,UAAU,EAAE,CAAC;YACf,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;oBAC9B,QAAQ;oBACR,WAAW,EAAE,YAAY,CAAC,eAAe;oBACzC,QAAQ,EAAE,QAAQ;oBAClB,UAAU;iBACX;aACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO;QACL,EAAE,EAAE,KAAK;QACT,MAAM,EAAE,mCAAmC,CAAC,YAAY,EAAE,iGAAiG,EAAE;YAC3J,IAAI,EAAE,uBAAuB;YAC7B,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE;SACrH,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,oCAAoC,CAC3C,OAA4D,EAC5D,KAAgF;IAEhF,MAAM,gBAAgB,GAAG,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,IAAI,gBAAgB,IAAI,gBAAgB,KAAK,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,gBAAgB,KAAK,OAAO,CAAC,KAAK,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACrI,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC;WAC7C,uBAAuB,CAAC,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC;WACrD,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC;IACtE,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,MAAM,QAAQ,GAAG,+BAA+B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACjE,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE;QAC3D,OAAO;QACP,MAAM,EAAE,IAAI,CAAC,EAAE;QACf,IAAI;QACJ,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B,CACtC,OAA4D,EAC5D,KAAkC;IAElC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,EAAE;QACV,KAAK,EAAE;YACL,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChC,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,KAAK;gBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS;gBACpC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;gBAChD,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW;gBAC3D,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3G,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpE,UAAU,EAAE,EAAE;aACf,CAAC,CAAC;SACJ;QACD,QAAQ,EAAE;YACR,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO;SAC1C;KACgC,CAAC;AACtC,CAAC;AAED,SAAS,qBAAqB,CAC5B,OAA4D;IAE5D,MAAM,KAAK,GAAuB,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,CAAC,IAAS,EAAE,QAAuB,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,IAAI,EAAE,QAAQ,KAAK,aAAa,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;QACjI,MAAM,aAAa,GAAG,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC3D,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;gBAC3D,IAAI,EAAE,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;gBACzD,QAAQ;gBACR,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnF,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxE,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YAAE,KAAK,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACtG,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,cAAc;QAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC7D,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,8BAA8B,CAAC,MAAwC;IAC9E,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,EAAE,CAAwB,CAAC;IACrD,OAAO,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI;QACJ,KAAK,EAAE,0BAA0B,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI;KACxD,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,0BAA0B,CAAC,MAA2B,EAAE,IAA2B;IAC1F,IAAI,IAAI,KAAK,aAAa;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC;IAC/C,IAAI,IAAI,KAAK,gBAAgB;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IACrD,IAAI,IAAI,KAAK,aAAa;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC;IAC/C,IAAI,IAAI,KAAK,gBAAgB;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IACrD,IAAI,IAAI,KAAK,mBAAmB;QAAE,OAAO,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC;IAC5D,IAAI,IAAI,KAAK,sBAAsB;QAAE,OAAO,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;IAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAsD,CAAC;IACvG,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC;IACxF,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC9E,IAAI,CAAC;QACH,kCAAkC,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IACxF,CAAC;IACD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,2DAA2D,EAAE,CAAC;IAC1G,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAChC,CAAC;AAED,SAAS,0BAA0B,CAAC,IAAsB;IACxD,OAAO,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,sCAAsC,CAC7C,MASC;IAED,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,OAAsC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,MASC,EACD,eAAwB,EACxB,aAAuC;IAEvC,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,IAAI,eAAe,EAAE,CAAC;QACrE,OAAO;YACL,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,kFAAkF;YAC3F,OAAO,EAAE,sCAAsC,CAAC,MAAM,CAAC;SACxD,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;QAC5E,OAAO;YACL,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,+GAA+G;YACxH,OAAO,EAAE,sCAAsC,CAAC,MAAM,CAAC;SACxD,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAClD,OAAO;YACL,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,gCAAgC;YACtC,OAAO,EAAE,uGAAuG;YAChH,OAAO,EAAE,sCAAsC,CAAC,MAAM,CAAC;SACxD,CAAC;IACJ,CAAC;IACD,OAAO;QACL,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,2BAA2B;QACjC,OAAO,EAAE,MAAM,CAAC,EAAE,KAAK,KAAK;YAC1B,CAAC,CAAC,oEAAoE;YACtE,CAAC,CAAC,qFAAqF;QACzF,OAAO,EAAE,sCAAsC,CAAC,MAAM,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,0CAA0C,CAAC,MAA6C;IAC/F,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IACjF,OAAO,0BAA0B,CAAC,6BAA6B,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAc;IACnD,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACtG,CAAC;AAED,SAAS,6BAA6B,CAAY,MAAuC;IACvF,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,0CAA0C,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC;IACjG,CAAC;IACD,OAAO,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,+BAA+B,CAAY,MAAuC;IACzF,OAAO,MAAM,CAAC,IAAI,KAAK,OAAO;QAC5B,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;QACpD,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,gCAAgC,CACvC,IAAyC,EACzC,SAA8D,EAC9D,sBAAuF,EACvF,SAA8B;IAE9B,MAAM,WAAW,GAAkC,EAAE,CAAC;IACtD,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC5B,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE,uEAAuE;SACjF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtD,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE,uFAAuF;SACjG,CAAC,CAAC;IACL,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,KAAK,cAAc,EAAE,CAAC;QACpC,WAAW,CAAC,IAAI,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,0CAA0C;YAChD,OAAO,EAAE,oKAAoK;SAC9K,CAAC,CAAC;IACL,CAAC;IACD,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,8BAA8B,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,OAAO,KAAK,cAAc;YACxF,CAAC,CAAC,CAAC;YACH,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,MAAM;QAChG,wBAAwB,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,0BAA0B,EAAE,SAAS,CAAC,MAAM;QAC5C,GAAG,iCAAiC,CAAC,sBAAsB,EAAE,SAAS,CAAC;QACvE,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CACxC,sBAAuF,EACvF,SAA8B;IAE9B,MAAM,MAAM,GAAG,sBAAsB,EAAE,MAAM,CAAC;IAC9C,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,qCAAqC,CAC3F,sCAAsC,CAAC,MAAM,CAAC,EAC9C,SAAS,CACV,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,eAAe,CAAC;IAChC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;IAC/F,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;SACnG,MAAM,CAAC,CAAC,OAAO,EAA4C,EAAE,CAAC,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,KAAK,CAAC,CAAC;IACtI,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC;IACnG,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC;IACnG,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC,CAAC;IACnG,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;IACvG,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC;IAC5G,MAAM,yBAAyB,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC,CAAC;IACnH,MAAM,6BAA6B,GAAG,OAAO,CAAC,MAAM,CAClD,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,6BAA6B,IAAI,MAAM,CAAC,kBAAkB,CAAC,EAC1F,CAAC,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,kCAAkC,CAAC,OAAO,CAAC,CAAC;IAC7D,OAAO;QACL,MAAM,EAAE;YACN,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,eAAe,EAAE,OAAO,CAAC,MAAM;YAC/B,kBAAkB,EAAE,6BAA6B,GAAG,cAAc;YAClE,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC;YACzF,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC;YAC3F,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YAClG,cAAc;YACd,6BAA6B;YAC7B,oBAAoB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YAClG,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,yBAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC9B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrF,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3F,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;gBAC7C,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;gBAC/C,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;gBACjD,GAAG,CAAC,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjH,GAAG,CAAC,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/F,GAAG,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjG,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,GAAG,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvG,GAAG,CAAC,OAAO,MAAM,CAAC,6BAA6B,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,6BAA6B,EAAE,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5I,GAAG,CAAC,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjH,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,GAAG,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvG,GAAG,CAAC,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3F,GAAG,CAAC,MAAM,CAAC,yBAAyB,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,yBAAyB,EAAE,CAAC,GAAG,MAAM,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1H,CAAC,CAAC;SACJ;KACF,CAAC;AACJ,CAAC;AAED,SAAS,oCAAoC,CAC3C,QAAyC,EACzC,QAAgB,EAChB,iBAA0C;IAE1C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,wCAAwC,CAAC,YAAY,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACpF,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;QAC9B,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACZ,GAAG,CAAC,GAAG,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,wCAAwC,CAC/C,GAAgB,EAChB,QAA6B,EAC7B,QAAgB;IAEhB,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,iBAAiB,GAAG,iCAAiC,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,iBAAiB,KAAK,QAAQ,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAAE,SAAS;QACvE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACvB,wCAAwC,CAAC,GAAG,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,SAAS,iCAAiC,CAAC,UAAiC;IAC1E,MAAM,QAAQ,GAAI,UAAqC,CAAC,QAAQ,CAAC;IACjE,OAAO,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/E,CAAC;AAED,SAAS,sCAAsC,CAC7C,MAA8F;IAE9F,OAAO,aAAa,CAAC;QACnB,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,CAAC;KAChC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qCAAqC,CAC5C,aAAgC,EAChC,SAA8B;IAE9B,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QAC7C,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,QAAQ,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,kCAAkC,CACzC,OAA0G;IAE1G,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAC,CAAC;IAC3E,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC;IACvE,IAAI,YAAY,IAAI,OAAO;QAAE,OAAO,MAAM,CAAC;IAC3C,IAAI,YAAY;QAAE,OAAO,gBAAgB,CAAC;IAC1C,IAAI,OAAO;QAAE,OAAO,aAAa,CAAC;IAClC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa,CAAC,MAAyB;IAC9C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,aAAa,CAAC,MAAyB;IAC9C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,aAAa,CAAC,IAA8B;IACnD,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,WAAW,EAAE,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,SAAmD,EACnD,KAA4D,EAC5D,UAAgG,EAAE;IAElG,MAAM,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,qCAAqC,EAAE,CAAC;IAC/F,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ;QACnC,CAAC,CAAC,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC;QACxE,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChC,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;QACzF,MAAM,WAAW,GAAG,oBAAoB,CAAC,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,WAAW,CAAC,IAAI,CAAC;gBACf,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,kCAAkC;gBACxC,OAAO,EAAE,mDAAmD,QAAQ,CAAC,UAAU,IAAI;gBACnF,OAAO,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE;aAC7C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,KAAK,KAAK,CAAC;QACjD,MAAM,eAAe,GAAG,cAAc,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC;QACrE,MAAM,gBAAgB,GAAG,iCAAiC,CAAC,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAC3H,MAAM,WAAW,GAAG,+BAA+B,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;QACrG,OAAO;YACL,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,MAAM,EAAE,cAAc;YACtB,OAAO,EAAE,gBAAgB;YACzB,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAA8D,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjH,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CACtC,QAAuC,EACvC,YAAmD,EACnD,cAAqD,EACrD,OAA2B;IAE3B,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,IAAI,cAAc;QAAE,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;;QACzD,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IACjD,IAAI,YAAY;QAAE,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAC1D,IAAI,OAAO;QAAE,OAAO,CAAC,IAAI,CAAC,SAAS,OAAO,EAAE,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,YAAY,IAAI,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpH,MAAM,OAAO,GAAG,YAAY,IAAI,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1G,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,WAAW,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;QACpD,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5G,OAAO;KACR,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CACrC,MAAuC,EACvC,KAA4D,EAC5D,oBAA6C,qCAAqC,EAAE;IAEpF,MAAM,EAAE,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,uCAAuC,CAAC,KAAK,CAAC,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;IAC7G,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,KAAK,CAAC;QAClD,OAAO;YACL,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ;YAChD,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,WAAW;YAC3C,MAAM;YACN,OAAO,EAAE,iCAAiC,CAAC,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,CAAC;YAChF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;gBACZ,WAAW,EAAE,CAAC;wBACZ,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,gCAAgC;wBACtC,OAAO,EAAE,iDAAiD,MAAM,CAAC,QAAQ,IAAI;qBAC9E,CAAC;aACH,CAAC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IACD,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;QACxB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;QACtB,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;QACvD,OAAO,EAAE,iCAAiC,CACxC,KAAK,EACL,EAAE,EACF,iBAAiB,EACjB,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAChD;QACD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YACZ,WAAW,EAAE,CAAC;oBACZ,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,gCAAgC;oBACtC,OAAO,EAAE,sDAAsD,MAAM,CAAC,MAAM,IAAI;iBACjF,CAAC;SACH,CAAC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,QAA6B,EAC7B,OAA2B;IAE3B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,MAAM,KAAK,GAAG,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;QAClB,OAAO;YACL,OAAO;YACP,WAAW,EAAE,CAAC;oBACZ,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,0BAA0B,OAAO,0CAA0C;iBACrF,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,WAAW,GAAkC,EAAE,CAAC;IACtD,IAAI,SAA4C,CAAC;IACjD,IAAI,eAAmF,CAAC;IACxF,MAAM,sBAAsB,GAAkC,EAAE,CAAC;IACjE,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACvC,SAAS,GAAG,wCAAwC,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAA0B,CAAC;QACrG,eAAe,GAAG,iBAAiB,CAAC;QACpC,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,SAAS,IAAI,UAAU,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,MAAM,KAAK,GAAG,iDAAiD,CAAC;YAC9D,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS;YAChC,QAAQ;SACT,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,sBAAsB,CAAC,IAAI,CAAC;gBAC1B,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,4JAA4J;gBACrK,OAAO,EAAE;oBACP,8BAA8B,EAAE,mBAAmB,CAAC,KAAK,CAAC,iBAAiB,CAAC;oBAC5E,eAAe,EAAE,mBAAmB,CAAC,KAAK,CAAC,eAAe,CAAC;oBAC3D,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,SAAS,EAAE,KAAK,CAAC,SAAS;iBAC3B;aACF,CAAC,CAAC;YACH,WAAW,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,OAAO;QACL,OAAO;QACP,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,EAAE;QAC7B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;QACtB,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAA4B;IACnD,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAA4B;IACvD,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAyC,EACzC,SAA8D,EAC9D,KAA4D,EAC5D,oBAA6C,qCAAqC,EAAE,EACpF,KAA2C;IAE3C,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,UAAU,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,WAAW,EAAE,IAAI,CAAC,OAAO,KAAK,MAAM;gBAClC,CAAC,CAAC,CAAC;wBACC,QAAQ,EAAE,MAAM;wBAChB,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,sBAAsB;wBAC5B,OAAO,EAAE,sDAAsD;qBAChE,CAAC;gBACJ,CAAC,CAAC,CAAC;wBACC,QAAQ,EAAE,SAAS;wBACnB,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,yBAAyB;wBAC/B,OAAO,EAAE,6DAA6D;qBACvE,CAAC;SACP,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,6BAA6B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC/B,UAAU,EAAE,GAAG;YACf,WAAW,EAAE,CAAC;oBACZ,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,qCAAqC;oBAC3C,OAAO,EAAE,yGAAyG;oBAClH,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;iBAC3C,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,cAAc,GAAG,QAAQ,EAAE,MAA+C,CAAC;IACjF,MAAM,YAAY,GAAG,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IACzF,IAAI,CAAC,cAAc,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,QAAQ,EAAE,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACvD,UAAU,EAAE,IAAI;YAChB,WAAW,EAAE,CAAC;oBACZ,QAAQ,EAAE,SAAS;oBACnB,MAAM,EAAE,QAAQ;oBAChB,IAAI,EAAE,mCAAmC;oBACzC,OAAO,EAAE,gGAAgG;iBAC1G,CAAC;SACH,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,CAAC;IAC7B,MAAM,SAAS,GAAG,wBAAwB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,SAAS;QAC/B,CAAC,CAAC,6BAA6B,CAAC,YAAY,EAAE,cAAc,EAAE,SAAS,CAAC;QACxE,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,IAAI,GAAG,eAAe;QAC1B,CAAC,CAAC;YACE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAC1E,CAAC,EAAE,eAAe;YAClB,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SAC3E;QACH,CAAC,CAAC;YACE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YACvE,CAAC,EAAE,eAAe;YAClB,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SACxE,CAAC;IACN,MAAM,MAAM,GAAG,eAAe,EAAE,MAAM,IAAI,YAAY,CAAC,MAAM,CAAC;IAC9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrE,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,gBAAgB;WAC3F,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAkC;QACjD,GAAG,CAAC,CAAC,SAAS,IAAI,KAAK,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC;gBACjD,QAAQ,EAAE,SAAkB;gBAC5B,MAAM,EAAE,QAAiB;gBACzB,IAAI,EAAE,sCAAsC;gBAC5C,OAAO,EAAE,gGAAgG;gBACzG,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;aACpC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACR,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;gBACtB,QAAQ,EAAE,MAAe;gBACzB,MAAM,EAAE,QAAiB;gBACzB,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,mLAAmL;gBAC5L,OAAO,EAAE;oBACP,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;oBAC9B,YAAY,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC;oBAClC,gBAAgB;iBACjB;aACF,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACT,CAAC;IACF,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,OAAO,KAAK,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW;QAChE,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,MAAM,EAAE;YACN,CAAC,EAAE,MAAM,CAAC,CAAC;YACX,CAAC,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,eAAe,GAAG,CAAC,GAAG,KAAK;YACrD,CAAC,EAAE,MAAM,CAAC,CAAC;SACZ;QACD,IAAI;QACJ,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;QAC5B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/C,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACzH,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,IAAyC,EACzC,SAA8D;IAE9D,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5F,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACpF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,iCAAiC,CAAC,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzG,CAAC;AAED,SAAS,iCAAiC,CACxC,IAA8C,EAC9C,KAA+C,EAC/C,SAAsC;IAEtC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/E,IAAI,WAAW,KAAK,YAAY;QAAE,OAAO,YAAY,GAAG,WAAW,CAAC;IAEpE,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,IAAI,aAAa,KAAK,cAAc;QAAE,OAAO,cAAc,GAAG,aAAa,CAAC;IAE5E,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,WAAW,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClG,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,WAAW,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACrG,IAAI,WAAW,KAAK,YAAY;QAAE,OAAO,YAAY,GAAG,WAAW,CAAC;IAEpE,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,WAAW,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;IAC3H,MAAM,aAAa,GAAG,OAAO,KAAK,CAAC,WAAW,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC;IAC9H,IAAI,YAAY,KAAK,aAAa;QAAE,OAAO,YAAY,GAAG,aAAa,CAAC;IAExE,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;IACzG,MAAM,UAAU,GAAG,OAAO,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;IAC7G,IAAI,SAAS,KAAK,UAAU;QAAE,OAAO,UAAU,GAAG,SAAS,CAAC;IAE5D,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC;IAC5E,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,gBAAgB,CAAC;IAC9E,OAAO,SAAS,GAAG,UAAU,CAAC;AAChC,CAAC;AAED,SAAS,wBAAwB,CAAC,SAA4C;IAC5E,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC5D,OAAO;QACL,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,MAAM;QACvB,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,MAAM;QACvB,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,MAAM;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,YAAuC,EACvC,cAAyC,EACzC,SAAgC;IAEhC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/C,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IACvC,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,KAAK,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,KAAK,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzD,MAAM,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,SAAS;gBAClC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;oBACpC,SAAS;gBACX,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC;oBACV,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC;oBACtB,CAAC,EAAE,SAAS;oBACZ,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC;iBACvB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACrC,MAAM,GAAG,GAAG;QACV,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,EAAE,SAAS;QACZ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC7C,CAAC;IACF,MAAM,GAAG,GAAG;QACV,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,EAAE,SAAS;QACZ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC7C,CAAC;IACF,OAAO;QACL,MAAM,EAAE;YACN,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YACtB,CAAC,EAAE,SAAS;YACZ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;SACvB;QACD,IAAI,EAAE;YACJ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC7B,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;SAC9B;KACF,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,KAA4D,EAC5D,QAAgB,EAChB,iBAA0C;IAE1C,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACrE,OAAO,uBAAuB,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,iCAAiC,CACxC,KAA4D,EAC5D,QAAgB,EAChB,iBAA0C,EAC1C,eAAwB;IAExB,MAAM,YAAY,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACrE,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,EAAE,6BAA6B,EAAE,EAAE;QACzE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,YAAY,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IAC9E,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC,gBAAgB,CAAC;IAC7D,MAAM,SAAS,GAAG,KAAK,CAAC,iBAAiB,EAAE,SAAS,IAAI,EAAE,CAAC;IAC3D,MAAM,QAAQ,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC;IAChE,OAAO,eAAe,IAAI,QAAQ,KAAK,KAAK,CAAC;AAC/C,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAAyG;IAEzG,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,IAAI,GAAG;QACX,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACpB,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;QACpB,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;KACrB,CAAC;IACF,OAAO;QACL,MAAM,EAAE,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE;QAC5B,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE;QACxB,GAAG,EAAE;YACH,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;SAC5B;QACD,GAAG,EAAE;YACH,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC3B,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;SAC5B;KACF,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,CAAsC,EAAE,CAAsC;IAC/F,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,cAAc,CACrB,CAA4B,EAC5B,CAA4B;IAE5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,oBAAoB,CAAC,WAA8C;IAC1E,OAAO,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACpC,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,EAAE;YACP,GAAG,CAAC,UAAU,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D;KACF,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,6BAA6B,CACpC,QAAyC;IAEzC,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,EAAE,CAAC;IAChD,OAAO,CAAC;YACN,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,QAAQ;YAChB,IAAI,EAAE,2BAA2B;YACjC,OAAO,EAAE,wJAAwJ;YACjK,OAAO,EAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE;SAC9E,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAY,MAAuC;IACnF,OAAO,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;AACnE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IACvE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,OAAO,KAA4B,CAAC;AACtC,CAAC;AAED,SAAS,oBAAoB,CAAC,QAA6B,EAAE,QAAgB;IAC3E,OAAO,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC;AAC3F,CAAC;AAED,SAAS,oBAAoB,CAAY,OAA4D;IACnG,MAAM,KAAK,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC7C,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,EAAE;WAC9C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;WACtC,aAAa,CAAC;AACrB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,MAAM,EAAE,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAC7C,OAAO,EAAE,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAClG,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAiC;IAChE,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,QAAiB;IACpD,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACvD,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AACvE,CAAC"}
|
|
1
|
+
{"version":3,"file":"shadows.js","sourceRoot":"","sources":["../../../src/agent-bridge/capabilities/shadows.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n collectEditorShadowReceiverCandidates,\n detectEditorSceneDirectionalLightOrientationDrift,\n findEditorSceneTransform,\n normalizeEditorSceneLightDirectionVector,\n resolveEditorSceneGameObjectShadowSettings,\n resolveEditorShadowPlan,\n type EditorShadowResolvePlanInput,\n type EditorSceneDocument,\n type EditorSceneGameObject,\n} from '@fps-games/editor-playable-sdk';\nimport {\n assertEditorShadowSettingsContract,\n mergeEditorShadowSettings,\n readEditorShadowSettings,\n resolveEditorShadowParams,\n type EditorShadowDiagnostic,\n type EditorShadowReceiverCandidate,\n type EditorShadowResolvedPlan,\n type EditorShadowSettings,\n} from '@fps-games/playable-rendering';\nimport {\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID,\n type EditorAgentBridgeBounds,\n type EditorAgentBridgeDiagnostic,\n type EditorAgentBridgeJsonObject,\n type EditorAgentBridgeShadowPolicyGetInput,\n type EditorAgentBridgeShadowPolicyGetOutput,\n type EditorAgentBridgeShadowPolicySetInput,\n type EditorAgentBridgeShadowPolicySetOutput,\n type EditorAgentBridgeShadowDebugContextClearOutput,\n type EditorAgentBridgeShadowDebugContextEnterInput,\n type EditorAgentBridgeShadowDebugContextEnterOutput,\n type EditorAgentBridgeShadowDebugInspectOutput,\n type EditorAgentBridgeShadowDebugOverlayClearOutput,\n type EditorAgentBridgeShadowDebugOverlaySetInput,\n type EditorAgentBridgeShadowDebugOverlaySetOutput,\n type EditorAgentBridgeShadowDebugVisibilityMeasureInput,\n type EditorAgentBridgeShadowDebugVisibilityMeasureOutput,\n type EditorAgentBridgeShadowRuntimeEvidence,\n type EditorAgentBridgeShadowReceiverCandidate,\n type EditorAgentBridgeShadowDebugTargetSummary,\n type EditorAgentBridgeShadowFootprintSummary,\n type EditorAgentBridgeShadowLightSummary,\n type EditorAgentBridgeShadowReceiversListInput,\n type EditorAgentBridgeShadowReceiversListOutput,\n type EditorAgentBridgeShadowResolvedPlan,\n type EditorAgentBridgeShadowResolvePreviewInput,\n type EditorAgentBridgeShadowResolvePreviewOutput,\n type EditorAgentBridgeShadowSettings,\n type EditorAgentBridgeShadowStaticBakeInput,\n type EditorAgentBridgeShadowStaticBakeOutput,\n type EditorAgentBridgeShadowStaticInvalidateInput,\n type EditorAgentBridgeShadowStaticInvalidateOutput,\n type EditorAgentBridgeShadowTarget,\n type EditorAgentBridgeVec3,\n} from '@fps-games/editor-protocol';\nimport {\n createLocalEditorAgentBridgeFailure,\n editorTransformSnapshotToAgentTransform,\n} from '../diagnostics.js';\nimport type { LocalEditorAgentBridgeShadowSource } from '../source-types.js';\nimport {\n getAgentBridgeSafeSceneSelection,\n isAgentBridgeSafeSceneObjectId,\n normalizeAgentBridgeIdList,\n normalizeAgentBridgeString,\n type LocalEditorAgentBridgeCapabilitySourceOperations,\n type LocalEditorAgentBridgeHarnessState,\n type LocalEditorAgentBridgePrefabStageDetails,\n type LocalEditorAgentBridgeShadowPreviewDebugInfo,\n type LocalEditorAgentBridgeShadowDebugOverlayItem,\n} from '../shared.js';\nimport type { LocalEditorHarnessOptions } from '../../local-editor-harness.js';\n\nconst PREFAB_STAGE_ITEM_PREFIX = 'prefab-node:';\nconst SHADOW_POLICY_FIELDS = [\n 'shadow.cast',\n 'shadow.receive',\n 'shadow.mode',\n 'shadow.quality',\n 'shadow.light.mode',\n 'shadow.light.lightId',\n 'shadow.params.opacity',\n 'shadow.params.softness',\n 'shadow.params.bias',\n 'shadow.params.normalBias',\n 'shadow.params.maxDistance',\n 'shadow.params.resolution',\n 'shadow.params.cascadeCount',\n 'shadow.params.bakeSamples',\n 'shadow.params.blurKernel',\n] as const;\n\ntype ShadowPolicyFieldPath = typeof SHADOW_POLICY_FIELDS[number];\n\ninterface PrefabShadowNode {\n id: string;\n label: string;\n kind: string;\n parentId: string | null;\n defaults?: Record<string, unknown>;\n primitive?: Record<string, unknown>;\n light?: Record<string, unknown>;\n}\n\ntype ResolvedShadowTarget<TDocument> =\n | {\n kind: 'scene';\n target: EditorAgentBridgeShadowTarget;\n document: EditorSceneDocument;\n rawDocument: TDocument;\n objectId: string;\n gameObject: EditorSceneGameObject;\n }\n | {\n kind: 'prefab-stage';\n target: EditorAgentBridgeShadowTarget;\n details: LocalEditorAgentBridgePrefabStageDetails<TDocument>;\n nodeId: string;\n node: PrefabShadowNode;\n document: EditorSceneDocument;\n };\n\ntype StrictEditorShadowResolvePlanInput = EditorShadowResolvePlanInput & {\n strictExplicitReceivers?: boolean;\n};\n\ntype AgentBridgeResolvedBounds = Required<Pick<EditorAgentBridgeBounds, 'min' | 'max' | 'size' | 'center'>>;\n\ninterface ShadowProjectionContext {\n resolveProjectionId(targetId: string): string;\n}\n\nexport function createLocalEditorAgentBridgeShadowSource<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n renderUi: () => void,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): LocalEditorAgentBridgeShadowSource {\n return {\n getPolicy(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_POLICY_GET,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n return createShadowPolicyGetOutput(resolved.target);\n },\n setPolicy(input) {\n const policy = normalizeShadowPolicy(input.policy);\n if (!policy.ok) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_POLICY_SET,\n policy.message,\n { code: 'shadow.invalidInput', details: { hasPolicy: input.policy != null } },\n );\n }\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_POLICY_SET,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n if (resolved.target.kind === 'scene') {\n return setSceneShadowPolicy(state, options, renderUi, operations, resolved.target, policy.settings);\n }\n return setPrefabStageShadowPolicy(renderUi, operations, resolved.target, policy.settings);\n },\n listReceivers(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_RECEIVERS_LIST,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n const casterId = getResolvedTargetCasterId(resolved.target);\n const projectionContext = createShadowProjectionContext(resolved.target, operations);\n return {\n receivers: mapShadowReceivers(\n collectEditorShadowReceiverCandidates({\n document: resolved.target.document,\n casterId,\n }),\n state,\n { casterId, projectionContext },\n ).filter(receiver => input.includeAuto === true || receiver.source !== 'auto'),\n diagnostics: createShadowTargetDiagnostics(resolved.target),\n } satisfies EditorAgentBridgeShadowReceiversListOutput;\n },\n resolvePreview(input) {\n const policy = input.policy === undefined ? { ok: true as const, settings: undefined } : normalizeShadowPolicy(input.policy);\n if (!policy.ok) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_RESOLVE_PREVIEW,\n policy.message,\n { code: 'shadow.invalidInput', details: { hasPolicy: input.policy != null } },\n );\n }\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_RESOLVE_PREVIEW,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n const receiverIds = normalizeAgentBridgeIdList(input.receiverIds ?? []);\n const casterId = getResolvedTargetCasterId(resolved.target);\n const planInput: StrictEditorShadowResolvePlanInput = {\n document: resolved.target.document,\n casterId,\n explicitReceiverIds: receiverIds.length > 0 ? receiverIds : undefined,\n strictExplicitReceivers: receiverIds.length > 0,\n ...(policy.settings !== undefined ? { settings: { instance: policy.settings } } : {}),\n };\n const plan = mapShadowPlan(resolveEditorShadowPlan(planInput));\n const allReceivers = mapShadowReceivers(\n collectEditorShadowReceiverCandidates({\n document: resolved.target.document,\n casterId,\n explicitReceiverIds: receiverIds.length > 0 ? receiverIds : undefined,\n }),\n state,\n {\n casterId,\n lightId: plan.lightId,\n projectionContext: createShadowProjectionContext(resolved.target, operations),\n },\n );\n const receiverIdSet = new Set(plan.receiverIds);\n const receivers = receiverIds.length > 0\n ? allReceivers.filter(receiver => receiverIdSet.has(receiver.receiverId))\n : allReceivers;\n const light = createShadowLightSummary(resolved.target.document, plan.lightId);\n return {\n target: resolved.target.target,\n plan,\n caster: createShadowDebugTargetSummary(resolved.target, state, createShadowProjectionContext(resolved.target, operations)),\n ...(light ? { light } : {}),\n footprint: createShadowFootprintSummary(\n plan,\n receivers,\n state,\n createShadowProjectionContext(resolved.target, operations),\n light,\n ),\n receivers,\n diagnostics: createShadowTargetDiagnostics(resolved.target),\n } satisfies EditorAgentBridgeShadowResolvePreviewOutput;\n },\n inspectDebug(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_DEBUG_INSPECT,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n return createShadowDebugInspectOutput(resolved.target, state, {\n projectionContext: createShadowProjectionContext(resolved.target, operations),\n }, {\n shadowPreviewDebugInfo: operations.getShadowPreviewDebugInfo?.() ?? null,\n });\n },\n enterDebugContext(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_DEBUG_CONTEXT_ENTER,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n return enterShadowDebugContext(state, renderUi, operations, resolved.target, input);\n },\n clearDebugContext() {\n return clearShadowDebugContext(state, renderUi, operations);\n },\n setDebugOverlay(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_DEBUG_OVERLAY_SET,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n const inspect = createShadowDebugInspectOutput(resolved.target, state, {\n receiverIds: input.receiverIds ?? [],\n projectionContext: createShadowProjectionContext(resolved.target, operations),\n });\n const overlayItems = createShadowDebugOverlayItems(inspect, input);\n const overlayIds = operations.setShadowDebugOverlay?.(overlayItems)\n ?? state.projection?.setShadowDebugOverlay?.(overlayItems)\n ?? overlayItems.map(item => item.id);\n operations.requestSceneFrame('agent-shadow-debug-overlay-set');\n renderUi();\n const diagnostics = [\n ...(inspect.diagnostics ?? []),\n ...(!overlayItems.length ? [{\n severity: 'warning' as const,\n source: 'editor' as const,\n code: 'shadow.debugOverlayEmpty',\n message: 'No shadow debug overlay items could be created for the resolved target.',\n }] : []),\n ];\n return {\n enabled: overlayItems.length > 0,\n target: inspect.target,\n overlayIds,\n ...(diagnostics.length ? { diagnostics } : {}),\n } satisfies EditorAgentBridgeShadowDebugOverlaySetOutput;\n },\n clearDebugOverlay() {\n const cleared = operations.clearShadowDebugOverlay?.()\n ?? state.projection?.clearShadowDebugOverlay?.()\n ?? false;\n operations.requestSceneFrame('agent-shadow-debug-overlay-clear');\n renderUi();\n return {\n cleared,\n } satisfies EditorAgentBridgeShadowDebugOverlayClearOutput;\n },\n measureVisibility(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_DEBUG_VISIBILITY_MEASURE,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n const inspect = createShadowDebugInspectOutput(resolved.target, state, {\n receiverIds: input.receiverIds ?? [],\n projectionContext: createShadowProjectionContext(resolved.target, operations),\n });\n return createShadowDebugVisibilityMeasureOutput(inspect, input);\n },\n async bakeStatic(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_STATIC_BAKE,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n const receiverIds = normalizeAgentBridgeIdList(input.receiverIds ?? []);\n const casterId = getResolvedTargetCasterId(resolved.target);\n const quality = input.quality && input.quality !== 'inherit' ? input.quality : undefined;\n const effectivePolicy = getResolvedTargetShadowPolicy(resolved.target);\n const bakePolicy = mergeEditorShadowSettings(\n effectivePolicy,\n {\n mode: 'static',\n ...(quality ? { quality } : {}),\n },\n );\n const planInput: StrictEditorShadowResolvePlanInput = {\n document: resolved.target.document,\n casterId,\n explicitReceiverIds: receiverIds.length > 0 ? receiverIds : undefined,\n strictExplicitReceivers: receiverIds.length > 0,\n settings: { instance: bakePolicy },\n };\n const plan = mapShadowPlan(resolveEditorShadowPlan(planInput));\n const targetDiagnostics = createShadowTargetDiagnostics(resolved.target);\n if (resolved.target.kind !== 'scene') {\n return {\n target: resolved.target.target,\n baked: false,\n plan,\n stale: true,\n diagnostics: [\n ...targetDiagnostics,\n {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticBakeSceneOnly',\n message: 'Static shadow baking runs against the main scene. Prefab stage policies are baked after prefab instances are placed in a scene.',\n },\n ],\n } satisfies EditorAgentBridgeShadowStaticBakeOutput;\n }\n if (!operations.runRenderingAction) {\n return {\n target: resolved.target.target,\n baked: false,\n plan,\n stale: true,\n diagnostics: [\n ...targetDiagnostics,\n {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticBakeUnavailable',\n message: 'Static shadow bake is unavailable because this editor session does not expose the rendering action pipeline.',\n },\n ],\n } satisfies EditorAgentBridgeShadowStaticBakeOutput;\n }\n const actionResult = await operations.runRenderingAction('bake-static-shadows');\n const bakedSourceNodeIds = readRenderingActionStaticBakeSourceNodeIds(actionResult);\n const targetConfirmed = bakedSourceNodeIds?.includes(casterId) === true;\n const baked = actionResult.ok === true && actionResult.changed === true && targetConfirmed;\n const bakeDiagnostic = createStaticBakeDiagnostic(actionResult, targetConfirmed, bakedSourceNodeIds);\n return {\n target: resolved.target.target,\n baked,\n plan,\n stale: !baked,\n diagnostics: [\n ...targetDiagnostics,\n bakeDiagnostic,\n ],\n } satisfies EditorAgentBridgeShadowStaticBakeOutput;\n },\n invalidateStatic(input) {\n const resolved = resolveShadowTarget(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_STATIC_INVALIDATE,\n state,\n input,\n operations,\n );\n if (!resolved.ok) return resolved.result;\n const targetDiagnostics = createShadowTargetDiagnostics(resolved.target);\n if (resolved.target.kind !== 'scene') {\n return {\n target: resolved.target.target,\n invalidated: false,\n stale: true,\n diagnostics: [\n ...targetDiagnostics,\n {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticInvalidateSceneOnly',\n message: 'Static shadow invalidation runs against scene instances. Prefab stage policies are invalidated after placement in a scene.',\n },\n ],\n } satisfies EditorAgentBridgeShadowStaticInvalidateOutput;\n }\n const plan = mapShadowPlan(resolveEditorShadowPlan({\n document: resolved.target.document,\n casterId: resolved.target.objectId,\n }));\n if (plan.backend !== 'static-baked') {\n return {\n target: resolved.target.target,\n invalidated: false,\n stale: false,\n diagnostics: [\n ...targetDiagnostics,\n {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticInvalidateNonStaticTarget',\n message: 'Static shadow invalidation only applies to targets resolved to the static-baked backend.',\n details: { backend: plan.backend, mode: plan.mode },\n },\n ],\n } satisfies EditorAgentBridgeShadowStaticInvalidateOutput;\n }\n if (!operations.invalidateStaticShadowArtifact) {\n return {\n target: resolved.target.target,\n invalidated: false,\n stale: true,\n diagnostics: [\n ...targetDiagnostics,\n {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticInvalidateUnavailable',\n message: 'Static shadow invalidation is unavailable because this editor session does not expose the shadow preview artifact lifecycle.',\n },\n ],\n } satisfies EditorAgentBridgeShadowStaticInvalidateOutput;\n }\n const invalidated = operations.invalidateStaticShadowArtifact();\n return {\n target: resolved.target.target,\n invalidated,\n stale: true,\n diagnostics: [\n ...targetDiagnostics,\n {\n severity: invalidated ? 'info' : 'warning',\n source: 'editor',\n code: invalidated ? 'shadow.staticInvalidated' : 'shadow.staticInvalidateNoArtifact',\n message: invalidated\n ? 'Static shadow preview artifact was invalidated; run shadow.static.bake to refresh scene artifacts.'\n : 'Static shadow target is static, but no active preview artifact was available to invalidate.',\n details: { backend: plan.backend, mode: plan.mode },\n },\n ],\n } satisfies EditorAgentBridgeShadowStaticInvalidateOutput;\n },\n };\n}\n\nfunction createShadowPolicyGetOutput<TDocument>(\n resolved: ResolvedShadowTarget<TDocument>,\n): EditorAgentBridgeShadowPolicyGetOutput {\n if (resolved.kind === 'scene') {\n const effective = resolveEditorSceneGameObjectShadowSettings(resolved.document, resolved.gameObject);\n return {\n target: resolved.target,\n ...(resolved.gameObject.shadow ? { policy: structuredClone(resolved.gameObject.shadow) as EditorAgentBridgeShadowSettings } : {}),\n effectivePolicy: (effective.settings ? structuredClone(effective.settings) : {}) as EditorAgentBridgeShadowSettings,\n plan: mapShadowPlan(resolveEditorShadowPlan({\n document: resolved.document,\n casterId: resolved.objectId,\n })),\n diagnostics: [\n ...mapShadowDiagnostics(effective.diagnostics),\n ...createShadowTargetDiagnostics(resolved),\n ],\n };\n }\n const policy = readPrefabNodeShadowPolicy(resolved.node);\n return {\n target: resolved.target,\n ...(policy ? { policy: structuredClone(policy) as EditorAgentBridgeShadowSettings } : {}),\n effectivePolicy: (policy ? structuredClone(policy) : {}) as EditorAgentBridgeShadowSettings,\n plan: mapShadowPlan(resolveEditorShadowPlan({\n document: resolved.document,\n casterId: resolved.nodeId,\n })),\n diagnostics: createShadowTargetDiagnostics(resolved),\n };\n}\n\nfunction createShadowDebugInspectOutput<TDocument, TPatch>(\n resolved: ResolvedShadowTarget<TDocument>,\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: { receiverIds?: readonly unknown[]; projectionContext?: ShadowProjectionContext } = {},\n extraOptions?: { shadowPreviewDebugInfo?: LocalEditorAgentBridgeShadowPreviewDebugInfo | null },\n): EditorAgentBridgeShadowDebugInspectOutput {\n const casterId = getResolvedTargetCasterId(resolved);\n const projectionContext = options.projectionContext ?? createIdentityShadowProjectionContext();\n const effectivePolicy = getResolvedTargetShadowPolicy(resolved);\n const receiverIds = normalizeAgentBridgeIdList(options.receiverIds ?? []);\n const planInput: StrictEditorShadowResolvePlanInput = {\n document: resolved.document,\n casterId,\n explicitReceiverIds: receiverIds.length > 0 ? receiverIds : undefined,\n strictExplicitReceivers: receiverIds.length > 0,\n };\n const plan = mapShadowPlan(resolveEditorShadowPlan(planInput));\n const allReceivers = mapShadowReceivers(\n collectEditorShadowReceiverCandidates({\n document: resolved.document,\n casterId,\n explicitReceiverIds: receiverIds.length > 0 ? receiverIds : undefined,\n }),\n state,\n { casterId, lightId: plan.lightId, projectionContext },\n );\n const resolvedReceiverIds = new Set(plan.receiverIds);\n const receivers = receiverIds.length > 0\n ? allReceivers.filter(receiver => resolvedReceiverIds.has(receiver.receiverId))\n : allReceivers;\n const authoredPolicy = getResolvedTargetAuthoredPolicy(resolved);\n const light = createShadowLightSummary(resolved.document, plan.lightId);\n const runtimeEvidence = createShadowDebugRuntimeEvidence(\n plan,\n receivers,\n extraOptions?.shadowPreviewDebugInfo,\n createShadowRuntimeEvidenceCasterIds(resolved, casterId, projectionContext),\n );\n const diagnostics = [\n ...createShadowTargetDiagnostics(resolved),\n ...plan.diagnostics,\n ...(runtimeEvidence.diagnostics ?? []),\n ];\n return {\n target: resolved.target,\n caster: createShadowDebugTargetSummary(resolved, state, projectionContext),\n ...(authoredPolicy ? { policy: structuredClone(authoredPolicy) as EditorAgentBridgeShadowSettings } : {}),\n effectivePolicy: (effectivePolicy ? structuredClone(effectivePolicy) : {}) as EditorAgentBridgeShadowSettings,\n plan,\n ...(light ? { light } : {}),\n receivers,\n footprint: createShadowFootprintSummary(plan, receivers, state, projectionContext, light),\n runtimeEvidence,\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n\nfunction enterShadowDebugContext<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n renderUi: () => void,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n resolved: ResolvedShadowTarget<TDocument>,\n input: EditorAgentBridgeShadowDebugContextEnterInput,\n): EditorAgentBridgeShadowDebugContextEnterOutput | ReturnType<typeof createLocalEditorAgentBridgeFailure> {\n const projectionContext = createShadowProjectionContext(resolved, operations);\n const receiverIds = normalizeAgentBridgeIdList(input.receiverIds ?? []);\n const initialInspect = createShadowDebugInspectOutput(resolved, state, {\n receiverIds,\n projectionContext,\n }, {\n shadowPreviewDebugInfo: operations.getShadowPreviewDebugInfo?.() ?? null,\n });\n const targetId = getResolvedTargetCasterId(resolved);\n const logicalKeepIds = new Set<string>([targetId]);\n const protectedReceiverIds = initialInspect.plan.receiverIds.length > 0\n ? initialInspect.plan.receiverIds\n : initialInspect.receivers.map(receiver => receiver.receiverId);\n for (const receiverId of protectedReceiverIds) logicalKeepIds.add(receiverId);\n if (initialInspect.light?.lightId) logicalKeepIds.add(initialInspect.light.lightId);\n const ambientLightIds = input.includeAmbientLights === false\n ? []\n : collectShadowDebugAmbientLightIds(resolved.document, initialInspect.light?.lightId);\n for (const ambientId of ambientLightIds) logicalKeepIds.add(ambientId);\n\n const projectionKeepIds = new Set<string>();\n for (const id of logicalKeepIds) {\n const projectionId = projectionContext.resolveProjectionId(id);\n projectionKeepIds.add(projectionId);\n for (const parentId of state.projection?.getProjectionParentIds?.(projectionId) ?? []) {\n projectionKeepIds.add(parentId);\n }\n }\n const objectIds = state.projection?.getProjectedNodeIds?.() ?? [...projectionKeepIds];\n if (objectIds.length === 0) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_DEBUG_CONTEXT_ENTER,\n 'Viewport projection is unavailable or has no projected objects for Shadow Debug Context.',\n { code: 'viewport.projectionUnavailable' },\n );\n }\n const nextOverrides: Record<string, boolean> = {};\n for (const objectId of objectIds) nextOverrides[objectId] = projectionKeepIds.has(objectId);\n const previous = JSON.stringify(state.previewVisibility);\n state.previewVisibility.overrides = nextOverrides;\n state.previewVisibility.isolatedObjectIds = [...projectionKeepIds];\n state.previewVisibility.protectedReceiverIds = [...new Set(protectedReceiverIds.flatMap(id => [\n id,\n projectionContext.resolveProjectionId(id),\n ]))];\n state.previewVisibility.protectedObjectIds = [...new Set([...state.previewVisibility.protectedReceiverIds, ...ambientLightIds.flatMap(id => [\n id,\n projectionContext.resolveProjectionId(id),\n ])])];\n state.previewVisibility.reason = normalizeAgentBridgeString(input.reason)\n || `Shadow Debug Context for ${targetId}`;\n state.projection?.clearPreviewVisibilityOverrides?.();\n const entries = state.projection?.setPreviewVisibilityOverrides?.(nextOverrides) ?? [];\n const inspect = createShadowDebugInspectOutput(resolved, state, {\n receiverIds,\n projectionContext,\n }, {\n shadowPreviewDebugInfo: operations.getShadowPreviewDebugInfo?.() ?? null,\n });\n const overlayItems = input.showOverlay === false\n ? []\n : createShadowDebugOverlayItems(inspect, {\n ...input,\n showCasterBounds: true,\n showReceiverBounds: true,\n showLightDirection: true,\n showFootprint: true,\n showArtifactBounds: true,\n });\n const overlayIds = overlayItems.length > 0\n ? operations.setShadowDebugOverlay?.(overlayItems)\n ?? state.projection?.setShadowDebugOverlay?.(overlayItems)\n ?? overlayItems.map(item => item.id)\n : [];\n const visibilityMeasure = createShadowDebugVisibilityMeasureOutput(inspect, input);\n const hiddenObjectIds = objectIds.filter(objectId => !projectionKeepIds.has(objectId));\n const diagnostics: EditorAgentBridgeDiagnostic[] = [\n ...(inspect.diagnostics ?? []),\n ...(!protectedReceiverIds.length ? [{\n severity: 'warning' as const,\n source: 'editor' as const,\n code: 'shadow.debugContextNoReceiver',\n message: 'Shadow Debug Context could not resolve a receiver to protect; screenshots may still be ambiguous.',\n details: { targetId },\n }] : []),\n ...(!initialInspect.light?.lightId && initialInspect.plan.backend !== 'none' ? [{\n severity: 'warning' as const,\n source: 'editor' as const,\n code: 'shadow.debugContextNoLight',\n message: 'Shadow Debug Context could not resolve a shadow light to preserve.',\n details: { backend: initialInspect.plan.backend, targetId },\n }] : []),\n ...(!ambientLightIds.length && input.includeAmbientLights !== false ? [{\n severity: 'info' as const,\n source: 'editor' as const,\n code: 'shadow.debugContextNoAmbientLight',\n message: 'No ambient/environment light was found to preserve for visual debugging.',\n }] : []),\n ];\n operations.requestSceneFrame('agent-shadow-debug-context-enter');\n renderUi();\n return {\n entered: previous !== JSON.stringify(state.previewVisibility) || overlayIds.length > 0,\n target: inspect.target,\n keptObjectIds: [...logicalKeepIds],\n hiddenObjectIds,\n protectedReceiverIds,\n lightIds: initialInspect.light?.lightId ? [initialInspect.light.lightId] : [],\n ambientLightIds,\n overlayIds,\n snapshot: createShadowDebugContextVisibilitySnapshot(state, entries, diagnostics),\n inspect,\n visibilityMeasure,\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n\nfunction clearShadowDebugContext<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n renderUi: () => void,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): EditorAgentBridgeShadowDebugContextClearOutput {\n const previousCount = Object.keys(state.previewVisibility.overrides).length;\n const hadIsolation = state.previewVisibility.isolatedObjectIds.length > 0;\n const hadProtection = (state.previewVisibility.protectedObjectIds?.length ?? 0) > 0\n || (state.previewVisibility.protectedReceiverIds?.length ?? 0) > 0;\n state.previewVisibility.overrides = {};\n state.previewVisibility.isolatedObjectIds = [];\n delete state.previewVisibility.protectedObjectIds;\n delete state.previewVisibility.protectedReceiverIds;\n delete state.previewVisibility.reason;\n state.projection?.clearPreviewVisibilityOverrides?.();\n const overlayCleared = operations.clearShadowDebugOverlay?.()\n ?? state.projection?.clearShadowDebugOverlay?.()\n ?? false;\n const visibilityCleared = previousCount > 0 || hadIsolation || hadProtection;\n operations.requestSceneFrame('agent-shadow-debug-context-clear');\n renderUi();\n return {\n cleared: visibilityCleared || overlayCleared,\n overlayCleared,\n visibilityCleared,\n };\n}\n\nfunction createShadowDebugContextVisibilitySnapshot<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n entries: readonly { nodeId: string; authoredActive: boolean; effectiveVisible: boolean }[],\n diagnostics: readonly EditorAgentBridgeDiagnostic[],\n): EditorAgentBridgeShadowDebugContextEnterOutput['snapshot'] {\n const entryById = new Map(entries.map(entry => [entry.nodeId, entry]));\n const objectIds = new Set<string>([\n ...Object.keys(state.previewVisibility.overrides),\n ...entries.map(entry => entry.nodeId),\n ...state.previewVisibility.isolatedObjectIds,\n ]);\n const isolatedIds = new Set(state.previewVisibility.isolatedObjectIds);\n return {\n isolated: isolatedIds.size > 0,\n isolatedObjectIds: [...isolatedIds],\n entries: [...objectIds].sort().map((objectId) => {\n const entry = entryById.get(objectId);\n const overrideVisible = state.previewVisibility.overrides[objectId];\n const authoredVisible = entry?.authoredActive ?? true;\n return {\n objectId,\n authoredVisible,\n previewVisible: entry?.effectiveVisible ?? (authoredVisible && overrideVisible !== false),\n ...(typeof overrideVisible === 'boolean' ? { overrideVisible } : {}),\n isolated: isolatedIds.has(objectId),\n ...(state.previewVisibility.protectedReceiverIds?.includes(objectId) ? {\n diagnostics: [{\n severity: 'info' as const,\n source: 'editor' as const,\n code: 'shadow.receiverProtectedInDebugContext',\n message: 'This receiver is protected by the active Shadow Debug Context and should remain visible for screenshot validation.',\n details: { objectId },\n }],\n } : {}),\n };\n }),\n ...(state.previewVisibility.reason ? { reason: state.previewVisibility.reason } : {}),\n ...(diagnostics.length ? { diagnostics: [...diagnostics] } : {}),\n };\n}\n\nfunction collectShadowDebugAmbientLightIds(document: EditorSceneDocument, shadowLightId?: string): string[] {\n const ids: string[] = [];\n const seen = new Set<string>();\n const gameObjects = Array.isArray(document.scene?.gameObjects) ? document.scene.gameObjects : [];\n for (const gameObject of gameObjects) {\n if (!isRecord(gameObject)) continue;\n const id = typeof gameObject.id === 'string' ? gameObject.id : '';\n if (!id || id === shadowLightId || seen.has(id)) continue;\n const name = typeof gameObject.name === 'string' ? gameObject.name : '';\n const light = isRecord(gameObject.light) ? gameObject.light : null;\n const lightType = typeof light?.type === 'string' ? light.type.toLowerCase() : '';\n const haystack = `${id} ${name}`.toLowerCase();\n const isAmbient = lightType === 'hemispheric'\n || lightType === 'ambient'\n || lightType === 'environment'\n || haystack.includes('environment_light')\n || haystack.includes('environment light')\n || haystack.includes('ambient');\n if (!isAmbient) continue;\n seen.add(id);\n ids.push(id);\n }\n return ids;\n}\n\nfunction createShadowDebugOverlayItems(\n inspect: EditorAgentBridgeShadowDebugInspectOutput,\n input: EditorAgentBridgeShadowDebugOverlaySetInput,\n): LocalEditorAgentBridgeShadowDebugOverlayItem[] {\n const items: LocalEditorAgentBridgeShadowDebugOverlayItem[] = [];\n const flags = readShadowDebugOverlayFlags(input);\n const receiverIds = new Set(normalizeAgentBridgeIdList(input.receiverIds ?? []));\n const targetId = inspect.caster?.objectId ?? inspect.caster?.nodeId ?? 'target';\n const casterBounds = createOverlayBounds(inspect.caster?.bounds);\n if (flags.showCasterBounds && casterBounds) {\n items.push({\n id: `shadow-debug:caster:${targetId}`,\n kind: 'caster-bounds',\n bounds: casterBounds,\n });\n }\n const receivers = receiverIds.size\n ? inspect.receivers.filter(receiver => receiverIds.has(receiver.receiverId))\n : inspect.receivers;\n if (flags.showReceiverBounds) {\n for (const receiver of receivers) {\n const bounds = createOverlayBounds(receiver.bounds);\n if (!bounds) continue;\n items.push({\n id: `shadow-debug:receiver:${receiver.receiverId}`,\n kind: 'receiver-bounds',\n bounds,\n });\n items.push({\n id: `shadow-debug:receiver-surface:${receiver.receiverId}`,\n kind: 'receiver-surface',\n bounds,\n });\n }\n }\n if (flags.showFootprint && inspect.footprint.center && inspect.footprint.size) {\n items.push({\n id: `shadow-debug:footprint:${inspect.footprint.receiverId ?? targetId}`,\n kind: 'footprint',\n center: { ...inspect.footprint.center },\n size: {\n x: Math.max(inspect.footprint.size.x, 0.01),\n y: Math.max(inspect.footprint.size.y, 0.015),\n z: Math.max(inspect.footprint.size.z, 0.01),\n },\n });\n }\n if (flags.showLightDirection) {\n const lightDirection = inspect.light?.direction ?? inspect.footprint.normal;\n const center = inspect.footprint.center ?? casterBounds?.center;\n const size = inspect.footprint.size ?? casterBounds?.size ?? { x: 2, y: 2, z: 2 };\n if (center && lightDirection) {\n items.push({\n id: `shadow-debug:light:${inspect.light?.lightId ?? targetId}`,\n kind: 'light-direction',\n center: { ...center },\n size: { ...size },\n direction: { ...lightDirection },\n });\n }\n }\n if (flags.showArtifactBounds && inspect.footprint.kind === 'artifact') {\n const artifactBounds = inspect.footprint.center && inspect.footprint.size\n ? createOverlayBoundsFromCenterSize(inspect.footprint.center, inspect.footprint.size)\n : undefined;\n if (artifactBounds) {\n items.push({\n id: `shadow-debug:artifact:${targetId}`,\n kind: 'artifact-bounds',\n bounds: artifactBounds,\n });\n }\n }\n return items;\n}\n\nfunction createShadowDebugVisibilityMeasureOutput(\n inspect: EditorAgentBridgeShadowDebugInspectOutput,\n input: EditorAgentBridgeShadowDebugVisibilityMeasureInput,\n): EditorAgentBridgeShadowDebugVisibilityMeasureOutput {\n const diagnostics: EditorAgentBridgeDiagnostic[] = [\n ...(inspect.diagnostics ?? []),\n {\n severity: 'info',\n source: 'editor',\n code: 'shadow.pixelReadbackUnavailable',\n message: 'Pixel readback is not available in this editor bridge session, so shadow visibility is measured structurally from policy, receivers, footprint, and runtime evidence.',\n },\n ];\n const requestedReceiverIds = normalizeAgentBridgeIdList(input.receiverIds ?? []);\n const renderableCount = inspect.runtimeEvidence.renderableShadowPrimitiveCount ?? 0;\n let visibleScore = 0;\n let coverage = 0;\n const opacity = clamp01(readNumber(inspect.plan.params.opacity, 0.42));\n const casterInactive = inspect.caster?.active === false || inspect.caster?.visible === false;\n const lightRequired = inspect.plan.backend === 'dynamic-map' || inspect.plan.backend === 'static-baked' || inspect.plan.backend === 'projected';\n const lightMissing = lightRequired && !inspect.light?.lightId;\n const missingCasterBounds = !inspect.caster?.bounds;\n const plannedReceivers = inspect.receivers.filter(receiver => inspect.plan.receiverIds.includes(receiver.receiverId));\n const visiblePlannedReceivers = plannedReceivers.filter(receiver => isShadowReceiverUsableForVisibility(receiver));\n const selectedReceiver = selectShadowFootprintReceiver(inspect.plan, plannedReceivers);\n const missingReceiverBounds = inspect.plan.receiverIds.length > 0\n && inspect.plan.receiverIds.some(receiverId => !plannedReceivers.some(receiver => receiver.receiverId === receiverId && !!receiver.bounds));\n const hiddenReceiverIds = plannedReceivers\n .filter(receiver => receiver.active === false || receiver.visible === false)\n .map(receiver => receiver.receiverId);\n const ignoredHiddenReceiverIds = hiddenReceiverIds.filter(receiverId => receiverId !== selectedReceiver?.receiverId);\n if (inspect.plan.backend === 'none' || inspect.plan.mode === 'none') {\n diagnostics.push({\n severity: 'info',\n source: 'editor',\n code: 'shadow.visibilityPolicyNone',\n message: 'Resolved Shadow V2 policy is none, so no visible shadow is expected.',\n details: { backend: inspect.plan.backend, mode: inspect.plan.mode },\n });\n } else if (opacity <= 0.001) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityOpacityZero',\n message: 'Resolved Shadow V2 opacity is zero, so no visible shadow is expected.',\n details: { opacity },\n });\n } else if (casterInactive) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityCasterInactive',\n message: 'The resolved caster is inactive or hidden, so no visible shadow is expected.',\n details: { active: inspect.caster?.active, visible: inspect.caster?.visible },\n });\n } else if (lightMissing) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityLightMissing',\n message: 'The resolved shadow backend requires a light, but no usable shadow light was resolved.',\n details: { backend: inspect.plan.backend, lightId: inspect.plan.lightId },\n });\n } else if (missingCasterBounds || missingReceiverBounds) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityBoundsUnavailable',\n message: 'Caster or receiver projection bounds are unavailable, so structural visibility cannot confirm a visible shadow.',\n details: { missingCasterBounds, missingReceiverBounds, receiverIds: inspect.plan.receiverIds },\n });\n } else if (visiblePlannedReceivers.length === 0 && hiddenReceiverIds.length > 0) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityReceiverInactive',\n message: 'One or more resolved receivers are inactive or hidden in the current preview, so structural visibility cannot confirm a visible shadow.',\n details: { receiverIds: hiddenReceiverIds },\n });\n } else if (inspect.receivers.length === 0 || inspect.plan.receiverIds.length === 0) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityNoReceiver',\n message: 'Resolved Shadow V2 plan has no receiver, so a visible shadow is unlikely.',\n details: { receiverIds: inspect.plan.receiverIds, requestedReceiverIds },\n });\n } else if (renderableCount <= 0) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityNoRuntimePrimitive',\n message: 'Resolved Shadow V2 plan has receivers but no renderable shadow primitive evidence.',\n details: { backend: inspect.plan.backend, renderableShadowPrimitiveCount: renderableCount },\n });\n } else {\n if (ignoredHiddenReceiverIds.length > 0) {\n diagnostics.push({\n severity: 'info',\n source: 'editor',\n code: 'shadow.visibilityIgnoredHiddenReceiver',\n message: 'Some resolved receivers are hidden in the current preview; structural visibility used the best visible receiver instead.',\n details: {\n receiverIds: ignoredHiddenReceiverIds,\n selectedReceiverId: selectedReceiver?.receiverId,\n },\n });\n }\n const footprintConfidence = clamp01(readNumber(inspect.footprint.confidence, 0.5));\n const receiverCoverage = clamp01((visiblePlannedReceivers.length > 0 ? visiblePlannedReceivers : plannedReceivers).reduce((max, receiver) => {\n const overlap = receiver.suitability?.overlap;\n return Math.max(max, typeof overlap === 'number' ? overlap : 0);\n }, 0));\n if (receiverCoverage <= 0.01) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityReceiverCoverageTooLow',\n message: 'Resolved receivers have no meaningful X/Z overlap with the caster, so structural visibility cannot confirm a visible shadow.',\n details: { coverage: receiverCoverage, receiverIds: inspect.plan.receiverIds },\n });\n } else {\n const backendFactor = inspect.plan.backend === 'dynamic-map'\n ? 0.9\n : inspect.plan.backend === 'static-baked'\n ? inspect.plan.stale === true ? 0.35 : 0.85\n : inspect.plan.backend === 'blob' || inspect.plan.backend === 'projected'\n ? 0.75\n : 0.5;\n coverage = clamp01(Math.max(receiverCoverage, footprintConfidence * 0.65));\n visibleScore = clamp01((0.2 + opacity * 0.35 + coverage * 0.3 + backendFactor * 0.15) * (renderableCount > 0 ? 1 : 0));\n if (inspect.plan.stale === true || inspect.runtimeEvidence.artifactStale === true) {\n visibleScore = Math.min(visibleScore, 0.35);\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.visibilityStaticStale',\n message: 'Static shadow evidence is stale; treat visibility as low confidence until rebaked.',\n });\n }\n }\n }\n return {\n target: inspect.target,\n visible: visibleScore >= 0.45,\n visibleScore,\n coverage,\n renderableShadowPrimitiveCount: renderableCount,\n measurementKind: 'structural',\n diagnostics,\n };\n}\n\nfunction isShadowReceiverUsableForVisibility(receiver: EditorAgentBridgeShadowReceiverCandidate): boolean {\n return receiver.active !== false && receiver.visible !== false && !!receiver.bounds;\n}\n\nfunction readNumber(value: unknown, fallback: number): number {\n return typeof value === 'number' && Number.isFinite(value) ? value : fallback;\n}\n\nfunction clamp01(value: number): number {\n return Math.max(0, Math.min(1, value));\n}\n\nfunction readShadowDebugOverlayFlags(input: EditorAgentBridgeShadowDebugOverlaySetInput): {\n showCasterBounds: boolean;\n showReceiverBounds: boolean;\n showLightDirection: boolean;\n showFootprint: boolean;\n showArtifactBounds: boolean;\n} {\n const explicit = input.showCasterBounds !== undefined\n || input.showReceiverBounds !== undefined\n || input.showLightDirection !== undefined\n || input.showFootprint !== undefined\n || input.showArtifactBounds !== undefined;\n return {\n showCasterBounds: explicit ? input.showCasterBounds === true : true,\n showReceiverBounds: explicit ? input.showReceiverBounds === true : true,\n showLightDirection: explicit ? input.showLightDirection === true : true,\n showFootprint: explicit ? input.showFootprint === true : true,\n showArtifactBounds: explicit ? input.showArtifactBounds === true : true,\n };\n}\n\nfunction createOverlayBounds(bounds: EditorAgentBridgeBounds | undefined): LocalEditorAgentBridgeShadowDebugOverlayItem['bounds'] | undefined {\n if (!bounds?.center || !bounds.size) return undefined;\n const min = bounds.min ?? {\n x: bounds.center.x - bounds.size.x / 2,\n y: bounds.center.y - bounds.size.y / 2,\n z: bounds.center.z - bounds.size.z / 2,\n };\n const max = bounds.max ?? {\n x: bounds.center.x + bounds.size.x / 2,\n y: bounds.center.y + bounds.size.y / 2,\n z: bounds.center.z + bounds.size.z / 2,\n };\n return {\n min: { ...min },\n max: { ...max },\n size: { ...bounds.size },\n center: { ...bounds.center },\n };\n}\n\nfunction createOverlayBoundsFromCenterSize(\n center: { x: number; y: number; z: number },\n size: { x: number; y: number; z: number },\n): LocalEditorAgentBridgeShadowDebugOverlayItem['bounds'] {\n return {\n center: { ...center },\n size: { ...size },\n min: {\n x: center.x - size.x / 2,\n y: center.y - size.y / 2,\n z: center.z - size.z / 2,\n },\n max: {\n x: center.x + size.x / 2,\n y: center.y + size.y / 2,\n z: center.z + size.z / 2,\n },\n };\n}\n\nfunction setSceneShadowPolicy<TDocument, TPatch, TAsset>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>,\n renderUi: () => void,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n resolved: Extract<ResolvedShadowTarget<TDocument>, { kind: 'scene' }>,\n policy: EditorShadowSettings | undefined,\n): EditorAgentBridgeShadowPolicySetOutput | ReturnType<typeof createLocalEditorAgentBridgeFailure> {\n if (!state.session) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_POLICY_SET,\n 'Editor is not in edit mode.',\n { code: 'editor.notReady', objectId: resolved.objectId },\n );\n }\n let changed = false;\n let workingDocument = resolved.rawDocument;\n for (const { path, value } of createShadowPolicyFieldPatches(policy)) {\n const patch = options.documentAdapter.createSerializedPropertyPatch({\n document: workingDocument,\n targetId: resolved.objectId,\n path,\n value,\n commitMode: 'change',\n persistence: 'document',\n source: 'custom',\n });\n if (!patch) continue;\n const result = state.session.dispatch({\n type: 'document.patch',\n label: patch.label ?? `Agent set shadow ${path}`,\n patch: patch.patch,\n targetId: resolved.objectId,\n ...operations.withProjectionImpact(operations.resolveProjectionImpact(\n patch,\n operations.createReprojectProjectionImpact(patch.reprojectIds ?? [patch.changedId ?? resolved.objectId]),\n )),\n });\n workingDocument = result.workingDocument;\n if (result.documentChanged) changed = true;\n }\n if (!changed) {\n const output = createShadowPolicyGetOutput(resolved);\n return {\n target: output.target,\n changed: false,\n ...(output.policy ? { policy: output.policy } : {}),\n effectivePolicy: output.effectivePolicy,\n plan: output.plan,\n diagnostics: output.diagnostics,\n };\n }\n operations.reprojectProjectionForChangedIds(workingDocument, [resolved.objectId]);\n state.summary = operations.summarizeDocument(workingDocument, state.session.getSource());\n state.status = `Agent set shadow policy ${resolved.objectId}`;\n renderUi();\n const nextDocument = asEditorSceneDocument(workingDocument);\n const nextObject = nextDocument ? findShadowGameObject(nextDocument, resolved.objectId) : null;\n if (!nextDocument || !nextObject) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_POLICY_SET,\n `Shadow target disappeared after patch: ${resolved.objectId}`,\n { code: 'shadow.targetMissing', objectId: resolved.objectId },\n );\n }\n const output = createShadowPolicyGetOutput({\n kind: 'scene',\n target: resolved.target,\n document: nextDocument,\n rawDocument: workingDocument,\n objectId: resolved.objectId,\n gameObject: nextObject,\n });\n return {\n target: output.target,\n changed: true,\n ...(output.policy ? { policy: output.policy } : {}),\n effectivePolicy: output.effectivePolicy,\n plan: output.plan,\n diagnostics: output.diagnostics,\n };\n}\n\nfunction setPrefabStageShadowPolicy<TDocument>(\n renderUi: () => void,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n resolved: Extract<ResolvedShadowTarget<TDocument>, { kind: 'prefab-stage' }>,\n policy: EditorShadowSettings | undefined,\n): EditorAgentBridgeShadowPolicySetOutput | ReturnType<typeof createLocalEditorAgentBridgeFailure> {\n const rootNodeId = findPrefabRootNodeId(resolved.details);\n const changed = resolved.nodeId === rootNodeId\n ? setPrefabRootShadowPolicy(operations, resolved.details, policy)\n : operations.runPrefabStageAssetAction({\n actionId: 'prefab.node.setShadow',\n targetPrefabAssetId: resolved.details.stage.assetId,\n nodeId: resolved.nodeId,\n value: policy ?? null,\n });\n if (!changed) {\n return createLocalEditorAgentBridgeFailure(\n EDITOR_AGENT_BRIDGE_CAPABILITY_ID.SHADOW_POLICY_SET,\n `Shadow policy action did not change prefab node: ${resolved.nodeId}`,\n { code: 'shadow.policyUnchanged', details: { assetId: resolved.details.stage.assetId, nodeId: resolved.nodeId } },\n );\n }\n renderUi();\n const nextDetails = operations.getPrefabStageDetails() ?? resolved.details;\n const nextResolved = resolvePrefabShadowTargetFromDetails(nextDetails, {\n nodeId: resolved.nodeId,\n assetId: resolved.details.stage.assetId,\n });\n const output = createShadowPolicyGetOutput(nextResolved ?? resolved);\n return {\n target: output.target,\n changed: true,\n ...(output.policy ? { policy: output.policy } : {}),\n effectivePolicy: output.effectivePolicy,\n plan: output.plan,\n diagnostics: output.diagnostics,\n };\n}\n\nfunction setPrefabRootShadowPolicy<TDocument>(\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n details: LocalEditorAgentBridgePrefabStageDetails<TDocument>,\n policy: EditorShadowSettings | undefined,\n): boolean {\n let changed = false;\n for (const { path, value } of createShadowPolicyFieldPatches(policy)) {\n const patched = operations.runPrefabStageAssetAction({\n actionId: 'asset.edit-prefab-field',\n assetId: details.stage.assetId,\n browserAssetId: details.stage.browserAssetId,\n assetKind: 'prefab',\n targetPrefabAssetId: details.stage.assetId,\n fieldPath: `prefab.defaults.${path}`,\n value,\n });\n if (patched) changed = true;\n }\n return changed;\n}\n\nfunction createShadowProjectionContext<TDocument>(\n resolved: ResolvedShadowTarget<TDocument>,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): ShadowProjectionContext {\n if (resolved.kind !== 'prefab-stage') return createIdentityShadowProjectionContext();\n return {\n resolveProjectionId: targetId => operations.resolvePrefabStageProjectionNodeId?.(targetId) ?? targetId,\n };\n}\n\nfunction createIdentityShadowProjectionContext(): ShadowProjectionContext {\n return {\n resolveProjectionId: targetId => targetId,\n };\n}\n\nfunction resolveShadowTarget<TDocument, TPatch>(\n capabilityId: string,\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n input: EditorAgentBridgeShadowTarget | EditorAgentBridgeShadowReceiversListInput,\n operations: LocalEditorAgentBridgeCapabilitySourceOperations<TDocument>,\n): { ok: true; target: ResolvedShadowTarget<TDocument> } | { ok: false; result: ReturnType<typeof createLocalEditorAgentBridgeFailure> } {\n if (state.mode !== 'editor' || !state.session) {\n return {\n ok: false,\n result: createLocalEditorAgentBridgeFailure(capabilityId, 'Editor is not in edit mode.', { code: 'editor.notReady' }),\n };\n }\n const sessionState = state.session.getState({ cloneDocuments: false });\n const document = asEditorSceneDocument(sessionState.workingDocument);\n const objectId = normalizeAgentBridgeString(input.objectId);\n if (objectId) {\n if (!document) {\n return {\n ok: false,\n result: createLocalEditorAgentBridgeFailure(capabilityId, 'Shadow capabilities require an editor scene document.', {\n code: 'shadow.unsupportedDocument',\n details: { objectId },\n }),\n };\n }\n if (!isAgentBridgeSafeSceneObjectId(operations, objectId)) {\n return {\n ok: false,\n result: createLocalEditorAgentBridgeFailure(capabilityId, `Shadow target object is unavailable in the safe Scene Hierarchy projection: ${objectId}`, {\n code: 'shadow.targetNotFound',\n objectId,\n }),\n };\n }\n const gameObject = findShadowGameObject(document, objectId);\n if (!gameObject) {\n return {\n ok: false,\n result: createLocalEditorAgentBridgeFailure(capabilityId, `Shadow target object not found: ${objectId}`, {\n code: 'shadow.targetNotFound',\n objectId,\n }),\n };\n }\n return {\n ok: true,\n target: {\n kind: 'scene',\n target: { objectId },\n document,\n rawDocument: sessionState.workingDocument,\n objectId,\n gameObject,\n },\n };\n }\n const details = operations.getPrefabStageDetails();\n if (details) {\n const prefabTarget = resolvePrefabShadowTargetFromDetails(details, input);\n if (prefabTarget) return { ok: true, target: prefabTarget };\n }\n const activeId = normalizeAgentBridgeString(getAgentBridgeSafeSceneSelection(operations).activeId);\n if (activeId && document) {\n const gameObject = findShadowGameObject(document, activeId);\n if (gameObject) {\n return {\n ok: true,\n target: {\n kind: 'scene',\n target: { objectId: activeId },\n document,\n rawDocument: sessionState.workingDocument,\n objectId: activeId,\n gameObject,\n },\n };\n }\n }\n return {\n ok: false,\n result: createLocalEditorAgentBridgeFailure(capabilityId, 'Shadow target is required. Provide objectId, or open a Prefab stage and provide nodeId/assetId.', {\n code: 'shadow.targetRequired',\n details: { objectId: input.objectId, nodeId: input.nodeId, assetId: 'assetId' in input ? input.assetId : undefined },\n }),\n };\n}\n\nfunction resolvePrefabShadowTargetFromDetails<TDocument>(\n details: LocalEditorAgentBridgePrefabStageDetails<TDocument>,\n input: EditorAgentBridgeShadowTarget | EditorAgentBridgeShadowReceiversListInput,\n): Extract<ResolvedShadowTarget<TDocument>, { kind: 'prefab-stage' }> | null {\n const requestedAssetId = 'assetId' in input ? normalizeAgentBridgeString(input.assetId) : '';\n if (requestedAssetId && requestedAssetId !== details.stage.assetId && requestedAssetId !== details.stage.browserAssetId) return null;\n const nodes = listPrefabShadowNodes(details);\n const nodeId = normalizePrefabNodeId(input.nodeId)\n || getSelectedPrefabNodeId(details.stage.selectedItemId)\n || findPrefabRootNodeId(details);\n const node = nodes.find(candidate => candidate.id === nodeId) ?? null;\n if (!node) return null;\n const document = createPrefabStageShadowDocument(details, nodes);\n return {\n kind: 'prefab-stage',\n target: { assetId: details.stage.assetId, nodeId: node.id },\n details,\n nodeId: node.id,\n node,\n document,\n };\n}\n\nfunction createPrefabStageShadowDocument<TDocument>(\n details: LocalEditorAgentBridgePrefabStageDetails<TDocument>,\n nodes: readonly PrefabShadowNode[],\n): EditorSceneDocument {\n return {\n version: 1,\n schemaVersion: 1,\n assets: [],\n scene: {\n gameObjects: nodes.map((node) => ({\n id: node.id,\n name: node.label,\n parentId: node.parentId ?? undefined,\n active: readBoolean(node.defaults?.active, true),\n kind: node.kind === 'primitive' ? 'primitive' : 'transform',\n ...(node.defaults?.shadow ? { shadow: structuredClone(node.defaults.shadow) as EditorShadowSettings } : {}),\n ...(node.primitive ? { primitive: structuredClone(node.primitive) as any } : {}),\n ...(node.light ? { light: structuredClone(node.light) as any } : {}),\n components: [],\n })),\n },\n metadata: {\n prefabStageAssetId: details.stage.assetId,\n },\n } as unknown as EditorSceneDocument;\n}\n\nfunction listPrefabShadowNodes<TDocument>(\n details: LocalEditorAgentBridgePrefabStageDetails<TDocument>,\n): PrefabShadowNode[] {\n const nodes: PrefabShadowNode[] = [];\n const visit = (item: any, parentId: string | null) => {\n const nodeId = normalizePrefabNodeId(item?.nodeId ?? item?.id);\n const isNode = item?.itemType === 'prefab-node' || !!item?.nodeId || String(item?.id ?? '').startsWith(PREFAB_STAGE_ITEM_PREFIX);\n const currentParent = isNode && nodeId ? nodeId : parentId;\n if (isNode && nodeId) {\n nodes.push({\n id: nodeId,\n label: typeof item.label === 'string' ? item.label : nodeId,\n kind: typeof item.kind === 'string' ? item.kind : 'group',\n parentId,\n ...(isRecord(item.defaults) ? { defaults: structuredClone(item.defaults) } : {}),\n ...(isRecord(item.primitive) ? { primitive: structuredClone(item.primitive) } : {}),\n ...(isRecord(item.light) ? { light: structuredClone(item.light) } : {}),\n });\n }\n for (const child of Array.isArray(item?.children) ? item.children : []) visit(child, currentParent);\n };\n for (const item of details.structureItems) visit(item, null);\n return nodes;\n}\n\nfunction createShadowPolicyFieldPatches(policy: EditorShadowSettings | undefined): Array<{ path: ShadowPolicyFieldPath; value: unknown }> {\n const record = (policy ?? {}) as Record<string, any>;\n return SHADOW_POLICY_FIELDS.map(path => ({\n path,\n value: readShadowPolicyFieldValue(record, path) ?? null,\n }));\n}\n\nfunction readShadowPolicyFieldValue(policy: Record<string, any>, path: ShadowPolicyFieldPath): unknown {\n if (path === 'shadow.cast') return policy.cast;\n if (path === 'shadow.receive') return policy.receive;\n if (path === 'shadow.mode') return policy.mode;\n if (path === 'shadow.quality') return policy.quality;\n if (path === 'shadow.light.mode') return policy.light?.mode;\n if (path === 'shadow.light.lightId') return policy.light?.lightId;\n const param = path.slice('shadow.params.'.length) as keyof NonNullable<EditorShadowSettings['params']>;\n return policy.params?.[param];\n}\n\nfunction normalizeShadowPolicy(value: unknown): { ok: true; settings?: EditorShadowSettings } | { ok: false; message: string } {\n if (!isRecord(value)) return { ok: false, message: 'shadow policy must be an object.' };\n if (Object.keys(value).length === 0) return { ok: true, settings: undefined };\n try {\n assertEditorShadowSettingsContract(value, '$.policy');\n } catch (error) {\n return { ok: false, message: error instanceof Error ? error.message : String(error) };\n }\n const settings = readEditorShadowSettings(value);\n if (!settings) return { ok: false, message: 'shadow policy did not contain any valid Shadow V2 fields.' };\n return { ok: true, settings };\n}\n\nfunction readPrefabNodeShadowPolicy(node: PrefabShadowNode): EditorShadowSettings | undefined {\n return readEditorShadowSettings(node.defaults?.shadow);\n}\n\nfunction createRenderingActionDiagnosticDetails(\n result: {\n ok: boolean;\n changed: boolean;\n rendered: boolean;\n status?: string;\n statusTone?: string;\n statusDetails?: string;\n details?: Record<string, unknown>;\n error?: string;\n },\n): EditorAgentBridgeJsonObject {\n return {\n ok: result.ok,\n changed: result.changed,\n rendered: result.rendered,\n ...(result.status ? { status: result.status } : {}),\n ...(result.statusTone ? { statusTone: result.statusTone } : {}),\n ...(result.statusDetails ? { statusDetails: result.statusDetails } : {}),\n ...(isRecord(result.details) ? { actionDetails: result.details as EditorAgentBridgeJsonObject } : {}),\n ...(result.error ? { error: result.error } : {}),\n };\n}\n\nfunction createStaticBakeDiagnostic(\n result: {\n ok: boolean;\n changed: boolean;\n rendered: boolean;\n status?: string;\n statusTone?: string;\n statusDetails?: string;\n details?: Record<string, unknown>;\n error?: string;\n },\n targetConfirmed: boolean,\n sourceNodeIds: readonly string[] | null,\n): EditorAgentBridgeDiagnostic {\n if (result.ok === true && result.changed === true && targetConfirmed) {\n return {\n severity: 'info',\n source: 'editor',\n code: 'shadow.staticBakeCompleted',\n message: 'Static shadow bake rendering action completed and included the requested caster.',\n details: createRenderingActionDiagnosticDetails(result),\n };\n }\n if (result.ok === true && result.changed === true && sourceNodeIds !== null) {\n return {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticBakeTargetNotFound',\n message: 'Static shadow bake produced an artifact, but the requested caster was not included in the baked source nodes.',\n details: createRenderingActionDiagnosticDetails(result),\n };\n }\n if (result.ok === true && result.changed === true) {\n return {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticBakeTargetUnknown',\n message: 'Static shadow bake produced an artifact, but the rendering action did not report target source nodes.',\n details: createRenderingActionDiagnosticDetails(result),\n };\n }\n return {\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticBakeNoChange',\n message: result.ok === false\n ? 'Static shadow bake rendering action did not complete successfully.'\n : 'Static shadow bake rendering action completed without producing a changed artifact.',\n details: createRenderingActionDiagnosticDetails(result),\n };\n}\n\nfunction readRenderingActionStaticBakeSourceNodeIds(result: { details?: Record<string, unknown> }): string[] | null {\n if (!isRecord(result.details)) return null;\n const details = result.details;\n if (!Object.prototype.hasOwnProperty.call(details, 'sourceNodeIds')) return null;\n return normalizeAgentBridgeIdList(readRenderingActionStringList(details.sourceNodeIds));\n}\n\nfunction readRenderingActionStringList(value: unknown): string[] {\n return Array.isArray(value) ? value.filter((item): item is string => typeof item === 'string') : [];\n}\n\nfunction getResolvedTargetShadowPolicy<TDocument>(target: ResolvedShadowTarget<TDocument>): EditorShadowSettings | undefined {\n if (target.kind === 'scene') {\n return resolveEditorSceneGameObjectShadowSettings(target.document, target.gameObject).settings;\n }\n return readPrefabNodeShadowPolicy(target.node);\n}\n\nfunction getResolvedTargetAuthoredPolicy<TDocument>(target: ResolvedShadowTarget<TDocument>): EditorShadowSettings | undefined {\n return target.kind === 'scene'\n ? readEditorShadowSettings(target.gameObject.shadow)\n : readPrefabNodeShadowPolicy(target.node);\n}\n\nfunction createShadowDebugRuntimeEvidence(\n plan: EditorAgentBridgeShadowResolvedPlan,\n receivers: readonly EditorAgentBridgeShadowReceiverCandidate[],\n shadowPreviewDebugInfo: LocalEditorAgentBridgeShadowPreviewDebugInfo | null | undefined,\n casterIds: ReadonlySet<string>,\n): EditorAgentBridgeShadowRuntimeEvidence {\n const diagnostics: EditorAgentBridgeDiagnostic[] = [];\n if (plan.backend === 'none') {\n diagnostics.push({\n severity: 'info',\n source: 'editor',\n code: 'shadow.runtimeBackendNone',\n message: 'Resolved backend is none, so no runtime shadow primitive is expected.',\n });\n }\n if (plan.backend !== 'none' && receivers.length === 0) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.runtimeNoReceivers',\n message: 'Resolved shadow backend requires receivers, but no receiver candidates are available.',\n });\n }\n if (plan.backend === 'static-baked') {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.staticArtifactEvidenceUnavailable',\n message: 'Static-baked shadow visibility requires a baked artifact; this editor bridge session does not expose artifact presence evidence to shadow.debug.visibilityMeasure.',\n });\n }\n return {\n backend: plan.backend,\n renderableShadowPrimitiveCount: plan.backend === 'none' || plan.backend === 'static-baked'\n ? 0\n : receivers.filter(receiver => receiver.active !== false && receiver.visible !== false).length,\n casterRuntimeObjectCount: plan.backend === 'none' ? 0 : 1,\n receiverRuntimeObjectCount: receivers.length,\n ...createPlanarShadowRuntimeEvidence(shadowPreviewDebugInfo, casterIds),\n ...(plan.stale === true ? { artifactStale: true } : {}),\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n\nfunction createPlanarShadowRuntimeEvidence(\n shadowPreviewDebugInfo: LocalEditorAgentBridgeShadowPreviewDebugInfo | null | undefined,\n casterIds: ReadonlySet<string>,\n): { planar?: EditorAgentBridgeShadowRuntimeEvidence['planar'] } {\n const planar = shadowPreviewDebugInfo?.planar;\n if (!planar) return {};\n const matchingCasters = planar.casters.filter(caster => isPlanarShadowCasterEvidenceForTarget(\n collectPlanarShadowCasterSourceNodeIds(caster),\n casterIds,\n ));\n const casters = matchingCasters;\n if (casters.length === 0) return {};\n const fallbackReasons = uniqueStrings(casters.flatMap(caster => caster.fallbackReasons ?? []));\n const alphaCutoutChannels = uniqueStrings(casters.flatMap(caster => caster.alphaCutoutChannels ?? []))\n .filter((channel): channel is 'alpha' | 'luminance' | 'red' => channel === 'alpha' || channel === 'luminance' || channel === 'red');\n const alphaCutoutUvSets = uniqueNumbers(casters.flatMap(caster => caster.alphaCutoutUvSets ?? []));\n const alphaCutoutLevels = uniqueNumbers(casters.flatMap(caster => caster.alphaCutoutLevels ?? []));\n const instancedBatchIds = uniqueStrings(casters.flatMap(caster => caster.instancedBatchIds ?? []));\n const instancedBatchNames = uniqueStrings(casters.flatMap(caster => caster.instancedBatchNames ?? []));\n const batchMeshCount = instancedBatchIds.length > 0 ? instancedBatchIds.length : instancedBatchNames.length;\n const instancingFallbackReasons = uniqueStrings(casters.flatMap(caster => caster.instancingFallbackReasons ?? []));\n const independentProjectedMeshCount = casters.reduce(\n (sum, caster) => sum + (caster.independentProjectedMeshCount ?? caster.projectedMeshCount),\n 0,\n );\n const strategy = summarizePlanarShadowDebugStrategy(casters);\n return {\n planar: {\n ...(strategy ? { strategy } : {}),\n sourceMeshCount: casters.length,\n projectedMeshCount: independentProjectedMeshCount + batchMeshCount,\n convexHullMeshCount: casters.reduce((sum, caster) => sum + caster.convexHullMeshCount, 0),\n alphaCutoutMeshCount: casters.reduce((sum, caster) => sum + caster.alphaCutoutMeshCount, 0),\n instancedCasterCount: casters.reduce((sum, caster) => sum + (caster.instancedCasterCount ?? 0), 0),\n batchMeshCount,\n independentProjectedMeshCount,\n visibleInstanceCount: casters.reduce((sum, caster) => sum + (caster.visibleInstanceCount ?? 0), 0),\n ...(instancedBatchIds.length ? { instancedBatchIds } : {}),\n ...(instancedBatchNames.length ? { instancedBatchNames } : {}),\n ...(alphaCutoutChannels.length ? { alphaCutoutChannels } : {}),\n ...(alphaCutoutUvSets.length ? { alphaCutoutUvSets } : {}),\n ...(alphaCutoutLevels.length ? { alphaCutoutLevels } : {}),\n ...(fallbackReasons.length ? { fallbackReasons } : {}),\n ...(instancingFallbackReasons.length ? { instancingFallbackReasons } : {}),\n casters: casters.map(caster => ({\n sourceName: caster.sourceName,\n ...(caster.sourceNodeId ? { sourceNodeId: caster.sourceNodeId } : {}),\n ...(caster.sourceNodeIds?.length ? { sourceNodeIds: [...caster.sourceNodeIds] } : {}),\n ...(caster.sourceMeshNames?.length ? { sourceMeshNames: [...caster.sourceMeshNames] } : {}),\n shadowName: caster.shadowName,\n strategy: caster.strategy,\n hasSkeleton: caster.hasSkeleton,\n projectedMeshCount: caster.projectedMeshCount,\n convexHullMeshCount: caster.convexHullMeshCount,\n alphaCutoutMeshCount: caster.alphaCutoutMeshCount,\n ...(typeof caster.instancedCasterCount === 'number' ? { instancedCasterCount: caster.instancedCasterCount } : {}),\n ...(typeof caster.batchMeshCount === 'number' ? { batchMeshCount: caster.batchMeshCount } : {}),\n ...(caster.instancedBatchIds?.length ? { instancedBatchIds: [...caster.instancedBatchIds] } : {}),\n ...(caster.instancedBatchNames?.length ? { instancedBatchNames: [...caster.instancedBatchNames] } : {}),\n ...(typeof caster.independentProjectedMeshCount === 'number' ? { independentProjectedMeshCount: caster.independentProjectedMeshCount } : {}),\n ...(typeof caster.visibleInstanceCount === 'number' ? { visibleInstanceCount: caster.visibleInstanceCount } : {}),\n ...(caster.alphaCutoutChannels?.length ? { alphaCutoutChannels: [...caster.alphaCutoutChannels] } : {}),\n ...(caster.fallbackReasons?.length ? { fallbackReasons: [...caster.fallbackReasons] } : {}),\n ...(caster.instancingFallbackReasons?.length ? { instancingFallbackReasons: [...caster.instancingFallbackReasons] } : {}),\n })),\n },\n };\n}\n\nfunction createShadowRuntimeEvidenceCasterIds<TDocument>(\n resolved: ResolvedShadowTarget<TDocument>,\n casterId: string,\n projectionContext: ShadowProjectionContext,\n): Set<string> {\n const authoringIds = new Set<string>([casterId]);\n addShadowRuntimeEvidenceSceneDescendants(authoringIds, resolved.document, casterId);\n const ids = new Set<string>();\n for (const id of authoringIds) {\n ids.add(id);\n ids.add(projectionContext.resolveProjectionId(id));\n }\n return ids;\n}\n\nfunction addShadowRuntimeEvidenceSceneDescendants(\n ids: Set<string>,\n document: EditorSceneDocument,\n parentId: string,\n): void {\n for (const gameObject of document.scene.gameObjects) {\n const candidateParentId = readShadowSceneGameObjectParentId(gameObject);\n if (candidateParentId !== parentId || ids.has(gameObject.id)) continue;\n ids.add(gameObject.id);\n addShadowRuntimeEvidenceSceneDescendants(ids, document, gameObject.id);\n }\n}\n\nfunction readShadowSceneGameObjectParentId(gameObject: EditorSceneGameObject): string | null {\n const parentId = (gameObject as { parentId?: unknown }).parentId;\n return typeof parentId === 'string' && parentId.length > 0 ? parentId : null;\n}\n\nfunction collectPlanarShadowCasterSourceNodeIds(\n caster: NonNullable<LocalEditorAgentBridgeShadowPreviewDebugInfo['planar']>['casters'][number],\n): string[] {\n return uniqueStrings([\n ...(caster.sourceNodeId ? [caster.sourceNodeId] : []),\n ...(caster.sourceNodeIds ?? []),\n ]);\n}\n\nfunction isPlanarShadowCasterEvidenceForTarget(\n sourceNodeIds: readonly string[],\n casterIds: ReadonlySet<string>,\n): boolean {\n for (const sourceNodeId of sourceNodeIds) {\n if (casterIds.has(sourceNodeId)) return true;\n for (const casterId of casterIds) {\n if (sourceNodeId.startsWith(`${casterId}::`)) return true;\n }\n }\n return false;\n}\n\nfunction summarizePlanarShadowDebugStrategy(\n casters: readonly NonNullable<LocalEditorAgentBridgeShadowPreviewDebugInfo['planar']>['casters'][number][],\n): 'auto' | 'projected-mesh' | 'convex-hull' | undefined {\n if (casters.length === 0) return undefined;\n const hasProjected = casters.some(caster => caster.projectedMeshCount > 0);\n const hasHull = casters.some(caster => caster.convexHullMeshCount > 0);\n if (hasProjected && hasHull) return 'auto';\n if (hasProjected) return 'projected-mesh';\n if (hasHull) return 'convex-hull';\n return undefined;\n}\n\nfunction uniqueStrings(values: readonly string[]): string[] {\n return [...new Set(values.filter(value => value.length > 0))];\n}\n\nfunction uniqueNumbers(values: readonly number[]): number[] {\n return [...new Set(values.filter(value => Number.isFinite(value)))];\n}\n\nfunction mapShadowPlan(plan: EditorShadowResolvedPlan): EditorAgentBridgeShadowResolvedPlan {\n return {\n casterId: plan.casterId,\n receiverIds: [...plan.receiverIds],\n ...(plan.lightId ? { lightId: plan.lightId } : {}),\n backend: plan.backend,\n mode: plan.mode,\n quality: plan.quality,\n params: { ...plan.params },\n ...(plan.stale === true ? { stale: true } : {}),\n diagnostics: mapShadowDiagnostics(plan.diagnostics),\n };\n}\n\nfunction mapShadowReceivers<TDocument, TPatch>(\n receivers: readonly EditorShadowReceiverCandidate[],\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n context: { casterId?: string; lightId?: string; projectionContext?: ShadowProjectionContext } = {},\n): EditorAgentBridgeShadowReceiverCandidate[] {\n const projectionContext = context.projectionContext ?? createIdentityShadowProjectionContext();\n const casterBounds = context.casterId\n ? readShadowProjectionBounds(state, context.casterId, projectionContext)\n : undefined;\n return receivers.map((receiver) => {\n const bounds = readShadowProjectionBounds(state, receiver.receiverId, projectionContext);\n const diagnostics = mapShadowDiagnostics(receiver.diagnostics ?? []);\n if (!bounds) {\n diagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.receiverBoundsUnavailable',\n message: `Projection bounds are unavailable for receiver \"${receiver.receiverId}\".`,\n details: { receiverId: receiver.receiverId },\n });\n }\n const authoredActive = receiver.active !== false;\n const authoredVisible = authoredActive && receiver.visible !== false;\n const effectiveVisible = readShadowPreviewEffectiveVisible(state, receiver.receiverId, projectionContext, authoredVisible);\n const suitability = createShadowReceiverSuitability(receiver, casterBounds, bounds, context.lightId);\n return {\n receiverId: receiver.receiverId,\n source: receiver.source,\n score: receiver.score,\n ...(bounds ? { bounds, boundsCenter: bounds.center } : {}),\n active: authoredActive,\n visible: effectiveVisible,\n ...(receiver.receive ? { receive: receiver.receive as EditorAgentBridgeShadowReceiverCandidate['receive'] } : {}),\n ...(suitability ? { suitability } : {}),\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n });\n}\n\nfunction createShadowReceiverSuitability(\n receiver: EditorShadowReceiverCandidate,\n casterBounds: AgentBridgeResolvedBounds | undefined,\n receiverBounds: AgentBridgeResolvedBounds | undefined,\n lightId: string | undefined,\n): NonNullable<EditorAgentBridgeShadowReceiverCandidate['suitability']> | undefined {\n const reasons = [...(receiver.suitability?.reasons ?? [])];\n if (receiverBounds) reasons.push('receiver bounds available');\n else reasons.push('receiver bounds unavailable');\n if (casterBounds) reasons.push('caster bounds available');\n if (lightId) reasons.push(`light ${lightId}`);\n const distance = casterBounds && receiverBounds ? distance3(casterBounds.center, receiverBounds.center) : undefined;\n const overlap = casterBounds && receiverBounds ? overlapRatioXZ(casterBounds, receiverBounds) : undefined;\n return {\n score: receiver.suitability?.score ?? receiver.score,\n ...(overlap !== undefined ? { overlap } : {}),\n ...(distance !== undefined ? { distance } : {}),\n ...(receiver.suitability?.material ? { material: receiver.suitability.material } : {}),\n ...(lightId ? { light: lightId } : receiver.suitability?.light ? { light: receiver.suitability.light } : {}),\n reasons,\n };\n}\n\nfunction createShadowDebugTargetSummary<TDocument, TPatch>(\n target: ResolvedShadowTarget<TDocument>,\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n projectionContext: ShadowProjectionContext = createIdentityShadowProjectionContext(),\n): EditorAgentBridgeShadowDebugTargetSummary {\n const id = getResolvedTargetCasterId(target);\n const projectionId = projectionContext.resolveProjectionId(id);\n const bounds = readShadowProjectionBounds(state, id, projectionContext);\n const transform = editorTransformSnapshotToAgentTransform(state.projection?.readNodeTransform(projectionId));\n if (target.kind === 'scene') {\n const active = target.gameObject.active !== false;\n return {\n objectId: target.objectId,\n label: target.gameObject.name ?? target.objectId,\n kind: target.gameObject.kind ?? 'transform',\n active,\n visible: readShadowPreviewEffectiveVisible(state, id, projectionContext, active),\n ...(bounds ? { bounds } : {}),\n ...(transform ? { transform } : {}),\n ...(!bounds ? {\n diagnostics: [{\n severity: 'warning',\n source: 'editor',\n code: 'shadow.casterBoundsUnavailable',\n message: `Projection bounds are unavailable for caster \"${target.objectId}\".`,\n }],\n } : {}),\n };\n }\n return {\n nodeId: target.nodeId,\n label: target.node.label,\n kind: target.node.kind,\n active: readBoolean(target.node.defaults?.active, true),\n visible: readShadowPreviewEffectiveVisible(\n state,\n id,\n projectionContext,\n readBoolean(target.node.defaults?.active, true),\n ),\n ...(bounds ? { bounds } : {}),\n ...(transform ? { transform } : {}),\n ...(!bounds ? {\n diagnostics: [{\n severity: 'warning',\n source: 'editor',\n code: 'shadow.casterBoundsUnavailable',\n message: `Projection bounds are unavailable for prefab node \"${target.nodeId}\".`,\n }],\n } : {}),\n };\n}\n\nfunction createShadowLightSummary(\n document: EditorSceneDocument,\n lightId: string | undefined,\n): EditorAgentBridgeShadowLightSummary | undefined {\n if (!lightId) return undefined;\n const light = findShadowGameObject(document, lightId);\n if (!light?.light) {\n return {\n lightId,\n diagnostics: [{\n severity: 'warning',\n source: 'editor',\n code: 'shadow.lightNotFound',\n message: `Resolved shadow light \"${lightId}\" was not found in the preview document.`,\n }],\n };\n }\n const diagnostics: EditorAgentBridgeDiagnostic[] = [];\n let direction: EditorAgentBridgeVec3 | undefined;\n let directionSource: EditorAgentBridgeShadowLightSummary['directionSource'] | undefined;\n const orientationDiagnostics: EditorAgentBridgeDiagnostic[] = [];\n if (light.light.type === 'directional') {\n direction = normalizeEditorSceneLightDirectionVector(light.light.direction) as EditorAgentBridgeVec3;\n directionSource = 'light.direction';\n const transform = findEditorSceneTransform(light);\n const rotation = transform && 'rotation' in transform ? transform.rotation : undefined;\n const drift = detectEditorSceneDirectionalLightOrientationDrift({\n direction: light.light.direction,\n rotation,\n });\n if (drift.hasDrift) {\n orientationDiagnostics.push({\n severity: 'warning',\n source: 'editor',\n code: 'shadow.lightOrientationDrift',\n message: 'Directional Light transform.rotation and light.direction are out of sync. Runtime shadows use light.direction until the light orientation is edited again.',\n details: {\n expectedDirectionFromTransform: cloneShadowVec3Json(drift.expectedDirection),\n actualDirection: cloneShadowVec3Json(drift.actualDirection),\n delta: drift.delta,\n tolerance: drift.tolerance,\n },\n });\n diagnostics.push(...orientationDiagnostics);\n }\n }\n return {\n lightId,\n label: light.name ?? light.id,\n type: light.light.type,\n ...(light.shadow?.light?.mode ? { mode: light.shadow.light.mode } : {}),\n ...(direction ? { direction } : {}),\n ...(directionSource ? { directionSource } : {}),\n ...(orientationDiagnostics.length ? { orientationDiagnostics } : {}),\n ...(typeof light.light.intensity === 'number' ? { intensity: light.light.intensity } : {}),\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n\nfunction cloneShadowVec3(value: EditorAgentBridgeVec3): EditorAgentBridgeVec3 {\n return { x: value.x, y: value.y, z: value.z };\n}\n\nfunction cloneShadowVec3Json(value: EditorAgentBridgeVec3): EditorAgentBridgeJsonObject {\n return { x: value.x, y: value.y, z: value.z };\n}\n\nfunction createShadowFootprintSummary<TDocument, TPatch>(\n plan: EditorAgentBridgeShadowResolvedPlan,\n receivers: readonly EditorAgentBridgeShadowReceiverCandidate[],\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n projectionContext: ShadowProjectionContext = createIdentityShadowProjectionContext(),\n light?: EditorAgentBridgeShadowLightSummary,\n): EditorAgentBridgeShadowFootprintSummary {\n if (plan.backend === 'none' || plan.receiverIds.length === 0) {\n return {\n kind: 'none',\n confidence: plan.backend === 'none' ? 1 : 0,\n diagnostics: plan.backend === 'none'\n ? [{\n severity: 'info',\n source: 'editor',\n code: 'shadow.footprintNone',\n message: 'Shadow backend is none, so no footprint is expected.',\n }]\n : [{\n severity: 'warning',\n source: 'editor',\n code: 'shadow.receiverNotFound',\n message: 'No receiver is available for an estimated shadow footprint.',\n }],\n };\n }\n const receiver = selectShadowFootprintReceiver(plan, receivers);\n if (!receiver) {\n return {\n kind: 'unknown',\n receiverId: plan.receiverIds[0],\n confidence: 0.1,\n diagnostics: [{\n severity: 'warning',\n source: 'editor',\n code: 'shadow.footprintReceiverUnavailable',\n message: 'Resolved shadow plan has receiver ids, but no receiver summaries are available for footprint selection.',\n details: { receiverIds: plan.receiverIds },\n }],\n };\n }\n const receiverBounds = receiver?.bounds as AgentBridgeResolvedBounds | undefined;\n const casterBounds = readShadowProjectionBounds(state, plan.casterId, projectionContext);\n if (!receiverBounds || !casterBounds) {\n return {\n kind: 'unknown',\n receiverId: receiver?.receiverId ?? plan.receiverIds[0],\n confidence: 0.25,\n diagnostics: [{\n severity: 'warning',\n source: 'editor',\n code: 'shadow.footprintBoundsUnavailable',\n message: 'Caster or receiver bounds are unavailable, so the footprint can only be reported structurally.',\n }],\n };\n }\n const footprintHeight = 0.02;\n const direction = normalizeShadowDirection(light?.direction);\n const projectedBounds = direction\n ? projectCasterBoundsToReceiver(casterBounds, receiverBounds, direction)\n : null;\n const size = projectedBounds\n ? {\n x: Math.min(receiverBounds.size.x, Math.max(projectedBounds.size.x, 0.01)),\n y: footprintHeight,\n z: Math.min(receiverBounds.size.z, Math.max(projectedBounds.size.z, 0.01)),\n }\n : {\n x: Math.min(receiverBounds.size.x, Math.max(casterBounds.size.x, 0.01)),\n y: footprintHeight,\n z: Math.min(receiverBounds.size.z, Math.max(casterBounds.size.z, 0.01)),\n };\n const center = projectedBounds?.center ?? casterBounds.center;\n const contactTolerance = Math.max(0.025, casterBounds.size.y * 0.04);\n const contactsReceiver = Math.abs(casterBounds.min.y - receiverBounds.max.y) <= contactTolerance\n || casterBounds.min.y < receiverBounds.max.y;\n const diagnostics: EditorAgentBridgeDiagnostic[] = [\n ...(!direction && light?.type === 'directional' ? [{\n severity: 'warning' as const,\n source: 'editor' as const,\n code: 'shadow.footprintDirectionUnavailable',\n message: 'Directional shadow light is missing a direction, so the footprint falls back to caster bounds.',\n details: { lightId: light.lightId },\n }] : []),\n ...(contactsReceiver ? [{\n severity: 'info' as const,\n source: 'editor' as const,\n code: 'shadow.casterContactsReceiver',\n message: 'Caster bounds touch or intersect the receiver plane. A real screenshot may show only the outside portions of the shadow because the caster itself occludes the contact footprint.',\n details: {\n casterMinY: casterBounds.min.y,\n receiverMaxY: receiverBounds.max.y,\n contactTolerance,\n },\n }] : []),\n ];\n return {\n kind: plan.backend === 'static-baked' ? 'artifact' : 'estimated',\n receiverId: receiver.receiverId,\n center: {\n x: center.x,\n y: receiverBounds.max.y + footprintHeight / 2 + 0.002,\n z: center.z,\n },\n size,\n normal: { x: 0, y: 1, z: 0 },\n ...(direction ? { direction } : {}),\n area: Math.max(0, size.x) * Math.max(0, size.z),\n confidence: receiver.suitability?.overlap !== undefined ? Math.min(1, Math.max(0.35, receiver.suitability.overlap)) : 0.6,\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n\nfunction selectShadowFootprintReceiver(\n plan: EditorAgentBridgeShadowResolvedPlan,\n receivers: readonly EditorAgentBridgeShadowReceiverCandidate[],\n): EditorAgentBridgeShadowReceiverCandidate | undefined {\n const planOrder = new Map(plan.receiverIds.map((receiverId, index) => [receiverId, index]));\n const candidates = receivers.filter(receiver => planOrder.has(receiver.receiverId));\n const ranked = candidates.length > 0 ? candidates : receivers;\n return [...ranked].sort((left, right) => compareShadowReceiverForFootprint(left, right, planOrder))[0];\n}\n\nfunction compareShadowReceiverForFootprint(\n left: EditorAgentBridgeShadowReceiverCandidate,\n right: EditorAgentBridgeShadowReceiverCandidate,\n planOrder: ReadonlyMap<string, number>,\n): number {\n const leftVisible = left.active !== false && left.visible !== false ? 1 : 0;\n const rightVisible = right.active !== false && right.visible !== false ? 1 : 0;\n if (leftVisible !== rightVisible) return rightVisible - leftVisible;\n\n const leftHasBounds = left.bounds ? 1 : 0;\n const rightHasBounds = right.bounds ? 1 : 0;\n if (leftHasBounds !== rightHasBounds) return rightHasBounds - leftHasBounds;\n\n const leftOverlap = typeof left.suitability?.overlap === 'number' ? left.suitability.overlap : -1;\n const rightOverlap = typeof right.suitability?.overlap === 'number' ? right.suitability.overlap : -1;\n if (leftOverlap !== rightOverlap) return rightOverlap - leftOverlap;\n\n const leftDistance = typeof left.suitability?.distance === 'number' ? left.suitability.distance : Number.POSITIVE_INFINITY;\n const rightDistance = typeof right.suitability?.distance === 'number' ? right.suitability.distance : Number.POSITIVE_INFINITY;\n if (leftDistance !== rightDistance) return leftDistance - rightDistance;\n\n const leftScore = typeof left.suitability?.score === 'number' ? left.suitability.score : left.score ?? 0;\n const rightScore = typeof right.suitability?.score === 'number' ? right.suitability.score : right.score ?? 0;\n if (leftScore !== rightScore) return rightScore - leftScore;\n\n const leftOrder = planOrder.get(left.receiverId) ?? Number.MAX_SAFE_INTEGER;\n const rightOrder = planOrder.get(right.receiverId) ?? Number.MAX_SAFE_INTEGER;\n return leftOrder - rightOrder;\n}\n\nfunction normalizeShadowDirection(direction: EditorAgentBridgeVec3 | undefined): EditorAgentBridgeVec3 | null {\n if (!direction) return null;\n const length = Math.hypot(direction.x, direction.y, direction.z);\n if (!Number.isFinite(length) || length <= 1e-6) return null;\n return {\n x: direction.x / length,\n y: direction.y / length,\n z: direction.z / length,\n };\n}\n\nfunction projectCasterBoundsToReceiver(\n casterBounds: AgentBridgeResolvedBounds,\n receiverBounds: AgentBridgeResolvedBounds,\n direction: EditorAgentBridgeVec3,\n): { center: EditorAgentBridgeVec3; size: EditorAgentBridgeVec3 } | null {\n if (Math.abs(direction.y) <= 1e-5) return null;\n const receiverY = receiverBounds.max.y;\n const points: EditorAgentBridgeVec3[] = [];\n for (const x of [casterBounds.min.x, casterBounds.max.x]) {\n for (const y of [casterBounds.min.y, casterBounds.max.y]) {\n for (const z of [casterBounds.min.z, casterBounds.max.z]) {\n const t = (receiverY - y) / direction.y;\n if (!Number.isFinite(t)) continue;\n if (t < 0) {\n points.push({ x, y: receiverY, z });\n continue;\n }\n points.push({\n x: x + direction.x * t,\n y: receiverY,\n z: z + direction.z * t,\n });\n }\n }\n }\n if (points.length === 0) return null;\n const min = {\n x: Math.min(...points.map(point => point.x)),\n y: receiverY,\n z: Math.min(...points.map(point => point.z)),\n };\n const max = {\n x: Math.max(...points.map(point => point.x)),\n y: receiverY,\n z: Math.max(...points.map(point => point.z)),\n };\n return {\n center: {\n x: (min.x + max.x) / 2,\n y: receiverY,\n z: (min.z + max.z) / 2,\n },\n size: {\n x: Math.max(0, max.x - min.x),\n y: 0,\n z: Math.max(0, max.z - min.z),\n },\n };\n}\n\nfunction readShadowProjectionBounds<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n targetId: string,\n projectionContext: ShadowProjectionContext,\n): AgentBridgeResolvedBounds | undefined {\n const projectionId = projectionContext.resolveProjectionId(targetId);\n return createAgentBridgeBounds(state.projection?.getSelectionBounds([projectionId]) ?? null);\n}\n\nfunction readShadowPreviewEffectiveVisible<TDocument, TPatch>(\n state: LocalEditorAgentBridgeHarnessState<TDocument, TPatch>,\n targetId: string,\n projectionContext: ShadowProjectionContext,\n authoredVisible: boolean,\n): boolean {\n const projectionId = projectionContext.resolveProjectionId(targetId);\n const projectionEntry = state.projection?.getPreviewVisibilityOverrides?.()\n ?.find(entry => entry.nodeId === projectionId || entry.nodeId === targetId);\n if (projectionEntry) return projectionEntry.effectiveVisible;\n const overrides = state.previewVisibility?.overrides ?? {};\n const override = overrides[projectionId] ?? overrides[targetId];\n return authoredVisible && override !== false;\n}\n\nfunction createAgentBridgeBounds(\n bounds: { center: { x: number; y: number; z: number }; size: { x: number; y: number; z: number } } | null,\n): AgentBridgeResolvedBounds | undefined {\n if (!bounds) return undefined;\n const half = {\n x: bounds.size.x / 2,\n y: bounds.size.y / 2,\n z: bounds.size.z / 2,\n };\n return {\n center: { ...bounds.center },\n size: { ...bounds.size },\n min: {\n x: bounds.center.x - half.x,\n y: bounds.center.y - half.y,\n z: bounds.center.z - half.z,\n },\n max: {\n x: bounds.center.x + half.x,\n y: bounds.center.y + half.y,\n z: bounds.center.z + half.z,\n },\n };\n}\n\nfunction distance3(a: { x: number; y: number; z: number }, b: { x: number; y: number; z: number }): number {\n return Math.hypot(a.x - b.x, a.y - b.y, a.z - b.z);\n}\n\nfunction overlapRatioXZ(\n a: AgentBridgeResolvedBounds,\n b: AgentBridgeResolvedBounds,\n): number {\n const overlapX = Math.max(0, Math.min(a.max.x, b.max.x) - Math.max(a.min.x, b.min.x));\n const overlapZ = Math.max(0, Math.min(a.max.z, b.max.z) - Math.max(a.min.z, b.min.z));\n const intersection = overlapX * overlapZ;\n const casterArea = Math.max(0.0001, a.size.x * a.size.z);\n return Math.max(0, Math.min(1, intersection / casterArea));\n}\n\nfunction mapShadowDiagnostics(diagnostics: readonly EditorShadowDiagnostic[]): EditorAgentBridgeDiagnostic[] {\n return diagnostics.map(diagnostic => ({\n severity: diagnostic.severity,\n source: 'editor',\n code: diagnostic.code,\n message: diagnostic.message,\n ...(diagnostic.casterId ? { objectId: diagnostic.casterId } : {}),\n details: {\n ...(diagnostic.details ?? {}),\n ...(diagnostic.casterId ? { casterId: diagnostic.casterId } : {}),\n ...(diagnostic.receiverId ? { receiverId: diagnostic.receiverId } : {}),\n ...(diagnostic.lightId ? { lightId: diagnostic.lightId } : {}),\n },\n }));\n}\n\nfunction createShadowTargetDiagnostics<TDocument>(\n resolved: ResolvedShadowTarget<TDocument>,\n): EditorAgentBridgeDiagnostic[] {\n if (resolved.kind !== 'prefab-stage') return [];\n return [{\n severity: 'info',\n source: 'editor',\n code: 'shadow.prefabStagePreview',\n message: 'Prefab stage shadow resolution uses editable prefab nodes as a preview scene; runtime scene receiver/light binding is finalized by the scene compiler.',\n details: { assetId: resolved.details.stage.assetId, nodeId: resolved.nodeId },\n }];\n}\n\nfunction getResolvedTargetCasterId<TDocument>(target: ResolvedShadowTarget<TDocument>): string {\n return target.kind === 'scene' ? target.objectId : target.nodeId;\n}\n\nfunction asEditorSceneDocument(value: unknown): EditorSceneDocument | null {\n if (!isRecord(value)) return null;\n const scene = value.scene;\n if (!isRecord(scene) || !Array.isArray(scene.gameObjects)) return null;\n if (!Array.isArray(value.assets)) return null;\n return value as EditorSceneDocument;\n}\n\nfunction findShadowGameObject(document: EditorSceneDocument, objectId: string): EditorSceneGameObject | null {\n return document.scene.gameObjects.find(gameObject => gameObject.id === objectId) ?? null;\n}\n\nfunction findPrefabRootNodeId<TDocument>(details: LocalEditorAgentBridgePrefabStageDetails<TDocument>): string {\n const nodes = listPrefabShadowNodes(details);\n return nodes.find(node => node.kind === 'root')?.id\n ?? nodes.find(node => !node.parentId)?.id\n ?? 'prefab-root';\n}\n\nfunction normalizePrefabNodeId(value: unknown): string {\n const id = normalizeAgentBridgeString(value);\n return id.startsWith(PREFAB_STAGE_ITEM_PREFIX) ? id.slice(PREFAB_STAGE_ITEM_PREFIX.length) : id;\n}\n\nfunction getSelectedPrefabNodeId(itemId: string | null | undefined): string {\n return normalizePrefabNodeId(itemId);\n}\n\nfunction readBoolean(value: unknown, fallback: boolean): boolean {\n return typeof value === 'boolean' ? value : fallback;\n}\n\nfunction isRecord(value: unknown): value is Record<string, any> {\n return !!value && typeof value === 'object' && !Array.isArray(value);\n}\n"]}
|