@namzu/cli 29.0.0 → 29.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +146 -0
- package/README.md +20 -0
- package/dist/browser/commands.d.ts +29 -0
- package/dist/browser/commands.d.ts.map +1 -0
- package/dist/browser/commands.js +361 -0
- package/dist/browser/commands.js.map +1 -0
- package/dist/browser/control.d.ts +79 -0
- package/dist/browser/control.d.ts.map +1 -0
- package/dist/browser/control.js +140 -0
- package/dist/browser/control.js.map +1 -0
- package/dist/browser/describe.d.ts +12 -0
- package/dist/browser/describe.d.ts.map +1 -0
- package/dist/browser/describe.js +27 -0
- package/dist/browser/describe.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +29 -2
- package/dist/cli.js.map +1 -1
- package/dist/commands/acp.d.ts.map +1 -1
- package/dist/commands/acp.js +1 -0
- package/dist/commands/acp.js.map +1 -1
- package/dist/commands/browser.d.ts +7 -0
- package/dist/commands/browser.d.ts.map +1 -0
- package/dist/commands/browser.js +16 -0
- package/dist/commands/browser.js.map +1 -0
- package/dist/commands/drain.d.ts +2 -1
- package/dist/commands/drain.d.ts.map +1 -1
- package/dist/commands/drain.js +6 -3
- package/dist/commands/drain.js.map +1 -1
- package/dist/commands/exec-flags.d.ts +2 -1
- package/dist/commands/exec-flags.d.ts.map +1 -1
- package/dist/commands/exec-flags.js +6 -3
- package/dist/commands/exec-flags.js.map +1 -1
- package/dist/commands/exec-json.d.ts.map +1 -1
- package/dist/commands/exec-json.js +2 -1
- package/dist/commands/exec-json.js.map +1 -1
- package/dist/commands/exec.d.ts.map +1 -1
- package/dist/commands/exec.js +2 -1
- package/dist/commands/exec.js.map +1 -1
- package/dist/commands/host-queries.d.ts.map +1 -1
- package/dist/commands/host-queries.js +10 -3
- package/dist/commands/host-queries.js.map +1 -1
- package/dist/commands/schedule.d.ts +9 -0
- package/dist/commands/schedule.d.ts.map +1 -0
- package/dist/commands/schedule.js +126 -0
- package/dist/commands/schedule.js.map +1 -0
- package/dist/commands/serve.d.ts +3 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +5 -3
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/skills.d.ts +10 -0
- package/dist/commands/skills.d.ts.map +1 -1
- package/dist/commands/skills.js +23 -7
- package/dist/commands/skills.js.map +1 -1
- package/dist/commands/upgrade.d.ts +5 -0
- package/dist/commands/upgrade.d.ts.map +1 -1
- package/dist/commands/upgrade.js +11 -0
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/config/load.d.ts +39 -0
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +232 -1
- package/dist/config/load.js.map +1 -1
- package/dist/config/schema.d.ts +78 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/config/user-config.d.ts +23 -0
- package/dist/config/user-config.d.ts.map +1 -0
- package/dist/config/user-config.js +48 -0
- package/dist/config/user-config.js.map +1 -0
- package/dist/context/capabilities.d.ts +1 -1
- package/dist/context/capabilities.d.ts.map +1 -1
- package/dist/context/capabilities.js +1 -0
- package/dist/context/capabilities.js.map +1 -1
- package/dist/doctor/checks/browser.d.ts +15 -0
- package/dist/doctor/checks/browser.d.ts.map +1 -0
- package/dist/doctor/checks/browser.js +63 -0
- package/dist/doctor/checks/browser.js.map +1 -0
- package/dist/doctor/checks/index.d.ts +4 -1
- package/dist/doctor/checks/index.d.ts.map +1 -1
- package/dist/doctor/checks/index.js +8 -1
- package/dist/doctor/checks/index.js.map +1 -1
- package/dist/doctor/checks/scheduler.d.ts +10 -0
- package/dist/doctor/checks/scheduler.d.ts.map +1 -0
- package/dist/doctor/checks/scheduler.js +74 -0
- package/dist/doctor/checks/scheduler.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/integrations/notifications/desktop/freedesktop.d.ts +10 -0
- package/dist/integrations/notifications/desktop/freedesktop.d.ts.map +1 -0
- package/dist/integrations/notifications/desktop/freedesktop.js +33 -0
- package/dist/integrations/notifications/desktop/freedesktop.js.map +1 -0
- package/dist/integrations/notifications/desktop/macos.d.ts +6 -0
- package/dist/integrations/notifications/desktop/macos.d.ts.map +1 -0
- package/dist/integrations/notifications/desktop/macos.js +17 -0
- package/dist/integrations/notifications/desktop/macos.js.map +1 -0
- package/dist/integrations/notifications/desktop/sanitize.d.ts +16 -0
- package/dist/integrations/notifications/desktop/sanitize.d.ts.map +1 -0
- package/dist/integrations/notifications/desktop/sanitize.js +49 -0
- package/dist/integrations/notifications/desktop/sanitize.js.map +1 -0
- package/dist/integrations/notifications/desktop/throttle.d.ts +10 -0
- package/dist/integrations/notifications/desktop/throttle.d.ts.map +1 -0
- package/dist/integrations/notifications/desktop/throttle.js +39 -0
- package/dist/integrations/notifications/desktop/throttle.js.map +1 -0
- package/dist/integrations/notifications/desktop/windows-toast.d.ts +23 -0
- package/dist/integrations/notifications/desktop/windows-toast.d.ts.map +1 -0
- package/dist/integrations/notifications/desktop/windows-toast.js +56 -0
- package/dist/integrations/notifications/desktop/windows-toast.js.map +1 -0
- package/dist/integrations/notifications/desktop.d.ts +82 -0
- package/dist/integrations/notifications/desktop.d.ts.map +1 -0
- package/dist/integrations/notifications/desktop.js +198 -0
- package/dist/integrations/notifications/desktop.js.map +1 -0
- package/dist/integrations/resident/session-step.d.ts.map +1 -1
- package/dist/integrations/resident/session-step.js +1 -0
- package/dist/integrations/resident/session-step.js.map +1 -1
- package/dist/integrations/subagents/runtime.d.ts +6 -0
- package/dist/integrations/subagents/runtime.d.ts.map +1 -1
- package/dist/integrations/subagents/runtime.js +14 -5
- package/dist/integrations/subagents/runtime.js.map +1 -1
- package/dist/permissions/browser-sites.d.ts +95 -0
- package/dist/permissions/browser-sites.d.ts.map +1 -0
- package/dist/permissions/browser-sites.js +270 -0
- package/dist/permissions/browser-sites.js.map +1 -0
- package/dist/permissions/checks.d.ts.map +1 -1
- package/dist/permissions/checks.js +7 -1
- package/dist/permissions/checks.js.map +1 -1
- package/dist/permissions/rules.d.ts.map +1 -1
- package/dist/permissions/rules.js +4 -8
- package/dist/permissions/rules.js.map +1 -1
- package/dist/schedule/build.d.ts +79 -0
- package/dist/schedule/build.d.ts.map +1 -0
- package/dist/schedule/build.js +246 -0
- package/dist/schedule/build.js.map +1 -0
- package/dist/schedule/changes.d.ts +22 -0
- package/dist/schedule/changes.d.ts.map +1 -0
- package/dist/schedule/changes.js +55 -0
- package/dist/schedule/changes.js.map +1 -0
- package/dist/schedule/commands/add.d.ts +24 -0
- package/dist/schedule/commands/add.d.ts.map +1 -0
- package/dist/schedule/commands/add.js +459 -0
- package/dist/schedule/commands/add.js.map +1 -0
- package/dist/schedule/commands/args.d.ts +22 -0
- package/dist/schedule/commands/args.d.ts.map +1 -0
- package/dist/schedule/commands/args.js +80 -0
- package/dist/schedule/commands/args.js.map +1 -0
- package/dist/schedule/commands/confirm-prompt.d.ts +6 -0
- package/dist/schedule/commands/confirm-prompt.d.ts.map +1 -0
- package/dist/schedule/commands/confirm-prompt.js +21 -0
- package/dist/schedule/commands/confirm-prompt.js.map +1 -0
- package/dist/schedule/commands/lifecycle.d.ts +39 -0
- package/dist/schedule/commands/lifecycle.d.ts.map +1 -0
- package/dist/schedule/commands/lifecycle.js +585 -0
- package/dist/schedule/commands/lifecycle.js.map +1 -0
- package/dist/schedule/commands/list.d.ts +33 -0
- package/dist/schedule/commands/list.d.ts.map +1 -0
- package/dist/schedule/commands/list.js +202 -0
- package/dist/schedule/commands/list.js.map +1 -0
- package/dist/schedule/commands/logs.d.ts +7 -0
- package/dist/schedule/commands/logs.d.ts.map +1 -0
- package/dist/schedule/commands/logs.js +106 -0
- package/dist/schedule/commands/logs.js.map +1 -0
- package/dist/schedule/commands/service.d.ts +16 -0
- package/dist/schedule/commands/service.d.ts.map +1 -0
- package/dist/schedule/commands/service.js +458 -0
- package/dist/schedule/commands/service.js.map +1 -0
- package/dist/schedule/daemon/daemon.d.ts +156 -0
- package/dist/schedule/daemon/daemon.d.ts.map +1 -0
- package/dist/schedule/daemon/daemon.js +1248 -0
- package/dist/schedule/daemon/daemon.js.map +1 -0
- package/dist/schedule/daemon/endpoint.d.ts +38 -0
- package/dist/schedule/daemon/endpoint.d.ts.map +1 -0
- package/dist/schedule/daemon/endpoint.js +158 -0
- package/dist/schedule/daemon/endpoint.js.map +1 -0
- package/dist/schedule/daemon/exit.d.ts +8 -0
- package/dist/schedule/daemon/exit.d.ts.map +1 -0
- package/dist/schedule/daemon/exit.js +8 -0
- package/dist/schedule/daemon/exit.js.map +1 -0
- package/dist/schedule/daemon/log.d.ts +12 -0
- package/dist/schedule/daemon/log.d.ts.map +1 -0
- package/dist/schedule/daemon/log.js +53 -0
- package/dist/schedule/daemon/log.js.map +1 -0
- package/dist/schedule/daemon/notify.d.ts +31 -0
- package/dist/schedule/daemon/notify.d.ts.map +1 -0
- package/dist/schedule/daemon/notify.js +89 -0
- package/dist/schedule/daemon/notify.js.map +1 -0
- package/dist/schedule/daemon/retention.d.ts +16 -0
- package/dist/schedule/daemon/retention.d.ts.map +1 -0
- package/dist/schedule/daemon/retention.js +46 -0
- package/dist/schedule/daemon/retention.js.map +1 -0
- package/dist/schedule/daemon/sessions.d.ts +23 -0
- package/dist/schedule/daemon/sessions.d.ts.map +1 -0
- package/dist/schedule/daemon/sessions.js +52 -0
- package/dist/schedule/daemon/sessions.js.map +1 -0
- package/dist/schedule/env.d.ts +28 -0
- package/dist/schedule/env.d.ts.map +1 -0
- package/dist/schedule/env.js +99 -0
- package/dist/schedule/env.js.map +1 -0
- package/dist/schedule/fire/browser-preflight.d.ts +41 -0
- package/dist/schedule/fire/browser-preflight.d.ts.map +1 -0
- package/dist/schedule/fire/browser-preflight.js +73 -0
- package/dist/schedule/fire/browser-preflight.js.map +1 -0
- package/dist/schedule/fire/fire.d.ts +78 -0
- package/dist/schedule/fire/fire.d.ts.map +1 -0
- package/dist/schedule/fire/fire.js +482 -0
- package/dist/schedule/fire/fire.js.map +1 -0
- package/dist/schedule/fire/result.d.ts +13 -0
- package/dist/schedule/fire/result.d.ts.map +1 -0
- package/dist/schedule/fire/result.js +18 -0
- package/dist/schedule/fire/result.js.map +1 -0
- package/dist/schedule/fire/unattended-note.d.ts +22 -0
- package/dist/schedule/fire/unattended-note.d.ts.map +1 -0
- package/dist/schedule/fire/unattended-note.js +46 -0
- package/dist/schedule/fire/unattended-note.js.map +1 -0
- package/dist/schedule/floor.d.ts +116 -0
- package/dist/schedule/floor.d.ts.map +1 -0
- package/dist/schedule/floor.js +1051 -0
- package/dist/schedule/floor.js.map +1 -0
- package/dist/schedule/folder.d.ts +34 -0
- package/dist/schedule/folder.d.ts.map +1 -0
- package/dist/schedule/folder.js +84 -0
- package/dist/schedule/folder.js.map +1 -0
- package/dist/schedule/paths.d.ts +49 -0
- package/dist/schedule/paths.d.ts.map +1 -0
- package/dist/schedule/paths.js +53 -0
- package/dist/schedule/paths.js.map +1 -0
- package/dist/schedule/policy.d.ts +141 -0
- package/dist/schedule/policy.d.ts.map +1 -0
- package/dist/schedule/policy.js +378 -0
- package/dist/schedule/policy.js.map +1 -0
- package/dist/schedule/resume-command.d.ts +36 -0
- package/dist/schedule/resume-command.d.ts.map +1 -0
- package/dist/schedule/resume-command.js +72 -0
- package/dist/schedule/resume-command.js.map +1 -0
- package/dist/schedule/service/detect.d.ts +22 -0
- package/dist/schedule/service/detect.d.ts.map +1 -0
- package/dist/schedule/service/detect.js +29 -0
- package/dist/schedule/service/detect.js.map +1 -0
- package/dist/schedule/service/index.d.ts +48 -0
- package/dist/schedule/service/index.d.ts.map +1 -0
- package/dist/schedule/service/index.js +352 -0
- package/dist/schedule/service/index.js.map +1 -0
- package/dist/schedule/service/launchd.d.ts +24 -0
- package/dist/schedule/service/launchd.d.ts.map +1 -0
- package/dist/schedule/service/launchd.js +84 -0
- package/dist/schedule/service/launchd.js.map +1 -0
- package/dist/schedule/service/manifest.d.ts +44 -0
- package/dist/schedule/service/manifest.d.ts.map +1 -0
- package/dist/schedule/service/manifest.js +16 -0
- package/dist/schedule/service/manifest.js.map +1 -0
- package/dist/schedule/service/names.d.ts +9 -0
- package/dist/schedule/service/names.d.ts.map +1 -0
- package/dist/schedule/service/names.js +22 -0
- package/dist/schedule/service/names.js.map +1 -0
- package/dist/schedule/service/quote.d.ts +24 -0
- package/dist/schedule/service/quote.d.ts.map +1 -0
- package/dist/schedule/service/quote.js +64 -0
- package/dist/schedule/service/quote.js.map +1 -0
- package/dist/schedule/service/runner.d.ts +17 -0
- package/dist/schedule/service/runner.d.ts.map +1 -0
- package/dist/schedule/service/runner.js +31 -0
- package/dist/schedule/service/runner.js.map +1 -0
- package/dist/schedule/service/systemd.d.ts +37 -0
- package/dist/schedule/service/systemd.d.ts.map +1 -0
- package/dist/schedule/service/systemd.js +96 -0
- package/dist/schedule/service/systemd.js.map +1 -0
- package/dist/schedule/service/windows-task.d.ts +51 -0
- package/dist/schedule/service/windows-task.d.ts.map +1 -0
- package/dist/schedule/service/windows-task.js +134 -0
- package/dist/schedule/service/windows-task.js.map +1 -0
- package/dist/schedule/service/wsl.d.ts +57 -0
- package/dist/schedule/service/wsl.d.ts.map +1 -0
- package/dist/schedule/service/wsl.js +111 -0
- package/dist/schedule/service/wsl.js.map +1 -0
- package/dist/schedule/store/atomic.d.ts +43 -0
- package/dist/schedule/store/atomic.d.ts.map +1 -0
- package/dist/schedule/store/atomic.js +135 -0
- package/dist/schedule/store/atomic.js.map +1 -0
- package/dist/schedule/store/claims.d.ts +26 -0
- package/dist/schedule/store/claims.d.ts.map +1 -0
- package/dist/schedule/store/claims.js +57 -0
- package/dist/schedule/store/claims.js.map +1 -0
- package/dist/schedule/store/digest.d.ts +18 -0
- package/dist/schedule/store/digest.d.ts.map +1 -0
- package/dist/schedule/store/digest.js +139 -0
- package/dist/schedule/store/digest.js.map +1 -0
- package/dist/schedule/store/history.d.ts +21 -0
- package/dist/schedule/store/history.d.ts.map +1 -0
- package/dist/schedule/store/history.js +114 -0
- package/dist/schedule/store/history.js.map +1 -0
- package/dist/schedule/store/jobs.d.ts +61 -0
- package/dist/schedule/store/jobs.d.ts.map +1 -0
- package/dist/schedule/store/jobs.js +210 -0
- package/dist/schedule/store/jobs.js.map +1 -0
- package/dist/schedule/store/state.d.ts +19 -0
- package/dist/schedule/store/state.d.ts.map +1 -0
- package/dist/schedule/store/state.js +38 -0
- package/dist/schedule/store/state.js.map +1 -0
- package/dist/schedule/types.d.ts +256 -0
- package/dist/schedule/types.d.ts.map +1 -0
- package/dist/schedule/types.js +9 -0
- package/dist/schedule/types.js.map +1 -0
- package/dist/skills/catalog.d.ts +96 -0
- package/dist/skills/catalog.d.ts.map +1 -0
- package/dist/skills/catalog.js +226 -0
- package/dist/skills/catalog.js.map +1 -0
- package/dist/skills/save.d.ts +148 -0
- package/dist/skills/save.d.ts.map +1 -0
- package/dist/skills/save.js +344 -0
- package/dist/skills/save.js.map +1 -0
- package/dist/skills/store.d.ts +103 -16
- package/dist/skills/store.d.ts.map +1 -1
- package/dist/skills/store.js +230 -29
- package/dist/skills/store.js.map +1 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +591 -72
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/LiveActivity.d.ts +8 -1
- package/dist/tui/LiveActivity.d.ts.map +1 -1
- package/dist/tui/LiveActivity.js +20 -4
- package/dist/tui/LiveActivity.js.map +1 -1
- package/dist/tui/PermissionOverlay.d.ts +24 -4
- package/dist/tui/PermissionOverlay.d.ts.map +1 -1
- package/dist/tui/PermissionOverlay.js +113 -15
- package/dist/tui/PermissionOverlay.js.map +1 -1
- package/dist/tui/SaveSkillOverlay.d.ts +33 -0
- package/dist/tui/SaveSkillOverlay.d.ts.map +1 -0
- package/dist/tui/SaveSkillOverlay.js +118 -0
- package/dist/tui/SaveSkillOverlay.js.map +1 -0
- package/dist/tui/agent.d.ts +185 -5
- package/dist/tui/agent.d.ts.map +1 -1
- package/dist/tui/agent.js +325 -54
- package/dist/tui/agent.js.map +1 -1
- package/dist/tui/browser-notices.d.ts +33 -0
- package/dist/tui/browser-notices.d.ts.map +1 -0
- package/dist/tui/browser-notices.js +102 -0
- package/dist/tui/browser-notices.js.map +1 -0
- package/dist/tui/permission-review.d.ts.map +1 -1
- package/dist/tui/permission-review.js +53 -4
- package/dist/tui/permission-review.js.map +1 -1
- package/dist/tui/schedule/host-commands.d.ts +34 -0
- package/dist/tui/schedule/host-commands.d.ts.map +1 -0
- package/dist/tui/schedule/host-commands.js +309 -0
- package/dist/tui/schedule/host-commands.js.map +1 -0
- package/dist/tui/schedule/integration.d.ts +62 -0
- package/dist/tui/schedule/integration.d.ts.map +1 -0
- package/dist/tui/schedule/integration.js +145 -0
- package/dist/tui/schedule/integration.js.map +1 -0
- package/dist/tui/schedule/loop-host.d.ts +42 -0
- package/dist/tui/schedule/loop-host.d.ts.map +1 -0
- package/dist/tui/schedule/loop-host.js +153 -0
- package/dist/tui/schedule/loop-host.js.map +1 -0
- package/dist/tui/schedule/resume.d.ts +122 -0
- package/dist/tui/schedule/resume.d.ts.map +1 -0
- package/dist/tui/schedule/resume.js +324 -0
- package/dist/tui/schedule/resume.js.map +1 -0
- package/dist/tui/schedule/startup.d.ts +11 -0
- package/dist/tui/schedule/startup.d.ts.map +1 -0
- package/dist/tui/schedule/startup.js +121 -0
- package/dist/tui/schedule/startup.js.map +1 -0
- package/dist/tui/schedule/tool-host.d.ts +44 -0
- package/dist/tui/schedule/tool-host.d.ts.map +1 -0
- package/dist/tui/schedule/tool-host.js +294 -0
- package/dist/tui/schedule/tool-host.js.map +1 -0
- package/dist/tui/skills/learning.d.ts +74 -0
- package/dist/tui/skills/learning.d.ts.map +1 -0
- package/dist/tui/skills/learning.js +131 -0
- package/dist/tui/skills/learning.js.map +1 -0
- package/dist/tui/skills/suggest-setting.d.ts +22 -0
- package/dist/tui/skills/suggest-setting.d.ts.map +1 -0
- package/dist/tui/skills/suggest-setting.js +55 -0
- package/dist/tui/skills/suggest-setting.js.map +1 -0
- package/dist/tui/skills/suggestion-ledger.d.ts +35 -0
- package/dist/tui/skills/suggestion-ledger.d.ts.map +1 -0
- package/dist/tui/skills/suggestion-ledger.js +52 -0
- package/dist/tui/skills/suggestion-ledger.js.map +1 -0
- package/dist/tui/slashCommands.d.ts +20 -0
- package/dist/tui/slashCommands.d.ts.map +1 -1
- package/dist/tui/slashCommands.js +76 -2
- package/dist/tui/slashCommands.js.map +1 -1
- package/dist/tui/turn-interruption.d.ts +20 -1
- package/dist/tui/turn-interruption.d.ts.map +1 -1
- package/dist/tui/turn-interruption.js +43 -0
- package/dist/tui/turn-interruption.js.map +1 -1
- package/dist/tui/types.d.ts +9 -1
- package/dist/tui/types.d.ts.map +1 -1
- package/package.json +5 -3
- package/skills/README.md +15 -0
- package/skills/browser-automation/SKILL.md +84 -0
- package/skills/schedule-task/SKILL.md +140 -0
- package/skills/skill-creator/SKILL.md +101 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"floor.js","sourceRoot":"","sources":["../../src/schedule/floor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8EG;AAEH,OAAO,EAON,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,GACnB,MAAM,YAAY,CAAA;AAEnB,qEAAqE;AACrE,MAAM,CAAC,MAAM,eAAe,GAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;AAmC/F,sFAAsF;AACtF,MAAM,UAAU,wBAAwB,CACvC,OAAqB;IAErB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;IAChC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AACrC,CAAC;AAED;;;GAGG;AACH,MAAM,SAAS,GAAG,IAAI,OAAO,EAAqB,CAAA;AAElD,2DAA2D;AAC3D,MAAM,UAAU,WAAW,CAAC,IAAuB;IAClD,OAAO,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,qBAAqB,CAAC,OAAqB;IAC1D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA;IAChC,MAAM,IAAI,GAAsB;QAC/B,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,0IAA0I,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,OAAO,CAAC,SAAS,0JAA0J;QACrX,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;KAChE,CAAA;IACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IACnB,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AAER,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACzC,MAAM;IACN,SAAS;IACT,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,cAAc;IACd,OAAO;CACP,CAAC,CAAA;AACF,iDAAiD;AACjD,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAA;AAC1D,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;AAC3F,MAAM,eAAe,GAAG,6BAA6B,CAAA;AACrD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;AAC5D,4EAA4E;AAC5E,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM;IACN,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,KAAK;IACL,SAAS;IACT,KAAK;IACL,MAAM;IACN,MAAM;CACN,CAAC,CAAA;AACF,MAAM,SAAS,GAAG,qBAAqB,CAAA;AACvC,0GAA0G;AAC1G,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC;IACtB,IAAI;IACJ,MAAM;IACN,MAAM;IACN,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,SAAS;IACT,MAAM;IACN,KAAK;IACL,MAAM;IACN,MAAM;IACN,YAAY;IACZ,KAAK;IACL,KAAK;CACL,CAAC,CAAA;AACF,iFAAiF;AACjF,MAAM,YAAY,GACjB,0OAA0O,CAAA;AAC3O,0EAA0E;AAC1E,MAAM,cAAc,GAAqC;IACxD,IAAI,EAAE,uCAAuC;IAC7C,GAAG,EAAE,6CAA6C;CAClD,CAAA;AAED,sFAAsF;AACtF,MAAM,SAAS,GAAG;IACjB,OAAO;IACP,SAAS;IACT,WAAW;IACX,WAAW;IACX,UAAU;IACV,OAAO;IACP,SAAS;IACT,QAAQ;IACR,WAAW;IACX,OAAO;CACP,CAAA;AAED,MAAM,SAAS,GAAG,aAAa,CAAA;AAE/B,SAAS,KAAK,CAAC,IAAY;IAC1B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAA;AAC1B,CAAC;AAED,+DAA+D;AAC/D,SAAS,WAAW,CAAC,KAAa;IACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAA;IACrE,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IAC1D,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACxD,CAAC;AASD;;;;GAIG;AACH,SAAS,QAAQ,CAAC,KAAa;IAC9B,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC1B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC,EAAE,KAAa,EAAE,EAAE,CAC7D,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CACrC;QACF,CAAC,CAAC,KAAK,CAAA;AACT,CAAC;AAED;;;;GAIG;AACH,SAAS,UAAU,CAAC,KAAa,EAAE,SAAkB;IACpD,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;AAChF,CAAC;AAED,SAAS,OAAO,CAAC,OAAqB,EAAE,SAAkB;IACzD,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QACpD,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAA;IACjF,CAAC,CAAC,CAAA;AACH,CAAC;AAED,8EAA8E;AAC9E,qBAAqB;AAErB;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,KAAsB,EAAE,iBAAyB;IAC1E,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAA;IACtB,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,IAA0B,EAAU,EAAE;QACjE,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;YAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAS,CAAC;gBAAE,OAAO,CAAC,CAAA;QACnE,OAAO,CAAC,CAAC,CAAA;IACV,CAAC,CAAA;IACD,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,CAAO,EAAE,EAAE,CAC3C,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAA;IAC9D,MAAM,UAAU,GAAG,CAAC,CAAO,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAElE,0BAA0B;IAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAA;IAC7C,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACpB,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QAC9F,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QACxF,+CAA+C;QAC/C,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;IAChG,CAAC;IAED,oCAAoC;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAA;IAC7C,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QAC9E,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;IAC9D,CAAC;IAED,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAA;IAC3C,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAA;QACtC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACpF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,oEAAoE;IACpE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvE,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,KAAK;aAChB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;aACjB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAA;QAC9D,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAS,CAAA;YAC1B,IAAI,CAAC,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAA;YACvB,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAQ;YACpC,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;YAClD,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAA;YACvE,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAA;QACzF,CAAC;IACF,CAAC;IAED,2CAA2C;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAChE,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IAE7D,wEAAwE;IACxE,yEAAyE;IACzE,wBAAwB;IACxB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAA;IAC/F,MAAM,IAAI,GAAG,IAAI,CAChB,CAAC,EACD,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAClF,CAAA;IACD,wEAAwE;IACxE,IAAI,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAA;IACpE,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAC1E,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,IAAK,KAAK,CAAC,CAAC,CAAU,CAAC,IAAI,KAAK,UAAU,IAAK,KAAK,CAAC,CAAC,CAAU,CAAC,IAAI;gBAAE,SAAQ;YAC/E,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YACzB,IAAI,IAAI,KAAK,SAAS;gBAAE,SAAQ;YAChC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;QACnE,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,OAAqB;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;IAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAA;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACvE,wEAAwE;IACxE,yDAAyD;IACzD,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAC7B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CACpE,CAAA;IACD,0DAA0D;IAC1D,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,CAAA;IAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAW,CAAA;QAC/B,IAAI,IAAI,KAAK,EAAE;YAAE,SAAQ;QACzB,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAA;QACxC,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,KAAK,GAAG;YAAE,OAAO,IAAI,CAAA;QAC3C,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;IAC5D,CAAC;IACD,KAAK,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;QAC7D,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACnF,OAAO,IAAI,CAAA;IACb,OAAO,KAAK,CAAA;AACb,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AAER;;;;GAIG;AACH,SAAS,SAAS,CAAC,IAAY;IAC9B,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAW,CAAA;QAC/B,IAAI,IAAI,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;YAAE,SAAQ;QAClC,IAAI,IAAI,KAAK,GAAG;YAAE,SAAQ;QAC1B,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACvB,IAAI,IAAI,KAAK,EAAE;gBAAE,SAAQ,CAAC,cAAc;YACxC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBACzC,GAAG,CAAC,GAAG,EAAE,CAAA;gBACT,SAAQ;YACT,CAAC;QACF,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACf,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;QAAE,OAAO,GAAG,CAAA;IACjD,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACrB,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAClF,CAAC;AAED,SAAS,IAAI,CAAC,GAAW,EAAE,GAAW;IACrC,OAAO,SAAS,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAA;AAClC,CAAC;AAED,2EAA2E;AAC3E,SAAS,YAAY,CAAC,IAAY,EAAE,IAAY;IAC/C,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAY,CAAA;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;QAC1C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAClE,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAA;IAChC,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAYD,mEAAmE;AACnE,MAAM,OAAO,GAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAKhD,MAAM,OAAO,GAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;AAE3D,wFAAwF;AACxF,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAY3B,MAAM,OAAQ,SAAQ,KAAK;CAAG;AAE9B,8EAA8E;AAC9E,iCAAiC;AAEjC;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAU,CAAA;AAC/D,MAAM,YAAY,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAC/C,+EAA+E;AAC/E,MAAM,cAAc,GAAG,mCAAmC,CAAA;AAE1D;;;GAGG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;QACnC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,4DAA4D,EAAE,cAAc,CAAC;QAC5F,CAAC,CAAC,IAAI,CAAA;AACR,CAAC;AAED,mFAAmF;AACnF,SAAS,YAAY,CAAC,IAAY;IACjC,OAAO,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;AACxC,CAAC;AAED,sFAAsF;AACtF,MAAM,IAAI,GAAG,UAAU,CAAA;AACvB,MAAM,QAAQ,GAAG,uDAAuD,CAAA;AAExE,mGAAmG;AACnG,SAAS,KAAK,CAAC,OAAe,EAAE,IAAY;IAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,KAAK,IAAI,CAAA;IAChD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAW,CAAA;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAW,CAAA;IACpC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IACjE,IAAI,EAAE,GAAG,KAAK,CAAC,MAAM,CAAA;IACrB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;QACrC,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,KAAK,CAAA;QAC3B,EAAE,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAA;IAC1B,CAAC;IACD,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,IAAY;IACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrE,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAC1D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAW,CAAC,CAAC;YAAE,SAAQ;QACvF,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;IAC9F,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,IAAY;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAChC,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAA;IACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAW,CAAA;IACtC,OAAO,CACN,CAAC,IAAI,CAAC;QACN,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,SAAS;QAC7B,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,OAAO;QAC3B,IAAI,KAAK,EAAE;QACX,IAAI,KAAK,OAAO;QAChB,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CACxB,CAAA;AACF,CAAC;AAED,MAAM,KAAK;IACO,IAAI,CAAQ;IACZ,QAAQ,CAAQ;IAChB,QAAQ,CAAQ;IAChB,OAAO,CAAmB;IAC1B,iBAAiB,CAAQ;IACzB,eAAe,CAA6B;IAE7D,YAAY,OAAqB;QAChC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAA;QAClD,IAAI,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC9C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACxC,IAAI,CAAC,eAAe,GAAG,uBAAuB,EAAE,CAAA;QAChD,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAC7B,OAAO,CAAC,iBAAiB,IAAI,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,kBAAkB,CAC3F,CAAA;IACF,CAAC;IAED,+DAA+D;IAC/D,OAAO,CAAC,IAAgC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO;YAC5B,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAA;QAC5B,IAAI,IAAwB,CAAA;QAC5B,IAAI,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC3E,MAAM,KAAK,GAAI,KAAiC,CAAC,QAAQ,CAAC,CAAA;YAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,IAAI,GAAG,KAAK,CAAA;QAC5C,CAAC;QACD,IAAI,CAAC;YACJ,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAC3C,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,SAAS,KAAK,EAAE,CAAA;YAC3C,IAAI,IAAI,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;YAC1E,OAAO,IAAI,CAAA;QACZ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,KAAK,YAAY,OAAO;gBAAE,OAAO,oBAAoB,CAAA;YACzD,MAAM,KAAK,CAAA;QACZ,CAAC;IACF,CAAC;IAED,4EAA4E;IAE5E,wEAAwE;IAChE,WAAW,CAAC,KAAc,EAAE,IAAwB;QAC3D,MAAM,KAAK,GAAc,CAAC,KAAK,CAAC,CAAA;QAChC,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;YACzB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC/B,IAAI,CAAC,OAAO,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBAChC,OAAO,GAAG,IAAI,CAAA;oBACd,SAAQ;gBACT,CAAC;gBACD,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;oBAAE,OAAO,YAAY,CAAA;gBAClD,IAAI,gBAAgB,CAAC,KAAK,CAAC;oBAAE,OAAO,sBAAsB,CAAA;YAC3D,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;YACrB,CAAC;iBAAM,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACxD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACvE,CAAC;QACF,CAAC;QACD,OAAO,IAAI,CAAA;IACZ,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,IAAY;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;QACzB,MAAM,QAAQ,GAAG,KAAK;aACpB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;aACpB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;aAC1B,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;QACxB,KAAK,MAAM,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;YACzC,IAAI,mCAAmC,CAAC,IAAI,CAAC,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAA;YAClE,MAAM,OAAO,GAAG,OAAO;iBACrB,OAAO,CAAC,iCAAiC,EAAE,IAAI,CAAC,QAAQ,CAAC;iBACzD,OAAO,CAAC,sDAAsD,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;YACvF,IAAI,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;QAC7D,CAAC;QACD,OAAO,KAAK,CAAA;IACb,CAAC;IAED,4EAA4E;IAEpE,WAAW,CAAC,IAAY,EAAE,OAAsB,EAAE,KAAK,GAAG,CAAC;QAClE,oEAAoE;QACpE,gDAAgD;QAChD,MAAM,QAAQ,GACb,OAAO,KAAK,MAAM;YACjB,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAClD,CAAC,CAAC;gBACA,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC5C,mBAAmB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;aAC9C,CAAA;QACJ,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,KAAK,GAAG,gCAAgC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzD,IAAI,WAAW,GAAuB,IAAI,CAAA;QAC1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;YAC7D,IAAI,MAAM,KAAK,IAAI;gBAAE,OAAO,MAAM,CAAA;YAClC,IAAI,OAAO,CAAC,MAAM;gBAAE,WAAW,KAAK,uCAAuC,CAAA;iBACtE,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC5C,WAAW,KAAK,uCAAuC,CAAA;QACzD,CAAC;QACD,IAAI,WAAW,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QACrC,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAE,OAAO,WAAW,CAAA;QAC9D,sEAAsE;QACtE,oEAAoE;QACpE,sEAAsE;QACtE,mDAAmD;QACnD,IAAI,KAAK,GAAG,cAAc;YACzB,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI;oBAAE,OAAO,WAAW,CAAA;YAC3E,CAAC;QACF,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,wEAAwE;IAChE,iBAAiB,CAAC,IAAY,EAAE,QAAmC;QAC1E,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;aAC1B,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;aACpB,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QAC1B,MAAM,OAAO,GAAG,QAAQ;aACtB,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC7E,IAAI,CAAC,GAAG,CAAC,CAAA;QACX,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,EAAE,YAAY,CAAC,CAAA;QAC3C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACzD,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;YACrC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAA;QAC9D,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAEO,cAAc,CACrB,OAAuB,EACvB,SAAkB,EAClB,KAAc;QAEd,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ;YACrC,IAAI,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC;gBACxE,OAAO,mBAAmB,CAAA;QAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAY,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;QAChF,MAAM,OAAO,GACZ,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrD,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YACrD,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACtC,oEAAoE;QACpE,mEAAmE;QACnE,wCAAwC;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CACtE,CAAA;QACD,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,sEAAsE;QACtE,kEAAkE;QAClE,IAAI,KAAK;YACR,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ;gBACrC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC7F,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAA;QACxC,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAA;YAC1B,MAAM,KAAK,GAAG,CAAC,IAAe,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;YACjF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAA;YAC5E,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;gBACjD,IAAI,UAAU,IAAI,CAAC,GAAG,OAAO,CAAC,WAAW;oBAAE,SAAQ;gBACnD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;gBACzB,IAAI,KAAK,KAAK,IAAI;oBAAE,OAAO,cAAc,KAAK,EAAE,CAAA;gBAChD,kEAAkE;gBAClE,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;gBACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBACpD,IAAI,KAAK,KAAK,IAAI;oBAAE,OAAO,wBAAwB,KAAK,EAAE,CAAA;YAC3D,CAAC;YACD,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBAChD,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;gBACrB,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBACzE,IAAI,KAAK,KAAK,IAAI;oBAAE,OAAO,qBAAqB,KAAK,EAAE,CAAA;YACxD,CAAC;YACD,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC5F,CAAC;QACD,+DAA+D;QAC/D,uDAAuD;QACvD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,EAAE,CAAA;QAC9B,MAAM,KAAK,GAAG,CAAC,IAAe,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;QACrF,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAChD,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC;gBAAE,SAAQ;YAChE,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;YACvC,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,qBAAqB,KAAK,EAAE,CAAA;QACxD,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;YACzB,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,2BAA2B,KAAK,EAAE,CAAA;QAC9D,CAAC;QACD,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,8EAA8E;IACtE,WAAW,CAAC,OAAuB;QAC1C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAA;QAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;QACjC,MAAM,MAAM,GAAG,CAAC,IAAe,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAM;YAC1B,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;YAC9B,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,OAAO,CAAC,CAAA;YAC1E,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACvE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACjB,OAAM;YACP,CAAC;YACD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;YACnD,KAAK,MAAM,CAAC,IAAI,SAAS;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;YAC9C,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACxB,CAAC,CAAA;QACD,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;YAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YAC/C,IACC,IAAI;gBACJ,CAAC,IAAI,CAAC,OAAO;gBACb,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;gBAE1E,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QAC9D,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAwB,CAAA;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC;gBAAE,MAAM,IAAI,OAAO,EAAE,CAAA;YACxC,iFAAiF;YACjF,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;QACtD,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,OAAO;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACtE,OAAO,GAAG,CAAA;IACX,CAAC;IAED;;;;OAIG;IACK,KAAK,CACZ,IAAe,EACf,SAA4C,EAC5C,GAAQ;QAER,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAA;QAC/E,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAA;QACvD,kEAAkE;QAClE,0EAA0E;QAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAC1C,MAAM,UAAU,GAAG,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxD,MAAM,aAAa,GAClB,6BAA6B,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,gCAAgC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACtF,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC,CAAA;QACf,MAAM,GAAG,GAAe,EAAE,CAAA;QAC1B,MAAM,OAAO,GAAG,CAAC,IAAsB,EAAE,IAAY,EAAE,EAAE;YACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;YACrC,KAAK,MAAM,KAAK,IAAI,IAAI;gBAAE,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACxE,CAAC,CAAA;QACD,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAW,CAAA;YAC5B,IACC,CAAC,KAAK,GAAG;gBACT,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC;oBACvB,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,aAAa,CAAC,CAAC,EAClE,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACb,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC,CAAC;oBAAE,CAAC,EAAE,CAAA;gBACzE,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBAC5C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;oBACjD,CAAC,GAAG,CAAC,CAAA;oBACL,SAAQ;gBACT,CAAC;YACF,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBACf,MAAM,MAAM,GAAG,8DAA8D,CAAC,IAAI,CACjF,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CACvB,CAAA;gBACD,IAAI,MAAM,EAAE,CAAC;oBACZ,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAW,CAAA;oBAC/C,MAAM,YAAY,GACjB,IAAI,KAAK,MAAM;wBACd,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;wBAC7C,CAAC,CAAC,IAAI,KAAK,YAAY;4BACtB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE;4BACzC,CAAC,CAAC,IAAI,KAAK,KAAK;gCACf,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;gCAC5C,CAAC,CAAC,IAAI,KAAK,cAAc;oCACxB,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oCACnC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAA;oBACvC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;oBACrB,yDAAyD;oBACzD,kCAAkC;oBAClC,IAAI,YAAY,CAAC,OAAO;wBAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;oBAC/C,MAAM,IAAI,GAAa,EAAE,CAAA;oBACzB,KAAK,MAAM,KAAK,IAAI,IAAI;wBAAE,KAAK,MAAM,CAAC,IAAI,YAAY,CAAC,MAAM;4BAAE,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;oBACnF,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,gBAAgB;wBAAE,MAAM,IAAI,OAAO,EAAE,CAAA;oBACpE,IAAI,GAAG,IAAI,CAAA;oBACX,SAAQ;gBACT,CAAC;gBACD,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC1B,OAAO,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;oBACzB,OAAO,GAAG,CAAA;gBACX,CAAC;YACF,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBAC5B,OAAO,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;gBACzB,OAAO,GAAG,CAAA;YACX,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;gBACzC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;gBAClB,OAAO,GAAG,CAAA;YACX,CAAC;YACD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;YACrC,CAAC,EAAE,CAAA;QACJ,CAAC;QACD,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;QAC5B,OAAO,GAAG,CAAA;IACX,CAAC;IAEO,MAAM,CAAC,IAAY;QAC1B,OAAO,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAA;IACxF,CAAC;IAED,mFAAmF;IAC3E,aAAa,CAAC,GAAW;QAChC,MAAM,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,IAAI,CAAA;QAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1D,CAAC;IAED,0DAA0D;IAClD,SAAS,CAChB,IAAe,EACf,SAA4C,EAC5C,GAAQ,EACR,WAAoB;QAEpB,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,CAAC;YAAE,OAAO,YAAY,CAAA;QAC9E,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,CAAC;YAAE,OAAO,sBAAsB,CAAA;QAC3F,OAAO,IAAI,CAAA;IACZ,CAAC;IAED;;;;;;OAMG;IACK,gBAAgB,CACvB,IAAe,EACf,SAA4C,EAC5C,GAAQ,EACR,WAAoB;QAEpB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YAC/C,MAAM,IAAI,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC7C,oEAAoE;YACpE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1D,oEAAoE;YACpE,+DAA+D;YAC/D,mEAAmE;YACnE,6DAA6D;YAC7D,MAAM,KAAK,GAAG,CAAC,mCAAmC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;YACrE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,KAAK,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;oBAC1B,IAAI,YAAY,CAAC,IAAI,CAAC;wBAAE,OAAO,IAAI,CAAA;oBACnC,SAAQ;gBACT,CAAC;gBACD,MAAM,EAAE,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;gBAC/E,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBAC7B,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;oBACtB,IAAI,YAAY,CAAC,IAAI,CAAC;wBAAE,OAAO,IAAI,CAAA;oBACnC,IAAI,WAAW,IAAI,kBAAkB,CAAC,IAAI,CAAC;wBAAE,OAAO,IAAI,CAAA;oBACxD,SAAQ;gBACT,CAAC;gBACD,2EAA2E;gBAC3E,IAAI,cAAc,CAAC,EAAE,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;oBAAE,OAAO,IAAI,CAAA;YACxD,CAAC;YACD,sEAAsE;YACtE,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,IAAI,uBAAuB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAA;QAC9F,CAAC;QACD,OAAO,KAAK,CAAA;IACb,CAAC;IAEO,aAAa,CACpB,IAAe,EACf,SAA4C,EAC5C,GAAQ,EACR,WAAoB;QAEpB,IAAI,IAAI,CAAC,OAAO,IAAI,oCAAoC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QACtF,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC;YACzD,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAA;YAC1B,wDAAwD;YACxD,IAAI,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA;YAC1D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAA;YACjD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;gBAC/D,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBAC7B,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;wBAAE,OAAO,IAAI,CAAA;oBAClC,gEAAgE;oBAChE,sDAAsD;oBACtD,IACC,WAAW;wBACX,IAAI,KAAK,GAAG;wBACZ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;wBAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG;wBAE9B,OAAO,IAAI,CAAA;oBACZ,SAAQ;gBACT,CAAC;gBACD,mEAAmE;gBACnE,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBACpC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;gBACtC,MAAM,GAAG,GACR,KAAK,GAAG,CAAC;oBACR,CAAC,CAAC,IAAI,KAAK,EAAE;wBACZ,CAAC,CAAC,IAAI;wBACN,CAAC,CAAC,IAAI;oBACP,CAAC,CAAC,IAAI,KAAK,EAAE;wBACZ,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;wBAC7C,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAA;gBAC1C,IAAI,GAAG,KAAK,IAAI;oBAAE,SAAQ;gBAC1B,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAA;gBACjC,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;gBACpC,IAAI,IAAI,KAAK,IAAI;oBAAE,SAAQ;gBAC3B,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;oBACpB,4DAA4D;oBAC5D,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;wBAAE,SAAQ;oBAC9D,OAAO,IAAI,CAAA;gBACZ,CAAC;gBACD,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;oBAAE,OAAO,IAAI,CAAA;YAC1C,CAAC;YACD,IACC,QAAQ,CAAC,IAAI,KAAK,KAAK;gBACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAErC,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,KAAK,CAAA;IACb,CAAC;CACD;AAED,oFAAoF;AACpF,SAAS,aAAa,CACrB,IAAe;IAEf,yEAAyE;IACzE,aAAa;IACb,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,iCAAiC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1D,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAC3D,OAAO;QACN,IAAI,EAAE,KAAK,CAAC,CAAC,CAAW;QACxB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;QACxB,IAAI,EAAE;YACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACxC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB;KACD,CAAA;AACF,CAAC;AAED,6FAA6F;AAC7F,SAAS,YAAY,CAAC,QAAkC;IACvD,OAAO;QACN,MAAM,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;QACrD,OAAO,EAAE,QAAQ,EAAE,OAAO,IAAI,KAAK;KACnC,CAAA;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,MAAM,QAAQ,GAAG,KAAK;SACpB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;SAC1B,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IACtB,KAAK,MAAM,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC;QACtC,IAAI,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAA;IACrE,OAAO,KAAK,CAAA;AACb,CAAC;AAED,iEAAiE;AACjE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACzB,QAAQ;IACR,SAAS;IACT,SAAS;IACT,OAAO;IACP,UAAU;IACV,KAAK;IACL,KAAK;IACL,UAAU;CACV,CAAC,CAAA;AAEF,2EAA2E;AAC3E,SAAS,WAAW,CAAC,WAA6B;IACjD,OAAO,WAAW,CAAC,QAAQ,KAAK,IAAI,IAAI,WAAW,CAAC,QAAQ,KAAK,KAAK,CAAA;AACvE,CAAC;AAED;;;;;GAKG;AACH,MAAM,WAAW;IACC,IAAI,CAAa;IAC1B,OAAO,GAAG,KAAK,CAAA;IAEvB,YAAY,OAA0B;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAA;IAC7B,CAAC;IAED,oEAAoE;IACpE,OAAO;QACN,OAAO,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,OAAqB,EAAE,KAAsC,EAAE,QAAgB;QACpF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;QACtD,IAAI,EAAE,GAAG,CAAC,CAAA;QACV,OACC,EAAE,GAAG,KAAK,CAAC,MAAM;YACjB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,OAAO;YACnB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;YAEvD,EAAE,EAAE,CAAA;QACL,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA;QACtB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO;YAAE,OAAM;QACjC,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,OAAM;QACP,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO;YAAE,OAAM;QACzD,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;QACtF,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;YACrD,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACvB,OAAM;QACP,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACjF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,OAAM;QACP,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;gBAC7B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;gBACnB,SAAQ;YACT,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAC7D,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;oBACnB,OAAM;gBACP,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;YACzC,CAAC;QACF,CAAC;IACF,CAAC;CACD;AAED,8DAA8D;AAC9D,MAAM,cAAc,GAAG,CAAC,CAAA;AAExB,sEAAsE;AACtE,SAAS,QAAQ,CAAC,QAAmC;IACpD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAChC,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ;YACrC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;gBAC7D,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;oBAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC1C,CAAC;QACF,KAAK,MAAM,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;YAChD,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS;gBAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YAC7D,IAAI,WAAW,CAAC,QAAQ,KAAK,KAAK;gBAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,CAAC;IACF,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,CAAA;AAChB,CAAC;AAED,0EAA0E;AAC1E,SAAS,aAAa,CAAC,OAAqB;IAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC/C,IAAI,IAAI,EAAE,OAAO;QAAE,OAAO,IAAI,CAAA;IAC9B,OAAO,cAAc,CAAC,OAAO,CAAC,CAAA;AAC/B,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which folders a job may run in.
|
|
3
|
+
*
|
|
4
|
+
* Refused: the file system root, the operator's home directory itself, a
|
|
5
|
+
* folder that contains `NAMZU_HOME` (a run there could rewrite its own job,
|
|
6
|
+
* its history and the credentials beside them), and anything inside
|
|
7
|
+
* `NAMZU_HOME`. The folder is canonicalised once, here; every later check
|
|
8
|
+
* compares against that canonical path.
|
|
9
|
+
*/
|
|
10
|
+
export type FolderCheck = {
|
|
11
|
+
readonly ok: true;
|
|
12
|
+
readonly canonical: string;
|
|
13
|
+
} | {
|
|
14
|
+
readonly ok: false;
|
|
15
|
+
readonly reason: string;
|
|
16
|
+
};
|
|
17
|
+
export declare function checkJobFolder(folder: string, options: {
|
|
18
|
+
readonly namzuHome: string;
|
|
19
|
+
readonly osHome?: string;
|
|
20
|
+
}): FolderCheck;
|
|
21
|
+
/**
|
|
22
|
+
* Whether this process can list the folder. On macOS a LaunchAgent reading
|
|
23
|
+
* `~/Documents`, `~/Desktop` or `~/Downloads` meets a privacy prompt nobody
|
|
24
|
+
* sees, and the read fails; saying so beats a run that finds nothing.
|
|
25
|
+
*/
|
|
26
|
+
export declare function folderReadable(folder: string): {
|
|
27
|
+
ok: true;
|
|
28
|
+
} | {
|
|
29
|
+
ok: false;
|
|
30
|
+
reason: string;
|
|
31
|
+
};
|
|
32
|
+
/** macOS folders a LaunchAgent cannot read without a privacy grant. */
|
|
33
|
+
export declare function isPrivacyProtectedFolder(folder: string, osHome?: string): boolean;
|
|
34
|
+
//# sourceMappingURL=folder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"folder.d.ts","sourceRoot":"","sources":["../../src/schedule/folder.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAsBH,MAAM,MAAM,WAAW,GACpB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAElD,wBAAgB,cAAc,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAC/D,WAAW,CAgCb;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAY3F;AAED,uEAAuE;AACvE,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,SAAY,GAAG,OAAO,CAIpF"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which folders a job may run in.
|
|
3
|
+
*
|
|
4
|
+
* Refused: the file system root, the operator's home directory itself, a
|
|
5
|
+
* folder that contains `NAMZU_HOME` (a run there could rewrite its own job,
|
|
6
|
+
* its history and the credentials beside them), and anything inside
|
|
7
|
+
* `NAMZU_HOME`. The folder is canonicalised once, here; every later check
|
|
8
|
+
* compares against that canonical path.
|
|
9
|
+
*/
|
|
10
|
+
import { readdirSync, realpathSync, statSync } from 'node:fs';
|
|
11
|
+
import { homedir } from 'node:os';
|
|
12
|
+
import { parse, relative, resolve, sep } from 'node:path';
|
|
13
|
+
function isWithinOrSame(parent, child) {
|
|
14
|
+
const rel = relative(parent, child);
|
|
15
|
+
return (rel === '' ||
|
|
16
|
+
(!rel.startsWith('..') && !rel.startsWith(sep) && rel !== '..' && !/^[A-Za-z]:/.test(rel)));
|
|
17
|
+
}
|
|
18
|
+
function canonical(path) {
|
|
19
|
+
try {
|
|
20
|
+
return realpathSync(path);
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
return resolve(path);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
export function checkJobFolder(folder, options) {
|
|
27
|
+
let real;
|
|
28
|
+
try {
|
|
29
|
+
real = realpathSync(resolve(folder));
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return { ok: false, reason: `the folder ${folder} does not exist` };
|
|
33
|
+
}
|
|
34
|
+
try {
|
|
35
|
+
if (!statSync(real).isDirectory())
|
|
36
|
+
return { ok: false, reason: `${real} is not a directory` };
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
return { ok: false, reason: `${real} cannot be read` };
|
|
40
|
+
}
|
|
41
|
+
const namzuHome = canonical(options.namzuHome);
|
|
42
|
+
const osHome = canonical(options.osHome ?? homedir());
|
|
43
|
+
if (real === parse(real).root)
|
|
44
|
+
return { ok: false, reason: 'a job cannot run in the file system root' };
|
|
45
|
+
if (real === osHome) {
|
|
46
|
+
return {
|
|
47
|
+
ok: false,
|
|
48
|
+
reason: `a job cannot run in your home directory itself (${real}); pick the project folder`,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
if (isWithinOrSame(real, namzuHome)) {
|
|
52
|
+
return {
|
|
53
|
+
ok: false,
|
|
54
|
+
reason: `${real} contains NAMZU_HOME (${namzuHome}); a run there could rewrite its own job`,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
if (isWithinOrSame(namzuHome, real)) {
|
|
58
|
+
return { ok: false, reason: `${real} is inside NAMZU_HOME (${namzuHome})` };
|
|
59
|
+
}
|
|
60
|
+
return { ok: true, canonical: real };
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Whether this process can list the folder. On macOS a LaunchAgent reading
|
|
64
|
+
* `~/Documents`, `~/Desktop` or `~/Downloads` meets a privacy prompt nobody
|
|
65
|
+
* sees, and the read fails; saying so beats a run that finds nothing.
|
|
66
|
+
*/
|
|
67
|
+
export function folderReadable(folder) {
|
|
68
|
+
try {
|
|
69
|
+
readdirSync(folder);
|
|
70
|
+
return { ok: true };
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
const code = error.code;
|
|
74
|
+
const tcc = process.platform === 'darwin' && /\/(Documents|Desktop|Downloads)(\/|$)/.test(folder)
|
|
75
|
+
? ' — macOS privacy protection may be blocking the scheduler; grant it Files and Folders access, or move the project out of Documents, Desktop or Downloads'
|
|
76
|
+
: '';
|
|
77
|
+
return { ok: false, reason: `${folder} cannot be listed (${code ?? 'error'})${tcc}` };
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/** macOS folders a LaunchAgent cannot read without a privacy grant. */
|
|
81
|
+
export function isPrivacyProtectedFolder(folder, osHome = homedir()) {
|
|
82
|
+
return ['Documents', 'Desktop', 'Downloads'].some((name) => isWithinOrSame(resolve(osHome, name), folder));
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=folder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"folder.js","sourceRoot":"","sources":["../../src/schedule/folder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where the scheduler keeps its files: `NAMZU_HOME/schedule/`.
|
|
3
|
+
*
|
|
4
|
+
* ```
|
|
5
|
+
* schedule/
|
|
6
|
+
* ├── jobs/<job-id>.json definition (operator-owned, CAS on revision)
|
|
7
|
+
* ├── state/<job-id>.json daemon-owned mutable state
|
|
8
|
+
* ├── claims/<job-id>/<key>.json one per occurrence ever started, published with link
|
|
9
|
+
* ├── history/<job-id>.jsonl append-only run, skip, missed and job records
|
|
10
|
+
* ├── runs/<job-id>/<run-id>.json result a fire child writes
|
|
11
|
+
* ├── runs/<job-id>/<run-id>.log the fire child's stdout and stderr
|
|
12
|
+
* ├── daemon/lease.<fence>.json single-owner lease (link-published); lease.json is a view
|
|
13
|
+
* ├── daemon/endpoint.json loopback port + token (0600)
|
|
14
|
+
* ├── daemon/heartbeat.json { at, pid, epoch, version, standby }
|
|
15
|
+
* ├── daemon/log/daemon-YYYY-MM-DD.jsonl
|
|
16
|
+
* ├── daemon.env optional KEY=value lines for fire children (0600)
|
|
17
|
+
* ├── service.json what `schedule install` created
|
|
18
|
+
* └── seen.json when the TUI last summarised
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* Session logs of runs live where every session lives, under
|
|
22
|
+
* `projects/<slug>/` for the job's folder, so `/resume` there lists them.
|
|
23
|
+
*/
|
|
24
|
+
export interface SchedulePaths {
|
|
25
|
+
readonly home: string;
|
|
26
|
+
readonly root: string;
|
|
27
|
+
readonly jobs: string;
|
|
28
|
+
readonly state: string;
|
|
29
|
+
readonly claims: string;
|
|
30
|
+
readonly history: string;
|
|
31
|
+
readonly runs: string;
|
|
32
|
+
readonly daemon: string;
|
|
33
|
+
readonly daemonLog: string;
|
|
34
|
+
readonly endpoint: string;
|
|
35
|
+
readonly heartbeat: string;
|
|
36
|
+
readonly service: string;
|
|
37
|
+
readonly seen: string;
|
|
38
|
+
readonly daemonEnv: string;
|
|
39
|
+
job(id: string): string;
|
|
40
|
+
stateOf(id: string): string;
|
|
41
|
+
claimsOf(id: string): string;
|
|
42
|
+
claim(id: string, key: string): string;
|
|
43
|
+
historyOf(id: string): string;
|
|
44
|
+
runsOf(id: string): string;
|
|
45
|
+
runResult(id: string, runId: string): string;
|
|
46
|
+
runLog(id: string, runId: string): string;
|
|
47
|
+
}
|
|
48
|
+
export declare function schedulePaths(home: string): SchedulePaths;
|
|
49
|
+
//# sourceMappingURL=paths.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/schedule/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,MAAM,WAAW,aAAa;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IAC5B,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;IACtC,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IAC7B,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IAC5C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;CACzC;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CA2BzD"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where the scheduler keeps its files: `NAMZU_HOME/schedule/`.
|
|
3
|
+
*
|
|
4
|
+
* ```
|
|
5
|
+
* schedule/
|
|
6
|
+
* ├── jobs/<job-id>.json definition (operator-owned, CAS on revision)
|
|
7
|
+
* ├── state/<job-id>.json daemon-owned mutable state
|
|
8
|
+
* ├── claims/<job-id>/<key>.json one per occurrence ever started, published with link
|
|
9
|
+
* ├── history/<job-id>.jsonl append-only run, skip, missed and job records
|
|
10
|
+
* ├── runs/<job-id>/<run-id>.json result a fire child writes
|
|
11
|
+
* ├── runs/<job-id>/<run-id>.log the fire child's stdout and stderr
|
|
12
|
+
* ├── daemon/lease.<fence>.json single-owner lease (link-published); lease.json is a view
|
|
13
|
+
* ├── daemon/endpoint.json loopback port + token (0600)
|
|
14
|
+
* ├── daemon/heartbeat.json { at, pid, epoch, version, standby }
|
|
15
|
+
* ├── daemon/log/daemon-YYYY-MM-DD.jsonl
|
|
16
|
+
* ├── daemon.env optional KEY=value lines for fire children (0600)
|
|
17
|
+
* ├── service.json what `schedule install` created
|
|
18
|
+
* └── seen.json when the TUI last summarised
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* Session logs of runs live where every session lives, under
|
|
22
|
+
* `projects/<slug>/` for the job's folder, so `/resume` there lists them.
|
|
23
|
+
*/
|
|
24
|
+
import { join } from 'node:path';
|
|
25
|
+
export function schedulePaths(home) {
|
|
26
|
+
const root = join(home, 'schedule');
|
|
27
|
+
const daemon = join(root, 'daemon');
|
|
28
|
+
return {
|
|
29
|
+
home,
|
|
30
|
+
root,
|
|
31
|
+
jobs: join(root, 'jobs'),
|
|
32
|
+
state: join(root, 'state'),
|
|
33
|
+
claims: join(root, 'claims'),
|
|
34
|
+
history: join(root, 'history'),
|
|
35
|
+
runs: join(root, 'runs'),
|
|
36
|
+
daemon,
|
|
37
|
+
daemonLog: join(daemon, 'log'),
|
|
38
|
+
endpoint: join(daemon, 'endpoint.json'),
|
|
39
|
+
heartbeat: join(daemon, 'heartbeat.json'),
|
|
40
|
+
service: join(root, 'service.json'),
|
|
41
|
+
seen: join(root, 'seen.json'),
|
|
42
|
+
daemonEnv: join(root, 'daemon.env'),
|
|
43
|
+
job: (id) => join(root, 'jobs', `${id}.json`),
|
|
44
|
+
stateOf: (id) => join(root, 'state', `${id}.json`),
|
|
45
|
+
claimsOf: (id) => join(root, 'claims', id),
|
|
46
|
+
claim: (id, key) => join(root, 'claims', id, `${key}.json`),
|
|
47
|
+
historyOf: (id) => join(root, 'history', `${id}.jsonl`),
|
|
48
|
+
runsOf: (id) => join(root, 'runs', id),
|
|
49
|
+
runResult: (id, runId) => join(root, 'runs', id, `${runId}.json`),
|
|
50
|
+
runLog: (id, runId) => join(root, 'runs', id, `${runId}.log`),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../src/schedule/paths.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AA2BhC,MAAM,UAAU,aAAa,CAAC,IAAY;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACnC,OAAO;QACN,IAAI;QACJ,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;QACxB,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;QAC1B,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;QAC5B,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC;QAC9B,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;QACxB,MAAM;QACN,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC;QAC9B,QAAQ,EAAE,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC;QACvC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC;QACzC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC;QACnC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;QAC7B,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC;QACnC,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC;QAC7C,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC;QAClD,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC;QAC1C,KAAK,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC;QAC3D,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC;QACvD,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;QACtC,SAAS,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,OAAO,CAAC;QACjE,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,MAAM,CAAC;KAC7D,CAAA;AACF,CAAC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a scheduled run may do, compiled to the kernel's rules.
|
|
3
|
+
*
|
|
4
|
+
* Order is the meaning (first match wins), and it is:
|
|
5
|
+
*
|
|
6
|
+
* 1. the kernel's dangerous-command floor (`gateFor` puts it first; it DENIES,
|
|
7
|
+
* it never parks — an operator cannot approve `rm -rf /` later);
|
|
8
|
+
* 2. the scheduled-run floor (`floor.ts`, one `predicate` rule): no command
|
|
9
|
+
* that stops, disables or removes the scheduler service, no `schedule`
|
|
10
|
+
* subcommand but a read-only one, and nothing that resolves into
|
|
11
|
+
* `NAMZU_HOME` (a run cannot rewrite its own job, its history, the
|
|
12
|
+
* daemon's endpoint token or the credentials beside them). A command line
|
|
13
|
+
* is decided on the words bash will pass, as the SDK's lexer reads them;
|
|
14
|
+
* 3. every `deny` any config file wrote — user, project, managed — each file
|
|
15
|
+
* read on its own, so a project's allow cannot hide a user's deny;
|
|
16
|
+
* 4. the job's own rules. ALLOWS COME ONLY FROM HERE: no config file can widen
|
|
17
|
+
* a job the operator confirmed;
|
|
18
|
+
* 5. `unmatched`, as the review mode: `park` → `prompt` with every batch held
|
|
19
|
+
* for the operator, `deny` → `strict`, `allow` → `auto` (a path outside the
|
|
20
|
+
* roots and a sandbox escape still hold).
|
|
21
|
+
*
|
|
22
|
+
* The scheduled-run floor reads a command line the way bash does (see
|
|
23
|
+
* `floor.ts`), but it reads a line, not the programs it starts: a script that
|
|
24
|
+
* builds the command from its own data is beyond it. The controls that do not
|
|
25
|
+
* depend on reading are elsewhere: a job folder may not contain `NAMZU_HOME`,
|
|
26
|
+
* and a job file edited behind the CLI's back is held until someone confirms
|
|
27
|
+
* it.
|
|
28
|
+
*/
|
|
29
|
+
import { type AuthorizationRule, type ScheduleBrowserGrant } from '@namzu/sdk';
|
|
30
|
+
import type { PermissionLayer } from '../config/load.js';
|
|
31
|
+
import type { PermissionMode } from '../permissions/mode.js';
|
|
32
|
+
import { type PermissionsConfig } from '../permissions/rules.js';
|
|
33
|
+
import type { SchedulePermissionSet } from './types.js';
|
|
34
|
+
export type PresetName = 'read-only' | 'edit-in-folder';
|
|
35
|
+
/**
|
|
36
|
+
* The presets, expanded at creation and stored verbatim, so a later change to
|
|
37
|
+
* what a preset means never changes an existing job. Neither reaches the
|
|
38
|
+
* network: web access is opt-in, rule by rule.
|
|
39
|
+
*/
|
|
40
|
+
export declare const PRESETS: Readonly<Record<PresetName, {
|
|
41
|
+
readonly rules: PermissionsConfig;
|
|
42
|
+
readonly unmatched: 'park' | 'deny';
|
|
43
|
+
}>>;
|
|
44
|
+
export declare function isPresetName(value: unknown): value is PresetName;
|
|
45
|
+
export interface PermissionInput {
|
|
46
|
+
readonly preset?: PresetName;
|
|
47
|
+
readonly rules?: PermissionsConfig;
|
|
48
|
+
readonly unmatched?: 'park' | 'deny' | 'allow';
|
|
49
|
+
readonly execution?: 'host' | 'sandbox';
|
|
50
|
+
readonly additionalDirectories?: readonly string[];
|
|
51
|
+
/** A browser grant as written: site keys in any spelling, levels unchecked. */
|
|
52
|
+
readonly browser?: {
|
|
53
|
+
readonly profile: string;
|
|
54
|
+
readonly sites: Readonly<Record<string, string>>;
|
|
55
|
+
readonly headed?: boolean;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* A browser grant as a job stores it: a profile name, at least one site,
|
|
60
|
+
* each key canonical and none of them `*`, each level `read`, `ask` or
|
|
61
|
+
* `act`. `ask` parks the call for the operator, so it needs
|
|
62
|
+
* `unmatched: park`: under `deny` every ask would be refused and under
|
|
63
|
+
* `allow` approved without anyone seeing it.
|
|
64
|
+
*/
|
|
65
|
+
export declare function checkBrowserGrant(input: NonNullable<PermissionInput['browser']>, unmatched: SchedulePermissionSet['unmatched']): ScheduleBrowserGrant;
|
|
66
|
+
/**
|
|
67
|
+
* A preset and/or explicit rules, into the set a job stores. Explicit rules
|
|
68
|
+
* override the preset's per tool. `unmatched` must come from somewhere — the
|
|
69
|
+
* preset or the caller — and `execution` defaults to `host` (the CLI's
|
|
70
|
+
* boundary) but is always written.
|
|
71
|
+
*/
|
|
72
|
+
export declare function expandPermissions(input: PermissionInput): SchedulePermissionSet;
|
|
73
|
+
/** Whether the set lets a run reach the network: a web tool not denied, or a browser grant. */
|
|
74
|
+
export declare function allowsNetwork(set: SchedulePermissionSet): boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Whether a run under this set can run a shell command: a `bash` rule that is
|
|
77
|
+
* not `deny`, or, with no `bash` rule, an `unmatched` that is not `deny`.
|
|
78
|
+
*/
|
|
79
|
+
export declare function allowsCommands(set: SchedulePermissionSet): boolean;
|
|
80
|
+
/** Whether a run under this set can change the folder (write, edit, bash, or an unmatched call). */
|
|
81
|
+
export declare function allowsWrites(set: SchedulePermissionSet): boolean;
|
|
82
|
+
/** Only the `deny` entries of one config file's table. */
|
|
83
|
+
export declare function denialsOf(table: PermissionsConfig): PermissionsConfig;
|
|
84
|
+
/**
|
|
85
|
+
* Rules that keep a scheduled run away from its own scheduler and its own
|
|
86
|
+
* records: one `predicate` rule, decided on the SDK's reading of each command
|
|
87
|
+
* line (see `floor.ts`). `folders` is where the run's relative paths start.
|
|
88
|
+
*/
|
|
89
|
+
export declare function scheduledRunFloor(namzuHome: string, userHome?: string, folders?: readonly string[]): AuthorizationRule[];
|
|
90
|
+
export interface CompiledJobPolicy {
|
|
91
|
+
readonly rules: readonly AuthorizationRule[];
|
|
92
|
+
/** Rule lines that did not compile, from the job or a config file. A job one is refused at creation. */
|
|
93
|
+
readonly diagnostics: readonly string[];
|
|
94
|
+
readonly mode: PermissionMode;
|
|
95
|
+
readonly network: boolean;
|
|
96
|
+
readonly writes: boolean;
|
|
97
|
+
/** The effective policy in words, one line per rule, for a confirmation or `show`. */
|
|
98
|
+
readonly lines: readonly string[];
|
|
99
|
+
}
|
|
100
|
+
/** Compile a job's permission set against every config file's denies. */
|
|
101
|
+
export declare function compileJobPolicy(set: SchedulePermissionSet, options: {
|
|
102
|
+
readonly layers: readonly PermissionLayer[];
|
|
103
|
+
readonly namzuHome: string;
|
|
104
|
+
/** The job's folder, where the run's relative paths start. */
|
|
105
|
+
readonly folder?: {
|
|
106
|
+
readonly path: string;
|
|
107
|
+
readonly canonical: string;
|
|
108
|
+
};
|
|
109
|
+
}): CompiledJobPolicy;
|
|
110
|
+
/**
|
|
111
|
+
* A job's browser grant as gate rules: the sites it lists at their level,
|
|
112
|
+
* any site a config file denies denied (a grant cannot reopen it), every
|
|
113
|
+
* other site denied, looking at the held page allowed, and `back`,
|
|
114
|
+
* `forward` and `reload` allowed (the host still checks where they land).
|
|
115
|
+
* What none of these decides falls to the trailing deny.
|
|
116
|
+
*/
|
|
117
|
+
export declare function compileBrowserGrant(grant: ScheduleBrowserGrant, denies?: readonly {
|
|
118
|
+
readonly site: string;
|
|
119
|
+
}[]): {
|
|
120
|
+
readonly rules: AuthorizationRule[];
|
|
121
|
+
readonly diagnostics: readonly string[];
|
|
122
|
+
};
|
|
123
|
+
/** The grant in words, one line each, for a confirmation and `schedule show`. */
|
|
124
|
+
export declare function browserGrantLines(grant: ScheduleBrowserGrant, denies?: readonly {
|
|
125
|
+
readonly site: string;
|
|
126
|
+
readonly path: string;
|
|
127
|
+
}[]): string[];
|
|
128
|
+
/**
|
|
129
|
+
* Tools a scheduled run under this policy can never use, so their schemas
|
|
130
|
+
* need not be sent with every model call. In a browser job's run, `bash`,
|
|
131
|
+
* `edit`, `write`, the web tools and the agent and memory tools were about
|
|
132
|
+
* half of each request, sent six times a run and refused every time they
|
|
133
|
+
* could have been called.
|
|
134
|
+
*
|
|
135
|
+
* A tool is withheld when a `deny_by_name` names it and no rule before it
|
|
136
|
+
* could let it through; under `unmatched: deny`, also the delegation and
|
|
137
|
+
* memory-writing tools no rule names; and the background-job tools once
|
|
138
|
+
* `bash` is withheld.
|
|
139
|
+
*/
|
|
140
|
+
export declare function withheldTools(set: SchedulePermissionSet, policy: Pick<CompiledJobPolicy, 'rules'>): string[];
|
|
141
|
+
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/schedule/policy.ts"],"names":[],"mappings":"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"}
|