patchwork-os 0.2.0-beta.3 → 0.2.0-beta.5
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/README.md +95 -25
- package/dist/activityLog.js +2 -1
- package/dist/activityLog.js.map +1 -1
- package/dist/approvalHttp.js +25 -8
- package/dist/approvalHttp.js.map +1 -1
- package/dist/approvalQueue.d.ts +44 -1
- package/dist/approvalQueue.js +117 -0
- package/dist/approvalQueue.js.map +1 -1
- package/dist/automation.d.ts +3 -3
- package/dist/automation.js +12 -5
- package/dist/automation.js.map +1 -1
- package/dist/bridge.js +29 -1
- package/dist/bridge.js.map +1 -1
- package/dist/bridgeLockDiscovery.js +2 -1
- package/dist/bridgeLockDiscovery.js.map +1 -1
- package/dist/claudeOrchestrator.js +27 -10
- package/dist/claudeOrchestrator.js.map +1 -1
- package/dist/commands/dashboard.js +8 -1
- package/dist/commands/dashboard.js.map +1 -1
- package/dist/commands/install.js +3 -0
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/patchworkInit.js +4 -1
- package/dist/commands/patchworkInit.js.map +1 -1
- package/dist/commitIssueLinkLog.d.ts +16 -0
- package/dist/commitIssueLinkLog.js +87 -4
- package/dist/commitIssueLinkLog.js.map +1 -1
- package/dist/config.d.ts +20 -1
- package/dist/config.js +42 -4
- package/dist/config.js.map +1 -1
- package/dist/connectorRoutes.js +1 -1
- package/dist/connectorRoutes.js.map +1 -1
- package/dist/connectors/asana.js +4 -3
- package/dist/connectors/asana.js.map +1 -1
- package/dist/connectors/confluence.js +35 -0
- package/dist/connectors/confluence.js.map +1 -1
- package/dist/connectors/datadog.js +33 -4
- package/dist/connectors/datadog.js.map +1 -1
- package/dist/connectors/discord.js +5 -4
- package/dist/connectors/discord.js.map +1 -1
- package/dist/connectors/gitlab.js +7 -1
- package/dist/connectors/gitlab.js.map +1 -1
- package/dist/connectors/mcpOAuth.js +71 -6
- package/dist/connectors/mcpOAuth.js.map +1 -1
- package/dist/connectors/slack.d.ts +1 -1
- package/dist/connectors/slack.js +56 -4
- package/dist/connectors/slack.js.map +1 -1
- package/dist/connectors/tokenStorage.js +10 -4
- package/dist/connectors/tokenStorage.js.map +1 -1
- package/dist/decisionTraceLog.d.ts +28 -0
- package/dist/decisionTraceLog.js +115 -7
- package/dist/decisionTraceLog.js.map +1 -1
- package/dist/drivers/claude/subprocess.js +22 -3
- package/dist/drivers/claude/subprocess.js.map +1 -1
- package/dist/drivers/gemini/index.js +19 -3
- package/dist/drivers/gemini/index.js.map +1 -1
- package/dist/extensionClient.d.ts +29 -4
- package/dist/extensionClient.js +26 -11
- package/dist/extensionClient.js.map +1 -1
- package/dist/featureFlags.js +18 -32
- package/dist/featureFlags.js.map +1 -1
- package/dist/fileLockSync.d.ts +67 -0
- package/dist/fileLockSync.js +126 -0
- package/dist/fileLockSync.js.map +1 -0
- package/dist/fp/automationInterpreter.d.ts +6 -0
- package/dist/fp/automationInterpreter.js +15 -2
- package/dist/fp/automationInterpreter.js.map +1 -1
- package/dist/fp/automationState.d.ts +1 -1
- package/dist/fp/automationState.js +10 -0
- package/dist/fp/automationState.js.map +1 -1
- package/dist/fp/commandDescription.js +7 -1
- package/dist/fp/commandDescription.js.map +1 -1
- package/dist/fsWatchWithFallback.d.ts +36 -0
- package/dist/fsWatchWithFallback.js +127 -0
- package/dist/fsWatchWithFallback.js.map +1 -0
- package/dist/index.js +108 -48
- package/dist/index.js.map +1 -1
- package/dist/installGuard.js +6 -2
- package/dist/installGuard.js.map +1 -1
- package/dist/lockfile.js +27 -3
- package/dist/lockfile.js.map +1 -1
- package/dist/patchworkConfig.js +8 -3
- package/dist/patchworkConfig.js.map +1 -1
- package/dist/pluginLoader.js +10 -1
- package/dist/pluginLoader.js.map +1 -1
- package/dist/pluginWatcher.js +6 -13
- package/dist/pluginWatcher.js.map +1 -1
- package/dist/preToolUseHook.js +3 -2
- package/dist/preToolUseHook.js.map +1 -1
- package/dist/processTree.d.ts +34 -0
- package/dist/processTree.js +105 -0
- package/dist/processTree.js.map +1 -0
- package/dist/prompts.js +3 -3
- package/dist/prompts.js.map +1 -1
- package/dist/recipeOrchestration.js +58 -8
- package/dist/recipeOrchestration.js.map +1 -1
- package/dist/recipeRoutes.d.ts +1 -0
- package/dist/recipeRoutes.js +100 -15
- package/dist/recipeRoutes.js.map +1 -1
- package/dist/recipes/connectorPreflight.js +64 -0
- package/dist/recipes/connectorPreflight.js.map +1 -1
- package/dist/recipes/idempotencyKey.js +3 -4
- package/dist/recipes/idempotencyKey.js.map +1 -1
- package/dist/recipes/installer.js +48 -2
- package/dist/recipes/installer.js.map +1 -1
- package/dist/recipes/parser.js +82 -4
- package/dist/recipes/parser.js.map +1 -1
- package/dist/recipes/scheduler.d.ts +17 -0
- package/dist/recipes/scheduler.js +33 -1
- package/dist/recipes/scheduler.js.map +1 -1
- package/dist/recipes/yamlRunner.d.ts +4 -1
- package/dist/recipes/yamlRunner.js +18 -6
- package/dist/recipes/yamlRunner.js.map +1 -1
- package/dist/resources.js +21 -13
- package/dist/resources.js.map +1 -1
- package/dist/runLog.js +14 -3
- package/dist/runLog.js.map +1 -1
- package/dist/sanitizeParsedJson.d.ts +39 -0
- package/dist/sanitizeParsedJson.js +55 -0
- package/dist/sanitizeParsedJson.js.map +1 -0
- package/dist/server.d.ts +14 -0
- package/dist/server.js +105 -33
- package/dist/server.js.map +1 -1
- package/dist/sessionCheckpoint.d.ts +8 -0
- package/dist/sessionCheckpoint.js +18 -2
- package/dist/sessionCheckpoint.js.map +1 -1
- package/dist/tools/detectUnusedCode.js +9 -7
- package/dist/tools/detectUnusedCode.js.map +1 -1
- package/dist/tools/editText.js +2 -1
- package/dist/tools/editText.js.map +1 -1
- package/dist/tools/fileOperations.js +2 -1
- package/dist/tools/fileOperations.js.map +1 -1
- package/dist/tools/fileWatcher.js +8 -2
- package/dist/tools/fileWatcher.js.map +1 -1
- package/dist/tools/fixAllLintErrors.js +10 -5
- package/dist/tools/fixAllLintErrors.js.map +1 -1
- package/dist/tools/formatDocument.js +10 -5
- package/dist/tools/formatDocument.js.map +1 -1
- package/dist/tools/handoffNote.js +2 -1
- package/dist/tools/handoffNote.js.map +1 -1
- package/dist/tools/headless/lspClient.js +3 -0
- package/dist/tools/headless/lspClient.js.map +1 -1
- package/dist/tools/index.js +0 -6
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/lsp.js +17 -0
- package/dist/tools/lsp.js.map +1 -1
- package/dist/tools/openDiff.js +4 -1
- package/dist/tools/openDiff.js.map +1 -1
- package/dist/tools/openFile.js +4 -1
- package/dist/tools/openFile.js.map +1 -1
- package/dist/tools/organizeImports.js +5 -3
- package/dist/tools/organizeImports.js.map +1 -1
- package/dist/tools/previewEdit.js +7 -2
- package/dist/tools/previewEdit.js.map +1 -1
- package/dist/tools/refactorExtractFunction.js +4 -1
- package/dist/tools/refactorExtractFunction.js.map +1 -1
- package/dist/tools/refactorPreview.js +10 -2
- package/dist/tools/refactorPreview.js.map +1 -1
- package/dist/tools/replaceBlock.js +2 -1
- package/dist/tools/replaceBlock.js.map +1 -1
- package/dist/tools/searchAndReplace.js +2 -1
- package/dist/tools/searchAndReplace.js.map +1 -1
- package/dist/tools/spawnWorkspace.js +15 -7
- package/dist/tools/spawnWorkspace.js.map +1 -1
- package/dist/tools/transaction.js +4 -1
- package/dist/tools/transaction.js.map +1 -1
- package/dist/tools/utils.js +62 -5
- package/dist/tools/utils.js.map +1 -1
- package/dist/transport.d.ts +1 -1
- package/dist/transport.js +18 -4
- package/dist/transport.js.map +1 -1
- package/dist/winShim.d.ts +34 -0
- package/dist/winShim.js +94 -0
- package/dist/winShim.js.map +1 -0
- package/dist/writeFileAtomic.d.ts +23 -0
- package/dist/writeFileAtomic.js +94 -0
- package/dist/writeFileAtomic.js.map +1 -0
- package/package.json +1 -1
- package/scripts/postinstall.mjs +18 -5
- package/scripts/smoke/run-all.mjs +55 -4
- package/scripts/start-all.mjs +60 -1
- package/scripts/start-all.ps1 +209 -209
- package/scripts/start-orchestrator.ps1 +158 -158
- package/dist/tools/ccRoutines.d.ts +0 -221
- package/dist/tools/ccRoutines.js +0 -264
- package/dist/tools/ccRoutines.js.map +0 -1
package/dist/transport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAyB,MAAM,KAAK,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEjE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,kDAAkD;AAClF,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,kBAAkB;AACvD,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,0BAA0B;AACtD,MAAM,uBAAuB,GAAG,GAAG,CAAC,CAAC,6DAA6D;AAClG,MAAM,oBAAoB,GAAG,GAAG,CAAC,CAAC,+EAA+E;AACjH,yEAAyE;AACzE,+EAA+E;AAC/E,4EAA4E;AAC5E,MAAM,wBAAwB,GAAG,MAAM,CAAC,CAAC,QAAQ;AACjD,iDAAiD;AACjD,iGAAiG;AACjG,MAAM,kBAAkB,GAAG,CAAC,YAAY,CAAC,CAAC;AA8D1C,MAAM,OAAO,YAAY;IA2HH;IA1HZ,KAAK,GAAG,IAAI,GAAG,EAGpB,CAAC;IACJ,mGAAmG;IAC3F,mBAAmB,GAAuB,IAAI,CAAC;IACvD,8EAA8E;IACtE,YAAY,GAAkB,IAAI,CAAC;IAE3C,sBAAsB,CAAC,EAAe;QACpC,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;IAChC,CAAC;IAED,eAAe,CAAC,IAAY;QAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC3B,CAAC;IACgB,UAAU,GAAG;QAC5B,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,uBAAuB;QAChC,KAAK,EAAE,EAAE,cAAc,EAAE,eAAe,EAAE;KAC3C,CAAC;IACM,QAAQ,GAAqB,IAAI,CAAC;IACnC,SAAS,GAAG,EAAE,CAAC;IACd,cAAc,GAAoC,IAAI,CAAC;IACvD,mBAAmB,GAAG,IAAI,GAAG,EAAoC,CAAC;IAClE,iBAAiB,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC/D;;;;;;;OAOG;IACK,kBAAkB,GAAG,IAAI,GAAG,EAAmB,CAAC;IACxD,yEAAyE;IACjE,mBAAmB,GAAG,IAAI,GAAG,EAOlC,CAAC;IACI,WAAW,GAAG,KAAK,CAAC;IAC5B,0FAA0F;IAC1F,aAAa,CAAc;IACnB,eAAe,GAAG,CAAC,CAAC;IACpB,SAAS,GAAG,CAAC,CAAC;IACd,UAAU,GAAG,CAAC,CAAC;IACvB;;;;;OAKG;IACK,sBAAsB,GAAG,CAAC,CAAC;IAC3B,UAAU,GAAG,CAAC,CAAC,CAAC,wDAAwD;IAC/D,gBAAgB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/D,iFAAiF;IACzE,YAAY,GAAG,IAAI,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,uDAAuD;IACxG,aAAa,GAAG,CAAC,CAAC,CAAC,8CAA8C;IACzE,sGAAsG;IAC9F,UAAU,GAAG,CAAC,CAAC;IACf,gBAAgB,GAAG,CAAC,CAAC;IAEtB,SAAS,GAAkB,IAAI,CAAC;IACvC,8FAA8F;IACvF,mBAAmB,GAAkB,IAAI,CAAC;IACjD,sGAAsG;IAC9F,YAAY,GAAkB,IAAI,CAAC;IAC3C,qFAAqF;IAC7E,SAAS,GAAgB,IAAI,GAAG,EAAE,CAAC;IAC3C,6FAA6F;IACtF,UAAU,GAA6B,SAAS,CAAC;IAChD,WAAW,GAAuB,IAAI,CAAC;IACvC,sBAAsB,GAA2B,IAAI,CAAC;IAC7C,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,gBAAgB,GAAG,IAAI,GAAG,EAA4B,CAAC;IACvD,gBAAgB,GAAG,IAAI,GAAG,EAA4B,CAAC;IACxE,wGAAwG;IAChG,eAAe,GAAqB,IAAI,CAAC;IACjD,mFAAmF;IAC3E,mBAAmB,GAAqB,IAAI,CAAC;IACrD,iGAAiG;IACzF,SAAS,GAAG,KAAK,CAAC;IAC1B,qEAAqE;IAC7D,aAAa,GAAG,EAAE,CAAC;IAC3B;;;;OAIG;IACK,UAAU,GAA2C;QAC3D,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;KACvB,CAAC;IAEF;;;;OAIG;IACK,YAAY,GAMT,IAAI,CAAC;IAEhB,eAAe,CACb,EAI6D;QAE7D,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IACzB,CAAC;IAED,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAEtC;;;;OAIG;IACH,eAAe,CAAC,KAAoB;QAClC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,KAAkB;QAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,kGAAkG;IAClG,YAAY,CAAC,OAAgB;QAC3B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,kFAAkF;IAClF,gBAAgB,CAAC,KAAa;QAC5B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACH,4BAA4B,CAAC,MAG5B;QACC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;IAC3B,CAAC;IAED,qGAAqG;IAC7F,iBAAiB;QACvB,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3E,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,4EAA4E;IACpE,yBAAyB;QAC/B,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC;YAAE,OAAO;QACpC,MAAM,EAAE,SAAS,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IACpD,CAAC;IAEO,YAAY,CAAC,QAAgB;QACnC,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,uFAAuF;YACvF,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC9C,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACvC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/D,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAgB,CAAC,CAAC;QAC9C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACxC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,4FAA4F;IAC5F,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CACd,QAAgB,EAChB,IAA6B;QAE7B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED;;;;OAIG;IACH,eAAe;QACb,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,yEAAyE;IACzE,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,iBAAiB;QAKf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;YACnB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;YACjC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI;gBACzC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY;aACpC,CAAC;SACH,CAAC,CAAC,CAAC;IACN,CAAC;IAED,uBAAuB,CAAC,EAAiB;QACvC,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC;IACnC,CAAC;IAED,cAAc,CAAC,GAAgB;QAC7B,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,OAAe,EACf,eAAwC,EACxC,SAAS,GAAG,OAAO;QAEnB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEzB,MAAM,EAAE,GAAG,UAAU,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,OAAO,GAAmB;YAC9B,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE,oBAAoB;YAC5B,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE;SACrC,CAAC;QAEF,OAAO,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;oBACxC,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,SAAS,IAAI,CAAC,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,EAAE;gBAC/B,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;oBAClB,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClB,CAAC;gBACD,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;oBACd,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;gBACD,eAAe;aAChB,CAAC,CAAC;YAEH,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC/D,mFAAmF;gBACnF,gFAAgF;gBAChF,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC9C,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBACpC,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,MAAM,CACJ,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAC/D,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CACV,MAAkB,EAClB,OAAoB,EACpB,SAAkB;QAElB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,sBAAsB,MAAM,CAAC,IAAI,uDAAuD,CACzF,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,IAAI,gDAAgD,CACpF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;YAC1B,MAAM;YACN,OAAO;YACP,SAAS,EAAE,SAAS,IAAI,MAAM,CAAC,SAAS;SACzC,CAAC,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,WAAW,CACT,MAAkB,EAClB,OAAoB,EACpB,SAAkB;QAElB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CACb,sBAAsB,MAAM,CAAC,IAAI,uDAAuD,CACzF,CAAC;QACJ,CAAC;QACD,6EAA6E;QAC7E,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE;YAC1B,MAAM;YACN,OAAO;YACP,SAAS,EAAE,SAAS,IAAI,MAAM,CAAC,SAAS;SACzC,CAAC,CAAC;IACL,CAAC;IAED,+EAA+E;IAC/E,cAAc,CAAC,IAAY;QACzB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,uBAAuB,CAAC,MAAc;QACpC,IAAI,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC;QACtB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACxB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACnC,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC;QACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAClC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACnD,OAAO,CAAC,MAAM,CACZ,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAClE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,yEAAyE;QACzE,uEAAuE;QACvE,wEAAwE;QACxE,uEAAuE;QACvE,iEAAiE;QACjE,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,CAAC;YACjD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM;QACJ,6DAA6D;QAC7D,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAC7D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,2DAA2D;QAC3D,KAAK,MAAM,CAAC,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACtD,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC/B,uEAAuE;QACvE,yDAAyD;QACzD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,iFAAiF;QACjF,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACnD,OAAO,CAAC,MAAM,CACZ,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAClE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QACzB,oFAAoF;QACpF,+FAA+F;QAC/F,wEAAwE;QACxE,4FAA4F;QAC5F,0EAA0E;QAC1E,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED,QAAQ;QAQN,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,aAAa,EAAE,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YACnD,SAAS,EAAE,IAAI,CAAC,gBAAgB;SACjC,CAAC;IACJ,CAAC;IAED,kFAAkF;IAClF,sBAAsB;QACpB,IAAI,IAAI,CAAC,eAAe,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;IACrD,CAAC;IAED,qFAAqF;IACrF,mBAAmB,CAAC,GAA6B;QAC/C,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;YACjC,CAAC;QACH,CAAC;QACD,gFAAgF;QAChF,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;QAC5B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAClC,CAAC;IAED,gGAAgG;IAChG,cAAc;QAKZ,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjD,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;YACnB,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;YACjC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU;SAChC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,iFAAiF;IACjF,iBAAiB,CAAC,CAAC,GAAG,EAAE;QACtB,OAAO,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;aACzC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,EAAa;QAClB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,kDAAkD;QAC5E,MAAM,GAAG,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;YACtC,8CAA8C;YAC9C,IAAI,GAAG,KAAK,IAAI,CAAC,UAAU;gBAAE,OAAO;YACpC,IAAI,GAAY,CAAC;YACjB,IAAI,CAAC;gBACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3C,CAAC;YAAC,MAAM,CAAC;gBACP,+DAA+D;gBAC/D,MAAM,QAAQ,CACZ,EAAE,EACF,IAAI,CAAC,SAAS,CAAC;oBACb,OAAO,EAAE,KAAK;oBACd,EAAE,EAAE,IAAI;oBACR,KAAK,EAAE;wBACL,IAAI,EAAE,UAAU,CAAC,WAAW;wBAC5B,OAAO,EAAE,wCAAwC;qBAClD;iBACF,CAAC,EACF,IAAI,CAAC,MAAM,CACZ,CAAC;gBACF,OAAO;YACT,CAAC;YACD,IAAI,CAAC;gBACH,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;oBAC1D,OAAO;gBACT,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACvB,MAAM,QAAQ,CACZ,EAAE,EACF,IAAI,CAAC,SAAS,CAAC;wBACb;4BACE,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,IAAI;4BACR,KAAK,EAAE;gCACL,IAAI,EAAE,UAAU,CAAC,eAAe;gCAChC,OAAO,EAAE,kCAAkC;6BAC5C;yBACF;qBACF,CAAC,EACF,IAAI,CAAC,MAAM,CACZ,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,MAAM,GAAG,GAAG,GAAqB,CAAC;gBAClC,gEAAgE;gBAChE,6EAA6E;gBAC7E,MAAM,UAAU,GAAG,CAAC,CAAU,EAAU,EAAE,CACxC,OAAO,CAAC,KAAK,QAAQ;oBACnB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;oBACjD,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAEhB,uEAAuE;gBACvE,gFAAgF;gBAChF,IACE,CAAC,GAAG,CAAC,MAAM;oBACX,GAAG,CAAC,EAAE,KAAK,SAAS;oBACpB,GAAG,CAAC,EAAE,KAAK,IAAI;oBACf,CAAC,QAAQ,IAAI,GAAG,IAAI,OAAO,IAAI,GAAG,CAAC,EACnC,CAAC;oBACD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACrD,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACxC,MAAM,IAAI,GAAG,GAAsB,CAAC;wBACpC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;4BACf,OAAO,CAAC,MAAM,CACZ,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,sBAAsB,CAAC,CACxD,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,yEAAyE;4BACzE,oEAAoE;4BACpE,sEAAsE;4BACtE,qEAAqE;4BACrE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;4BAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC;4BAChD,MAAM,MAAM,GACV,MAAM,KAAK,IAAI;gCACb,CAAC,CAAC,MAAM;gCACR,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;oCACrB,CAAC,CAAC,OAAO;oCACT,CAAC,CAAC,OAAO,MAAM,CAAC;4BACtB,IAAI,SAAS,GAAkB,IAAI,CAAC;4BACpC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gCAC5C,SAAS,GAAG,+CAA+C,CAAC;4BAC9D,CAAC;iCAAM,IACL,UAAU,KAAK,QAAQ;gCACvB,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EACrD,CAAC;gCACD,SAAS,GAAG,0DAA0D,MAAM,EAAE,CAAC;4BACjF,CAAC;iCAAM,IACL,UAAU,KAAK,QAAQ;gCACvB,OAAO,MAAM,KAAK,QAAQ,EAC1B,CAAC;gCACD,SAAS,GAAG,0DAA0D,MAAM,EAAE,CAAC;4BACjF,CAAC;iCAAM,IACL,UAAU,KAAK,QAAQ;gCACvB,OAAO,MAAM,KAAK,QAAQ,EAC1B,CAAC;gCACD,SAAS,GAAG,0DAA0D,MAAM,EAAE,CAAC;4BACjF,CAAC;iCAAM,IACL,UAAU,KAAK,SAAS;gCACxB,OAAO,MAAM,KAAK,SAAS,EAC3B,CAAC;gCACD,SAAS,GAAG,2DAA2D,MAAM,EAAE,CAAC;4BAClF,CAAC;iCAAM,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gCAC5D,SAAS,GAAG,yDAAyD,MAAM,EAAE,CAAC;4BAChF,CAAC;4BACD,IAAI,SAAS,EAAE,CAAC;gCACd,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;4BACvC,CAAC;iCAAM,CAAC;gCACN,wEAAwE;gCACxE,IACE,UAAU,KAAK,QAAQ;oCACvB,MAAM,KAAK,IAAI;oCACf,OAAO,MAAM,KAAK,QAAQ,EAC1B,CAAC;oCACD,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;oCAC5D,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wCACpD,OAAO,CAAC,MAAM,CACZ,IAAI,KAAK,CACP,iFAAiF,CAClF,CACF,CAAC;wCACF,OAAO,CAAC,wCAAwC;oCAClD,CAAC;gCACH,CAAC;gCACD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;4BAC1B,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,uCAAuC,GAAG,CAAC,EAAE,YAAY,CAC1D,CAAC;oBACJ,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBAElE,IAAI,CAAC,GAAG,CAAC,MAAM;oBAAE,OAAO;gBAExB,wBAAwB;gBACxB,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,IAAI,GAAG,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;oBAC5C,2EAA2E;oBAC3E,oDAAoD;oBACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAC5B,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,IAAI,oBAAoB,EAAE,CAAC;wBAC7D,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;wBACpB,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;oBACnC,CAAC;oBACD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAClB,IAAI,IAAI,CAAC,UAAU,IAAI,uBAAuB,EAAE,CAAC;wBAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,qCAAqC,uBAAuB,+BAA+B,CAC5F,CAAC;wBACF,OAAO;oBACT,CAAC;oBAED,IAAI,GAAG,CAAC,MAAM,KAAK,yBAAyB,EAAE,CAAC;wBAC7C,MAAM,SAAS,GAAI,GAAG,CAAC,MAA0C;4BAC/D,EAAE,SAAS,CAAC;wBACd,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;4BAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;4BAC3D,IAAI,UAAU;gCAAE,UAAU,CAAC,KAAK,EAAE,CAAC;wBACrC,CAAC;oBACH,CAAC;yBAAM,IAAI,GAAG,CAAC,MAAM,KAAK,2BAA2B,EAAE,CAAC;wBACtD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;wBACxB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;wBACxC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;oBACzB,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,mDAAmD;gBACnD,4EAA4E;gBAC5E,kEAAkE;gBAClE,wEAAwE;gBACxE,gDAAgD;gBAChD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACvB,oGAAoG;gBACpG,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAE,CAAC;gBACtD,IAAI,MAAM,IAAI,GAAG,GAAG,oBAAoB,EAAE,CAAC;oBACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,wBAAwB,cAAc,gBAAgB,oBAAoB,IAAI,CAC/E,CAAC;oBACF,IAAI,CAAC,WAAW,EAAE,wBAAwB,EAAE,CAAC;oBAC7C,MAAM,QAAQ,CACZ,EAAE,EACF,IAAI,CAAC,SAAS,CAAC;wBACb,OAAO,EAAE,KAAK;wBACd,EAAE,EAAE,GAAG,CAAC,EAAE;wBACV,KAAK,EAAE;4BACL,IAAI,EAAE,UAAU,CAAC,mBAAmB;4BACpC,OAAO,EAAE,6BAA6B,cAAc,iBAAiB,oBAAoB,GAAG,IAAI,UAAU;yBAC3G;qBACF,CAAC,EACF,IAAI,CAAC,MAAM,CACZ,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,qDAAqD;gBACrD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC;gBAC5C,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,cAAc,CAAC;gBAE/D,IAAI,QAAQ,GAAoB;oBAC9B,OAAO,EAAE,KAAK;oBACd,uHAAuH;oBACvH,EAAE,EAAE,GAAG,CAAC,EAAG;oBACX,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE;iBACnD,CAAC;gBAEF,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;oBACnB,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,MAAM,YAAY,GAAG,GAAG,CAAC,MAEZ,CAAC;wBACd,MAAM,aAAa,GAAG,YAAY,EAAE,eAAe,CAAC;wBACpD,MAAM,iBAAiB,GACrB,aAAa,IAAI,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC;4BACzD,CAAC,CAAC,aAAa;4BACf,CAAC,CAAC,+FAA+F;gCAC/F,kBAAkB,CAAC,CAAC,CAAE,CAAC;wBAC7B,IAAI,aAAa,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;4BACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,iDAAiD,aAAa,qBAAqB,iBAAiB,EAAE,CACvG,CAAC;wBACJ,CAAC;wBACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,gDAAgD;wBAC1E,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,MAAM,EAAE;gCACN,eAAe,EAAE,iBAAiB;gCAClC,YAAY,EAAE;oCACZ,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;oCAC5B,SAAS,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;oCACjC,OAAO,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;oCAC/B,OAAO,EAAE,EAAE;oCACX,wEAAwE;oCACxE,uEAAuE;oCACvE,gDAAgD;oCAChD,WAAW,EAAE,EAAE;iCAChB;gCACD,UAAU,EAAE,IAAI,CAAC,UAAU;gCAC3B,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI;oCAChC,YAAY,EAAE,IAAI,CAAC,YAAY;iCAChC,CAAC;6BACH;yBACF,CAAC;wBACF,MAAM;oBACR,CAAC;oBAED,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,eAAe;oCAChC,OAAO,EAAE,yCAAyC;iCACnD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;4BACnB,mDAAmD;4BACnD,6EAA6E;4BAC7E,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;gCAC9B,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAC5D,CAAC,CAAC,EAAE,EAAE;oCACJ,2DAA2D;oCAC3D,8EAA8E;oCAC9E,MAAM,EACJ,iBAAiB,EAAE,IAAI,EACvB,SAAS,EAAE,QAAQ,EACnB,UAAU,EAAE,IAAI,EAChB,YAAY,EAAE,aAAa,EAC3B,WAAW,EAAE,YAAY,EACzB,GAAG,UAAU,EACd,GAAG,CAAC,CAAC,MAAM,CAAC;oCACb,OAAO,UAAU,CAAC;gCACpB,CAAC,CACF,CAAC;4BACJ,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gCAC1B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CACxD,CAAC,CAAC,EAAE,EAAE;oCACJ,yDAAyD;oCACzD,8EAA8E;oCAC9E,MAAM,EACJ,iBAAiB,EAAE,IAAI,EACvB,SAAS,EAAE,QAAQ,EACnB,UAAU,EAAE,IAAI,EAChB,YAAY,EAAE,aAAa,EAC3B,GAAG,UAAU,EACd,GAAG,CAAC,CAAC,MAAM,CAAC;oCACb,OAAO,UAAU,CAAC;gCACpB,CAAC,CACF,CAAC;4BACJ,CAAC;wBACH,CAAC;wBACD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS;4BAC7B,CAAC,CAAC,0DAA0D;gCAC1D,IAAI,CAAC,mBAAoB;4BAC3B,CAAC,CAAC,0DAA0D;gCAC1D,IAAI,CAAC,eAAgB,CAAC;wBAE1B,sDAAsD;wBACtD,MAAM,UAAU,GAAG,GAAG,CAAC,MAA0C,CAAC;wBAClE,IAAI,MAAM,GAAG,CAAC,CAAC;wBACf,IAAI,OAAO,UAAU,EAAE,MAAM,KAAK,QAAQ,EAAE,CAAC;4BAC3C,IAAI,CAAC;gCACH,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAC7B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC1D,EAAE,CACH,CAAC;gCACF,IACE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;oCACxB,OAAO,IAAI,CAAC;oCACZ,OAAO,GAAG,SAAS,CAAC,qDAAqD;;oCAEzE,MAAM,GAAG,OAAO,CAAC;4BACrB,CAAC;4BAAC,MAAM,CAAC;gCACP,0CAA0C;4BAC5C,CAAC;wBACH,CAAC;wBAED,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAAC,CAAC;wBACnE,MAAM,UAAU,GAAG,MAAM,GAAG,oBAAoB,CAAC;wBACjD,MAAM,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;wBAC7C,MAAM,UAAU,GAAG,OAAO;4BACxB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;4BACpD,CAAC,CAAC,SAAS,CAAC;wBAEd,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,MAAM,EAAE;gCACN,KAAK,EAAE,IAAI;gCACX,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,CAAC;6BAChD;yBACF,CAAC;wBACF,MAAM;oBACR,CAAC;oBAED,KAAK,cAAc,CAAC,CAAC,CAAC;wBACpB,+CAA+C;wBAC/C,iDAAiD;wBACjD,wEAAwE;wBACxE,MAAM,YAAY,GAAG,GAAG,CAAC,MAAwC,CAAC;wBAClE,IAAI,OAAO,YAAY,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;4BACjE,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,cAAc;oCAC/B,OAAO,EAAE,gCAAgC;iCAC1C;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;wBACpD,IAAI,CAAC,SAAS,EAAE,CAAC;4BACf,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,gBAAgB;oCACjC,OAAO,EAAE,mBAAmB,YAAY,CAAC,IAAI,EAAE;iCAChD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,MAAM,EAAE;gCACN,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI;gCAC3B,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW;gCACzC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,WAAW;gCACzC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI;oCACjD,YAAY,EAAE,SAAS,CAAC,MAAM,CAAC,YAAY;iCAC5C,CAAC;6BACH;yBACF,CAAC;wBACF,MAAM;oBACR,CAAC;oBAED,KAAK,YAAY,CAAC,CAAC,CAAC;wBAClB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,eAAe;oCAChC,OAAO,EAAE,yCAAyC;iCACnD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,yFAAyF;wBACzF,IAAI,GAAG,CAAC,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;4BACjE,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE;6BACzD,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,sEAAsE;wBACtE,qDAAqD;wBACrD,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;4BAC9B,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,mBAAmB;oCACpC,OAAO,EAAE,0BAA0B;iCACpC;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,6BAA6B;wBAC7B,IAAI,IAAI,CAAC,eAAe,IAAI,oBAAoB,EAAE,CAAC;4BACjD,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,MAAM,EAAE;oCACN,OAAO,EAAE;wCACP;4CACE,IAAI,EAAE,MAAM;4CACZ,IAAI,EAAE,uCAAuC,oBAAoB,wCAAwC;yCAC1G;qCACF;oCACD,OAAO,EAAE,IAAI;iCACd;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAIlB,CAAC;wBACF,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;4BACtC,mEAAmE;4BACnE,kEAAkE;4BAClE,IAAI,IAAI,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;gCACrC,IAAI,CAAC,SAAS,EAAE,CAAC;gCACjB,IAAI,CAAC,UAAU,EAAE,CAAC;gCAClB,QAAQ,GAAG;oCACT,OAAO,EAAE,KAAK;oCACd,EAAE,EAAE,GAAG,CAAC,EAAE;oCACV,MAAM,EAAE;wCACN,OAAO,EAAE;4CACP;gDACE,IAAI,EAAE,MAAM;gDACZ,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,0CAA0C;6CACrE;yCACF;wCACD,OAAO,EAAE,IAAI;qCACd;iCACF,CAAC;gCACF,MAAM;4BACR,CAAC;4BACD,mDAAmD;4BACnD,IAAI,CAAC,yBAAyB,EAAE,CAAC;4BACjC,gEAAgE;4BAChE,MAAM,WAAW,GAAG,IAAI,CAAC,mBAAmB,CAAC;4BAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC;4BACrB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;4BAC/B,MAAM,OAAO,GAAG,CACd,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;gCACpC,MAAM,CAAC,SAAS,KAAK,IAAI;gCACvB,CAAC,CAAC,MAAM,CAAC,SAAS;gCAClB,CAAC,CAAC,EAAE,CACoB,CAAC;4BAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;4BACvB,YAAY,CAAC,KAAK,IAAI,EAAE;gCACtB,IAAI,CAAC;oCACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;oCAC1C,IAAI,MAAM,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ;wCAAE,OAAO;oCACzD,MAAM,WAAW,GAAoB;wCACnC,OAAO,EAAE,KAAK;wCACd,EAAE,EAAE,KAAK,IAAI,CAAC;wCACd,MAAM;qCACP,CAAC;oCACF,QAAQ,CACN,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAC3B,IAAI,CAAC,MAAM,CACZ,CAAC;gCACJ,CAAC;gCAAC,OAAO,GAAG,EAAE,CAAC;oCACb,IAAI,MAAM,KAAK,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ;wCAAE,OAAO;oCACzD,MAAM,cAAc,GAAoB;wCACtC,OAAO,EAAE,KAAK;wCACd,EAAE,EAAE,KAAK,IAAI,CAAC;wCACd,KAAK,EAAE;4CACL,IAAI,EAAE,CAAC,KAAK;4CACZ,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;yCAC1D;qCACF,CAAC;oCACF,QAAQ,CACN,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,EAC9B,IAAI,CAAC,MAAM,CACZ,CAAC;gCACJ,CAAC;wCAAS,CAAC;oCACT,IAAI,CAAC,eAAe,EAAE,CAAC;gCACzB,CAAC;4BACH,CAAC,CAAC,CAAC;4BACH,MAAM;wBACR,CAAC;wBACD,IAAI,CAAC,IAAI,EAAE,CAAC;4BACV,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,cAAc;oCAC/B,OAAO,EAAE,gBAAgB;oCACzB,IAAI,EAAE,MAAM,CAAC,IAAI;iCAClB;6BACF,CAAC;wBACJ,CAAC;6BAAM,IACL,IAAI,CAAC,YAAY,KAAK,UAAU;4BAChC,CAAC,CACC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,KAAK,IAAI;gCAC9C,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,eAAe;gCACzC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,aAAa,CACxC,EACD,CAAC;4BACD,IAAI,CAAC,SAAS,EAAE,CAAC;4BACjB,IAAI,CAAC,UAAU,EAAE,CAAC;4BAClB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,MAAM,EAAE;oCACN,OAAO,EAAE;wCACP;4CACE,IAAI,EAAE,MAAM;4CACZ,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,yEAAyE;yCACpG;qCACF;oCACD,OAAO,EAAE,IAAI;iCACd;6BACF,CAAC;wBACJ,CAAC;6BAAM,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;4BAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;4BACjB,IAAI,CAAC,UAAU,EAAE,CAAC;4BAClB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,MAAM,EAAE;oCACN,OAAO,EAAE;wCACP;4CACE,IAAI,EAAE,MAAM;4CACZ,IAAI,EAAE,SAAS,MAAM,CAAC,IAAI,+BAA+B;yCAC1D;qCACF;oCACD,OAAO,EAAE,IAAI;iCACd;6BACF,CAAC;wBACJ,CAAC;6BAAM,IACL,IAAI,CAAC,MAAM,CAAC,iBAAiB;4BAC7B,CAAC,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,IAAI,IAAI,CAAC,EAC1C,CAAC;4BACD,IAAI,CAAC,SAAS,EAAE,CAAC;4BACjB,IAAI,CAAC,UAAU,EAAE,CAAC;4BAClB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,MAAM,EAAE;oCACN,OAAO,EAAE;wCACP;4CACE,IAAI,EAAE,MAAM;4CACZ,IAAI,EAAE,kSAAkS;yCACzS;qCACF;oCACD,OAAO,EAAE,IAAI;iCACd;6BACF,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,gEAAgE;4BAChE,kEAAkE;4BAClE,gEAAgE;4BAChE,iEAAiE;4BACjE,IAAI,SAAS,GAAG,CAAC,CAAC;4BAClB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACvD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;4BACjE,IAAI,QAAQ,GAAG,KAAK,CAAC;4BACrB,IAAI,cAAc,GAA4B,IAAI,CAAC;4BACnD,IAAI,CAAC;gCACH,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;gCACvC,IACE,OAAO,OAAO,KAAK,QAAQ;oCAC3B,OAAO,KAAK,IAAI;oCAChB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EACtB,CAAC;oCACD,IAAI,CAAC,SAAS,EAAE,CAAC;oCACjB,IAAI,CAAC,UAAU,EAAE,CAAC;oCAClB,QAAQ,GAAG;wCACT,OAAO,EAAE,KAAK;wCACd,EAAE,EAAE,GAAG,CAAC,EAAE;wCACV,KAAK,EAAE;4CACL,IAAI,EAAE,UAAU,CAAC,cAAc;4CAC/B,OAAO,EAAE,sCAAsC;yCAChD;qCACF,CAAC;oCACF,MAAM;gCACR,CAAC;gCACD,6EAA6E;gCAC7E,+EAA+E;gCAC/E,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;oCAC/C,IAAI,CAAC,SAAS,EAAE,CAAC;oCACjB,IAAI,CAAC,UAAU,EAAE,CAAC;oCAClB,QAAQ,GAAG;wCACT,OAAO,EAAE,KAAK;wCACd,EAAE,EAAE,GAAG,CAAC,EAAE;wCACV,KAAK,EAAE;4CACL,IAAI,EAAE,UAAU,CAAC,cAAc;4CAC/B,OAAO,EAAE,uCAAuC;yCACjD;qCACF,CAAC;oCACF,MAAM;gCACR,CAAC;gCACD,kEAAkE;gCAClE,mEAAmE;gCACnE,kEAAkE;gCAClE,sCAAsC;gCACtC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,QAAQ,EAAE,GAAG,OAGzC,CAAC;gCACF,wEAAwE;gCACxE,yEAAyE;gCACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gCAChD,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oCACpC,IAAI,CAAC,SAAS,EAAE,CAAC;oCACjB,IAAI,CAAC,UAAU,EAAE,CAAC;oCAClB,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;yCACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;yCACnD,IAAI,CAAC,IAAI,CAAC,CAAC;oCACd,QAAQ,GAAG;wCACT,OAAO,EAAE,KAAK;wCACd,EAAE,EAAE,GAAG,CAAC,EAAE;wCACV,KAAK,EAAE;4CACL,IAAI,EAAE,UAAU,CAAC,cAAc;4CAC/B,OAAO,EAAE,2BAA2B,QAAQ,EAAE;yCAC/C;qCACF,CAAC;oCACF,MAAM;gCACR,CAAC;gCACD,IAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC,wDAAwD;gCAC1F,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,wDAAwD;gCAC1E,OAAO,CAAC,KAAK,CAAC,iBAAiB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;gCAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gCAC9D,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;gCACzC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;gCACjD,oEAAoE;gCACpE,8EAA8E;gCAC9E,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;gCAC7C,MAAM,aAAa,GACjB,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ;oCAC1D,CAAC,CAAC,QAAQ;oCACV,CAAC,CAAC,SAAS,CAAC;gCAChB,MAAM,UAAU,GACd,aAAa,KAAK,SAAS;oCACzB,CAAC,CAAC,CAAC,QAAgB,EAAE,KAAc,EAAE,OAAgB,EAAE,EAAE;wCACrD,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;wCACpB,IAAI,CAAC,YAAY,CACf,EAAE,EACF,aAAa,EACb,QAAQ,EACR,KAAK,EACL,OAAO,CACR,CAAC;oCACJ,CAAC;oCACH,CAAC,CAAC,SAAS,CAAC;gCAChB,IAAI,CAAC,eAAe,EAAE,CAAC;gCACvB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gCAChD,IAAI,aAAwD,CAAC;gCAC7D,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oCACtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;wCACvC,QAAQ,EAAE,MAAM,CAAC,IAAI;wCACrB,MAAM,EAAE,QAAmC;wCAC3C,SAAS,EAAE,IAAI,CAAC,SAAS;qCAC1B,CAAC,CAAC;oCACH,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wCACtD,IAAI,CAAC,eAAe,EAAE,CAAC;wCACvB,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wCACtC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wCACxC,6DAA6D;wCAC7D,2DAA2D;wCAC3D,wDAAwD;wCACxD,IAAI,CAAC,sBAAsB,EAAE,CAAC;wCAC9B,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,mBAAmB,EAAE;4CACjD,IAAI,EAAE,MAAM,CAAC,IAAI;4CACjB,QAAQ;4CACR,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;yCACvC,CAAC,CAAC;wCACH,QAAQ,GAAG;4CACT,OAAO,EAAE,KAAK;4CACd,EAAE,EAAE,GAAG,CAAC,EAAE;4CACV,MAAM,EAAE;gDACN,OAAO,EAAE;oDACP;wDACE,IAAI,EAAE,MAAM;wDACZ,IAAI,EACF,QAAQ,KAAK,UAAU;4DACrB,CAAC,CAAC,cAAc,MAAM,CAAC,IAAI,uDAAuD;4DAClF,CAAC,CAAC,cAAc,MAAM,CAAC,IAAI,qDAAqD;qDACrF;iDACF;gDACD,OAAO,EAAE,IAAI;6CACd;yCACF,CAAC;wCACF,MAAM;oCACR,CAAC;gCACH,CAAC;gCACD,6DAA6D;gCAC7D,8DAA8D;gCAC9D,wDAAwD;gCACxD,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gCACvB,IAAI,CAAC;oCACH,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,IAAI,eAAe,CAAC;oCAC3D,MAAM,cAAc,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;wCACtD,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;4CAC9B,QAAQ,GAAG,IAAI,CAAC;4CAChB,UAAU,CAAC,KAAK,EAAE,CAAC;4CACnB,MAAM,CACJ,IAAI,KAAK,CACP,SAAS,MAAM,CAAC,IAAI,qBAAqB,gBAAgB,IAAI,CAC9D,CACF,CAAC;wCACJ,CAAC,EAAE,gBAAgB,CAAC,CAAC;oCACvB,CAAC,CAAC,CAAC;oCAEH,cAAc,GAAG,QAAQ,CACvB,eAAe,EACf;wCACE,eAAe,EAAE,MAAM,CAAC,IAAI;wCAC5B,gBAAgB,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;wCAC7C,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI;4CAC9B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;yCAC9C,CAAC;qCACH,EACD,KAAK,IAAI,EAAE,CACT,IAAI,CAAC,OAAO,CACV,QAAmC,EACnC,UAAU,CAAC,MAAM,EACjB,UAAU,CACX,CACJ,CAAC;oCAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;wCAChC,cAAc;wCACd,cAAc;qCACf,CAAC,CAAC;oCACH,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oCAC1C,IAAI,CAAC,WAAW,EAAE,MAAM,CACtB,MAAM,CAAC,IAAI,EACX,UAAU,EACV,SAAS,EACT,SAAS,EACT,IAAI,CAAC,SAAS,IAAI,SAAS,CAC5B,CAAC;oCACF,OAAO,CAAC,KAAK,CAAC,qBAAqB,UAAU,IAAI,CAAC,CAAC;oCACnD,kEAAkE;oCAClE,sEAAsE;oCACtE,uEAAuE;oCACvE,MAAM,UAAU,GAAG,MAIlB,CAAC;oCACF,oEAAoE;oCACpE,uEAAuE;oCACvE,uEAAuE;oCACvE,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;wCACzD,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CACvB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CACZ,GAAG;4CACH,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;gDAC5B,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;gDAClB,CAAC,CAAC,CAAC,CAAC,EACR,CAAC,CACF;wCACH,CAAC,CAAC,CAAC,CAAC;oCACN,oEAAoE;oCACpE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CACxB,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,GAAG,CACN,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAC5C,iBAAiB,CAClB,CACF,CAAC;oCACF,MAAM,cAAc,GAClB,iBAAiB,GAAG,wBAAwB;wCAC1C,CAAC,CAAC;4CACE,GAAG,UAAU;4CACb,KAAK,EAAE;gDACL,8BAA8B,EAAE,iBAAiB;6CAClD;yCACF;wCACH,CAAC,CAAC,UAAU,CAAC;oCACjB,IACE,IAAI,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS;wCACtC,UAAU,CAAC,iBAAiB,KAAK,SAAS,EAC1C,CAAC;wCACD,IAAI,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wCAC1D,IAAI,CAAC,YAAY,EAAE,CAAC;4CAClB,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAC7B,IAAI,CAAC,MAAM,CAAC,YAAsB,CACnC,CAAC;4CACF,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;wCACvD,CAAC;wCACD,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;4CAChD,OAAO,CAAC,IAAI,CACV,8DAA8D,MAAM,CAAC,IAAI,eAAe,CACzF,CAAC;4CACF,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAClD,cAAyC,CAAC;4CAC5C,QAAQ,GAAG;gDACT,OAAO,EAAE,KAAK;gDACd,EAAE,EAAE,GAAG,CAAC,EAAE;gDACV,MAAM,EAAE,UAAU;6CACnB,CAAC;wCACJ,CAAC;6CAAM,CAAC;4CACN,QAAQ,GAAG;gDACT,OAAO,EAAE,KAAK;gDACd,EAAE,EAAE,GAAG,CAAC,EAAE;gDACV,MAAM,EAAE,cAAc;6CACvB,CAAC;wCACJ,CAAC;oCACH,CAAC;yCAAM,CAAC;wCACN,QAAQ,GAAG;4CACT,OAAO,EAAE,KAAK;4CACd,EAAE,EAAE,GAAG,CAAC,EAAE;4CACV,MAAM,EAAE,cAAc;yCACvB,CAAC;oCACJ,CAAC;gCACH,CAAC;wCAAS,CAAC;oCACT,IAAI,aAAa,KAAK,SAAS;wCAAE,YAAY,CAAC,aAAa,CAAC,CAAC;oCAC7D,iEAAiE;oCACjE,8DAA8D;oCAC9D,8DAA8D;oCAC9D,2DAA2D;oCAC3D,+DAA+D;oCAC/D,+DAA+D;oCAC/D,6DAA6D;oCAC7D,8DAA8D;oCAC9D,0CAA0C;oCAC1C,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CACrD,GAAG,CAAC,EAAE,CACP,CAAC;oCACF,IAAI,GAAG,KAAK,IAAI,CAAC,UAAU,IAAI,gBAAgB,EAAE,CAAC;wCAChD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wCACxC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wCACtC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAC7B,CAAC,EACD,IAAI,CAAC,eAAe,GAAG,CAAC,CACzB,CAAC;oCACJ,CAAC;gCACH,CAAC;4BACH,CAAC;4BAAC,OAAO,GAAY,EAAE,CAAC;gCACtB,6DAA6D;gCAC7D,+DAA+D;gCAC/D,6DAA6D;gCAC7D,0CAA0C;gCAC1C,MAAM,OAAO,GACX,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gCACnD,MAAM,OAAO,GACX,GAAG,YAAY,KAAK;oCACpB,OAAQ,GAAkC,CAAC,IAAI,KAAK,QAAQ;oCAC1D,CAAC,CAAE,GAAgC,CAAC,IAAI;oCACxC,CAAC,CAAC,SAAS,CAAC;gCAChB,OAAO,CAAC,KAAK,CAAC,QAAQ,MAAM,CAAC,IAAI,YAAY,OAAO,EAAE,CAAC,CAAC;gCACxD,IAAI,CAAC,UAAU,EAAE,CAAC;gCAClB,IAAI,CAAC,WAAW,EAAE,MAAM,CACtB,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EACtB,OAAO,EACP,OAAO,EACP,IAAI,CAAC,SAAS,IAAI,SAAS,CAC5B,CAAC;gCACF,MAAM,UAAU,GAA2B,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;gCAC9D,IAAI,OAAO,KAAK,SAAS;oCAAE,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC;gCACrD,QAAQ,GAAG;oCACT,OAAO,EAAE,KAAK;oCACd,EAAE,EAAE,GAAG,CAAC,EAAE;oCACV,MAAM,EAAE;wCACN,OAAO,EAAE;4CACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;yCACnD;wCACD,OAAO,EAAE,IAAI;qCACd;iCACF,CAAC;gCAEF,6CAA6C;gCAC7C,IAAI,QAAQ,IAAI,cAAc,EAAE,CAAC;oCAC/B,cAAc;yCACX,IAAI,CAAC,GAAG,EAAE;wCACT,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,gBAAgB,MAAM,CAAC,IAAI,eAAe,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,gCAAgC,IAAI,CAAC,SAAS,IAAI,eAAe,KAAK,CACvI,CAAC;oCACJ,CAAC,CAAC;yCACD,KAAK,CAAC,GAAG,EAAE;wCACV,sEAAsE;oCACxE,CAAC,CAAC,CAAC;gCACP,CAAC;4BACH,CAAC;wBACH,CAAC;wBACD,MAAM;oBACR,CAAC;oBAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;wBACtB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,eAAe;oCAChC,OAAO,EAAE,yCAAyC;iCACnD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,aAAa,GAAG,GAAG,CAAC,MAEb,CAAC;wBACd,MAAM,SAAS,GACb,OAAO,aAAa,EAAE,MAAM,KAAK,QAAQ;4BACvC,CAAC,CAAC,aAAa,CAAC,MAAM;4BACtB,CAAC,CAAC,SAAS,CAAC;wBAChB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;wBACzD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;wBAC5D,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,MAAM,EAAE,UAAU;yBACnB,CAAC;wBACF,MAAM;oBACR,CAAC;oBAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;wBACtB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,eAAe;oCAChC,OAAO,EAAE,yCAAyC;iCACnD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,aAAa,GAAG,GAAG,CAAC,MAAuC,CAAC;wBAClE,IAAI,OAAO,aAAa,EAAE,GAAG,KAAK,QAAQ,EAAE,CAAC;4BAC3C,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,cAAc;oCAC/B,OAAO,EAAE,gDAAgD;iCAC1D;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;wBACxD,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC;wBACnE,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;4BAC1B,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,cAAc;oCAC/B,OAAO,EAAE,UAAU,CAAC,KAAK;oCACzB,IAAI,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE;iCAChC;6BACF,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,MAAM,EAAE,UAAU;6BACnB,CAAC;wBACJ,CAAC;wBACD,MAAM;oBACR,CAAC;oBAED,KAAK,cAAc,CAAC,CAAC,CAAC;wBACpB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,eAAe;oCAChC,OAAO,EAAE,yCAAyC;iCACnD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;wBACjD,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;yBAC7B,CAAC;wBACF,MAAM;oBACR,CAAC;oBAED,KAAK,aAAa,CAAC,CAAC,CAAC;wBACnB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;4BACtB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,eAAe;oCAChC,OAAO,EAAE,yCAAyC;iCACnD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,YAAY,GAAG,GAAG,CAAC,MAEZ,CAAC;wBACd,IAAI,OAAO,YAAY,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;4BAC3C,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,cAAc;oCAC/B,OAAO,EAAE,8CAA8C;iCACxD;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,MAAM,UAAU,GACd,OAAO,YAAY,CAAC,SAAS,KAAK,QAAQ;4BAC1C,YAAY,CAAC,SAAS,KAAK,IAAI;4BAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC;4BACpC,CAAC,CAAE,YAAY,CAAC,SAAoC;4BACpD,CAAC,CAAC,EAAE,CAAC;wBACT,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;wBACnD,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;wBAC9D,IAAI,CAAC,YAAY,EAAE,CAAC;4BAClB,QAAQ,GAAG;gCACT,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,GAAG,CAAC,EAAE;gCACV,KAAK,EAAE;oCACL,IAAI,EAAE,UAAU,CAAC,cAAc;oCAC/B,OAAO,EAAE,iDAAiD,YAAY,CAAC,IAAI,GAAG;iCAC/E;6BACF,CAAC;4BACF,MAAM;wBACR,CAAC;wBACD,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,MAAM,EAAE,YAAY;yBACrB,CAAC;wBACF,MAAM;oBACR,CAAC;oBAED,KAAK,MAAM;wBACT,QAAQ,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;wBACtD,MAAM;oBAER;wBACE,QAAQ,GAAG;4BACT,OAAO,EAAE,KAAK;4BACd,EAAE,EAAE,GAAG,CAAC,EAAE;4BACV,KAAK,EAAE;gCACL,IAAI,EAAE,UAAU,CAAC,gBAAgB;gCACjC,OAAO,EAAE,qBAAqB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;6BACvD;yBACF,CAAC;gBACN,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAChE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvE,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,gBAAgB,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,2BAA2B,CAChF,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,GAAG,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAC;QAC/B,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,yDAAyD;IACjD,YAAY,CAClB,EAAa,EACb,aAA8B,EAC9B,QAAgB,EAChB,KAAc,EACd,OAAgB;QAEhB,MAAM,GAAG,GAAwB;YAC/B,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,wBAAwB;YAChC,MAAM,EAAE;gBACN,aAAa;gBACb,QAAQ;gBACR,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC;gBACrC,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC;aAC1C;SACF,CAAC;QACF,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;YAAE,OAAO;QAC7C,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACxD,iBAAiB;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,MAAM,CAAC,gBAAgB,CACrB,EAAa,EACb,MAAc,EACd,MAAgB,EAChB,MAAwC;QAExC,MAAM,GAAG,GAAwB,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QACpE,IAAI,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI;YAAE,OAAO;QAC7C,QAAQ,CACN,EAAE,EACF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EACnB,CAAC,MAAM,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,CAAsB,CACrE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,MAAM,EAAE,IAAI,CAAC,+BAA+B,MAAM,KAAK,GAAG,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolve a binary name to its `.cmd` shim on Windows when needed.
|
|
3
|
+
*
|
|
4
|
+
* npm-installed binaries on Windows are `.cmd` files in `node_modules/.bin/`
|
|
5
|
+
* (or under `%APPDATA%\npm` for `-g` installs). Node's `child_process.spawn`
|
|
6
|
+
* with `shell:false` does NOT auto-resolve `.cmd` shims — only `.exe` via
|
|
7
|
+
* `PATHEXT`. Calling `spawn("claude", …)` on Windows therefore ENOENTs even
|
|
8
|
+
* though `claude --version` works fine in any terminal.
|
|
9
|
+
*
|
|
10
|
+
* This helper appends `.cmd` to bare binary names on win32, leaving:
|
|
11
|
+
* - absolute / relative paths (anything with a separator) alone
|
|
12
|
+
* - names that already have an extension alone
|
|
13
|
+
* - non-Windows platforms untouched
|
|
14
|
+
*
|
|
15
|
+
* This was the fix pattern established in PR #525 for the Claude subprocess
|
|
16
|
+
* driver; centralising it here keeps the four other spawn sites consistent.
|
|
17
|
+
*
|
|
18
|
+
* Also used when *writing* an MCP stdio config that another process will
|
|
19
|
+
* spawn — that spawning process inherits the same shell:false limitation,
|
|
20
|
+
* so the config must record the `.cmd` form on Windows.
|
|
21
|
+
*/
|
|
22
|
+
export declare function ensureCmdShim(binary: string): string;
|
|
23
|
+
/**
|
|
24
|
+
* Conservative variant of `ensureCmdShim`: only appends `.cmd` when the
|
|
25
|
+
* binary is in {@link KNOWN_CMD_SHIMS}. Use this from generic helpers like
|
|
26
|
+
* `execSafe` that receive arbitrary binary names from many call sites —
|
|
27
|
+
* blindly wrapping every bare name would turn working `spawn("git")` into
|
|
28
|
+
* broken `spawn("git.cmd")`.
|
|
29
|
+
*
|
|
30
|
+
* Same boilerplate as `ensureCmdShim` (no-op on non-Win, leaves explicit
|
|
31
|
+
* paths and pre-extended names alone). Differs only in the final wrap
|
|
32
|
+
* decision.
|
|
33
|
+
*/
|
|
34
|
+
export declare function ensureCmdShimIfKnown(binary: string): string;
|
package/dist/winShim.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
/**
|
|
3
|
+
* Resolve a binary name to its `.cmd` shim on Windows when needed.
|
|
4
|
+
*
|
|
5
|
+
* npm-installed binaries on Windows are `.cmd` files in `node_modules/.bin/`
|
|
6
|
+
* (or under `%APPDATA%\npm` for `-g` installs). Node's `child_process.spawn`
|
|
7
|
+
* with `shell:false` does NOT auto-resolve `.cmd` shims — only `.exe` via
|
|
8
|
+
* `PATHEXT`. Calling `spawn("claude", …)` on Windows therefore ENOENTs even
|
|
9
|
+
* though `claude --version` works fine in any terminal.
|
|
10
|
+
*
|
|
11
|
+
* This helper appends `.cmd` to bare binary names on win32, leaving:
|
|
12
|
+
* - absolute / relative paths (anything with a separator) alone
|
|
13
|
+
* - names that already have an extension alone
|
|
14
|
+
* - non-Windows platforms untouched
|
|
15
|
+
*
|
|
16
|
+
* This was the fix pattern established in PR #525 for the Claude subprocess
|
|
17
|
+
* driver; centralising it here keeps the four other spawn sites consistent.
|
|
18
|
+
*
|
|
19
|
+
* Also used when *writing* an MCP stdio config that another process will
|
|
20
|
+
* spawn — that spawning process inherits the same shell:false limitation,
|
|
21
|
+
* so the config must record the `.cmd` form on Windows.
|
|
22
|
+
*/
|
|
23
|
+
export function ensureCmdShim(binary) {
|
|
24
|
+
if (process.platform !== "win32")
|
|
25
|
+
return binary;
|
|
26
|
+
// Use path.win32 explicitly so the check behaves identically when tests
|
|
27
|
+
// mock process.platform on a POSIX host (where path.sep would still be '/').
|
|
28
|
+
if (path.win32.extname(binary))
|
|
29
|
+
return binary;
|
|
30
|
+
if (binary.includes("\\") || binary.includes("/"))
|
|
31
|
+
return binary;
|
|
32
|
+
return `${binary}.cmd`;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Binaries that ship as `.cmd` shims on Windows when npm-installed (or via
|
|
36
|
+
* the standard VS Code / Cursor / Windsurf installers for the editor CLIs).
|
|
37
|
+
*
|
|
38
|
+
* Conservative by design — only names that are dependably `.cmd` on Windows
|
|
39
|
+
* across the common install paths. Anything ambiguous (`rg`, `fd`, `jq`,
|
|
40
|
+
* `python`, `node`) is omitted so we don't break `spawn("git")` style
|
|
41
|
+
* callers — Windows' PATHEXT auto-resolves `.exe` for those.
|
|
42
|
+
*
|
|
43
|
+
* Add to this set only after confirming the binary really is a `.cmd` shim
|
|
44
|
+
* in every realistic install path; a wrong inclusion turns working `.exe`
|
|
45
|
+
* spawns into ENOENT.
|
|
46
|
+
*/
|
|
47
|
+
const KNOWN_CMD_SHIMS = new Set([
|
|
48
|
+
// Package managers — always `.cmd` from any install path
|
|
49
|
+
"npm",
|
|
50
|
+
"npx",
|
|
51
|
+
"yarn",
|
|
52
|
+
"pnpm",
|
|
53
|
+
// npm-installed dev tools — bin entries land as `.cmd` shims
|
|
54
|
+
"tsc",
|
|
55
|
+
"eslint",
|
|
56
|
+
"biome",
|
|
57
|
+
"prettier",
|
|
58
|
+
"ruff",
|
|
59
|
+
"black",
|
|
60
|
+
"ts-prune",
|
|
61
|
+
// Patchwork OS / Claude orchestration — npm-installed
|
|
62
|
+
"claude",
|
|
63
|
+
"claude-ide-bridge",
|
|
64
|
+
"gemini",
|
|
65
|
+
"code-server",
|
|
66
|
+
// VS Code-family editor CLIs — `.cmd` shims from the official installers
|
|
67
|
+
"code",
|
|
68
|
+
"code-insiders",
|
|
69
|
+
"cursor",
|
|
70
|
+
"windsurf",
|
|
71
|
+
]);
|
|
72
|
+
/**
|
|
73
|
+
* Conservative variant of `ensureCmdShim`: only appends `.cmd` when the
|
|
74
|
+
* binary is in {@link KNOWN_CMD_SHIMS}. Use this from generic helpers like
|
|
75
|
+
* `execSafe` that receive arbitrary binary names from many call sites —
|
|
76
|
+
* blindly wrapping every bare name would turn working `spawn("git")` into
|
|
77
|
+
* broken `spawn("git.cmd")`.
|
|
78
|
+
*
|
|
79
|
+
* Same boilerplate as `ensureCmdShim` (no-op on non-Win, leaves explicit
|
|
80
|
+
* paths and pre-extended names alone). Differs only in the final wrap
|
|
81
|
+
* decision.
|
|
82
|
+
*/
|
|
83
|
+
export function ensureCmdShimIfKnown(binary) {
|
|
84
|
+
if (process.platform !== "win32")
|
|
85
|
+
return binary;
|
|
86
|
+
if (path.win32.extname(binary))
|
|
87
|
+
return binary;
|
|
88
|
+
if (binary.includes("\\") || binary.includes("/"))
|
|
89
|
+
return binary;
|
|
90
|
+
if (!KNOWN_CMD_SHIMS.has(binary))
|
|
91
|
+
return binary;
|
|
92
|
+
return `${binary}.cmd`;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=winShim.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"winShim.js","sourceRoot":"","sources":["../src/winShim.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IAChD,wEAAwE;IACxE,6EAA6E;IAC7E,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACjE,OAAO,GAAG,MAAM,MAAM,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAC;IACnD,yDAAyD;IACzD,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,6DAA6D;IAC7D,KAAK;IACL,QAAQ;IACR,OAAO;IACP,UAAU;IACV,MAAM;IACN,OAAO;IACP,UAAU;IACV,sDAAsD;IACtD,QAAQ;IACR,mBAAmB;IACnB,QAAQ;IACR,aAAa;IACb,yEAAyE;IACzE,MAAM;IACN,eAAe;IACf,QAAQ;IACR,UAAU;CACX,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IAChD,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACjE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAChD,OAAO,GAAG,MAAM,MAAM,CAAC;AACzB,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type WriteFileAtomicData = string | NodeJS.ArrayBufferView;
|
|
2
|
+
export interface WriteFileAtomicOptions {
|
|
3
|
+
/** Mode for the final file. Default: 0o644. */
|
|
4
|
+
mode?: number;
|
|
5
|
+
/** Encoding when `data` is a string. Default: utf-8. */
|
|
6
|
+
encoding?: BufferEncoding;
|
|
7
|
+
/**
|
|
8
|
+
* Optional cancellation signal — async variant only. Aborts the
|
|
9
|
+
* underlying `fs.promises.writeFile`; if abort fires after the
|
|
10
|
+
* write completes but before the rename, the target is left
|
|
11
|
+
* unchanged and the temp file is cleaned up.
|
|
12
|
+
*/
|
|
13
|
+
signal?: AbortSignal;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Synchronous atomic write. Throws on failure. Best-effort temp cleanup.
|
|
17
|
+
*/
|
|
18
|
+
export declare function writeFileAtomicSync(target: string, data: WriteFileAtomicData, opts?: WriteFileAtomicOptions): void;
|
|
19
|
+
/**
|
|
20
|
+
* Async atomic write. Returns a Promise; rejects on failure. Best-effort
|
|
21
|
+
* temp cleanup. Uses `fs.promises` end-to-end.
|
|
22
|
+
*/
|
|
23
|
+
export declare function writeFileAtomic(target: string, data: WriteFileAtomicData, opts?: WriteFileAtomicOptions): Promise<void>;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import crypto from "node:crypto";
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
/**
|
|
4
|
+
* Atomic file-write helpers — write to a sibling temp file, then `rename`
|
|
5
|
+
* into the target path. A crash mid-write leaves only the orphan temp
|
|
6
|
+
* file; the target is either the old content or the new content, never
|
|
7
|
+
* truncated.
|
|
8
|
+
*
|
|
9
|
+
* Why a shared helper?
|
|
10
|
+
* The recipe-runner / approval / token-storage paths already use this
|
|
11
|
+
* shape ad-hoc (see runLog.ts, decisionTraceLog.ts, activationMetrics.ts,
|
|
12
|
+
* connectors/tokenStorage.ts). The user-source-file edit tools
|
|
13
|
+
* (`editText`, `replaceBlock`, `searchAndReplace`, `transaction`,
|
|
14
|
+
* `refactorExtractFunction`, `fileOperations` overwrite) were doing
|
|
15
|
+
* direct `writeFile`/`writeFileSync` — a crash mid-write corrupts the
|
|
16
|
+
* user's code. Audit 2026-05-17.
|
|
17
|
+
*
|
|
18
|
+
* Temp-name shape: `${target}.tmp.${pid}.${rand}` — pid + 12 random hex
|
|
19
|
+
* chars so concurrent writes to the same target don't collide on their
|
|
20
|
+
* temp files (the rename is single-threaded at the kernel level; the
|
|
21
|
+
* collision risk is the temp file, not the final state).
|
|
22
|
+
*
|
|
23
|
+
* Cleanup on failure: if `writeFile` succeeds but `rename` fails, we
|
|
24
|
+
* best-effort `unlink` the temp file before re-throwing. If `writeFile`
|
|
25
|
+
* itself fails the temp file may not exist; we ignore unlink errors in
|
|
26
|
+
* both cases.
|
|
27
|
+
*
|
|
28
|
+
* NOT a `fsync` guarantee: Node's `writeFile`/`writeFileSync` does not
|
|
29
|
+
* fsync the file before close, and `rename`/`renameSync` does not fsync
|
|
30
|
+
* the parent dir. On `ext4` data=ordered and `apfs` this is fine in
|
|
31
|
+
* practice — the rename can't make the new contents visible until the
|
|
32
|
+
* data write hits the journal. On power-loss this guarantee weakens;
|
|
33
|
+
* accept that as a separate hardening pass.
|
|
34
|
+
*/
|
|
35
|
+
function tempPathFor(target) {
|
|
36
|
+
const rand = crypto.randomBytes(6).toString("hex");
|
|
37
|
+
return `${target}.tmp.${process.pid}.${rand}`;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Synchronous atomic write. Throws on failure. Best-effort temp cleanup.
|
|
41
|
+
*/
|
|
42
|
+
export function writeFileAtomicSync(target, data, opts = {}) {
|
|
43
|
+
const tmp = tempPathFor(target);
|
|
44
|
+
const mode = opts.mode ?? 0o644;
|
|
45
|
+
try {
|
|
46
|
+
if (typeof data === "string") {
|
|
47
|
+
fs.writeFileSync(tmp, data, { mode, encoding: opts.encoding ?? "utf-8" });
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
fs.writeFileSync(tmp, data, { mode });
|
|
51
|
+
}
|
|
52
|
+
fs.renameSync(tmp, target);
|
|
53
|
+
}
|
|
54
|
+
catch (err) {
|
|
55
|
+
try {
|
|
56
|
+
fs.unlinkSync(tmp);
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
// already gone or never created
|
|
60
|
+
}
|
|
61
|
+
throw err;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Async atomic write. Returns a Promise; rejects on failure. Best-effort
|
|
66
|
+
* temp cleanup. Uses `fs.promises` end-to-end.
|
|
67
|
+
*/
|
|
68
|
+
export async function writeFileAtomic(target, data, opts = {}) {
|
|
69
|
+
const tmp = tempPathFor(target);
|
|
70
|
+
const mode = opts.mode ?? 0o644;
|
|
71
|
+
try {
|
|
72
|
+
if (typeof data === "string") {
|
|
73
|
+
await fs.promises.writeFile(tmp, data, {
|
|
74
|
+
mode,
|
|
75
|
+
encoding: opts.encoding ?? "utf-8",
|
|
76
|
+
signal: opts.signal,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
await fs.promises.writeFile(tmp, data, { mode, signal: opts.signal });
|
|
81
|
+
}
|
|
82
|
+
await fs.promises.rename(tmp, target);
|
|
83
|
+
}
|
|
84
|
+
catch (err) {
|
|
85
|
+
try {
|
|
86
|
+
await fs.promises.unlink(tmp);
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
// already gone or never created
|
|
90
|
+
}
|
|
91
|
+
throw err;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=writeFileAtomic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeFileAtomic.js","sourceRoot":"","sources":["../src/writeFileAtomic.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,SAAS,WAAW,CAAC,MAAc;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,GAAG,MAAM,QAAQ,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;AAChD,CAAC;AAkBD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,IAAyB,EACzB,OAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;IAChC,IAAI,CAAC;QACH,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO,EAAE,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,IAAyB,EACzB,OAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;IAChC,IAAI,CAAC;QACH,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE;gBACrC,IAAI;gBACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO;gBAClC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "patchwork-os",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.5",
|
|
4
4
|
"description": "Your personal AI runtime, local-first. Patchwork OS gives any AI model a consistent set of tools, YAML recipes, a delegation policy with approval queue, and a durable trace memory — all on your machine, all under your policy.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
package/scripts/postinstall.mjs
CHANGED
|
@@ -8,9 +8,10 @@
|
|
|
8
8
|
* @vscode/ripgrep → node_modules/.bin/rg
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
-
import {
|
|
11
|
+
import { execFileSync } from "node:child_process";
|
|
12
12
|
import {
|
|
13
13
|
chmodSync,
|
|
14
|
+
copyFileSync,
|
|
14
15
|
existsSync,
|
|
15
16
|
mkdirSync,
|
|
16
17
|
symlinkSync,
|
|
@@ -51,8 +52,19 @@ function linkBin(pkgName, binaryName, linkName = binaryName) {
|
|
|
51
52
|
if (existsSync(dest)) {
|
|
52
53
|
unlinkSync(dest);
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
try {
|
|
56
|
+
symlinkSync(src, dest);
|
|
57
|
+
console.log(` linked ${linkName} → ${path.relative(root, src)}`);
|
|
58
|
+
} catch (err) {
|
|
59
|
+
// Windows non-admin users can't create symlinks without Developer Mode.
|
|
60
|
+
// Fall back to a copy so the binary is still discoverable.
|
|
61
|
+
if (process.platform === "win32") {
|
|
62
|
+
copyFileSync(src, dest);
|
|
63
|
+
console.log(` copied ${linkName} → ${path.relative(root, src)}`);
|
|
64
|
+
} else {
|
|
65
|
+
throw err;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
56
68
|
} catch {
|
|
57
69
|
// Package not installed — silently skip
|
|
58
70
|
}
|
|
@@ -78,10 +90,11 @@ if (
|
|
|
78
90
|
"[postinstall] Installing dashboard dependencies (first-time setup)...",
|
|
79
91
|
);
|
|
80
92
|
try {
|
|
81
|
-
execSync
|
|
93
|
+
// Use execFileSync instead of execSync to avoid shell invocation
|
|
94
|
+
const npmCmd = process.platform === "win32" ? "npm.cmd" : "npm";
|
|
95
|
+
execFileSync(npmCmd, ["install", "--prefer-offline"], {
|
|
82
96
|
cwd: dashboardDir,
|
|
83
97
|
stdio: "inherit",
|
|
84
|
-
shell: true,
|
|
85
98
|
});
|
|
86
99
|
console.log("[postinstall] Dashboard dependencies installed.");
|
|
87
100
|
} catch {
|
|
@@ -12,6 +12,38 @@ const BRIDGE = process.env.BRIDGE ?? "claude-ide-bridge";
|
|
|
12
12
|
const PORT = 37210;
|
|
13
13
|
const CAT2_PORT = 37211;
|
|
14
14
|
|
|
15
|
+
// Security: shell metacharacters that could enable command injection.
|
|
16
|
+
// On Windows `\` is the path separator (D:\…\bridge.cmd), not an injection
|
|
17
|
+
// vector. Same fix PR #527 applied to scripts/start-all.mjs.
|
|
18
|
+
const SHELL_METACHARACTERS =
|
|
19
|
+
process.platform === "win32"
|
|
20
|
+
? /[;&|`$(){}[\]<>"'\n\r]/
|
|
21
|
+
: /[;&|`$(){}[\]<>"'\\\n\r]/;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Validate that a binary path is safe to execute.
|
|
25
|
+
* Prevents command injection by checking for shell metacharacters.
|
|
26
|
+
* @throws Error if path contains dangerous characters
|
|
27
|
+
*/
|
|
28
|
+
function validateBinaryPath(binaryPath) {
|
|
29
|
+
if (!binaryPath || typeof binaryPath !== "string") {
|
|
30
|
+
throw new Error("Binary path is empty or invalid");
|
|
31
|
+
}
|
|
32
|
+
if (SHELL_METACHARACTERS.test(binaryPath)) {
|
|
33
|
+
throw new Error(
|
|
34
|
+
`Binary path contains shell metacharacters (potential injection): ${binaryPath}`,
|
|
35
|
+
);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// Validate BRIDGE path on startup
|
|
40
|
+
try {
|
|
41
|
+
validateBinaryPath(BRIDGE);
|
|
42
|
+
} catch (err) {
|
|
43
|
+
console.error(`ERROR: ${err.message}`);
|
|
44
|
+
process.exit(1);
|
|
45
|
+
}
|
|
46
|
+
|
|
15
47
|
const TMPWS = fs.mkdtempSync(path.join(os.tmpdir(), "patchwork-smoke-ws-"));
|
|
16
48
|
const CLAUDE_CFG = fs.mkdtempSync(
|
|
17
49
|
path.join(os.tmpdir(), "patchwork-smoke-cfg-"),
|
|
@@ -47,7 +79,13 @@ process.on("exit", cleanup);
|
|
|
47
79
|
process.on("SIGINT", () => process.exit(1));
|
|
48
80
|
process.on("SIGTERM", () => process.exit(1));
|
|
49
81
|
|
|
50
|
-
|
|
82
|
+
// Windows GHA runners are noticeably slower at cold-starting node (signed-
|
|
83
|
+
// binary scan, AV hooks). 10s causes recurring "lock file not written" flakes
|
|
84
|
+
// on main. PR #538 doubled the bound in helpers.mjs for individual smoke
|
|
85
|
+
// scripts; this harness was missed. Match the doubled budget here too.
|
|
86
|
+
const DEFAULT_LOCK_TIMEOUT_MS = process.platform === "win32" ? 30_000 : 10_000;
|
|
87
|
+
|
|
88
|
+
function waitForLock(cfgDir, port, timeoutMs = DEFAULT_LOCK_TIMEOUT_MS) {
|
|
51
89
|
const lockPath = path.join(cfgDir, "ide", `${port}.lock`);
|
|
52
90
|
const deadline = Date.now() + timeoutMs;
|
|
53
91
|
while (!fs.existsSync(lockPath)) {
|
|
@@ -58,14 +96,22 @@ function waitForLock(cfgDir, port, timeoutMs = 10_000) {
|
|
|
58
96
|
return true;
|
|
59
97
|
}
|
|
60
98
|
|
|
61
|
-
// Spawn bridge for the given port and config dir.
|
|
99
|
+
// Spawn bridge for the given port and config dir. Captures stderr so a
|
|
100
|
+
// startup failure can be surfaced — `stdio: "ignore"` would swallow it
|
|
101
|
+
// and leave the operator staring at "lock file not written after 10s".
|
|
62
102
|
function startBridge(port, cfgDir, wsDir) {
|
|
103
|
+
// Security: BRIDGE path already validated on startup
|
|
63
104
|
const proc = spawn(BRIDGE, ["--port", String(port), "--workspace", wsDir], {
|
|
64
105
|
env: { ...process.env, CLAUDE_CONFIG_DIR: cfgDir },
|
|
65
|
-
stdio: "ignore",
|
|
106
|
+
stdio: ["ignore", "ignore", "pipe"],
|
|
66
107
|
// On Windows, npm global bins are .cmd wrappers that need shell:true
|
|
108
|
+
// Safe because BRIDGE path is validated for injection chars on startup
|
|
67
109
|
shell: process.platform === "win32",
|
|
68
110
|
});
|
|
111
|
+
proc.stderrBuf = "";
|
|
112
|
+
proc.stderr.on("data", (d) => {
|
|
113
|
+
proc.stderrBuf += d.toString();
|
|
114
|
+
});
|
|
69
115
|
return proc;
|
|
70
116
|
}
|
|
71
117
|
|
|
@@ -75,7 +121,12 @@ const bridgeProc = startBridge(PORT, CLAUDE_CFG, TMPWS);
|
|
|
75
121
|
bridgePid = bridgeProc.pid;
|
|
76
122
|
|
|
77
123
|
if (!waitForLock(CLAUDE_CFG, PORT)) {
|
|
78
|
-
console.error(
|
|
124
|
+
console.error(
|
|
125
|
+
`ERROR: bridge lock file not written after ${DEFAULT_LOCK_TIMEOUT_MS / 1000}s`,
|
|
126
|
+
);
|
|
127
|
+
console.error(
|
|
128
|
+
`Bridge stderr (last 4 KB):\n${(bridgeProc.stderrBuf || "(empty)").slice(-4096)}`,
|
|
129
|
+
);
|
|
79
130
|
process.exit(1);
|
|
80
131
|
}
|
|
81
132
|
// tiny extra buffer for WS listener to bind
|