olympus-ai 4.3.0 → 4.4.1

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.
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "olympus-ai",
3
- "version": "4.3.0",
3
+ "version": "4.4.1",
4
4
  "description": "Olympus: Multi-agent orchestration for Claude Code. Summon the gods of code.",
5
5
  "author": {
6
6
  "name": "mikev10",
package/README.md CHANGED
@@ -27,7 +27,7 @@ Olympus is a multi-agent orchestration system for [Claude Code](https://docs.ant
27
27
  - 📋 **Todo Management** - Tracks progress with real-time updates
28
28
  - 🔄 **Background Execution** - Long-running tasks run async with notifications
29
29
  - 🎯 **Continuation Enforcement** - Never stops until all tasks are complete
30
- - 💬 **19 Slash Commands** - `/ultrawork`, `/plan`, `/ascent`, `/continue`, `/review`, and more
30
+ - 💬 **20 Slash Commands** - `/ultrawork`, `/plan`, `/ascent`, `/continue`, `/review`, and more
31
31
  - 🔮 **AI-DLC Workflow** - Inception → Construction → Operations pipeline for structured development
32
32
  - 🌐 **Language Agnostic** - Works with any tech stack: Python, .NET, Go, Rust, Java, and more
33
33
  - 🔮 **Magic Keywords** - Natural language triggers for enhanced modes
@@ -69,7 +69,7 @@ Olympus transforms Claude Code from a single agent into a **pantheon of speciali
69
69
 
70
70
  - **Zero Configuration** - Works out-of-the-box with sensible defaults
71
71
  - **Works Everywhere** - Not tied to any language or framework — orchestrates across .NET, Python, Go, Rust, Java, and any codebase
72
- - **Slash Commands** - 19 slash commands (`/ultrawork`, `/plan`, `/ascent`, `/continue`)
72
+ - **Slash Commands** - 20 slash commands (`/ultrawork`, `/plan`, `/ascent`, `/continue`)
73
73
  - **Magic Keywords** - Natural language triggers for enhanced modes
74
74
 
75
75
  ### 📊 Olympus vs. Manual Claude Usage
@@ -168,6 +168,7 @@ claude
168
168
  | `/deepsearch <query>` | Thorough multi-strategy codebase search |
169
169
  | `/analyze <target>` | Deep analysis and investigation |
170
170
  | `/complete-plan [path]` | Verify and complete a plan after implementation |
171
+ | `/archive [id\|--all]` | Archive completed AI-DLC workflows to aidlc-docs/completed/ |
171
172
  | `/continue` | Resume an active AI-DLC workflow from last checkpoint |
172
173
  | `/retro` | Run a guardrail retrospective on the current AI-DLC workflow |
173
174
  | `/workflow-status` | View all active structured workflows and their status |
@@ -13,6 +13,7 @@ export { detectKeywordsWithType, extractPromptText, removeCodeBlocks, type Detec
13
13
  export { createAscentLoopHook, readAscentState, writeAscentState, clearAscentState, type AscentLoopState, type AscentLoopHook } from './ascent/index.js';
14
14
  export { createTodoContinuationHook, checkIncompleteTodos, type TodoContinuationHook } from './todo-continuation/index.js';
15
15
  export { processHook, type HookInput, type HookOutput } from './bridge.js';
16
+ export { createMcpCleanupHook, cleanupOrphanedMcpProcesses, findOrphanedMcpProcesses, killOrphanedProcesses, isMcpProcess, HOOK_NAME as MCP_CLEANUP_HOOK_NAME, MCP_COMMAND_PATTERN, MCP_SPECIFIC_PATTERNS, type ProcessInfo as McpProcessInfo } from './mcp-cleanup/index.js';
16
17
  export { createEditErrorRecoveryHook, detectEditError, injectEditErrorRecovery, processEditOutput, EDIT_ERROR_PATTERNS, EDIT_ERROR_REMINDER, type ToolExecuteInput, type ToolExecuteOutput } from './edit-error-recovery/index.js';
17
18
  export { createThinkModeHook, detectThinkKeyword, detectUltrathinkKeyword, extractPromptText as extractThinkPromptText, removeCodeBlocks as removeThinkCodeBlocks, getHighVariant, isAlreadyHighVariant, getThinkingConfig, getClaudeThinkingConfig, clearThinkModeState, getThinkModeState, isThinkModeActive, processThinkMode, shouldActivateThinkMode, shouldActivateUltrathink, THINKING_CONFIGS, type ThinkModeState, type ModelRef, type MessageWithModel, type ThinkModeInput, type ClaudeThinkingConfig, type ThinkingConfig } from './think-mode/index.js';
18
19
  export { createRulesInjectorHook, getRulesForPath, findProjectRoot, findRuleFiles, parseRuleFrontmatter, shouldApplyRule, createContentHash, isDuplicateByRealPath, isDuplicateByContentHash, loadInjectedRules, saveInjectedRules, clearInjectedRules, RULES_INJECTOR_STORAGE, PROJECT_MARKERS, PROJECT_RULE_SUBDIRS, PROJECT_RULE_FILES, USER_RULE_DIR, RULE_EXTENSIONS, TRACKED_TOOLS, type RuleMetadata, type RuleInfo, type RuleFileCandidate, type InjectedRulesData, type RuleToInject, type MatchResult, type RuleFrontmatterResult } from './rules-injector/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ createTodoContinuationHook, checkIncompleteTodos } from './todo-continuation/ind
21
21
  export {
22
22
  // Hook Bridge (main entry point for shell scripts)
23
23
  processHook } from './bridge.js';
24
+ export { createMcpCleanupHook, cleanupOrphanedMcpProcesses, findOrphanedMcpProcesses, killOrphanedProcesses, isMcpProcess, HOOK_NAME as MCP_CLEANUP_HOOK_NAME, MCP_COMMAND_PATTERN, MCP_SPECIFIC_PATTERNS } from './mcp-cleanup/index.js';
24
25
  export {
25
26
  // Edit Error Recovery
26
27
  createEditErrorRecoveryHook, detectEditError, injectEditErrorRecovery, processEditOutput, EDIT_ERROR_PATTERNS, EDIT_ERROR_REMINDER } from './edit-error-recovery/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO;AACL,oBAAoB;AACpB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,EAGjB,MAAM,6BAA6B,CAAC;AAErC,OAAO;AACL,2BAA2B;AAC3B,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAGjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO;AACL,oBAAoB;AACpB,0BAA0B,EAC1B,oBAAoB,EAErB,MAAM,8BAA8B,CAAC;AAEtC,OAAO;AACL,mDAAmD;AACnD,WAAW,EAGZ,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,wBAAwB,EACxB,qBAAqB,EACrB,YAAY,EACZ,SAAS,IAAI,qBAAqB,EAClC,mBAAmB,EACnB,qBAAqB,EAEtB,MAAM,wBAAwB,CAAC;AAEhC,OAAO;AACL,sBAAsB;AACtB,2BAA2B,EAC3B,eAAe,EACf,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EAGpB,MAAM,gCAAgC,CAAC;AAExC,OAAO;AACL,aAAa;AACb,mBAAmB,EACnB,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,IAAI,sBAAsB,EAC3C,gBAAgB,IAAI,qBAAqB,EACzC,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,EACxB,gBAAgB,EAOjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO;AACL,iBAAiB;AACjB,uBAAuB,EACvB,eAAe,EACf,eAAe,EACf,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,aAAa,EAQd,MAAM,2BAA2B,CAAC;AAEnC,OAAO;AACL,uBAAuB;AACvB,6BAA6B,EAC7B,aAAa,EACb,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,SAAS,IAAI,8BAA8B,EAC3C,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,gCAAgC,EAChC,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EAGtB,MAAM,iCAAiC,CAAC;AAEzC,OAAO;AACL,qBAAqB;AACrB,0BAA0B,EAC1B,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,IAAI,sBAAsB,EAC3C,iBAAiB,EACjB,gBAAgB,IAAI,qBAAqB,EACzC,iBAAiB,EACjB,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACnB,qBAAqB,EACrB,SAAS,IAAI,4BAA4B,EACzC,2BAA2B,EAC3B,4BAA4B,EAC5B,qBAAqB,EACrB,iBAAiB,EASlB,MAAM,+BAA+B,CAAC;AAEvC,OAAO;AACL,kBAAkB;AAClB,wBAAwB,EACxB,gBAAgB,EAChB,YAAY,IAAI,mBAAmB,EACnC,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,IAAI,8BAA8B,EACrD,qBAAqB,EACrB,qBAAqB,EAKtB,MAAM,4BAA4B,CAAC;AAEpC,OAAO;AACL,gCAAgC;AAChC,8BAA8B,EAC9B,uBAAuB,EACvB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,8BAA8B,EAC9B,2BAA2B,EAC3B,kCAAkC,EAClC,0BAA0B,EAC1B,uBAAuB,EACvB,YAAY,EACZ,eAAe,EAMhB,MAAM,0CAA0C,CAAC;AAElD,OAAO;AACL,2BAA2B;AAC3B,+BAA+B,EAEhC,MAAM,qCAAqC,CAAC;AAE7C,OAAO;AACL,wBAAwB;AACxB,8BAA8B,EAC9B,cAAc,EACd,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,iBAAiB,IAAI,4BAA4B,EACjD,kBAAkB,EAClB,sBAAsB,EACtB,YAAY,EACZ,4BAA4B,EAC5B,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EAGzB,MAAM,kCAAkC,CAAC;AAE1C,OAAO;AACL,0BAA0B;AAC1B,gCAAgC,EAChC,6BAA6B,EAC7B,iCAAiC,EACjC,4BAA4B,EAC5B,qBAAqB,EACrB,SAAS,IAAI,iCAAiC,EAK/C,MAAM,oCAAoC,CAAC;AAE5C,OAAO;AACL,4BAA4B;AAC5B,iCAAiC,EACjC,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,eAAe,EACf,aAAa,IAAI,oBAAoB,EAEtC,MAAM,sCAAsC,CAAC;AAE9C,OAAO;AACL,0BAA0B;AAC1B,+BAA+B,EAC/B,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,SAAS,IAAI,iCAAiC,EAC9C,YAAY,IAAI,oCAAoC,EACpD,cAAc,IAAI,sCAAsC,EAOzD,MAAM,oCAAoC,CAAC;AAE5C,OAAO;AACL,2BAA2B;AAC3B,gCAAgC,EAChC,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,2BAA2B,EAC3B,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,IAAI,kCAAkC,EAC/C,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,eAAe,EAQhB,MAAM,qCAAqC,CAAC;AAE7C,OAAO;AACL,8BAA8B;AAC9B,qBAAqB,EACrB,gBAAgB,EAChB,SAAS,IAAI,6BAA6B,EAC1C,mBAAmB,EACnB,sBAAsB,EAGvB,MAAM,gCAAgC,CAAC;AAExC,OAAO;AACL,mBAAmB;AACnB,yBAAyB,EACzB,qBAAqB,EACrB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,IAAI,yBAAyB,EAC9C,8BAA8B,IAAI,0BAA0B,EAC5D,8BAA8B,IAAI,0BAA0B,EAC5D,YAAY,IAAI,oBAAoB,EACpC,SAAS,IAAI,iBAAiB,EAC9B,iBAAiB,EACjB,gBAAgB,IAAI,yBAAyB,EAS9C,MAAM,6BAA6B,CAAC;AAErC,OAAO;AACL,uBAAuB;AACvB,4BAA4B,EAC5B,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,YAAY,EACZ,WAAW,EACX,gBAAgB,EAEjB,MAAM,iCAAiC,CAAC;AAEzC,OAAO;AACL,oCAAoC;AACpC,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EAEzB,MAAM,4BAA4B,CAAC;AAEpC,OAAO;AACL,yCAAyC;AACzC,oBAAoB,EACpB,gBAAgB,EAEjB,MAAM,4BAA4B,CAAC;AAEpC,OAAO;AACL,+CAA+C;AAC/C,YAAY,EACZ,oBAAoB,EACpB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,qBAAqB,EACrB,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,2BAA2B,EAC3B,oBAAoB,EAKrB,MAAM,4BAA4B,CAAC;AAEpC,OAAO;AACL,+CAA+C;AAC/C,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,oCAAoC,EACpC,oBAAoB,EACpB,qBAAqB,EAEtB,MAAM,4BAA4B,CAAC;AAEpC,OAAO;AACL,gBAAgB;AAChB,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,aAAa,EACd,MAAM,eAAe,CAAC;AAEvB,OAAO;AACL,cAAc;AACd,SAAS,EACT,cAAc,EACf,MAAM,aAAa,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * MCP Process Cleanup Hook
3
+ *
4
+ * Kills orphaned MCP server processes from previous Claude Code sessions.
5
+ * Only kills processes whose parent process no longer exists (safe for
6
+ * multiple simultaneous Claude Code sessions).
7
+ *
8
+ * Windows-only for now — gracefully skips on other platforms.
9
+ */
10
+ export declare const HOOK_NAME = "mcpProcessCleanup";
11
+ export declare const MCP_COMMAND_PATTERN: RegExp;
12
+ export declare const MCP_SPECIFIC_PATTERNS: RegExp[];
13
+ export interface ProcessInfo {
14
+ ProcessId: number;
15
+ ParentProcessId: number;
16
+ CommandLine: string | null;
17
+ }
18
+ export declare function isMcpProcess(commandLine: string | null): boolean;
19
+ export declare function findOrphanedMcpProcesses(processes: ProcessInfo[], allRunningPids: Set<number>): ProcessInfo[];
20
+ export declare function killOrphanedProcesses(orphaned: ProcessInfo[]): number;
21
+ export declare function cleanupOrphanedMcpProcesses(): number;
22
+ export declare function createMcpCleanupHook(): void;
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/mcp-cleanup/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,eAAO,MAAM,SAAS,sBAAsB,CAAC;AAG7C,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAE1C,eAAO,MAAM,qBAAqB,UAOjC,CAAC;AAEF,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAGhE;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,WAAW,EAAE,EACxB,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,GAC1B,WAAW,EAAE,CAMf;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,CAerE;AAED,wBAAgB,2BAA2B,IAAI,MAAM,CAsCpD;AAED,wBAAgB,oBAAoB,IAAI,IAAI,CAqB3C"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * MCP Process Cleanup Hook
3
+ *
4
+ * Kills orphaned MCP server processes from previous Claude Code sessions.
5
+ * Only kills processes whose parent process no longer exists (safe for
6
+ * multiple simultaneous Claude Code sessions).
7
+ *
8
+ * Windows-only for now — gracefully skips on other platforms.
9
+ */
10
+ import { execSync } from 'child_process';
11
+ import { registerHook } from '../registry.js';
12
+ export const HOOK_NAME = 'mcpProcessCleanup';
13
+ // Matches npx invocations or direct node runs of MCP packages
14
+ export const MCP_COMMAND_PATTERN = /mcp/i;
15
+ export const MCP_SPECIFIC_PATTERNS = [
16
+ /server-filesystem/i,
17
+ /context7/i,
18
+ /playwright.*mcp|mcp.*playwright/i,
19
+ /perplexity/i,
20
+ /shadcn/i,
21
+ /mcp-local-rag/i,
22
+ ];
23
+ export function isMcpProcess(commandLine) {
24
+ if (!commandLine)
25
+ return false;
26
+ return MCP_COMMAND_PATTERN.test(commandLine);
27
+ }
28
+ export function findOrphanedMcpProcesses(processes, allRunningPids) {
29
+ return processes.filter(p => {
30
+ if (!isMcpProcess(p.CommandLine))
31
+ return false;
32
+ // Parent is dead — this process is orphaned
33
+ return !allRunningPids.has(p.ParentProcessId);
34
+ });
35
+ }
36
+ export function killOrphanedProcesses(orphaned) {
37
+ let killed = 0;
38
+ for (const proc of orphaned) {
39
+ try {
40
+ execSync(`taskkill /T /F /PID ${proc.ProcessId}`, {
41
+ encoding: 'utf8',
42
+ timeout: 5000,
43
+ stdio: 'pipe'
44
+ });
45
+ killed++;
46
+ }
47
+ catch {
48
+ // Process may have already exited — not an error
49
+ }
50
+ }
51
+ return killed;
52
+ }
53
+ export function cleanupOrphanedMcpProcesses() {
54
+ if (process.platform !== 'win32') {
55
+ return 0; // Only Windows for now
56
+ }
57
+ try {
58
+ const psScript = `
59
+ $nodeProcs = Get-CimInstance Win32_Process -Filter "Name='node.exe'" |
60
+ Select-Object ProcessId, ParentProcessId, CommandLine;
61
+ $allPids = (Get-Process -ErrorAction SilentlyContinue).Id;
62
+ @{
63
+ nodeProcesses = @($nodeProcs | ForEach-Object { @{ ProcessId=$_.ProcessId; ParentProcessId=$_.ParentProcessId; CommandLine=$_.CommandLine } });
64
+ allPids = @($allPids)
65
+ } | ConvertTo-Json -Depth 3
66
+ `.replace(/\n/g, ' ');
67
+ const output = execSync(`powershell -NoProfile -Command "${psScript}"`, { encoding: 'utf8', timeout: 15000, stdio: ['pipe', 'pipe', 'pipe'] });
68
+ const data = JSON.parse(output);
69
+ const processes = Array.isArray(data.nodeProcesses)
70
+ ? data.nodeProcesses
71
+ : data.nodeProcesses ? [data.nodeProcesses] : [];
72
+ const allPids = new Set(Array.isArray(data.allPids) ? data.allPids : data.allPids ? [data.allPids] : []);
73
+ const orphaned = findOrphanedMcpProcesses(processes, allPids);
74
+ if (orphaned.length === 0)
75
+ return 0;
76
+ return killOrphanedProcesses(orphaned);
77
+ }
78
+ catch (error) {
79
+ // Never block session start
80
+ console.error('[Olympus MCP Cleanup] Error:', error);
81
+ return 0;
82
+ }
83
+ }
84
+ export function createMcpCleanupHook() {
85
+ registerHook({
86
+ name: HOOK_NAME,
87
+ event: 'SessionStart',
88
+ priority: 1, // Run FIRST — before any other session hooks
89
+ handler: (_ctx) => {
90
+ const killed = cleanupOrphanedMcpProcesses();
91
+ if (killed > 0) {
92
+ return {
93
+ continue: true,
94
+ hookSpecificOutput: {
95
+ hookEventName: 'SessionStart',
96
+ additionalContext: `[MCP Cleanup] Removed ${killed} orphaned MCP server process${killed === 1 ? '' : 'es'} from previous session(s).`
97
+ }
98
+ };
99
+ }
100
+ return { continue: true };
101
+ }
102
+ });
103
+ }
104
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/mcp-cleanup/index.ts"],"names":[],"mappings":"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"}