From 6ba22239680ab522de365c4bfa717531c36afe80 Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 01:12:16 +0800 Subject: [PATCH 1/8] feat: add codex inspector --- AGENTS.md | 1 + README.MD | 10 + cli/codex_inspector/diagnostics.go | 58 ++ cli/codex_inspector/main.go | 44 + cli/codex_inspector/memory.go | 225 +++++ cli/codex_inspector/memory_test.go | 35 + cli/codex_inspector/parser.go | 510 ++++++++++ cli/codex_inspector/parser_test.go | 110 ++ cli/codex_inspector/redact.go | 75 ++ cli/codex_inspector/server.go | 103 ++ cli/codex_inspector/sqlite_cache.go | 160 +++ cli/codex_inspector/static/app.js | 607 ++++++++++++ cli/codex_inspector/static/index.html | 170 ++++ cli/codex_inspector/static/styles.css | 937 ++++++++++++++++++ cli/codex_inspector/stats.go | 132 +++ cli/codex_inspector/stats_test.go | 61 ++ cli/codex_inspector/store.go | 576 +++++++++++ cli/codex_inspector/timeutil.go | 97 ++ cli/codex_inspector/types.go | 165 +++ docs/assets/codex_inspector/memory-768.png | Bin 0 -> 84562 bytes docs/assets/codex_inspector/overview-1440.png | Bin 0 -> 245953 bytes docs/assets/codex_inspector/overview-390.png | Bin 0 -> 21069 bytes docs/assets/codex_inspector/sessions-1440.png | Bin 0 -> 313606 bytes docs/cli/codex_inspector.md | 165 +++ docs/install.md | 33 + go.mod | 14 +- go.sum | 47 +- 27 files changed, 4332 insertions(+), 3 deletions(-) create mode 100644 cli/codex_inspector/diagnostics.go create mode 100644 cli/codex_inspector/main.go create mode 100644 cli/codex_inspector/memory.go create mode 100644 cli/codex_inspector/memory_test.go create mode 100644 cli/codex_inspector/parser.go create mode 100644 cli/codex_inspector/parser_test.go create mode 100644 cli/codex_inspector/redact.go create mode 100644 cli/codex_inspector/server.go create mode 100644 cli/codex_inspector/sqlite_cache.go create mode 100644 cli/codex_inspector/static/app.js create mode 100644 cli/codex_inspector/static/index.html create mode 100644 cli/codex_inspector/static/styles.css create mode 100644 cli/codex_inspector/stats.go create mode 100644 cli/codex_inspector/stats_test.go create mode 100644 cli/codex_inspector/store.go create mode 100644 cli/codex_inspector/timeutil.go create mode 100644 cli/codex_inspector/types.go create mode 100644 docs/assets/codex_inspector/memory-768.png create mode 100644 docs/assets/codex_inspector/overview-1440.png create mode 100644 docs/assets/codex_inspector/overview-390.png create mode 100644 docs/assets/codex_inspector/sessions-1440.png create mode 100644 docs/cli/codex_inspector.md diff --git a/AGENTS.md b/AGENTS.md index c9253a9..7c79d74 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -17,6 +17,7 @@ - `cli/retry_exec/`:命令失败重试和失败通知工具。 - `cli/codex_hook_notify/`:Codex lifecycle hook 飞书提醒工具。 - `cli/file_share/`:临时 HTTP 文件分享工具。 +- `cli/codex_inspector/`:本机 Codex 历史会话、活跃度和记忆内容只读查看工具,当前是实验 CLI,不进默认安装清单。 - `cli/video_subtitle/`:单视频自动生成中文字幕工具,详细说明见 `docs/cli/video_subtitle.md`。 - `emby_plugins/video_subtitle/`:Emby Server 插件,后端调用 `video_subtitle` 生成字幕,详细说明见 `docs/plugins/emby_video_subtitle.md`。 - `gui/interview_timer/`:macOS 面试悬浮计时 GUI 应用,说明见 `docs/gui/interview_timer.md`。 diff --git a/README.MD b/README.MD index 3386085..893a2d5 100644 --- a/README.MD +++ b/README.MD @@ -43,6 +43,7 @@ | CLI | `codex_hook_notify` | `cli/codex_hook_notify/` | `codex_hook_notify` | 接收 Codex hook 并推送飞书提醒 | [docs/cli/codex_hook_notify.md](docs/cli/codex_hook_notify.md) | | CLI | `file_share` | `cli/file_share/` | `file_share` | 临时启动只读 HTTP 文件分享服务 | [docs/cli/file_share.md](docs/cli/file_share.md) | | CLI | `video_subtitle` | `cli/video_subtitle/` | `video_subtitle` | 为单个视频生成简体中文字幕 | [docs/cli/video_subtitle.md](docs/cli/video_subtitle.md) | +| Experimental CLI | `codex_inspector` | `cli/codex_inspector/` | `codex_inspector` | 本机只读查看 Codex 会话、token 用量、活跃度和记忆内容 | [docs/cli/codex_inspector.md](docs/cli/codex_inspector.md) | | Plugin | Emby 字幕插件 | `emby_plugins/video_subtitle/` | `LifeTools.Emby.VideoSubtitle.Emby.dll` | 在 Emby 后台调用 `video_subtitle` 生成字幕 | [docs/plugins/emby_video_subtitle.md](docs/plugins/emby_video_subtitle.md) | | GUI | InterviewTimer | `gui/interview_timer/` | `InterviewTimer.app` | macOS 面试悬浮计时器 | [docs/gui/interview_timer.md](docs/gui/interview_timer.md) | @@ -60,6 +61,15 @@ | `build.sh` | 构建 Go CLI 工具到 `output/`。 | | `install.sh` | 安装 CLI 工具、示例配置和可选 hook。 | +`codex_inspector` 当前是实验工具,不在 `install.sh` 默认稳定安装清单中。需要试用时单独构建: + +```bash +go build -o output/codex_inspector ./cli/codex_inspector/... +./output/codex_inspector -addr 127.0.0.1:8787 +``` + +历史 session summary 会写入本机 SQLite cache,加速重复浏览;可通过 `-cache-path` 指定位置,或用 `-no-cache` 禁用。 + ## 构建与验证 构建 Go CLI: diff --git a/cli/codex_inspector/diagnostics.go b/cli/codex_inspector/diagnostics.go new file mode 100644 index 0000000..55d7e28 --- /dev/null +++ b/cli/codex_inspector/diagnostics.go @@ -0,0 +1,58 @@ +package main + +import ( + "context" + "fmt" + "os" + "os/exec" + "path/filepath" + "time" +) + +func (s *Store) Diagnostics() DiagnosticsResponse { + response := DiagnosticsResponse{ + CodexHome: s.CodexHome, + Sources: s.Sources(), + } + dbs := []struct { + name string + rel string + }{ + {name: "state_5.sqlite", rel: "state_5.sqlite"}, + {name: "goals_1.sqlite", rel: "goals_1.sqlite"}, + {name: "memories_1.sqlite", rel: "memories_1.sqlite"}, + } + for _, db := range dbs { + response.Schemas = append(response.Schemas, loadSQLiteSchema(db.name, filepath.Join(s.CodexHome, db.rel))) + } + return response +} + +func loadSQLiteSchema(name string, path string) SQLiteSchema { + schema := SQLiteSchema{Name: name, Path: path, ReadMode: "sqlite3 file URI mode=ro"} + if _, err := os.Stat(path); err != nil { + schema.Exists = false + schema.Error = err.Error() + return schema + } + schema.Exists = true + if _, err := exec.LookPath("sqlite3"); err != nil { + schema.Error = "sqlite3 command not found" + return schema + } + ctx, cancel := context.WithTimeout(context.Background(), 2*time.Second) + defer cancel() + + uri := fmt.Sprintf("file:%s?mode=ro", path) + output, err := exec.CommandContext(ctx, "sqlite3", uri, ".schema").CombinedOutput() + if err != nil { + schema.Error = sanitizeText(string(output)) + if schema.Error == "" { + schema.Error = err.Error() + } + return schema + } + schema.Loaded = true + schema.Schema = truncateText(sanitizeText(string(output)), 30000) + return schema +} diff --git a/cli/codex_inspector/main.go b/cli/codex_inspector/main.go new file mode 100644 index 0000000..88fd733 --- /dev/null +++ b/cli/codex_inspector/main.go @@ -0,0 +1,44 @@ +package main + +import ( + "flag" + "fmt" + "net/http" + "os" + "path/filepath" +) + +const defaultAddr = "127.0.0.1:8787" + +func main() { + addr := flag.String("addr", defaultAddr, "HTTP listen address") + codexHome := flag.String("codex-home", defaultCodexHome(), "Codex home directory") + cachePath := flag.String("cache-path", defaultCachePath(), "SQLite cache path for historical session summaries") + noCache := flag.Bool("no-cache", false, "disable SQLite summary cache") + flag.Parse() + + if *noCache { + *cachePath = "" + } + store := NewStoreWithCache(*codexHome, *cachePath) + defer store.Close() + fmt.Printf("codex_inspector reading data from %s\n", store.CodexHome) + if store.CachePath != "" { + fmt.Printf("codex_inspector caching historical summaries in %s\n", store.CachePath) + } + fmt.Printf("codex_inspector listening on http://%s\n", *addr) + fmt.Println("privacy: this tool is read-only and should be bound to 127.0.0.1 unless you understand the data exposure risk") + + if err := http.ListenAndServe(*addr, NewServer(store)); err != nil { + fmt.Fprintf(os.Stderr, "codex_inspector: listen failed: %v\n", err) + os.Exit(1) + } +} + +func defaultCodexHome() string { + home, err := os.UserHomeDir() + if err != nil || home == "" { + return ".codex" + } + return filepath.Join(home, ".codex") +} diff --git a/cli/codex_inspector/memory.go b/cli/codex_inspector/memory.go new file mode 100644 index 0000000..3902029 --- /dev/null +++ b/cli/codex_inspector/memory.go @@ -0,0 +1,225 @@ +package main + +import ( + "fmt" + "os" + "path/filepath" + "sort" + "strings" +) + +const maxMemoryReadBytes = 512 * 1024 + +func (s *Store) LoadMemory(query string, limit int) MemoryResponse { + files, warnings := s.memoryFiles() + out := make([]MemoryFile, 0, len(files)) + for _, path := range files { + item, err := s.memoryFileSummary(path, query) + if err != nil { + warnings = append(warnings, err.Error()) + continue + } + if query != "" && item.Matches == 0 { + continue + } + out = append(out, item) + } + if limit > 0 && len(out) > limit { + out = out[:limit] + } + return MemoryResponse{Files: out, Warnings: warnings} +} + +func (s *Store) LoadMemoryDetail(relPath string) (MemoryDetail, bool) { + path, ok := s.safeMemoryPath(relPath) + if !ok { + return MemoryDetail{Warnings: []string{"invalid memory path"}}, false + } + item, err := s.memoryFileSummary(path, "") + if err != nil { + return MemoryDetail{Warnings: []string{err.Error()}}, false + } + content, truncated, err := readTextFileLimit(path, maxMemoryReadBytes) + if err != nil { + return MemoryDetail{File: item, Warnings: []string{err.Error()}}, false + } + content = sanitizeText(content) + detail := MemoryDetail{File: item, Content: content} + if truncated { + detail.Warnings = append(detail.Warnings, fmt.Sprintf("content truncated at %d bytes", maxMemoryReadBytes)) + } + return detail, true +} + +func (s *Store) memoryFiles() ([]string, []string) { + root := filepath.Join(s.CodexHome, "memories") + allowed := map[string]bool{ + "MEMORY.md": true, + "memory_summary.md": true, + "raw_memories.md": true, + } + var files []string + var warnings []string + for name := range allowed { + path := filepath.Join(root, name) + if _, err := os.Stat(path); err == nil { + files = append(files, path) + } + } + rolloutDir := filepath.Join(root, "rollout_summaries") + err := filepath.WalkDir(rolloutDir, func(path string, d os.DirEntry, err error) error { + if err != nil { + warnings = append(warnings, fmt.Sprintf("walk %s: %v", path, err)) + return nil + } + if d.IsDir() { + return nil + } + if strings.HasSuffix(d.Name(), ".md") { + files = append(files, path) + } + return nil + }) + if err != nil && !os.IsNotExist(err) { + warnings = append(warnings, fmt.Sprintf("walk memory rollouts: %v", err)) + } + sort.Slice(files, func(i, j int) bool { + left, leftErr := os.Stat(files[i]) + right, rightErr := os.Stat(files[j]) + if leftErr == nil && rightErr == nil && !left.ModTime().Equal(right.ModTime()) { + return left.ModTime().After(right.ModTime()) + } + return files[i] < files[j] + }) + return files, warnings +} + +func (s *Store) memoryFileSummary(path string, query string) (MemoryFile, error) { + info, err := os.Stat(path) + if err != nil { + return MemoryFile{}, fmt.Errorf("stat memory file %s: %w", path, err) + } + content, truncated, err := readTextFileLimit(path, 96*1024) + if err != nil { + return MemoryFile{}, fmt.Errorf("read memory file %s: %w", path, err) + } + content = sanitizeText(content) + rel, _ := filepath.Rel(filepath.Join(s.CodexHome, "memories"), path) + rel = filepath.ToSlash(rel) + item := MemoryFile{ + Path: rel, + Kind: memoryKind(rel), + Size: info.Size(), + ModifiedAt: info.ModTime().Format("2006-01-02T15:04:05Z07:00"), + Title: memoryTitle(rel, content), + Preview: memoryPreview(content, query), + Matches: countMatches(content, query), + } + if truncated { + item.Preview = truncateText(item.Preview+"\n(content preview truncated)", 1200) + } + return item, nil +} + +func (s *Store) safeMemoryPath(relPath string) (string, bool) { + relPath = filepath.Clean(strings.TrimSpace(relPath)) + if relPath == "." || strings.HasPrefix(relPath, "..") || filepath.IsAbs(relPath) { + return "", false + } + path := filepath.Join(s.CodexHome, "memories", relPath) + root := filepath.Join(s.CodexHome, "memories") + if !strings.HasPrefix(path, root+string(filepath.Separator)) && path != root { + return "", false + } + if !strings.HasSuffix(path, ".md") { + return "", false + } + return path, true +} + +func readTextFileLimit(path string, maxBytes int64) (string, bool, error) { + file, err := os.Open(path) + if err != nil { + return "", false, err + } + defer file.Close() + + content := make([]byte, maxBytes+1) + n, err := file.Read(content) + if err != nil && n == 0 { + return "", false, err + } + truncated := int64(n) > maxBytes + if truncated { + n = int(maxBytes) + } + return string(content[:n]), truncated, nil +} + +func memoryKind(rel string) string { + switch { + case rel == "MEMORY.md": + return "index" + case rel == "memory_summary.md": + return "summary" + case strings.HasPrefix(rel, "rollout_summaries/"): + return "rollout" + default: + return "note" + } +} + +func memoryTitle(rel string, content string) string { + for _, line := range strings.Split(content, "\n") { + line = strings.TrimSpace(line) + if strings.HasPrefix(line, "#") { + return strings.TrimSpace(strings.TrimLeft(line, "#")) + } + if strings.HasPrefix(line, "thread_id:") { + continue + } + if line != "" { + break + } + } + return strings.TrimSuffix(filepath.Base(rel), filepath.Ext(rel)) +} + +func memoryPreview(content string, query string) string { + lines := strings.Split(content, "\n") + if query != "" { + for i, line := range lines { + if containsFold(line, query) { + start := i - 2 + if start < 0 { + start = 0 + } + end := i + 3 + if end > len(lines) { + end = len(lines) + } + return truncateText(strings.Join(lines[start:end], "\n"), 1000) + } + } + } + var picked []string + for _, line := range lines { + line = strings.TrimSpace(line) + if line == "" { + continue + } + picked = append(picked, line) + if len(picked) >= 8 { + break + } + } + return truncateText(strings.Join(picked, "\n"), 1000) +} + +func countMatches(content string, query string) int { + query = strings.ToLower(strings.TrimSpace(query)) + if query == "" { + return 0 + } + return strings.Count(strings.ToLower(content), query) +} diff --git a/cli/codex_inspector/memory_test.go b/cli/codex_inspector/memory_test.go new file mode 100644 index 0000000..f54aa34 --- /dev/null +++ b/cli/codex_inspector/memory_test.go @@ -0,0 +1,35 @@ +package main + +import ( + "os" + "path/filepath" + "testing" + + "github.com/stretchr/testify/require" +) + +func TestLoadMemorySearchAndDetail(t *testing.T) { + codexHome := t.TempDir() + memDir := filepath.Join(codexHome, "memories") + require.NoError(t, os.MkdirAll(filepath.Join(memDir, "rollout_summaries"), 0755)) + require.NoError(t, os.WriteFile(filepath.Join(memDir, "MEMORY.md"), []byte("# Memory Index\n\ncodex inspector note\napi_key=should-hide\n"), 0644)) + require.NoError(t, os.WriteFile(filepath.Join(memDir, "memory_summary.md"), []byte("summary only\n"), 0644)) + require.NoError(t, os.WriteFile(filepath.Join(memDir, "rollout_summaries", "demo.md"), []byte("thread_id: demo\n# Demo Rollout\nkeyword appears here\n"), 0644)) + + store := NewStoreWithCache(codexHome, "") + response := store.LoadMemory("keyword", 10) + require.Len(t, response.Files, 1) + require.Equal(t, "rollout_summaries/demo.md", response.Files[0].Path) + + detail, ok := store.LoadMemoryDetail("MEMORY.md") + require.True(t, ok) + require.Contains(t, detail.Content, "Memory Index") + require.NotContains(t, detail.Content, "should-hide") + require.Contains(t, detail.Content, "[REDACTED]") +} + +func TestLoadMemoryRejectsTraversal(t *testing.T) { + store := NewStoreWithCache(t.TempDir(), "") + _, ok := store.LoadMemoryDetail("../auth.json") + require.False(t, ok) +} diff --git a/cli/codex_inspector/parser.go b/cli/codex_inspector/parser.go new file mode 100644 index 0000000..bbe7b60 --- /dev/null +++ b/cli/codex_inspector/parser.go @@ -0,0 +1,510 @@ +package main + +import ( + "bufio" + "encoding/json" + "fmt" + "os" + "path/filepath" + "strings" +) + +type rolloutLine struct { + Type string `json:"type"` + Timestamp string `json:"timestamp"` + Payload json.RawMessage `json:"payload"` +} + +type responseItemHeader struct { + Type string `json:"type"` + Role string `json:"role"` +} + +func ParseRolloutFile(path string, includeEvents bool) (SessionDetail, error) { + file, err := os.Open(path) + if err != nil { + return SessionDetail{}, err + } + defer file.Close() + + detail := SessionDetail{ + Summary: SessionSummary{ + Path: path, + Title: strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)), + }, + } + scanner := bufio.NewScanner(file) + scanner.Buffer(make([]byte, 1024), 8*1024*1024) + + lineNo := 0 + for scanner.Scan() { + lineNo++ + line := scanner.Bytes() + trimmed := strings.TrimSpace(string(line)) + if trimmed == "" { + continue + } + detail.Summary.EventCount++ + + if includeEvents { + detail.RawLines = append(detail.RawLines, RawLine{Line: lineNo, Text: truncateText(sanitizedRawJSON(line), 60000)}) + } + + var record rolloutLine + if err := json.Unmarshal(line, &record); err != nil { + warning := fmt.Sprintf("line %d invalid JSON: %v", lineNo, err) + detail.Warnings = append(detail.Warnings, warning) + if includeEvents { + detail.Events = append(detail.Events, DisplayEvent{Line: lineNo, Kind: "system_event", Label: "Bad JSON", Text: warning}) + } + continue + } + if !includeEvents { + updateSummaryFast(&detail.Summary, record) + continue + } + event := parseDisplayEvent(record, lineNo) + updateSummary(&detail.Summary, record, event) + detail.Events = append(detail.Events, event) + } + if err := scanner.Err(); err != nil { + detail.Warnings = append(detail.Warnings, fmt.Sprintf("scan %s: %v", path, err)) + } + if detail.Summary.ID == "" { + detail.Summary.ID = strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) + } + if detail.Summary.Title == "" { + detail.Summary.Title = detail.Summary.ID + } + return detail, nil +} + +func updateSummaryFast(summary *SessionSummary, record rolloutLine) { + if summary.StartedAt == "" && record.Timestamp != "" { + summary.StartedAt = record.Timestamp + } + if record.Timestamp != "" { + summary.UpdatedAt = record.Timestamp + } + + if record.Type == "session_meta" || record.Type == "turn_context" { + payload := decodePayload(record.Payload) + if record.Type == "session_meta" { + if id := stringField(payload, "id"); id != "" { + summary.ID = id + } + if provider := stringField(payload, "model_provider"); provider != "" { + summary.ModelProvider = sanitizeText(provider) + } + } + if cwd := stringField(payload, "cwd"); cwd != "" && summary.Cwd == "" { + summary.Cwd = sanitizeText(cwd) + } + if model := stringField(payload, "model"); model != "" && summary.Model == "" { + summary.Model = sanitizeText(model) + } + summary.SystemEvents++ + return + } + + if updateTokenStats(summary, record) { + summary.SystemEvents++ + return + } + + if record.Type != "response_item" { + summary.SystemEvents++ + return + } + + var header responseItemHeader + if err := json.Unmarshal(record.Payload, &header); err != nil { + summary.SystemEvents++ + return + } + switch header.Type { + case "message": + if header.Role == "user" { + summary.UserMessages++ + } + if header.Role == "assistant" { + summary.AssistantMessages++ + } + if summary.Preview == "" { + payload := decodePayload(record.Payload) + summary.Preview = truncateText(extractContentText(payload["content"]), 220) + } + case "function_call", "custom_tool_call", "tool_search_call", "web_search_call": + summary.ToolCalls++ + case "function_call_output", "custom_tool_call_output", "tool_search_output": + summary.ToolResults++ + default: + summary.SystemEvents++ + } +} + +func parseDisplayEvent(record rolloutLine, lineNo int) DisplayEvent { + event := DisplayEvent{ + Line: lineNo, + Timestamp: record.Timestamp, + Kind: "system_event", + Label: record.Type, + } + + payload := decodePayload(record.Payload) + switch record.Type { + case "session_meta": + event.Label = "Session metadata" + event.Text = joinNonEmpty([]string{ + "id: " + stringField(payload, "id"), + "cwd: " + stringField(payload, "cwd"), + "model: " + stringField(payload, "model"), + "provider: " + stringField(payload, "model_provider"), + }, "\n") + case "turn_context": + event.Label = "Turn context" + event.Text = joinNonEmpty([]string{ + "cwd: " + stringField(payload, "cwd"), + "model: " + stringField(payload, "model"), + "approval: " + stringField(payload, "approval_policy"), + }, "\n") + case "event_msg": + event.Label = "System event" + if stringField(payload, "type") == "token_count" { + event.Label = "Token usage" + event.Text = tokenEventText(payload) + } else { + event.Text = eventMessageText(payload) + } + case "compacted": + event.Label = "Compacted context" + event.Text = stringField(payload, "message") + case "response_item": + return responseItemEvent(payload, record.Timestamp, lineNo) + default: + event.Label = "Unknown event: " + record.Type + event.Text = truncateText(sanitizeText(string(record.Payload)), 1200) + } + event.Text = truncateText(sanitizeText(event.Text), 3000) + return event +} + +func responseItemEvent(payload map[string]any, timestamp string, lineNo int) DisplayEvent { + payloadType := stringField(payload, "type") + event := DisplayEvent{ + Line: lineNo, + Timestamp: timestamp, + Kind: "system_event", + Label: payloadType, + } + + switch payloadType { + case "message": + role := stringField(payload, "role") + event.Kind = "message" + event.Role = role + if role == "user" { + event.Label = "User" + } else if role == "assistant" { + event.Label = "Codex" + } else { + event.Label = "Message" + } + event.Text = truncateText(extractContentText(payload["content"]), 8000) + case "function_call", "custom_tool_call", "tool_search_call", "web_search_call": + event.Kind = "tool_call" + event.Label = firstNonEmpty(stringField(payload, "name"), payloadType) + event.Text = truncateText(toolCallText(payload), 4000) + case "function_call_output", "custom_tool_call_output", "tool_search_output": + event.Kind = "tool_result" + event.Label = firstNonEmpty(stringField(payload, "call_id"), payloadType) + event.Text = truncateText(toolOutputText(payload), 6000) + case "reasoning": + event.Kind = "reasoning" + event.Label = "Reasoning" + event.Text = "encrypted or summarized reasoning item" + default: + event.Label = "Response item: " + payloadType + event.Text = truncateText(fmt.Sprint(sanitizeJSONValue(payload)), 2000) + } + event.Text = sanitizeText(event.Text) + return event +} + +func updateSummary(summary *SessionSummary, record rolloutLine, event DisplayEvent) { + if summary.StartedAt == "" && record.Timestamp != "" { + summary.StartedAt = record.Timestamp + } + if record.Timestamp != "" { + summary.UpdatedAt = record.Timestamp + } + + payload := decodePayload(record.Payload) + if record.Type == "session_meta" { + if id := stringField(payload, "id"); id != "" { + summary.ID = id + } + if cwd := stringField(payload, "cwd"); cwd != "" { + summary.Cwd = sanitizeText(cwd) + } + if model := stringField(payload, "model"); model != "" { + summary.Model = sanitizeText(model) + } + if provider := stringField(payload, "model_provider"); provider != "" { + summary.ModelProvider = sanitizeText(provider) + } + } + if record.Type == "turn_context" { + if cwd := stringField(payload, "cwd"); cwd != "" && summary.Cwd == "" { + summary.Cwd = sanitizeText(cwd) + } + if model := stringField(payload, "model"); model != "" && summary.Model == "" { + summary.Model = sanitizeText(model) + } + } + updateTokenStats(summary, record) + + switch event.Kind { + case "message": + if event.Role == "user" { + summary.UserMessages++ + } + if event.Role == "assistant" { + summary.AssistantMessages++ + } + if summary.Preview == "" && event.Text != "" { + summary.Preview = truncateText(event.Text, 220) + } + case "tool_call": + summary.ToolCalls++ + case "tool_result": + summary.ToolResults++ + default: + summary.SystemEvents++ + } +} + +func updateTokenStats(summary *SessionSummary, record rolloutLine) bool { + if record.Type != "event_msg" { + return false + } + payload := decodePayload(record.Payload) + if stringField(payload, "type") != "token_count" { + return false + } + applyTokenPayload(summary, payload) + return true +} + +func applyTokenPayload(summary *SessionSummary, payload map[string]any) { + info := mapField(payload, "info") + rateLimits := mapField(payload, "rate_limits") + summary.TokenStats.Total = tokenUsageFromMap(mapField(info, "total_token_usage")) + summary.TokenStats.Last = tokenUsageFromMap(mapField(info, "last_token_usage")) + summary.TokenStats.ModelContextWindow = int64Field(info, "model_context_window") + summary.TokenStats.PrimaryRateLimit = rateLimitFromMap(mapField(rateLimits, "primary")) + summary.TokenStats.SecondaryRateLimit = rateLimitFromMap(mapField(rateLimits, "secondary")) + summary.TokenStats.TokenEvents++ +} + +func tokenUsageFromMap(values map[string]any) TokenUsage { + return TokenUsage{ + InputTokens: int64Field(values, "input_tokens"), + CachedInputTokens: int64Field(values, "cached_input_tokens"), + OutputTokens: int64Field(values, "output_tokens"), + ReasoningOutputTokens: int64Field(values, "reasoning_output_tokens"), + TotalTokens: int64Field(values, "total_tokens"), + } +} + +func rateLimitFromMap(values map[string]any) RateLimitUsage { + return RateLimitUsage{ + UsedPercent: floatField(values, "used_percent"), + WindowMinutes: int64Field(values, "window_minutes"), + } +} + +func decodePayload(raw json.RawMessage) map[string]any { + var payload map[string]any + if len(raw) == 0 { + return map[string]any{} + } + if err := json.Unmarshal(raw, &payload); err != nil { + return map[string]any{} + } + return payload +} + +func stringField(payload map[string]any, key string) string { + value, ok := payload[key] + if !ok || value == nil { + return "" + } + if text, ok := value.(string); ok { + return sanitizeText(text) + } + return sanitizeText(fmt.Sprint(value)) +} + +func extractContentText(value any) string { + items, ok := value.([]any) + if !ok { + return sanitizeText(fmt.Sprint(value)) + } + parts := make([]string, 0, len(items)) + for _, item := range items { + obj, ok := item.(map[string]any) + if !ok { + continue + } + text := stringField(obj, "text") + if text == "" { + text = stringField(obj, "input") + } + if text != "" { + parts = append(parts, text) + } + } + return strings.Join(parts, "\n") +} + +func toolCallText(payload map[string]any) string { + parts := []string{} + for _, key := range []string{"name", "status", "execution", "arguments", "input"} { + value := stringField(payload, key) + if value != "" { + parts = append(parts, key+": "+value) + } + } + if len(parts) == 0 { + return truncateText(fmt.Sprint(sanitizeJSONValue(payload)), 1200) + } + return strings.Join(parts, "\n") +} + +func toolOutputText(payload map[string]any) string { + for _, key := range []string{"output", "tools", "status"} { + value, ok := payload[key] + if !ok || value == nil { + continue + } + if text, ok := value.(string); ok && text != "" { + return text + } + content, err := json.Marshal(sanitizeJSONValue(value)) + if err == nil { + return string(content) + } + } + return truncateText(fmt.Sprint(sanitizeJSONValue(payload)), 1200) +} + +func eventMessageText(payload map[string]any) string { + for _, key := range []string{"message", "type", "turn_id", "collaboration_mode_kind"} { + value := stringField(payload, key) + if value != "" { + return value + } + } + return truncateText(fmt.Sprint(sanitizeJSONValue(payload)), 1200) +} + +func tokenEventText(payload map[string]any) string { + info := mapField(payload, "info") + total := tokenUsageFromMap(mapField(info, "total_token_usage")) + last := tokenUsageFromMap(mapField(info, "last_token_usage")) + primary := rateLimitFromMap(mapField(mapField(payload, "rate_limits"), "primary")) + secondary := rateLimitFromMap(mapField(mapField(payload, "rate_limits"), "secondary")) + parts := []string{ + fmt.Sprintf("total: %s tokens (%s input, %s cached input, %s output, %s reasoning)", + formatInt64(total.TotalTokens), formatInt64(total.InputTokens), formatInt64(total.CachedInputTokens), formatInt64(total.OutputTokens), formatInt64(total.ReasoningOutputTokens)), + fmt.Sprintf("last: %s tokens (%s input, %s cached input, %s output, %s reasoning)", + formatInt64(last.TotalTokens), formatInt64(last.InputTokens), formatInt64(last.CachedInputTokens), formatInt64(last.OutputTokens), formatInt64(last.ReasoningOutputTokens)), + } + if window := int64Field(info, "model_context_window"); window > 0 { + parts = append(parts, "context window: "+formatInt64(window)) + } + if primary.UsedPercent > 0 || primary.WindowMinutes > 0 { + parts = append(parts, fmt.Sprintf("primary rate limit: %.1f%% / %d min", primary.UsedPercent, primary.WindowMinutes)) + } + if secondary.UsedPercent > 0 || secondary.WindowMinutes > 0 { + parts = append(parts, fmt.Sprintf("secondary rate limit: %.1f%% / %d min", secondary.UsedPercent, secondary.WindowMinutes)) + } + return strings.Join(parts, "\n") +} + +func mapField(payload map[string]any, key string) map[string]any { + value, ok := payload[key] + if !ok || value == nil { + return map[string]any{} + } + if typed, ok := value.(map[string]any); ok { + return typed + } + return map[string]any{} +} + +func int64Field(payload map[string]any, key string) int64 { + value, ok := payload[key] + if !ok || value == nil { + return 0 + } + switch typed := value.(type) { + case int: + return int64(typed) + case int64: + return typed + case float64: + return int64(typed) + case json.Number: + n, _ := typed.Int64() + return n + default: + return 0 + } +} + +func floatField(payload map[string]any, key string) float64 { + value, ok := payload[key] + if !ok || value == nil { + return 0 + } + switch typed := value.(type) { + case float64: + return typed + case int: + return float64(typed) + case int64: + return float64(typed) + case json.Number: + n, _ := typed.Float64() + return n + default: + return 0 + } +} + +func formatInt64(value int64) string { + return fmt.Sprintf("%d", value) +} + +func joinNonEmpty(values []string, sep string) string { + parts := make([]string, 0, len(values)) + for _, value := range values { + value = strings.TrimSpace(value) + if value == "" || strings.HasSuffix(value, ":") || strings.HasSuffix(value, ": ") { + continue + } + parts = append(parts, value) + } + return strings.Join(parts, sep) +} + +func firstNonEmpty(values ...string) string { + for _, value := range values { + if strings.TrimSpace(value) != "" { + return value + } + } + return "" +} diff --git a/cli/codex_inspector/parser_test.go b/cli/codex_inspector/parser_test.go new file mode 100644 index 0000000..ae91f6a --- /dev/null +++ b/cli/codex_inspector/parser_test.go @@ -0,0 +1,110 @@ +package main + +import ( + "os" + "path/filepath" + "testing" + "time" + + "github.com/stretchr/testify/require" +) + +func TestParseRolloutFileToleratesBadJSONAndRedactsSecrets(t *testing.T) { + dir := t.TempDir() + path := filepath.Join(dir, "rollout-2026-07-03T10-00-00-demo.jsonl") + content := `{"type":"session_meta","timestamp":"2026-07-03T10:00:00Z","payload":{"id":"demo-session","cwd":"/tmp/demo","model_provider":"openai","model":"gpt-test"}} +{"type":"response_item","timestamp":"2026-07-03T10:00:01Z","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"please inspect token=abc123456789"}]}} +{"type":"response_item","timestamp":"2026-07-03T10:00:02Z","payload":{"type":"message","role":"assistant","content":[{"type":"output_text","text":"done"}]}} +{"type":"event_msg","timestamp":"2026-07-03T10:00:02Z","payload":{"type":"token_count","info":{"total_token_usage":{"input_tokens":1000,"cached_input_tokens":400,"output_tokens":80,"reasoning_output_tokens":20,"total_tokens":1080},"last_token_usage":{"input_tokens":300,"cached_input_tokens":100,"output_tokens":30,"reasoning_output_tokens":10,"total_tokens":330},"model_context_window":200000},"rate_limits":{"primary":{"used_percent":12.5,"window_minutes":300},"secondary":{"used_percent":2.5,"window_minutes":10080}}}} +{"type":"response_item","timestamp":"2026-07-03T10:00:03Z","payload":{"type":"function_call","name":"shell","call_id":"call-1","arguments":"{\"password\":\"secret-value\"}"}} +{"type":"response_item","timestamp":"2026-07-03T10:00:04Z","payload":{"type":"function_call_output","call_id":"call-1","output":"ok cookie=real-cookie-value"}} +not json +` + require.NoError(t, os.WriteFile(path, []byte(content), 0644)) + + detail, err := ParseRolloutFile(path, true) + require.NoError(t, err) + require.Equal(t, "demo-session", detail.Summary.ID) + require.Equal(t, "/tmp/demo", detail.Summary.Cwd) + require.Equal(t, 1, detail.Summary.UserMessages) + require.Equal(t, 1, detail.Summary.AssistantMessages) + require.Equal(t, 1, detail.Summary.ToolCalls) + require.Equal(t, 1, detail.Summary.ToolResults) + require.Equal(t, int64(1080), detail.Summary.TokenStats.Total.TotalTokens) + require.Equal(t, int64(400), detail.Summary.TokenStats.Total.CachedInputTokens) + require.Equal(t, int64(330), detail.Summary.TokenStats.Last.TotalTokens) + require.Equal(t, int64(200000), detail.Summary.TokenStats.ModelContextWindow) + require.Equal(t, 12.5, detail.Summary.TokenStats.PrimaryRateLimit.UsedPercent) + require.NotEmpty(t, detail.Warnings) + require.Len(t, detail.RawLines, 7) + + combined := "" + for _, event := range detail.Events { + combined += event.Text + "\n" + } + for _, raw := range detail.RawLines { + combined += raw.Text + "\n" + } + require.NotContains(t, combined, "abc123456789") + require.NotContains(t, combined, "secret-value") + require.NotContains(t, combined, "real-cookie-value") + require.Contains(t, combined, "[REDACTED]") +} + +func TestStoreLoadsSessionIndexAndRolloutSummaries(t *testing.T) { + codexHome := t.TempDir() + sessionDir := filepath.Join(codexHome, "sessions", "2026", "07", "03") + require.NoError(t, os.MkdirAll(sessionDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(codexHome, "session_index.jsonl"), []byte(`{"id":"demo-session","thread_name":"Demo Thread","updated_at":"2026-07-03T11:00:00Z"}`+"\n"), 0644)) + require.NoError(t, os.WriteFile(filepath.Join(sessionDir, "rollout-2026-07-03T10-00-00-demo.jsonl"), []byte(`{"type":"session_meta","timestamp":"2026-07-03T10:00:00Z","payload":{"id":"demo-session","cwd":"/tmp/demo"}} +{"type":"response_item","timestamp":"2026-07-03T10:00:01Z","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"hello"}]}} +`), 0644)) + + store := NewStoreWithCache(codexHome, filepath.Join(t.TempDir(), "cache.sqlite")) + defer store.Close() + sessions, warnings := store.LoadSessions(parseFilter("2026-07-01", "2026-07-31", "", 0)) + require.Empty(t, warnings) + require.Len(t, sessions, 1) + require.Equal(t, "Demo Thread", sessions[0].Title) + require.Equal(t, "2026-07-03T11:00:00Z", sessions[0].UpdatedAt) + + detail, ok, warnings := store.LoadSessionDetail("demo-session") + require.True(t, ok) + require.Empty(t, warnings) + require.Equal(t, "Demo Thread", detail.Summary.Title) + require.Len(t, detail.Events, 2) +} + +func TestHistoricalSessionSummaryIsCachedInSQLite(t *testing.T) { + codexHome := t.TempDir() + sessionDir := filepath.Join(codexHome, "sessions", "2000", "01", "01") + require.NoError(t, os.MkdirAll(sessionDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(codexHome, "session_index.jsonl"), nil, 0644)) + path := filepath.Join(sessionDir, "rollout-2000-01-01T10-00-00-demo.jsonl") + require.NoError(t, os.WriteFile(path, []byte(`{"type":"session_meta","timestamp":"2000-01-01T10:00:00Z","payload":{"id":"cached-session","cwd":"/tmp/demo","model":"gpt-test"}} +{"type":"response_item","timestamp":"2000-01-01T10:00:01Z","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"hello"}]}} +`), 0644)) + oldTime := time.Date(2000, 1, 1, 10, 0, 0, 0, time.Local) + require.NoError(t, os.Chtimes(path, oldTime, oldTime)) + + cachePath := filepath.Join(t.TempDir(), "summary.sqlite") + store := NewStoreWithCache(codexHome, cachePath) + sessions, warnings := store.LoadSessions(parseFilter("2000-01-01", "2000-01-02", "", 0)) + store.Close() + + require.Empty(t, warnings) + require.Len(t, sessions, 1) + require.Equal(t, 1, sessions[0].UserMessages) + + cache, err := openSummaryDiskCache(cachePath) + require.NoError(t, err) + defer cache.Close() + meta, ok := statFile(path) + require.True(t, ok) + summary, ok, err := cache.Lookup(path, meta) + require.NoError(t, err) + require.True(t, ok) + require.Equal(t, "cached-session", summary.ID) + require.Equal(t, 1, summary.UserMessages) + require.Equal(t, "gpt-test", summary.Model) +} diff --git a/cli/codex_inspector/redact.go b/cli/codex_inspector/redact.go new file mode 100644 index 0000000..7802407 --- /dev/null +++ b/cli/codex_inspector/redact.go @@ -0,0 +1,75 @@ +package main + +import ( + "encoding/json" + "regexp" + "strings" +) + +var sensitiveKeyPattern = regexp.MustCompile(`(?i)(auth|authorization|bearer|cookie|credential|jwt|passwd|password|secret|session[_-]?token|token|api[_-]?key|access[_-]?key)`) +var assignmentSecretPattern = regexp.MustCompile(`(?i)(auth|authorization|cookie|jwt|passwd|password|secret|session[_-]?token|token|api[_-]?key|access[_-]?key)([A-Za-z0-9_.-]{0,30})(\s*[:=]\s*)("[^"]*"|'[^']*'|[^\s,;]+)`) +var jsonStringSecretPattern = regexp.MustCompile(`(?i)(\\?"(?:auth|authorization|cookie|credential|jwt|passwd|password|secret|session[_-]?token|token|api[_-]?key|access[_-]?key)"\\?\s*:\s*)\\?"[^"\\]*(?:\\.[^"\\]*)*\\?"`) +var bearerPattern = regexp.MustCompile(`(?i)\bbearer\s+[A-Za-z0-9._~+/=-]{16,}`) + +func sanitizeText(value string) string { + if value == "" { + return "" + } + value = assignmentSecretPattern.ReplaceAllString(value, "$1$2$3[REDACTED]") + value = jsonStringSecretPattern.ReplaceAllString(value, `${1}"[REDACTED]"`) + value = bearerPattern.ReplaceAllString(value, "Bearer [REDACTED]") + return value +} + +func sanitizeJSONValue(value any) any { + switch typed := value.(type) { + case map[string]any: + out := make(map[string]any, len(typed)) + for key, item := range typed { + if sensitiveKeyPattern.MatchString(key) { + out[key] = "[REDACTED]" + continue + } + out[key] = sanitizeJSONValue(item) + } + return out + case []any: + out := make([]any, 0, len(typed)) + for _, item := range typed { + out = append(out, sanitizeJSONValue(item)) + } + return out + case string: + return sanitizeText(typed) + default: + return value + } +} + +func sanitizedRawJSON(line []byte) string { + var value any + if err := json.Unmarshal(line, &value); err != nil { + return sanitizeText(string(line)) + } + value = sanitizeJSONValue(value) + content, err := json.Marshal(value) + if err != nil { + return sanitizeText(string(line)) + } + return string(content) +} + +func truncateText(value string, max int) string { + value = strings.TrimSpace(value) + if max <= 0 || len(value) <= max { + return value + } + return strings.TrimSpace(value[:max]) + "..." +} + +func containsFold(value string, query string) bool { + if query == "" { + return true + } + return strings.Contains(strings.ToLower(value), strings.ToLower(query)) +} diff --git a/cli/codex_inspector/server.go b/cli/codex_inspector/server.go new file mode 100644 index 0000000..bf8740a --- /dev/null +++ b/cli/codex_inspector/server.go @@ -0,0 +1,103 @@ +package main + +import ( + "embed" + "encoding/json" + "io/fs" + "net/http" + "net/url" + "strings" +) + +//go:embed static/* +var staticFiles embed.FS + +func NewServer(store *Store) http.Handler { + mux := http.NewServeMux() + mux.HandleFunc("/api/overview", func(w http.ResponseWriter, r *http.Request) { + filter := requestFilter(r, 0) + sessions, warnings := store.LoadSessions(filter) + heatmapSessions, heatmapWarnings := store.LoadSessionIndex() + warnings = append(warnings, heatmapWarnings...) + writeJSON(w, http.StatusOK, BuildOverview(store.CodexHome, sessions, heatmapSessions, store.Sources(), warnings)) + }) + mux.HandleFunc("/api/sessions", func(w http.ResponseWriter, r *http.Request) { + filter := requestFilter(r, 250) + sessions, warnings := store.LoadSessions(filter) + writeJSON(w, http.StatusOK, SessionsResponse{Sessions: sessions, Warnings: warnings}) + }) + mux.HandleFunc("/api/sessions/", func(w http.ResponseWriter, r *http.Request) { + id, err := url.PathUnescape(strings.TrimPrefix(r.URL.Path, "/api/sessions/")) + if err != nil || strings.TrimSpace(id) == "" { + http.Error(w, "invalid session id", http.StatusBadRequest) + return + } + detail, ok, warnings := store.LoadSessionDetail(id) + if !ok { + writeJSON(w, http.StatusNotFound, map[string]any{"error": "session not found", "warnings": warnings}) + return + } + detail.Warnings = append(detail.Warnings, warnings...) + writeJSON(w, http.StatusOK, detail) + }) + mux.HandleFunc("/api/memory", func(w http.ResponseWriter, r *http.Request) { + query := strings.TrimSpace(r.URL.Query().Get("q")) + limit := limitFromString(r.URL.Query().Get("limit"), 250) + writeJSON(w, http.StatusOK, store.LoadMemory(query, limit)) + }) + mux.HandleFunc("/api/memory/file", func(w http.ResponseWriter, r *http.Request) { + path := strings.TrimSpace(r.URL.Query().Get("path")) + detail, ok := store.LoadMemoryDetail(path) + if !ok { + writeJSON(w, http.StatusBadRequest, detail) + return + } + writeJSON(w, http.StatusOK, detail) + }) + mux.HandleFunc("/api/diagnostics", func(w http.ResponseWriter, r *http.Request) { + writeJSON(w, http.StatusOK, store.Diagnostics()) + }) + + sub, err := fs.Sub(staticFiles, "static") + if err != nil { + panic(err) + } + static := http.FileServer(http.FS(sub)) + mux.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { + if strings.HasPrefix(r.URL.Path, "/api/") { + http.NotFound(w, r) + return + } + if r.URL.Path == "/" { + index, err := fs.ReadFile(sub, "index.html") + if err != nil { + http.Error(w, "index.html not found", http.StatusInternalServerError) + return + } + w.Header().Set("Content-Type", "text/html; charset=utf-8") + _, _ = w.Write(index) + return + } + static.ServeHTTP(w, r) + }) + return mux +} + +func requestFilter(r *http.Request, fallbackLimit int) QueryFilter { + query := r.URL.Query() + return parseFilter( + query.Get("from"), + query.Get("to"), + query.Get("q"), + limitFromString(query.Get("limit"), fallbackLimit), + ) +} + +func writeJSON(w http.ResponseWriter, status int, value any) { + w.Header().Set("Content-Type", "application/json; charset=utf-8") + w.Header().Set("Cache-Control", "no-store") + w.WriteHeader(status) + encoder := json.NewEncoder(w) + encoder.SetIndent("", " ") + _ = encoder.Encode(value) +} diff --git a/cli/codex_inspector/sqlite_cache.go b/cli/codex_inspector/sqlite_cache.go new file mode 100644 index 0000000..3f7990b --- /dev/null +++ b/cli/codex_inspector/sqlite_cache.go @@ -0,0 +1,160 @@ +package main + +import ( + "database/sql" + "encoding/json" + "os" + "path/filepath" + "time" + + _ "modernc.org/sqlite" +) + +const summaryCacheVersion = 1 + +type summaryDiskCache struct { + path string + db *sql.DB +} + +type fileMeta struct { + Size int64 + ModifiedAt int64 + ModTime time.Time +} + +func defaultCachePath() string { + dir, err := os.UserCacheDir() + if err != nil || dir == "" { + dir = os.TempDir() + } + return filepath.Join(dir, "life_tools", "codex_inspector", "session_summary_cache.sqlite") +} + +func openSummaryDiskCache(path string) (*summaryDiskCache, error) { + if path == "" { + return nil, nil + } + if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil { + return nil, err + } + if _, err := os.Stat(path); os.IsNotExist(err) { + file, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE, 0600) + if err != nil { + return nil, err + } + _ = file.Close() + } + db, err := sql.Open("sqlite", path) + if err != nil { + return nil, err + } + _ = os.Chmod(path, 0600) + db.SetMaxOpenConns(1) + cache := &summaryDiskCache{path: path, db: db} + if err := cache.init(); err != nil { + _ = db.Close() + return nil, err + } + return cache, nil +} + +func (c *summaryDiskCache) init() error { + _, err := c.db.Exec(` +PRAGMA busy_timeout = 5000; +CREATE TABLE IF NOT EXISTS session_summaries ( + path TEXT PRIMARY KEY, + size INTEGER NOT NULL, + modified_at_ns INTEGER NOT NULL, + session_id TEXT NOT NULL, + updated_at TEXT NOT NULL, + summary_json TEXT NOT NULL, + cached_at TEXT NOT NULL, + version INTEGER NOT NULL +); +CREATE INDEX IF NOT EXISTS idx_session_summaries_session_id ON session_summaries(session_id); +`) + return err +} + +func (c *summaryDiskCache) Close() error { + if c == nil || c.db == nil { + return nil + } + return c.db.Close() +} + +func (c *summaryDiskCache) Lookup(path string, meta fileMeta) (SessionSummary, bool, error) { + if c == nil || c.db == nil { + return SessionSummary{}, false, nil + } + var raw string + err := c.db.QueryRow( + `SELECT summary_json FROM session_summaries + WHERE path = ? AND size = ? AND modified_at_ns = ? AND version = ?`, + path, meta.Size, meta.ModifiedAt, summaryCacheVersion, + ).Scan(&raw) + if err == sql.ErrNoRows { + return SessionSummary{}, false, nil + } + if err != nil { + return SessionSummary{}, false, err + } + var summary SessionSummary + if err := json.Unmarshal([]byte(raw), &summary); err != nil { + return SessionSummary{}, false, err + } + summary.Enriched = true + return summary, true, nil +} + +func (c *summaryDiskCache) Upsert(path string, meta fileMeta, summary SessionSummary) error { + if c == nil || c.db == nil || path == "" { + return nil + } + summary.Enriched = true + raw, err := json.Marshal(summary) + if err != nil { + return err + } + _, err = c.db.Exec( + `INSERT INTO session_summaries + (path, size, modified_at_ns, session_id, updated_at, summary_json, cached_at, version) + VALUES (?, ?, ?, ?, ?, ?, ?, ?) + ON CONFLICT(path) DO UPDATE SET + size = excluded.size, + modified_at_ns = excluded.modified_at_ns, + session_id = excluded.session_id, + updated_at = excluded.updated_at, + summary_json = excluded.summary_json, + cached_at = excluded.cached_at, + version = excluded.version`, + path, + meta.Size, + meta.ModifiedAt, + summary.ID, + firstNonEmpty(summary.UpdatedAt, summary.StartedAt), + string(raw), + time.Now().Format(time.RFC3339), + summaryCacheVersion, + ) + return err +} + +func statFile(path string) (fileMeta, bool) { + info, err := os.Stat(path) + if err != nil || info.IsDir() { + return fileMeta{}, false + } + return fileMeta{Size: info.Size(), ModifiedAt: info.ModTime().UnixNano(), ModTime: info.ModTime()}, true +} + +func cacheableFile(meta fileMeta, now time.Time) bool { + return startOfDay(meta.ModTime).Before(startOfDay(now)) +} + +func cacheableSummary(summary SessionSummary, now time.Time) bool { + value := firstNonEmpty(summary.UpdatedAt, summary.StartedAt) + t, ok := parseTime(value) + return ok && startOfDay(t).Before(startOfDay(now)) +} diff --git a/cli/codex_inspector/static/app.js b/cli/codex_inspector/static/app.js new file mode 100644 index 0000000..695c92f --- /dev/null +++ b/cli/codex_inspector/static/app.js @@ -0,0 +1,607 @@ +const state = { + page: "overview", + sessions: [], + selectedSession: "", + detailRequest: 0, + memoryFiles: [], + selectedMemory: "", +}; + +const RANGE_HISTORY_KEY = "codexInspectorRangeHistory"; +const QUICK_RANGES = { + "1d": { label: "Last 24 hours", days: 1 }, + "7d": { label: "Last 7 days", days: 7 }, + "30d": { label: "Last 30 days", days: 30 }, +}; + +const $ = (selector) => document.querySelector(selector); + +function params(extra = {}) { + const query = new URLSearchParams(); + const from = $("#fromDate").value; + const to = $("#toDate").value; + if (from) query.set("from", from); + if (to) query.set("to", to); + Object.entries(extra).forEach(([key, value]) => { + if (value !== undefined && value !== null && String(value).trim() !== "") { + query.set(key, value); + } + }); + const text = query.toString(); + return text ? `?${text}` : ""; +} + +async function api(path) { + const response = await fetch(path, { cache: "no-store" }); + if (!response.ok) { + const text = await response.text(); + throw new Error(text || `${response.status} ${response.statusText}`); + } + return response.json(); +} + +function el(tag, className, text) { + const node = document.createElement(tag); + if (className) node.className = className; + if (text !== undefined) node.textContent = text; + return node; +} + +function isoDate(date) { + const local = new Date(date.getTime() - date.getTimezoneOffset() * 60000); + return local.toISOString().slice(0, 10); +} + +function applyQuickRange(key) { + const range = QUICK_RANGES[key] || QUICK_RANGES["7d"]; + const to = new Date(); + const from = new Date(to); + from.setDate(to.getDate() - range.days + 1); + $("#fromDate").value = isoDate(from); + $("#toDate").value = isoDate(to); + $("#rangePreset").value = key; +} + +function rangeLabel(from, to) { + const quick = Object.entries(QUICK_RANGES).find(([, range]) => { + const today = new Date(); + const start = new Date(today); + start.setDate(today.getDate() - range.days + 1); + return from === isoDate(start) && to === isoDate(today); + }); + if (quick) return quick[1].label; + return `${from || "Any"} to ${to || "Any"}`; +} + +function rangeHistory() { + try { + const items = JSON.parse(localStorage.getItem(RANGE_HISTORY_KEY) || "[]"); + return Array.isArray(items) ? items.filter((item) => item && (item.from || item.to)) : []; + } catch { + return []; + } +} + +function saveRangeHistory() { + const from = $("#fromDate").value; + const to = $("#toDate").value; + if (!from && !to) return; + const current = { from, to, label: rangeLabel(from, to) }; + const items = [current, ...rangeHistory().filter((item) => item.from !== from || item.to !== to)].slice(0, 10); + localStorage.setItem(RANGE_HISTORY_KEY, JSON.stringify(items)); + renderRangePreset(items); +} + +function renderRangePreset(items = rangeHistory()) { + const select = $("#rangePreset"); + const current = { from: $("#fromDate").value, to: $("#toDate").value }; + select.textContent = ""; + Object.entries(QUICK_RANGES).forEach(([key, range]) => { + const option = el("option", "", range.label); + option.value = key; + select.append(option); + }); + if (items.length) { + const group = document.createElement("optgroup"); + group.label = "Recent ranges"; + items.forEach((item, index) => { + const option = el("option", "", item.label || rangeLabel(item.from, item.to)); + option.value = `history:${index}`; + option.dataset.from = item.from || ""; + option.dataset.to = item.to || ""; + group.append(option); + }); + select.append(group); + } + const quickKey = matchingQuickRange(current.from, current.to); + if (quickKey) { + select.value = quickKey; + return; + } + const historyIndex = items.findIndex((item) => item.from === current.from && item.to === current.to); + if (historyIndex >= 0) { + select.value = `history:${historyIndex}`; + return; + } + if (current.from || current.to) { + const custom = el("option", "", rangeLabel(current.from, current.to)); + custom.value = "custom"; + select.prepend(custom); + select.value = "custom"; + } +} + +function matchingQuickRange(from, to) { + return Object.entries(QUICK_RANGES).find(([key, range]) => { + const today = new Date(); + const start = new Date(today); + start.setDate(today.getDate() - range.days + 1); + return from === isoDate(start) && to === isoDate(today) ? key : ""; + })?.[0] || ""; +} + +function initializeRangeControls() { + if (!$("#fromDate").value && !$("#toDate").value) { + applyQuickRange("7d"); + } + renderRangePreset(); +} + +function showToast(message) { + const toast = $("#toast"); + toast.textContent = message; + toast.classList.add("show"); + clearTimeout(showToast.timer); + showToast.timer = setTimeout(() => toast.classList.remove("show"), 2600); +} + +function setPage(page) { + state.page = page; + document.querySelectorAll(".nav-item").forEach((item) => { + item.classList.toggle("active", item.dataset.page === page); + }); + document.querySelectorAll(".page").forEach((item) => { + item.classList.toggle("active", item.id === `${page}Page`); + }); + refresh(); +} + +async function refresh() { + const refreshButton = $("#refreshButton"); + refreshButton.disabled = true; + refreshButton.textContent = "Refreshing"; + try { + saveRangeHistory(); + if (state.page === "overview") await loadOverview(); + if (state.page === "sessions") await loadSessions(); + if (state.page === "memory") await loadMemory(); + if (state.page === "diagnostics") await loadDiagnostics(); + } catch (error) { + showToast(error.message); + } finally { + refreshButton.disabled = false; + refreshButton.textContent = "Refresh"; + } +} + +async function loadOverview() { + const data = await api(`/api/overview${params()}`); + $("#sourceStatus").textContent = sourceStatusText(data.sources); + $("#codexHomeBadge").textContent = data.codexHome; + renderStats(data.stats); + renderHeatmap(data.stats.heatmap); + renderMonthBars(data.stats.byMonth); + renderRecent(data.recentSessions); + if (data.warnings && data.warnings.length) showToast(data.warnings[0]); +} + +function sourceStatusText(sources) { + const found = sources.filter((item) => item.exists).length; + return `${found}/${sources.length} data sources visible`; +} + +function renderStats(stats) { + const cards = [ + ["Sessions", formatNumber(stats.totalSessions), `${stats.activeDays} active days`], + ["Events", formatNumber(stats.totalEvents), "JSONL records parsed"], + ["Messages", formatNumber(stats.userMessages + stats.assistantMessages), `${formatNumber(stats.userMessages)} user / ${formatNumber(stats.assistantMessages)} Codex`], + ["Tools", formatNumber(stats.toolCalls + stats.toolResults), `${formatNumber(stats.toolCalls)} calls / ${formatNumber(stats.toolResults)} results`], + ["Tokens", formatCompact(stats.totalTokens), `${formatNumber(stats.tokenizedSessions)} sessions with usage`], + ["Output", formatCompact((stats.outputTokens || 0) + (stats.reasoningTokens || 0)), `${formatCompact(stats.outputTokens || 0)} visible / ${formatCompact(stats.reasoningTokens || 0)} reasoning`], + ]; + const root = $("#statCards"); + root.textContent = ""; + cards.forEach(([label, value, note]) => { + const card = el("div", "stat-card"); + card.append(el("div", "stat-label", label)); + card.append(el("div", "stat-value", String(value || 0))); + card.append(el("div", "stat-note", note)); + root.append(card); + }); +} + +function formatNumber(value) { + return Number(value || 0).toLocaleString(); +} + +function formatCompact(value) { + const number = Number(value || 0); + const abs = Math.abs(number); + const units = [ + [1_000_000_000, "b"], + [1_000_000, "m"], + [1_000, "k"], + ]; + for (const [base, suffix] of units) { + if (abs >= base) { + const scaled = number / base; + const digits = Math.abs(scaled) >= 100 ? 0 : 1; + return `${trimNumber(scaled.toFixed(digits))}${suffix}`; + } + } + return formatNumber(number); +} + +function trimNumber(value) { + return value.replace(/\.0$/, ""); +} + +function renderHeatmap(cells) { + const root = $("#heatmap"); + root.textContent = ""; + if (!cells || !cells.length) { + root.append(el("div", "empty-state", "No activity data in the last 6 months.")); + $("#heatmapHint").textContent = ""; + return; + } + const normalized = normalizedHeatmap(cells); + const max = Math.max(...cells.map((cell) => cell.count), 1); + root.style.setProperty("--heatmap-columns", Math.max(1, Math.ceil(normalized.length / 7))); + normalized.forEach((cell) => { + const item = el("div", `heat-cell ${cell.date ? heatClass(cell.count, max) : "heat-empty"}`); + if (cell.date) { + const detail = `日期:${cell.date}\n对话次数:${cell.count}`; + item.title = detail; + item.setAttribute("aria-label", detail); + } + root.append(item); + }); + $("#heatmapHint").textContent = `Last 6 months · ${cells[0].date} to ${cells[cells.length - 1].date}`; +} + +function normalizedHeatmap(cells) { + const first = new Date(`${cells[0].date}T00:00:00`); + const leading = Number.isNaN(first.getTime()) ? 0 : first.getDay(); + const out = Array.from({ length: leading }, () => ({ date: "", count: 0 })); + cells.forEach((cell) => out.push(cell)); + while (out.length % 7 !== 0) out.push({ date: "", count: 0 }); + return out; +} + +function heatClass(count, max) { + if (!count) return ""; + const ratio = count / max; + if (ratio > 0.75) return "heat-4"; + if (ratio > 0.45) return "heat-3"; + if (ratio > 0.2) return "heat-2"; + return "heat-1"; +} + +function renderMonthBars(points) { + const root = $("#monthBars"); + root.textContent = ""; + if (!points || !points.length) { + root.append(el("div", "empty-state", "No monthly data.")); + return; + } + const recent = points.slice(-12); + const max = Math.max(...recent.map((item) => item.count), 1); + recent.forEach((item) => { + const row = el("div", "bar-row"); + row.append(el("div", "", item.key)); + const track = el("div", "bar-track"); + const fill = el("div", "bar-fill"); + fill.style.width = `${Math.max(4, (item.count / max) * 100)}%`; + track.append(fill); + row.append(track); + row.append(el("div", "", String(item.count))); + root.append(row); + }); +} + +function renderRecent(sessions) { + const root = $("#recentSessions"); + root.textContent = ""; + if (!sessions || !sessions.length) { + root.append(el("div", "empty-state", "No recent sessions.")); + return; + } + sessions.forEach((session) => { + const card = sessionCard(session, "list-card"); + card.addEventListener("click", () => { + state.selectedSession = session.id; + setPage("sessions"); + }); + root.append(card); + }); +} + +async function loadSessions() { + const q = $("#sessionSearch").value.trim(); + const data = await api(`/api/sessions${params({ q, limit: 300 })}`); + state.sessions = data.sessions || []; + $("#sessionCount").textContent = `${state.sessions.length} shown`; + renderSessionList(); + if (!state.selectedSession && state.sessions.length) { + state.selectedSession = state.sessions[0].id; + } + if (state.selectedSession) { + await loadSessionDetail(state.selectedSession); + } +} + +function renderSessionList() { + const root = $("#sessionList"); + root.textContent = ""; + if (!state.sessions.length) { + root.append(el("div", "empty-state", "No sessions match this filter.")); + return; + } + state.sessions.forEach((session) => { + const card = sessionCard(session, "session-item"); + card.classList.toggle("active", session.id === state.selectedSession); + card.addEventListener("click", async () => { + state.selectedSession = session.id; + renderSessionList(); + await loadSessionDetail(session.id); + }); + root.append(card); + }); +} + +function sessionCard(session, className) { + const card = el("button", className); + card.type = "button"; + card.append(el("div", "item-title", session.title || session.id)); + const meta = el("div", "item-meta"); + meta.append(el("span", "", shortDate(session.updatedAt || session.startedAt))); + meta.append(el("span", "", `${session.eventCount || 0} events`)); + if (session.model) meta.append(el("span", "", session.model)); + if (session.tokenStats && session.tokenStats.tokenEvents) meta.append(el("span", "", `${formatCompact(session.tokenStats.total.totalTokens)} tokens`)); + card.append(meta); + if (session.preview) card.append(el("div", "item-preview", session.preview)); + return card; +} + +async function loadSessionDetail(id) { + const request = ++state.detailRequest; + setSessionDetailState("Loading session detail...", "Loading"); + let detail; + try { + detail = await api(`/api/sessions/${encodeURIComponent(id)}`); + } catch (error) { + if (request === state.detailRequest) { + setSessionDetailState(error.message || "Failed to load session detail.", "Load failed"); + } + throw error; + } + if (request !== state.detailRequest) return; + $("#sessionDetailTitle").textContent = detail.summary.title || detail.summary.id; + $("#sessionDetailMeta").textContent = `${detail.summary.updatedAt || ""} ${detail.summary.cwd || ""}`; + const rawByLine = new Map((detail.rawLines || []).map((line) => [line.line, line.text])); + const root = $("#sessionDetail"); + root.classList.remove("empty-state"); + root.textContent = ""; + if (detail.summary.tokenStats && detail.summary.tokenStats.tokenEvents) { + root.append(tokenSummaryPanel(detail.summary.tokenStats)); + } + if (!detail.events || !detail.events.length) { + root.append(el("div", "empty-state", "No displayable events.")); + return; + } + detail.events.forEach((event) => { + const item = el("article", `event ${event.kind} ${event.role || ""}`); + item.append(el("div", "event-label", labelForEvent(event))); + const body = el("div", "event-body"); + body.append(el("div", "event-meta", `line ${event.line}${event.timestamp ? ` · ${event.timestamp}` : ""}`)); + body.append(el("div", "event-text", event.text || "(empty)")); + const raw = rawByLine.get(event.line); + if (raw) { + const details = el("details", "raw-details"); + details.append(el("summary", "", "Raw JSONL")); + details.append(el("pre", "raw-block", raw)); + body.append(details); + } + item.append(body); + root.append(item); + }); +} + +function setSessionDetailState(message, title = "Session detail") { + $("#sessionDetailTitle").textContent = title; + $("#sessionDetailMeta").textContent = ""; + const root = $("#sessionDetail"); + root.classList.add("empty-state"); + root.textContent = message; +} + +function tokenSummaryPanel(stats) { + const panel = el("section", "token-summary"); + panel.append(tokenMetric("Total tokens", formatCompact(stats.total.totalTokens), formatNumber(stats.total.totalTokens))); + panel.append(tokenMetric("Input", `${formatCompact(stats.total.inputTokens)} (${formatCompact(stats.total.cachedInputTokens)} cached)`, `${formatNumber(stats.total.inputTokens)} input, ${formatNumber(stats.total.cachedInputTokens)} cached input`)); + panel.append(tokenMetric("Output", `${formatCompact(stats.total.outputTokens)} + ${formatCompact(stats.total.reasoningOutputTokens)} reasoning`, `${formatNumber(stats.total.outputTokens)} output, ${formatNumber(stats.total.reasoningOutputTokens)} reasoning output`)); + panel.append(tokenMetric("Last turn", formatCompact(stats.last.totalTokens), formatNumber(stats.last.totalTokens))); + if (stats.modelContextWindow) panel.append(tokenMetric("Context", formatCompact(stats.modelContextWindow), formatNumber(stats.modelContextWindow))); + if (stats.primaryRateLimit && stats.primaryRateLimit.usedPercent) panel.append(tokenMetric("Primary limit", `${stats.primaryRateLimit.usedPercent.toFixed(1)}%`)); + if (stats.secondaryRateLimit && stats.secondaryRateLimit.usedPercent) panel.append(tokenMetric("Weekly limit", `${stats.secondaryRateLimit.usedPercent.toFixed(1)}%`)); + return panel; +} + +function tokenMetric(label, value, exact) { + const item = el("div", "token-metric"); + item.append(el("span", "", label)); + const strong = el("strong", "", value); + if (exact) strong.title = exact; + item.append(strong); + return item; +} + +function labelForEvent(event) { + if (event.role === "assistant") return "Codex"; + if (event.role === "user") return "User"; + if (event.kind === "tool_call") return "Tool call"; + if (event.kind === "tool_result") return "Tool result"; + if (event.kind === "reasoning") return "Reasoning"; + return "System"; +} + +async function loadMemory() { + const q = $("#memorySearch").value.trim(); + const data = await api(`/api/memory${params({ q, limit: 300 })}`); + state.memoryFiles = data.files || []; + $("#memoryCount").textContent = `${state.memoryFiles.length} shown`; + renderMemoryList(); + if (!state.selectedMemory && state.memoryFiles.length) { + state.selectedMemory = state.memoryFiles[0].path; + } + if (state.selectedMemory) await loadMemoryDetail(state.selectedMemory); +} + +function renderMemoryList() { + const root = $("#memoryList"); + root.textContent = ""; + if (!state.memoryFiles.length) { + root.append(el("div", "empty-state", "No memory files match this query.")); + return; + } + state.memoryFiles.forEach((file) => { + const card = el("button", "memory-item"); + card.type = "button"; + card.classList.toggle("active", file.path === state.selectedMemory); + card.append(el("div", "item-title", file.title || file.path)); + const meta = el("div", "item-meta"); + meta.append(el("span", "", file.kind)); + meta.append(el("span", "", shortDate(file.modifiedAt))); + if (file.matches) meta.append(el("span", "", `${file.matches} match`)); + card.append(meta); + if (file.preview) card.append(el("div", "item-preview", file.preview)); + card.addEventListener("click", async () => { + state.selectedMemory = file.path; + renderMemoryList(); + await loadMemoryDetail(file.path); + }); + root.append(card); + }); +} + +async function loadMemoryDetail(path) { + const detail = await api(`/api/memory/file?path=${encodeURIComponent(path)}`); + $("#memoryDetailTitle").textContent = detail.file.title || detail.file.path; + $("#memoryDetailMeta").textContent = `${detail.file.kind} · ${detail.file.path}`; + const root = $("#memoryDetail"); + root.classList.remove("empty-state"); + root.textContent = detail.content || "(empty)"; +} + +async function loadDiagnostics() { + const data = await api("/api/diagnostics"); + $("#sourceStatus").textContent = sourceStatusText(data.sources); + renderSourceTable(data.sources); + renderSchemas(data.schemas); +} + +function renderSourceTable(sources) { + const root = $("#sourceTable"); + root.textContent = ""; + const table = document.createElement("table"); + const head = document.createElement("thead"); + head.innerHTML = "NameStatusPathNotes"; + table.append(head); + const body = document.createElement("tbody"); + sources.forEach((source) => { + const row = document.createElement("tr"); + row.append(td(source.name, "Name")); + const status = el("span", `status-pill ${source.exists ? "status-ok" : "status-miss"}`, source.exists ? "visible" : "missing"); + const statusCell = td("", "Status"); + statusCell.append(status); + row.append(statusCell); + row.append(td(source.path, "Path")); + row.append(td((source.notes || []).join("; "), "Notes")); + body.append(row); + }); + table.append(body); + root.append(table); +} + +function renderSchemas(schemas) { + const root = $("#schemaList"); + root.textContent = ""; + schemas.forEach((schema) => { + const card = el("div", "schema-card"); + const title = el("div", "item-title", schema.name); + card.append(title); + card.append(el("div", "item-meta", `${schema.readMode} · ${schema.path}`)); + if (schema.loaded) { + card.append(el("pre", "schema-code", schema.schema || "(empty schema)")); + } else { + card.append(el("div", "item-preview", schema.error || "schema not loaded")); + } + root.append(card); + }); +} + +function td(text, label) { + const cell = document.createElement("td"); + if (label) cell.dataset.label = label; + cell.textContent = text || ""; + return cell; +} + +function shortDate(value) { + if (!value) return "unknown time"; + return value.length > 19 ? value.slice(0, 19).replace("T", " ") : value.replace("T", " "); +} + +function debounce(fn, delay) { + let timer; + return (...args) => { + clearTimeout(timer); + timer = setTimeout(() => fn(...args), delay); + }; +} + +document.querySelectorAll(".nav-item").forEach((item) => { + item.addEventListener("click", () => setPage(item.dataset.page)); +}); + +$("#refreshButton").addEventListener("click", refresh); +$("#rangePreset").addEventListener("change", () => { + const value = $("#rangePreset").value; + if (value.startsWith("history:")) { + const option = $("#rangePreset").selectedOptions[0]; + $("#fromDate").value = option.dataset.from || ""; + $("#toDate").value = option.dataset.to || ""; + } else if (QUICK_RANGES[value]) { + applyQuickRange(value); + } + refresh(); +}); +$("#fromDate").addEventListener("change", () => { + renderRangePreset(); + refresh(); +}); +$("#toDate").addEventListener("change", () => { + renderRangePreset(); + refresh(); +}); +$("#sessionSearch").addEventListener("input", debounce(() => { + state.selectedSession = ""; + if (state.page === "sessions") refresh(); +}, 220)); +$("#memorySearch").addEventListener("input", debounce(() => { + state.selectedMemory = ""; + if (state.page === "memory") refresh(); +}, 220)); + +initializeRangeControls(); +refresh(); diff --git a/cli/codex_inspector/static/index.html b/cli/codex_inspector/static/index.html new file mode 100644 index 0000000..63b61b0 --- /dev/null +++ b/cli/codex_inspector/static/index.html @@ -0,0 +1,170 @@ + + + + + + Codex Inspector + + + +
+
+
CI
+
+
Codex Inspector
+
Loading local data source
+
+
+
+ + + + +
+
+ +
+ 本工具只读展示本机 Codex 数据,默认运行在 127.0.0.1;auth、token、cookie、secret 类字段会被排除或脱敏。 +
+ +
+ + +
+
+
+
+

Overview

+

会话总量、活跃度和最近对话。

+
+
+
+
+
+
+

Activity heatmap

+ +
+
+
+
+
+
+
+
+

Monthly sessions

+
+
+
+
+
+

Recent sessions

+
+
+
+
+
+ +
+
+
+

Sessions

+

按时间范围浏览 session,右侧展示原生交互顺序和 raw JSONL。

+
+ +
+
+
+
+

Session list

+ +
+
+
+
+
+

Session detail

+ +
+
Select a session to inspect.
+
+
+
+ +
+
+
+

Memory

+

按摘要、索引和 rollout summary 查看本机记忆文件。

+
+ +
+
+
+
+

Memory files

+ +
+
+
+
+
+

Memory detail

+ +
+
Select a memory file to preview.
+
+
+
+ +
+
+
+

Diagnostics

+

数据源状态、SQLite schema 探测和只读边界。

+
+
+
+
+

Data sources

+
+
+
+
+
+

SQLite schema

+
+
+
+
+
+
+ +
+ + + diff --git a/cli/codex_inspector/static/styles.css b/cli/codex_inspector/static/styles.css new file mode 100644 index 0000000..960ae00 --- /dev/null +++ b/cli/codex_inspector/static/styles.css @@ -0,0 +1,937 @@ +:root { + --bg: #f6f7fb; + --surface: #ffffff; + --surface-2: #eef4f2; + --text: #17201b; + --muted: #66736d; + --border: #d9e1dc; + --accent: #1f7a5c; + --accent-strong: #135b43; + --accent-soft: #dff2ea; + --blue: #315c9b; + --amber: #a56820; + --danger: #a33c3c; + --shadow: 0 18px 42px rgba(34, 45, 40, 0.08); +} + +* { + box-sizing: border-box; +} + +html, +body { + margin: 0; + min-height: 100%; +} + +body { + background: + linear-gradient(180deg, rgba(31, 122, 92, 0.07), transparent 260px), + var(--bg); + color: var(--text); + font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; + letter-spacing: 0; +} + +button, +input, +select { + font: inherit; +} + +.topbar { + position: sticky; + top: 0; + z-index: 20; + display: flex; + align-items: center; + justify-content: space-between; + gap: 20px; + min-height: 72px; + padding: 14px 24px; + border-bottom: 1px solid rgba(217, 225, 220, 0.84); + background: rgba(255, 255, 255, 0.92); + backdrop-filter: blur(18px); +} + +.brand { + display: flex; + align-items: center; + gap: 12px; + min-width: 0; +} + +.brand-mark { + display: grid; + width: 42px; + height: 42px; + place-items: center; + border-radius: 10px; + background: var(--text); + color: #fff; + font-size: 13px; + font-weight: 800; +} + +.brand-title { + font-size: 18px; + font-weight: 800; +} + +.brand-subtitle { + max-width: 52vw; + overflow: hidden; + color: var(--muted); + font-size: 13px; + text-overflow: ellipsis; + white-space: nowrap; +} + +.top-actions { + display: flex; + align-items: end; + gap: 10px; +} + +.date-field, +.range-field, +.search-box { + display: grid; + gap: 5px; + color: var(--muted); + font-size: 12px; + font-weight: 700; +} + +.date-field input, +.range-field select, +.search-box input { + min-width: 142px; + height: 38px; + border: 1px solid var(--border); + border-radius: 8px; + background: var(--surface); + color: var(--text); + padding: 0 11px; + outline: none; +} + +.range-field select { + min-width: 164px; + cursor: pointer; +} + +.search-box input { + min-width: 260px; +} + +.date-field input:focus, +.range-field select:focus, +.search-box input:focus { + border-color: var(--accent); + box-shadow: 0 0 0 3px rgba(31, 122, 92, 0.14); +} + +.primary-button { + height: 38px; + padding: 0 15px; + border: 0; + border-radius: 8px; + background: var(--accent); + color: #fff; + cursor: pointer; + font-size: 13px; + font-weight: 800; +} + +.primary-button:hover { + background: var(--accent-strong); +} + +.primary-button:active { + transform: translateY(1px); +} + +.primary-button:disabled { + cursor: progress; + opacity: 0.72; +} + +.privacy-strip { + padding: 9px 24px; + border-bottom: 1px solid var(--border); + background: #fff8e8; + color: #6f4c1f; + font-size: 13px; +} + +.app-shell { + display: grid; + grid-template-columns: 190px minmax(0, 1fr); + gap: 24px; + max-width: 1500px; + margin: 0 auto; + padding: 24px; +} + +.sidebar { + position: sticky; + top: 112px; + align-self: start; + display: grid; + gap: 8px; +} + +.nav-item { + height: 40px; + border: 1px solid transparent; + border-radius: 8px; + background: transparent; + color: var(--muted); + cursor: pointer; + font-size: 14px; + font-weight: 800; + text-align: left; + padding: 0 12px; +} + +.nav-item:hover { + background: rgba(255, 255, 255, 0.72); + color: var(--text); +} + +.nav-item.active { + border-color: var(--border); + background: var(--surface); + color: var(--accent-strong); + box-shadow: inset 3px 0 0 var(--accent), var(--shadow); +} + +.nav-item:focus-visible, +.primary-button:focus-visible { + outline: 3px solid rgba(31, 122, 92, 0.22); + outline-offset: 2px; +} + +.content { + min-width: 0; +} + +.page { + display: none; +} + +.page.active { + display: block; +} + +.page-heading { + display: flex; + align-items: end; + justify-content: space-between; + gap: 20px; + margin-bottom: 18px; +} + +h1, +h2, +p { + margin: 0; +} + +h1 { + font-size: 30px; + line-height: 1.12; +} + +h2 { + font-size: 15px; + line-height: 1.2; +} + +.page-heading p { + margin-top: 7px; + color: var(--muted); + font-size: 14px; +} + +.path-badge { + max-width: 46vw; + overflow: hidden; + border: 1px solid var(--border); + border-radius: 8px; + background: var(--surface); + color: var(--muted); + font-family: ui-monospace, SFMono-Regular, Menlo, monospace; + font-size: 12px; + padding: 9px 11px; + text-overflow: ellipsis; + white-space: nowrap; +} + +.panel { + min-width: 0; + border: 1px solid var(--border); + border-radius: 8px; + background: var(--surface); + box-shadow: var(--shadow); +} + +.panel-header { + display: flex; + min-height: 48px; + align-items: center; + justify-content: space-between; + gap: 12px; + padding: 14px 16px; + border-bottom: 1px solid var(--border); +} + +.panel-header > * { + min-width: 0; +} + +.panel-header .muted { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.muted { + color: var(--muted); + font-size: 12px; +} + +.stat-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(168px, 1fr)); + gap: 12px; + margin-bottom: 16px; +} + +.stat-card { + min-height: 112px; + border: 1px solid var(--border); + border-radius: 8px; + background: var(--surface); + padding: 16px; + box-shadow: var(--shadow); +} + +.stat-label { + color: var(--muted); + font-size: 12px; + font-weight: 800; + text-transform: uppercase; +} + +.stat-value { + margin-top: 12px; + font-size: 32px; + font-weight: 850; + line-height: 1; +} + +.stat-note { + margin-top: 8px; + color: var(--muted); + font-size: 13px; +} + +.heatmap-wrap { + overflow-x: auto; + padding: 16px; +} + +.heatmap { + display: grid; + grid-auto-flow: column; + grid-auto-columns: 13px; + grid-template-rows: repeat(7, 13px); + gap: 4px; + width: max-content; + min-width: 100%; +} + +.heat-cell { + width: 13px; + height: 13px; + border-radius: 3px; + background: #e5ebe8; +} + +.heat-empty { opacity: 0; } +.heat-1 { background: #c9e8d9; } +.heat-2 { background: #8fd0ae; } +.heat-3 { background: #4fa77b; } +.heat-4 { background: #176b4e; } + +.split-grid { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); + gap: 16px; + margin-top: 16px; +} + +.bar-list, +.compact-list, +.session-list, +.memory-list, +.schema-list { + padding: 12px; +} + +.bar-row { + display: grid; + grid-template-columns: 86px minmax(0, 1fr) 42px; + align-items: center; + gap: 10px; + min-height: 30px; + color: var(--muted); + font-size: 13px; +} + +.bar-track { + height: 8px; + overflow: hidden; + border-radius: 999px; + background: var(--surface-2); +} + +.bar-fill { + height: 100%; + border-radius: inherit; + background: linear-gradient(90deg, var(--accent), var(--blue)); +} + +.list-card, +.session-item, +.memory-item { + width: 100%; + border: 1px solid transparent; + border-radius: 8px; + background: transparent; + color: inherit; + cursor: pointer; + text-align: left; + padding: 10px; +} + +.list-card + .list-card, +.session-item + .session-item, +.memory-item + .memory-item { + margin-top: 6px; +} + +.list-card:hover, +.session-item:hover, +.memory-item:hover { + border-color: var(--border); + background: #f9fbfa; +} + +@media (hover: hover) { + .list-card:hover, + .session-item:hover, + .memory-item:hover { + transform: translateY(-1px); + } +} + +.session-item.active, +.memory-item.active { + border-color: rgba(31, 122, 92, 0.32); + background: var(--accent-soft); + box-shadow: inset 3px 0 0 var(--accent); +} + +.item-title { + overflow: hidden; + font-size: 14px; + font-weight: 800; + text-overflow: ellipsis; + white-space: nowrap; +} + +.item-meta { + display: flex; + flex-wrap: wrap; + gap: 8px; + margin-top: 6px; + color: var(--muted); + font-size: 12px; +} + +.item-preview { + display: -webkit-box; + overflow: hidden; + margin-top: 8px; + color: var(--muted); + font-size: 12px; + line-height: 1.45; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; +} + +.session-layout, +.memory-layout { + display: grid; + grid-template-columns: minmax(270px, 360px) minmax(0, 1fr); + gap: 16px; + min-height: 660px; +} + +.session-list-panel, +.memory-list-panel, +.session-detail-panel, +.memory-detail-panel { + min-height: 0; + min-width: 0; +} + +.session-list, +.memory-list { + max-height: 72vh; + overflow: auto; +} + +.session-detail { + display: grid; + gap: 12px; + max-height: 72vh; + overflow: auto; + padding: 16px; +} + +.token-summary { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); + gap: 10px; + border: 1px solid rgba(31, 122, 92, 0.22); + border-radius: 8px; + background: var(--accent-soft); + padding: 12px; +} + +.token-metric { + display: grid; + gap: 4px; + min-width: 0; +} + +.token-metric span { + color: var(--muted); + font-size: 11px; + font-weight: 800; + text-transform: uppercase; +} + +.token-metric strong { + font-size: 14px; + line-height: 1.25; + overflow-wrap: anywhere; +} + +.event { + position: relative; + display: grid; + grid-template-columns: 98px minmax(0, 1fr); + gap: 12px; + align-items: start; +} + +.event::before { + position: absolute; + top: 31px; + bottom: -12px; + left: 49px; + width: 1px; + background: var(--border); + content: ""; +} + +.event:last-child::before { + display: none; +} + +.event-label { + position: relative; + z-index: 1; + border-radius: 8px; + padding: 6px 8px; + color: #fff; + font-size: 12px; + font-weight: 800; + text-align: center; +} + +.event.message.user .event-label { background: var(--blue); } +.event.message.assistant .event-label { background: var(--accent); } +.event.tool_call .event-label { background: var(--amber); } +.event.tool_result .event-label { background: #6b5f8d; } +.event.system_event .event-label, +.event.reasoning .event-label { background: #79847f; } + +.event-body { + min-width: 0; + border: 1px solid var(--border); + border-radius: 8px; + background: #fbfcfc; + padding: 10px 12px; +} + +.event-meta { + margin-bottom: 6px; + color: var(--muted); + font-size: 12px; +} + +.event-text, +.raw-block, +.memory-detail, +.schema-code { + overflow-wrap: anywhere; + white-space: pre-wrap; + word-break: break-word; +} + +.event-text { + font-size: 13px; + line-height: 1.55; +} + +details.raw-details { + margin-top: 8px; +} + +details.raw-details summary { + cursor: pointer; + color: var(--accent-strong); + font-size: 12px; + font-weight: 800; +} + +.raw-block, +.memory-detail, +.schema-code { + border: 1px solid var(--border); + border-radius: 8px; + background: #111815; + color: #d9ede4; + font-family: ui-monospace, SFMono-Regular, Menlo, monospace; + font-size: 12px; + line-height: 1.5; + padding: 12px; +} + +.memory-detail { + box-sizing: border-box; + max-width: 100%; + min-width: 0; + max-height: 72vh; + overflow: auto; + margin: 0; +} + +.empty-state { + color: var(--muted); +} + +.table-wrap { + overflow: auto; + padding: 12px; +} + +table { + width: 100%; + border-collapse: collapse; + font-size: 13px; + table-layout: fixed; +} + +th, +td { + border-bottom: 1px solid var(--border); + padding: 10px; + text-align: left; + vertical-align: top; + overflow-wrap: anywhere; +} + +th { + color: var(--muted); + font-size: 12px; + text-transform: uppercase; +} + +.status-pill { + display: inline-flex; + align-items: center; + height: 22px; + border-radius: 999px; + padding: 0 8px; + font-size: 12px; + font-weight: 800; +} + +.status-ok { + background: var(--accent-soft); + color: var(--accent-strong); +} + +.status-miss { + background: #f6e4e4; + color: var(--danger); +} + +.schema-card { + border: 1px solid var(--border); + border-radius: 8px; + padding: 12px; +} + +.schema-card + .schema-card { + margin-top: 10px; +} + +.toast { + position: fixed; + right: 18px; + bottom: 18px; + z-index: 40; + max-width: min(420px, calc(100vw - 36px)); + transform: translateY(18px); + opacity: 0; + pointer-events: none; + border: 1px solid var(--border); + border-radius: 8px; + background: var(--text); + color: #fff; + box-shadow: var(--shadow); + font-size: 13px; + padding: 12px 14px; + transition: opacity 160ms ease, transform 160ms ease; +} + +.toast.show { + transform: translateY(0); + opacity: 1; +} + +@media (max-width: 980px) { + .topbar { + align-items: stretch; + flex-direction: column; + gap: 16px; + } + + .top-actions { + display: grid; + grid-template-columns: minmax(150px, 1.2fr) minmax(132px, 1fr) minmax(132px, 1fr) auto; + min-width: min(100%, 680px); + } + + .range-field, + .date-field { + min-width: 0; + } + + .app-shell { + grid-template-columns: 1fr; + gap: 14px; + padding: 16px; + } + + .sidebar { + position: static; + display: flex; + gap: 8px; + overflow-x: auto; + padding-bottom: 2px; + } + + .nav-item { + min-width: 132px; + text-align: center; + } + + .nav-item.active { + box-shadow: inset 0 -3px 0 var(--accent), var(--shadow); + } + + .stat-grid { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } + + .split-grid, + .session-layout, + .memory-layout { + grid-template-columns: 1fr; + } + + .session-list, + .memory-list, + .session-detail, + .memory-detail { + max-height: none; + } +} + +@media (max-width: 560px) { + .topbar { + padding: 12px 14px; + gap: 12px; + align-items: stretch; + flex-direction: column; + } + + .privacy-strip { + padding: 8px 14px; + font-size: 12px; + } + + .top-actions { + display: grid; + grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); + width: 100%; + gap: 8px; + } + + .range-field { + grid-column: 1; + } + + .range-field, + .range-field select, + .date-field, + .date-field input, + .search-box, + .search-box input { + min-width: 0; + width: 100%; + } + + .date-field input, + .range-field select, + .search-box input { + height: 34px; + } + + .primary-button { + align-self: end; + width: 100%; + height: 34px; + } + + .brand-subtitle { + max-width: calc(100vw - 96px); + } + + .sidebar { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + overflow: visible; + } + + .nav-item { + min-width: 0; + padding: 0 4px; + font-size: 13px; + } + + .stat-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + + .stat-card { + min-height: 96px; + padding: 14px; + } + + .stat-value { + font-size: 28px; + } + + .heatmap-wrap { + padding: 12px; + } + + .heatmap { + grid-auto-columns: 11px; + grid-template-rows: repeat(7, 11px); + gap: 3px; + } + + .heat-cell { + width: 11px; + height: 11px; + } + + .page-heading { + align-items: start; + flex-direction: column; + gap: 10px; + } + + h1 { + font-size: 25px; + } + + .path-badge { + display: none; + } + + .event { + grid-template-columns: 1fr; + gap: 6px; + } + + .event::before { + display: none; + } + + .event-label { + width: fit-content; + min-width: 86px; + } + + table, + thead, + tbody, + tr, + th, + td { + display: block; + } + + thead { + display: none; + } + + tr { + border: 1px solid var(--border); + border-radius: 8px; + background: var(--surface); + padding: 10px; + } + + tr + tr { + margin-top: 10px; + } + + td { + display: grid; + grid-template-columns: 76px minmax(0, 1fr); + gap: 10px; + border-bottom: 0; + padding: 6px 0; + } + + td::before { + color: var(--muted); + content: attr(data-label); + font-size: 11px; + font-weight: 800; + text-transform: uppercase; + } +} diff --git a/cli/codex_inspector/stats.go b/cli/codex_inspector/stats.go new file mode 100644 index 0000000..a1ed175 --- /dev/null +++ b/cli/codex_inspector/stats.go @@ -0,0 +1,132 @@ +package main + +import ( + "sort" + "time" +) + +const heatmapDays = 183 + +func BuildOverview(codexHome string, sessions []SessionSummary, heatmapSessions []SessionSummary, sources []SourceStatus, warnings []string) OverviewResponse { + stats := BuildStats(sessions) + stats.Heatmap = BuildRecentHeatmap(heatmapSessions, time.Now()) + recent := sessions + if len(recent) > 8 { + recent = recent[:8] + } + return OverviewResponse{ + CodexHome: codexHome, + PrivacyNotice: "Runs on 127.0.0.1 by default. Codex auth, token, cookie and secret-like fields are excluded or redacted.", + Sources: sources, + Stats: stats, + RecentSessions: recent, + Warnings: warnings, + } +} + +func BuildStats(sessions []SessionSummary) OverviewStats { + stats := OverviewStats{TotalSessions: len(sessions)} + dayCounts := map[string]int{} + weekCounts := map[string]int{} + monthCounts := map[string]int{} + + for _, session := range sessions { + stats.TotalEvents += session.EventCount + stats.UserMessages += session.UserMessages + stats.AssistantMessages += session.AssistantMessages + stats.ToolCalls += session.ToolCalls + stats.ToolResults += session.ToolResults + if session.TokenStats.TokenEvents > 0 { + stats.TokenizedSessions++ + stats.InputTokens += session.TokenStats.Total.InputTokens + stats.CachedInputTokens += session.TokenStats.Total.CachedInputTokens + stats.OutputTokens += session.TokenStats.Total.OutputTokens + stats.ReasoningTokens += session.TokenStats.Total.ReasoningOutputTokens + stats.TotalTokens += session.TokenStats.Total.TotalTokens + } + + timeValue := session.UpdatedAt + if timeValue == "" { + timeValue = session.StartedAt + } + day := dayKey(timeValue) + if day == "" { + continue + } + dayCounts[day]++ + weekCounts[weekKey(timeValue)]++ + monthCounts[monthKey(timeValue)]++ + } + + stats.ActiveDays = len(dayCounts) + stats.ByDay = countPoints(dayCounts) + stats.ByWeek = countPoints(weekCounts) + stats.ByMonth = countPoints(monthCounts) + stats.Heatmap = buildHeatmap(dayCounts) + return stats +} + +func BuildRecentHeatmap(sessions []SessionSummary, now time.Time) []HeatmapCell { + dayCounts := map[string]int{} + for _, session := range sessions { + timeValue := session.UpdatedAt + if timeValue == "" { + timeValue = session.StartedAt + } + day := dayKey(timeValue) + if day != "" { + dayCounts[day]++ + } + } + end := startOfDay(now) + start := end.AddDate(0, 0, -heatmapDays+1) + return buildHeatmapRange(dayCounts, start, end) +} + +func countPoints(values map[string]int) []CountPoint { + keys := make([]string, 0, len(values)) + for key := range values { + if key != "" { + keys = append(keys, key) + } + } + sort.Strings(keys) + points := make([]CountPoint, 0, len(keys)) + for _, key := range keys { + points = append(points, CountPoint{Key: key, Count: values[key]}) + } + return points +} + +func buildHeatmap(dayCounts map[string]int) []HeatmapCell { + var minDay time.Time + var maxDay time.Time + for key := range dayCounts { + parsed, ok := parseTime(key) + if !ok { + continue + } + if minDay.IsZero() || parsed.Before(minDay) { + minDay = parsed + } + if maxDay.IsZero() || parsed.After(maxDay) { + maxDay = parsed + } + } + if minDay.IsZero() || maxDay.IsZero() || maxDay.Before(minDay) { + return nil + } + if maxDay.Sub(minDay) > 370*24*time.Hour { + minDay = maxDay.AddDate(0, 0, -370) + } + return buildHeatmapRange(dayCounts, minDay, maxDay) +} + +func buildHeatmapRange(dayCounts map[string]int, minDay time.Time, maxDay time.Time) []HeatmapCell { + cells := []HeatmapCell{} + for day := minDay; !day.After(maxDay); day = day.AddDate(0, 0, 1) { + key := day.Format("2006-01-02") + cells = append(cells, HeatmapCell{Date: key, Count: dayCounts[key]}) + } + return cells +} diff --git a/cli/codex_inspector/stats_test.go b/cli/codex_inspector/stats_test.go new file mode 100644 index 0000000..f583abc --- /dev/null +++ b/cli/codex_inspector/stats_test.go @@ -0,0 +1,61 @@ +package main + +import ( + "testing" + "time" + + "github.com/stretchr/testify/require" +) + +func TestBuildStatsGroupsByDayWeekMonthAndHeatmap(t *testing.T) { + sessions := []SessionSummary{ + {ID: "a", UpdatedAt: "2026-07-01T10:00:00Z", EventCount: 3, UserMessages: 1, AssistantMessages: 1, ToolCalls: 1, TokenStats: TokenStats{TokenEvents: 1, Total: TokenUsage{InputTokens: 1000, CachedInputTokens: 300, OutputTokens: 90, ReasoningOutputTokens: 10, TotalTokens: 1100}}}, + {ID: "b", UpdatedAt: "2026-07-01T12:00:00Z", EventCount: 2, UserMessages: 1, AssistantMessages: 1, ToolResults: 1}, + {ID: "c", UpdatedAt: "2026-07-08T10:00:00Z", EventCount: 4, UserMessages: 2, AssistantMessages: 1, TokenStats: TokenStats{TokenEvents: 1, Total: TokenUsage{InputTokens: 2000, CachedInputTokens: 500, OutputTokens: 180, ReasoningOutputTokens: 20, TotalTokens: 2200}}}, + } + + stats := BuildStats(sessions) + require.Equal(t, 3, stats.TotalSessions) + require.Equal(t, 9, stats.TotalEvents) + require.Equal(t, 2, stats.ActiveDays) + require.Equal(t, 4, stats.UserMessages) + require.Equal(t, 3, stats.AssistantMessages) + require.Equal(t, 2, stats.TokenizedSessions) + require.Equal(t, int64(3000), stats.InputTokens) + require.Equal(t, int64(800), stats.CachedInputTokens) + require.Equal(t, int64(270), stats.OutputTokens) + require.Equal(t, int64(30), stats.ReasoningTokens) + require.Equal(t, int64(3300), stats.TotalTokens) + require.Equal(t, []CountPoint{{Key: "2026-07-01", Count: 2}, {Key: "2026-07-08", Count: 1}}, stats.ByDay) + require.Equal(t, []CountPoint{{Key: "2026-07", Count: 3}}, stats.ByMonth) + require.NotEmpty(t, stats.Heatmap) + require.Equal(t, "2026-07-01", stats.Heatmap[0].Date) + require.Equal(t, "2026-07-08", stats.Heatmap[len(stats.Heatmap)-1].Date) +} + +func TestBuildRecentHeatmapUsesSixMonthWindowIndependentOfFilteredStats(t *testing.T) { + filtered := []SessionSummary{ + {ID: "filtered", UpdatedAt: "2026-07-03T10:00:00Z"}, + } + all := []SessionSummary{ + {ID: "old", UpdatedAt: "2026-01-02T10:00:00Z"}, + {ID: "current", UpdatedAt: "2026-07-03T10:00:00Z"}, + } + + stats := BuildStats(filtered) + stats.Heatmap = BuildRecentHeatmap(all, time.Date(2026, 7, 3, 12, 0, 0, 0, time.UTC)) + + require.Equal(t, 1, stats.TotalSessions) + require.Len(t, stats.Heatmap, heatmapDays) + require.Equal(t, "2026-01-02", stats.Heatmap[0].Date) + require.Equal(t, 1, stats.Heatmap[0].Count) + require.Equal(t, "2026-07-03", stats.Heatmap[len(stats.Heatmap)-1].Date) + require.Equal(t, 1, stats.Heatmap[len(stats.Heatmap)-1].Count) +} + +func TestParseFilterKeepsInvalidDatesNonFatal(t *testing.T) { + filter := parseFilter("bad", "2026-07-03", "demo", 10) + require.False(t, filter.hasFrom) + require.True(t, filter.hasTo) + require.Equal(t, "demo", filter.Query) +} diff --git a/cli/codex_inspector/store.go b/cli/codex_inspector/store.go new file mode 100644 index 0000000..e33a791 --- /dev/null +++ b/cli/codex_inspector/store.go @@ -0,0 +1,576 @@ +package main + +import ( + "bufio" + "encoding/json" + "fmt" + "os" + "path/filepath" + "sort" + "strconv" + "strings" + "sync" + "time" +) + +type Store struct { + CodexHome string + CachePath string + mu sync.Mutex + cond *sync.Cond + loading bool + sessionCache *sessionCache + diskCache *summaryDiskCache + cacheWarning string +} + +type sessionCache struct { + loadedAt time.Time + sessions []SessionSummary + byID map[string]SessionSummary + warnings []string +} + +type sessionIndexLine struct { + ID string `json:"id"` + ThreadName string `json:"thread_name"` + UpdatedAt string `json:"updated_at"` +} + +func NewStore(codexHome string) *Store { + return NewStoreWithCache(codexHome, defaultCachePath()) +} + +func NewStoreWithCache(codexHome string, cachePath string) *Store { + if codexHome == "" { + codexHome = defaultCodexHome() + } + store := &Store{CodexHome: filepath.Clean(codexHome), CachePath: cachePath} + store.cond = sync.NewCond(&store.mu) + cache, err := openSummaryDiskCache(cachePath) + if err != nil { + store.cacheWarning = fmt.Sprintf("summary cache unavailable: %v", err) + } else { + store.diskCache = cache + } + return store +} + +func (s *Store) Sources() []SourceStatus { + items := []struct { + name string + rel string + notes []string + }{ + {name: "session index", rel: "session_index.jsonl"}, + {name: "sessions", rel: "sessions"}, + {name: "memory index", rel: filepath.Join("memories", "MEMORY.md")}, + {name: "memory summary", rel: filepath.Join("memories", "memory_summary.md")}, + {name: "memory rollouts", rel: filepath.Join("memories", "rollout_summaries")}, + {name: "thread sqlite", rel: "state_5.sqlite", notes: []string{"schema only in diagnostics"}}, + {name: "goal sqlite", rel: "goals_1.sqlite", notes: []string{"schema only in diagnostics"}}, + {name: "memory sqlite", rel: "memories_1.sqlite", notes: []string{"schema only in diagnostics"}}, + {name: "auth files", rel: "auth.json", notes: []string{"excluded by design; content is never read"}}, + } + + statuses := make([]SourceStatus, 0, len(items)) + for _, item := range items { + statuses = append(statuses, sourceStatus(item.name, filepath.Join(s.CodexHome, item.rel), item.notes)) + } + if s.CachePath != "" { + statuses = append(statuses, sourceStatus("summary cache", s.CachePath, []string{"tool-owned sqlite cache; no auth data"})) + } + return statuses +} + +func (s *Store) Close() { + if s.diskCache != nil { + _ = s.diskCache.Close() + } +} + +func sourceStatus(name string, path string, notes []string) SourceStatus { + status := SourceStatus{Name: name, Path: path, Notes: append([]string(nil), notes...)} + info, err := os.Stat(path) + if err != nil { + status.Exists = false + return status + } + status.Exists = true + status.Size = info.Size() + status.ModifiedAt = info.ModTime().Format("2006-01-02T15:04:05Z07:00") + if info.IsDir() { + status.Size = 0 + } + return status +} + +func (s *Store) LoadSessions(filter QueryFilter) ([]SessionSummary, []string) { + allSessions, warnings := s.loadAllSessions() + candidates := make([]SessionSummary, 0, len(allSessions)) + for _, summary := range allSessions { + if sessionMatchesRange(summary, filter) { + candidates = append(candidates, summary) + } + } + sortSessions(candidates) + if filter.Query != "" { + var enrichWarnings []string + candidates, enrichWarnings = s.enrichSummaries(candidates) + warnings = append(warnings, enrichWarnings...) + candidates = filterByQuery(candidates, filter.Query) + sortSessions(candidates) + } + if filter.Limit > 0 && len(candidates) > filter.Limit { + candidates = candidates[:filter.Limit] + } + sessions, enrichWarnings := s.enrichSummaries(candidates) + warnings = append(warnings, enrichWarnings...) + return sessions, append([]string(nil), warnings...) +} + +func (s *Store) LoadSessionIndex() ([]SessionSummary, []string) { + return s.loadAllSessions() +} + +func (s *Store) loadAllSessions() ([]SessionSummary, []string) { + s.mu.Lock() + for { + if s.sessionCache != nil && time.Since(s.sessionCache.loadedAt) < 5*time.Minute { + sessions := append([]SessionSummary(nil), s.sessionCache.sessions...) + warnings := append([]string(nil), s.sessionCache.warnings...) + s.mu.Unlock() + return sessions, warnings + } + if !s.loading { + s.loading = true + break + } + s.cond.Wait() + } + s.mu.Unlock() + + sessions, byID, warnings := s.buildSessionCache() + if s.cacheWarning != "" { + warnings = append(warnings, s.cacheWarning) + } + + s.mu.Lock() + s.sessionCache = &sessionCache{ + loadedAt: time.Now(), + sessions: append([]SessionSummary(nil), sessions...), + byID: copySessionMap(byID), + warnings: append([]string(nil), warnings...), + } + s.loading = false + s.cond.Broadcast() + s.mu.Unlock() + return sessions, warnings +} + +func (s *Store) buildSessionCache() ([]SessionSummary, map[string]SessionSummary, []string) { + index, warnings := s.readSessionIndex() + files, fileWarnings := s.rolloutFiles() + warnings = append(warnings, fileWarnings...) + + byID := make(map[string]SessionSummary) + for _, path := range files { + summary := summaryFromPath(path) + if summary.ID == "" { + summary.ID = strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) + } + summary.Path = path + if item, ok := index[summary.ID]; ok { + mergeIndex(&summary, item) + } + byID[summary.ID] = summary + } + + for id, item := range index { + if _, ok := byID[id]; ok { + continue + } + summary := SessionSummary{ID: id} + mergeIndex(&summary, item) + byID[id] = summary + } + + sessions := make([]SessionSummary, 0, len(byID)) + for _, summary := range byID { + sessions = append(sessions, summary) + } + sortSessions(sessions) + return sessions, byID, warnings +} + +func (s *Store) enrichSummaries(sessions []SessionSummary) ([]SessionSummary, []string) { + out := make([]SessionSummary, 0, len(sessions)) + var warnings []string + now := time.Now() + for _, summary := range sessions { + enriched := summary + meta, metaOK := statFile(summary.Path) + historicalFile := metaOK && cacheableFile(meta, now) + if cached, ok := s.cachedSummary(summary.ID); ok && cached.Enriched && historicalFile && cacheableSummary(cached, now) { + enriched = cached + } else if summary.Path != "" { + if historicalFile && s.diskCache != nil { + cached, ok, err := s.diskCache.Lookup(summary.Path, meta) + if err != nil { + warnings = append(warnings, fmt.Sprintf("cache lookup %s: %v", summary.Path, err)) + } + if ok && cacheableSummary(cached, now) { + detail := SessionDetail{Summary: cached} + mergeCachedSummary(&detail, summary) + enriched = detail.Summary + enriched.Enriched = true + s.updateCachedSummary(enriched) + out = append(out, enriched) + continue + } + } + detail, err := ParseRolloutFile(summary.Path, false) + if err != nil { + warnings = append(warnings, fmt.Sprintf("parse %s: %v", summary.Path, err)) + } else { + mergeCachedSummary(&detail, summary) + enriched = detail.Summary + enriched.Enriched = true + s.updateCachedSummary(enriched) + if historicalFile && cacheableSummary(enriched, now) && s.diskCache != nil { + if err := s.diskCache.Upsert(summary.Path, meta, enriched); err != nil { + warnings = append(warnings, fmt.Sprintf("cache write %s: %v", summary.Path, err)) + } + } + } + } + out = append(out, enriched) + } + return out, warnings +} + +func (s *Store) cachedSummary(id string) (SessionSummary, bool) { + s.mu.Lock() + defer s.mu.Unlock() + if s.sessionCache == nil { + return SessionSummary{}, false + } + summary, ok := s.sessionCache.byID[id] + return summary, ok +} + +func (s *Store) updateCachedSummary(summary SessionSummary) { + if summary.ID == "" { + return + } + s.mu.Lock() + defer s.mu.Unlock() + if s.sessionCache == nil { + return + } + s.sessionCache.byID[summary.ID] = summary + for i := range s.sessionCache.sessions { + if s.sessionCache.sessions[i].ID == summary.ID { + s.sessionCache.sessions[i] = summary + return + } + } +} + +func (s *Store) cachedSession(id string) (SessionSummary, bool, []string) { + _, warnings := s.loadAllSessions() + s.mu.Lock() + defer s.mu.Unlock() + if s.sessionCache == nil { + return SessionSummary{}, false, warnings + } + if summary, ok := s.sessionCache.byID[id]; ok { + return summary, true, warnings + } + for _, summary := range s.sessionCache.sessions { + if summary.ID == id || strings.TrimSuffix(filepath.Base(summary.Path), filepath.Ext(summary.Path)) == id || summary.Title == id { + return summary, true, warnings + } + } + return SessionSummary{}, false, warnings +} + +func copySessionMap(in map[string]SessionSummary) map[string]SessionSummary { + out := make(map[string]SessionSummary, len(in)) + for key, value := range in { + out[key] = value + } + return out +} + +func mergeCachedSummary(detail *SessionDetail, cached SessionSummary) { + if cached.ID != "" { + detail.Summary.ID = cached.ID + } + if cached.Title != "" { + detail.Summary.Title = cached.Title + } + if cached.Path != "" { + detail.Summary.Path = cached.Path + } + if detail.Summary.Cwd == "" { + detail.Summary.Cwd = cached.Cwd + } + if detail.Summary.Model == "" { + detail.Summary.Model = cached.Model + } + if detail.Summary.ModelProvider == "" { + detail.Summary.ModelProvider = cached.ModelProvider + } + if cached.UpdatedAt != "" { + detail.Summary.UpdatedAt = cached.UpdatedAt + } + if detail.Summary.StartedAt == "" { + detail.Summary.StartedAt = cached.StartedAt + } + if detail.Summary.Preview == "" { + detail.Summary.Preview = cached.Preview + } +} + +func (s *Store) LoadSessionDetail(id string) (SessionDetail, bool, []string) { + summary, ok, warnings := s.cachedSession(id) + if ok && summary.Path != "" { + detail, err := ParseRolloutFile(summary.Path, true) + if err != nil { + warnings = append(warnings, fmt.Sprintf("parse %s: %v", summary.Path, err)) + return SessionDetail{}, false, warnings + } + mergeCachedSummary(&detail, summary) + return detail, true, warnings + } + + files, fileWarnings := s.rolloutFiles() + warnings = append(warnings, fileWarnings...) + for i := len(files) - 1; i >= 0; i-- { + path := files[i] + base := strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) + if id != base && !strings.Contains(base, id) { + continue + } + detail, err := ParseRolloutFile(path, true) + if err != nil { + warnings = append(warnings, fmt.Sprintf("parse %s: %v", path, err)) + return SessionDetail{}, false, warnings + } + return detail, true, warnings + } + return SessionDetail{}, false, warnings +} + +func (s *Store) readSessionIndex() (map[string]sessionIndexLine, []string) { + path := filepath.Join(s.CodexHome, "session_index.jsonl") + file, err := os.Open(path) + if err != nil { + return map[string]sessionIndexLine{}, []string{fmt.Sprintf("session index unavailable: %v", err)} + } + defer file.Close() + + out := make(map[string]sessionIndexLine) + var warnings []string + scanner := bufio.NewScanner(file) + scanner.Buffer(make([]byte, 1024), 4*1024*1024) + lineNo := 0 + for scanner.Scan() { + lineNo++ + line := strings.TrimSpace(scanner.Text()) + if line == "" { + continue + } + var item sessionIndexLine + if err := json.Unmarshal([]byte(line), &item); err != nil { + warnings = append(warnings, fmt.Sprintf("bad session_index line %d: %v", lineNo, err)) + continue + } + if item.ID == "" { + warnings = append(warnings, fmt.Sprintf("session_index line %d has no id", lineNo)) + continue + } + out[item.ID] = item + } + if err := scanner.Err(); err != nil { + warnings = append(warnings, fmt.Sprintf("read session_index: %v", err)) + } + return out, warnings +} + +func (s *Store) rolloutFiles() ([]string, []string) { + root := filepath.Join(s.CodexHome, "sessions") + var files []string + var warnings []string + err := filepath.WalkDir(root, func(path string, d os.DirEntry, err error) error { + if err != nil { + warnings = append(warnings, fmt.Sprintf("walk %s: %v", path, err)) + return nil + } + if d.IsDir() { + return nil + } + if strings.HasPrefix(d.Name(), "rollout-") && strings.HasSuffix(d.Name(), ".jsonl") { + files = append(files, path) + } + return nil + }) + if err != nil { + warnings = append(warnings, fmt.Sprintf("walk sessions: %v", err)) + } + sort.Strings(files) + return files, warnings +} + +func mergeIndex(summary *SessionSummary, item sessionIndexLine) { + if summary.ID == "" { + summary.ID = item.ID + } + if item.ThreadName != "" { + summary.Title = sanitizeText(item.ThreadName) + } + if summary.Title == "" { + summary.Title = summary.ID + } + if item.UpdatedAt != "" { + summary.UpdatedAt = item.UpdatedAt + } +} + +func summaryFromPath(path string) SessionSummary { + base := strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) + summary := SessionSummary{ + ID: base, + Title: base, + Path: path, + StartedAt: timeFromRolloutPath(path), + UpdatedAt: timeFromRolloutPath(path), + } + file, err := os.Open(path) + if err != nil { + return summary + } + defer file.Close() + + scanner := bufio.NewScanner(file) + scanner.Buffer(make([]byte, 1024), 512*1024) + for lineNo := 0; scanner.Scan() && lineNo < 12; lineNo++ { + line := strings.TrimSpace(scanner.Text()) + if line == "" { + continue + } + var record rolloutLine + if err := json.Unmarshal([]byte(line), &record); err != nil { + continue + } + if summary.StartedAt == "" && record.Timestamp != "" { + summary.StartedAt = record.Timestamp + } + if record.Timestamp != "" { + summary.UpdatedAt = record.Timestamp + } + if record.Type != "session_meta" && record.Type != "turn_context" { + continue + } + payload := decodePayload(record.Payload) + if id := stringField(payload, "id"); id != "" { + summary.ID = id + } + if cwd := stringField(payload, "cwd"); cwd != "" && summary.Cwd == "" { + summary.Cwd = sanitizeText(cwd) + } + if model := stringField(payload, "model"); model != "" && summary.Model == "" { + summary.Model = sanitizeText(model) + } + if provider := stringField(payload, "model_provider"); provider != "" && summary.ModelProvider == "" { + summary.ModelProvider = sanitizeText(provider) + } + if summary.ID != base && summary.Cwd != "" { + break + } + } + if summary.Title == base { + summary.Title = summary.ID + } + return summary +} + +func timeFromRolloutPath(path string) string { + name := strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) + name = strings.TrimPrefix(name, "rollout-") + if len(name) < len("2006-01-02T15-04-05") { + return "" + } + candidate := name[:len("2006-01-02T15-04-05")] + date := candidate[:10] + clock := strings.ReplaceAll(candidate[11:], "-", ":") + return date + "T" + clock +} + +func sessionMatchesRange(summary SessionSummary, filter QueryFilter) bool { + timeValue := summary.UpdatedAt + if timeValue == "" { + timeValue = summary.StartedAt + } + return inRange(timeValue, filter) +} + +func sessionMatches(summary SessionSummary, filter QueryFilter) bool { + if !sessionMatchesRange(summary, filter) { + return false + } + query := strings.TrimSpace(filter.Query) + if query == "" { + return true + } + fields := []string{summary.ID, summary.Title, summary.Cwd, summary.Model, summary.ModelProvider, summary.Preview} + return containsFold(strings.Join(fields, "\n"), query) +} + +func filterByQuery(sessions []SessionSummary, query string) []SessionSummary { + filter := QueryFilter{Query: strings.TrimSpace(query)} + out := make([]SessionSummary, 0, len(sessions)) + for _, summary := range sessions { + if sessionMatches(summary, filter) { + out = append(out, summary) + } + } + return out +} + +func sortSessions(sessions []SessionSummary) { + sort.Slice(sessions, func(i, j int) bool { + left := sessions[i].UpdatedAt + if left == "" { + left = sessions[i].StartedAt + } + right := sessions[j].UpdatedAt + if right == "" { + right = sessions[j].StartedAt + } + leftTime, leftOK := parseTime(left) + rightTime, rightOK := parseTime(right) + if leftOK && rightOK { + return leftTime.After(rightTime) + } + if left != right { + return left > right + } + return sessions[i].ID > sessions[j].ID + }) +} + +func limitFromString(value string, fallback int) int { + if value == "" { + return fallback + } + n, err := strconv.Atoi(value) + if err != nil || n <= 0 { + return fallback + } + if n > 1000 { + return 1000 + } + return n +} diff --git a/cli/codex_inspector/timeutil.go b/cli/codex_inspector/timeutil.go new file mode 100644 index 0000000..1f0fada --- /dev/null +++ b/cli/codex_inspector/timeutil.go @@ -0,0 +1,97 @@ +package main + +import ( + "fmt" + "strings" + "time" +) + +func parseTime(value string) (time.Time, bool) { + value = strings.TrimSpace(value) + if value == "" { + return time.Time{}, false + } + layouts := []string{ + time.RFC3339Nano, + time.RFC3339, + "2006-01-02T15:04:05", + "2006-01-02 15:04:05", + "2006-01-02", + } + for _, layout := range layouts { + t, err := time.Parse(layout, value) + if err == nil { + return t, true + } + } + return time.Time{}, false +} + +func parseFilter(from string, to string, query string, limit int) QueryFilter { + filter := QueryFilter{ + From: strings.TrimSpace(from), + To: strings.TrimSpace(to), + Query: strings.TrimSpace(query), + Limit: limit, + } + if _, ok := parseTime(filter.From); ok { + filter.hasFrom = true + } + if _, ok := parseTime(filter.To); ok { + filter.hasTo = true + } + return filter +} + +func inRange(value string, filter QueryFilter) bool { + t, ok := parseTime(value) + if !ok { + return true + } + if filter.hasFrom { + from, _ := parseTime(filter.From) + if t.Before(startOfDay(from)) { + return false + } + } + if filter.hasTo { + to, _ := parseTime(filter.To) + if t.After(endOfDay(to)) { + return false + } + } + return true +} + +func startOfDay(t time.Time) time.Time { + return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location()) +} + +func endOfDay(t time.Time) time.Time { + return startOfDay(t).AddDate(0, 0, 1).Add(-time.Nanosecond) +} + +func dayKey(value string) string { + t, ok := parseTime(value) + if !ok { + return "" + } + return t.Format("2006-01-02") +} + +func weekKey(value string) string { + t, ok := parseTime(value) + if !ok { + return "" + } + year, week := t.ISOWeek() + return fmt.Sprintf("%04d-W%02d", year, week) +} + +func monthKey(value string) string { + t, ok := parseTime(value) + if !ok { + return "" + } + return t.Format("2006-01") +} diff --git a/cli/codex_inspector/types.go b/cli/codex_inspector/types.go new file mode 100644 index 0000000..bae0c62 --- /dev/null +++ b/cli/codex_inspector/types.go @@ -0,0 +1,165 @@ +package main + +type SourceStatus struct { + Name string `json:"name"` + Path string `json:"path"` + Exists bool `json:"exists"` + Size int64 `json:"size"` + ModifiedAt string `json:"modifiedAt,omitempty"` + Notes []string `json:"notes,omitempty"` +} + +type QueryFilter struct { + From string + To string + Query string + Limit int + hasFrom bool + hasTo bool +} + +type SessionSummary struct { + ID string `json:"id"` + Title string `json:"title"` + Path string `json:"path,omitempty"` + Cwd string `json:"cwd,omitempty"` + Model string `json:"model,omitempty"` + ModelProvider string `json:"modelProvider,omitempty"` + StartedAt string `json:"startedAt,omitempty"` + UpdatedAt string `json:"updatedAt,omitempty"` + EventCount int `json:"eventCount"` + UserMessages int `json:"userMessages"` + AssistantMessages int `json:"assistantMessages"` + ToolCalls int `json:"toolCalls"` + ToolResults int `json:"toolResults"` + SystemEvents int `json:"systemEvents"` + TokenStats TokenStats `json:"tokenStats"` + Preview string `json:"preview,omitempty"` + Warnings []string `json:"warnings,omitempty"` + Enriched bool `json:"-"` +} + +type TokenUsage struct { + InputTokens int64 `json:"inputTokens"` + CachedInputTokens int64 `json:"cachedInputTokens"` + OutputTokens int64 `json:"outputTokens"` + ReasoningOutputTokens int64 `json:"reasoningOutputTokens"` + TotalTokens int64 `json:"totalTokens"` +} + +type RateLimitUsage struct { + UsedPercent float64 `json:"usedPercent,omitempty"` + WindowMinutes int64 `json:"windowMinutes,omitempty"` +} + +type TokenStats struct { + Total TokenUsage `json:"total"` + Last TokenUsage `json:"last"` + TokenEvents int `json:"tokenEvents"` + ModelContextWindow int64 `json:"modelContextWindow,omitempty"` + PrimaryRateLimit RateLimitUsage `json:"primaryRateLimit,omitempty"` + SecondaryRateLimit RateLimitUsage `json:"secondaryRateLimit,omitempty"` +} + +type DisplayEvent struct { + Line int `json:"line"` + Timestamp string `json:"timestamp,omitempty"` + Kind string `json:"kind"` + Role string `json:"role,omitempty"` + Label string `json:"label"` + Text string `json:"text,omitempty"` +} + +type RawLine struct { + Line int `json:"line"` + Text string `json:"text"` +} + +type SessionDetail struct { + Summary SessionSummary `json:"summary"` + Events []DisplayEvent `json:"events"` + RawLines []RawLine `json:"rawLines"` + Warnings []string `json:"warnings,omitempty"` +} + +type CountPoint struct { + Key string `json:"key"` + Count int `json:"count"` +} + +type HeatmapCell struct { + Date string `json:"date"` + Count int `json:"count"` +} + +type OverviewResponse struct { + CodexHome string `json:"codexHome"` + PrivacyNotice string `json:"privacyNotice"` + Sources []SourceStatus `json:"sources"` + Stats OverviewStats `json:"stats"` + RecentSessions []SessionSummary `json:"recentSessions"` + Warnings []string `json:"warnings,omitempty"` +} + +type OverviewStats struct { + TotalSessions int `json:"totalSessions"` + TotalEvents int `json:"totalEvents"` + ActiveDays int `json:"activeDays"` + UserMessages int `json:"userMessages"` + AssistantMessages int `json:"assistantMessages"` + ToolCalls int `json:"toolCalls"` + ToolResults int `json:"toolResults"` + TokenizedSessions int `json:"tokenizedSessions"` + InputTokens int64 `json:"inputTokens"` + CachedInputTokens int64 `json:"cachedInputTokens"` + OutputTokens int64 `json:"outputTokens"` + ReasoningTokens int64 `json:"reasoningTokens"` + TotalTokens int64 `json:"totalTokens"` + ByDay []CountPoint `json:"byDay"` + ByWeek []CountPoint `json:"byWeek"` + ByMonth []CountPoint `json:"byMonth"` + Heatmap []HeatmapCell `json:"heatmap"` +} + +type SessionsResponse struct { + Sessions []SessionSummary `json:"sessions"` + Warnings []string `json:"warnings,omitempty"` +} + +type MemoryFile struct { + Path string `json:"path"` + Kind string `json:"kind"` + Size int64 `json:"size"` + ModifiedAt string `json:"modifiedAt,omitempty"` + Title string `json:"title"` + Preview string `json:"preview,omitempty"` + Matches int `json:"matches,omitempty"` +} + +type MemoryResponse struct { + Files []MemoryFile `json:"files"` + Warnings []string `json:"warnings,omitempty"` +} + +type MemoryDetail struct { + File MemoryFile `json:"file"` + Content string `json:"content"` + Warnings []string `json:"warnings,omitempty"` +} + +type DiagnosticsResponse struct { + CodexHome string `json:"codexHome"` + Sources []SourceStatus `json:"sources"` + Schemas []SQLiteSchema `json:"schemas"` + Warnings []string `json:"warnings,omitempty"` +} + +type SQLiteSchema struct { + Name string `json:"name"` + Path string `json:"path"` + Exists bool `json:"exists"` + Loaded bool `json:"loaded"` + Schema string `json:"schema,omitempty"` + Error string `json:"error,omitempty"` + ReadMode string `json:"readMode"` +} diff --git a/docs/assets/codex_inspector/memory-768.png b/docs/assets/codex_inspector/memory-768.png new file mode 100644 index 0000000000000000000000000000000000000000..a913c5955bb3f66d626273acbcc83e5a1671a0ec GIT binary patch literal 84562 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 literal 0 HcmV?d00001 diff --git a/docs/assets/codex_inspector/overview-1440.png b/docs/assets/codex_inspector/overview-1440.png new file mode 100644 index 0000000000000000000000000000000000000000..a5011504dcb7e95132ff791e942cf6eb3c7fb8dc GIT binary patch literal 245953 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 z z8APu49F`@)Tc@`KM>h75Kd+EOeBK9kk&y73hDa1kWPcB;$`W1XIeYN7yM_ZB&LSV5 z_ol1(0W&1*-!~EH-71OZ*$z;$%p`ItblZtddCDzj>z=1ox@vE;AIG^L(tNei@TZrL zdjncEi;*~!B<@%W1i{=6)0fop+;VE)*onQbd|xA$*(jtCyZI}$!E*V5`?CIp3I5~Y zfcQuoj9kQaxU^wu6UbmuKi{-bZU{s4{79EC>%4BR&GPr(G_xgSw$JD1OS%pVnf>1~ z8hsymKkK_IUIz-|er(P9&Uj$!dXC2VIqgjZk@x35Zz#ID+VP%E|6%H`Ifl=DU(ckZ zukL>KL_coIGy{f49BWm*PNv~m&;6Z>#Y*k>0^&D&XZxdIlh_|i>mTD5gMm%l16bo3 zYr0!Ch8G>(Pl|q)+&!VxxoprJ?0UWIMD%0;)VJEP)$J z1-(1H+DuoHlI1sFq)Onotn>uzfLk_l8!ddpX*FnLaBjW9zFCq`ZeGW_RqAHU$Q`_8 zTYU8UJs}%>zAU9N>RIbSJs9l`A!4~{h8Z`-*>Zh6p?lcOFI`O@)qNck$L^AyYhdHp zcwgg9Q0fN{;wpomLDH`zThLHone*1ET>pW@{levYHZd?tCb z-DTc{V+rx+E9DWU0J#CseQjsEosXKx?XA;oqv|Nvz?J)#7-5{?foAKbPj86e+s>mh z{$f@9W5q#l01D_f&ZOxK;}RULz`rszY=8zL=zF8@I*N3}rW1_&+@8F&s0~N7-0&%8 zz^o6H?5PEf1g8T)K7KpO*l`WYbA;SNVr1)|cAI{b|#&SRU{Dj)UhC0=L~HWWfi& zk9)r|LLzo#U0{R0m=c!H(a~IuhkJjF-ll_xhpgT31awcTtoS8x+_HB{SMFwgiF0yZ zU0o{Rd@W2(=(JwNx$!pq`Rd2Eq*rG#bNSgz%%--)XpwumzPj0DyplhL#Iv02GO;6> zSsM3(6-CHY|EoN5wC&f)NyC>uwN;Of=<3wB(cHHPrV?WocNXuD+gyY8MVVxFO=Mg6 zze7H7Ab$py_JG#V7>aPo0n%M5wB|otQU~#LNdt*l&X?f$xEi|rtCN=d!LpRp^@;{< zh^?x^&bqE%-Y@+O99)l-u%x?D0AaI`S4=!a6^3`5i3Fh}iIW1a)=gTfCXZMU5V#-Y zUF18{ru6KHdiJ~t_s-zSMY-|htSJ>a%xYfd3Kk6r6P*;~E@*H^G zRP|cDSum?9E?B=;1ZEgYStPPqU9C@O;QV}loPhD~wgwyFOZ!jUl5CEWvXC&p4f~K7 z(sQg8m~bzUrB{GONmK6m0O`Da2j!2`>=4vzLVoo8vIuoy}09%IhhDGJo@ zU1B%}Ydpg04;ryU15ZwYt2THKPYpit6Pm(MrJu{yC71L2U$DEsC5K6sacq;=VIyO$ zT8J|G5@XE(*O16Rt~(jrnLi`2Aq0a5id|g<^IqxFT8?rRSkTGuQ0c?VectD6EOKrmC@F&(A*wA0cs~ zXF9#@0ehjjBPH=KUA_kY;{;R9+wO4uONI{lS_>!0nwfYhGC0R@6PdP29| z5#KM|gOgDEffKBZz?DBhs7s7u!nK#{FxzRr2>rd*<&;B^G>ugy=RMof5($_=1z!pT z0|yoTUR0&Yp7X^(6d!kh4ksIJE^HN*GDiB=PjxP*-)>|YxS~Ll$6R(Js5gPm`@pVZ zT+g~kSg`gO^he=8ND(d+7#yObVVCu`8!pWmUM_nQYiZLi8JP4cIqk$pCn$HQV59<> z9qB<801)i92SH8e=-qK;a{b<8i&4+!6?H+uC1IVO;G;0Oq;~dWW@*i27KeSF)16@X zoUDKw3JUK8|D?i7LNYX~ob{rB{xwX8ufm(-0QRolcsHx`E9j z%1w@<7RPWpdRX_hAw8w82*nRs)bu$44OyS3eqx`$K=s%c&J~rrKNC!uCptKN4twiP zlZW*^8iA@%bcI!oKK3n&Tg+_9=etJ36HGqGvRv?T0g!}TFnS>d3RYJ2NTRpb$4@}l zAo&tVswSAhXhR`ymEn_=BMo5hw(<&YLwdQ|XcfZ;Q8?s?>A5dLqe)`&9bxQPvJ9{` zeGrBU&p1>PbvT|u9(V~`F+Z}|Sbmk}_nemdx_0uD-u@^!9<+tQ; zx*kIl&8Ew-py&m|4{wzwM;9i<(u+%7W3%Qe2ofaS4cgV|i^=#df;Pv3RO+08!sQR6 zW_x-PvAdD`=WLn(J4_Ta57(RHXYA*>U3cL2+pMIZ(Gax?m9dtdslkl3xoQG9xu}b} zmZfV#w_q-p3&FTXOAY;&N<(Z=#6{$i1XYGkdsO{sO0dT2Y05T@%|TkTs|7uwtAx}a zMg%Wkp#l)c;5yY{E2|T(ZwLqvS+`4S8c&|EaRj#>@*I4ux~l5Url%aY9=Y=3Av(n@ zB~|KaAbtrmEP#UGVoxi6JiHTcJ9YiCaS{^P84P_)cL*#pLJCr`?EZt)RH`%BNs;K> zNCzn#DlY`FzSsV6iv6stQ%<{0M%u`D$YT;%Bmgtj6YPyt8SCg zO$)wXz8_kZl@ncn&}C&wzwYy(R#a5|*;jc*oToU#e}P6ebvzA-{xxf-0#7=P1r=`u zp}TyxpxgJOqqS+bZmBq~!{)n^&Ukm==9ik7+$A3(ueFxi_ z;*H7rX?|u#x`!mln;CVj*=<%RtNyaEp{WV}>ASQGRV4;!=DXopp0YaoQXsW5GQ~+n=IHN&fRJa09%1lq%>sg$&KFQ)$lS1+#Q)wruE!4HnGF zr^hjugeIk?&W3R84hhV+WaaVxHcc5qc?g2sJ`0+md0$;;@m5Y!jEG|gxd8RN8zKt! z=_+k^4_n?$%Q3#MRMF>>J%d43p?&Fkv^O-_emp;GU zGCe*Z-URuVqJm(NIA)zQrFRRp16fLSMUv63tVA}(667TBSR7&g^ygFRc)auTFBI4C zyUNrYcQu2dve1zMI(fvRTn-RlcN4Y0C~Ri1^p??!W0~{80}Gc4%C%|6-#7R`hLxVD zpHyy07?!0hS@Wj|sX1a8MP~ih!t`{LP19RVb1C_4pOR!pbXx@y|NVU<@Ere$`Nqi1 z95B!x5kXB;Efm@F{G-oI{{u7NUa)u?w?6&GzdDKSUcY_=*z^_YdBl!^rRB6`W5r-5 zSywcrZ2Su%=#wa|tSr#$a2yiz%JidZ;C$HA_}2R;?^Z!Lp7& z`1fwoY{>eFxm6R*r}SG)FE{B-;#!qVLzq5IO}^KgqaRncc=Mc35a0*5yPa9seotUQ z-wt2hveT$B8mo08HouNlqCxRmrd23XlSHs8nkA6HqQWdrME!n3lnPJ3bn$V8va&os zzc#lg7cI@ZWdH}*!WpSRw__U)l`T)&(K618j{Uj*1M9%9yzYrW9~7xWAKvt*N8wj~ zBv7-`7MIgaH?z?^oLVX1^r4S(RL``QY(!k7m~b$p5}LSE&4A%DlE1ikUC+dBJ6}}FcNNx{iVs0c}>~DoZOI~Be!8^#nd)VJkZhPGSt&&;v!DakK zrUI>=ck5A}kIe-vM=_&seMc}yQk73}CYrNy8N-NS050zirs#9fN+!-4w2$-~M5He5 z|3W87NSTp9zq9cO z#bc}CW;w_W83PJsCkX)`VB9GvY0EJ+G1{Pe_L;P7vQuEKPQt|{KNCM%5L|;OGOmQ< zS)c-7z>4b8X-UR8jHq^4-KC+cQInh)mwPQ>0Bn*9_7GbEfyxb^^LRE;3|d@qsCnFE zD=4{Ig`h0&TN*0y~?T%S265P7Io z;Gmeunqs^Db?M$C1gS7{9N%(=yfqkiPA z_w9`h@D0&|pl_*a4tu3_WFVM1P6Tt6&BHP;-Ov!lu;vnMkV|R+1n(*=ha(Zb#XTAb zm4CzR|3$-WW1=z}lAFZpy@&`L9PUo+1bu`% zA9Zz6N36@w-=u6tJ$xAowdVC!pfrwdu1{GkaMlK)_g@Y7;8F)WIFx}6B>75PB1JY! zsXFlqNsv%T!=hXb18v93%$EMWeB4L$#1fK~I5pFeU+7H%295l z1YBbiX!7sm+k&9d+A>@KA#JvzK#_jU#XC-58=Kzwms`35T)!ve2MEvK?9hMf`g6zG z-tjg&b_S)Zlfh5MU%;PUXTw`j;o06^taI=FyU>XnqByD~mf>>Db*x16O6c*9iDNv416wfO;I(n^;R;0ui>^}yUkycRXi5c_GUP{R(4WmvXt2l_`wN77^79NCT_+cYBN@#u0SLzv zJA)A2@tA4EC&tMmasBF7RA5qAhcy)IY^?f0XqoDqkL5?_mr*tD(3F!#I?P-sBbq_> z2{<~lB2c2jT(T3xmCHZ-(&dyD1|a4sY6X!J>X?ZvoZH6N^(8{};G7m=eg%Wjl&aGP za5cb>j;Px!CN_k3q~nb+t7r}lSoM$sIoBmDum!(|!%q)wEaW%@BVq2Jt%vwoc-TzZ zfNCX!>Zg@IX-kVszjV81hrjT3@&&=pFD`jyy3;7`Nf8lviII@6mAGl5wbq9~vikLU z%TjcTI1_oIPF=@O143%j$-16Gl82H*;RDE+i|fLr{p4d*nHIoV}oH zb7|{qy*Lkk2<#m)Li*P%DBh&&88!;Y-$DMkj_c#tG^aPAwzkUY=eYHmexCEm^n2;lwFDY!}KG&}kU3#DcyRuL2IWa_lVup9gv zD<_E`*3jr$tUrycE$HCG5ws{F%dX#Ur|dS`79_7TwKKubC5e23e@w_vAf##(&GUfs zZHefcHoIA;;WZ*@)_MME5~nwm(1lVO;Oc`o1+4&y<^vE^Qf7Rg{Eqj!wPvlK`j)=Q zYqC1TTHO6#h&(xSC!qsIj-6++&nH^h+Q!=2>a61nZ3&|wAfqHj^2!H!b7^sXc78g1 zzlR8Y()*;?B`~%JOpI@>P*$6S|5QdexvmYYqGGa$w4e?m=@1YIyX70JxcMTuqzC7#MKYK=gIFS zKg=#8a0-pkl}PILbwwpAH9u^A$H?c^3!2j`+AUuJrC0<&8Qj5D@s{6z9-9mjpb;#z6w7!PYBCs!$!4x5tA5{fzP7ryR^-?f{{1txN(V196X9dQ zlR3>u2OWuu+Bs848&i_&WDJ2tt&G(JP8o;e?Ca!Ty_ejXj*d1iiU1)3{BV-JUI5^M zHmI1&I6U-8g~%IBbbbivcZu(b#QSESfS}Xu+u62^t0asB2(F*)E&48}cmZ6yo1`d^ zQB%D-!{pU7dC()NWxQMfHyuPlIWANULX2dI0R;$FlP9ABi*{Ck8P|t!o$xKOD5x&7 zH?R0r+N5Fwupe;yX2aFs_-u6HF$H!3+A`jDlDX4M8ns}*+Ub+wr_FkU>H2@!aQ5edxWq@1xYY9ovEMFa?-I?srBI zpu_By%$}JE|n(u_rL}gGFu3E}QEfKlFZ(@$&MXX5wLP%+5Q$ z+Fe>$S@n-B!|bIu4nKAHGeqWD-k&VUVly>H7nPJ)_3tUtC{!s^|6MGMHH4Q06iG0D zf6gBRF2w2pst@O(IG|zD!`m`f{|b{T5i65Zt}#ruSd319Y}S{tuTy+ZKoKB;@6!$q z!hT2`cOp>8P3js{CX*0ZxV`8wLK+5w((Z6t)x66-QmNPe5Q42AZ#9u%HI0iwRQm!W zK3B%gh8`5h|Dc&Z2jp9IyS%wkqEj6R(qqATI{wVj{>?*0fAbJCCJ;d2zs&Df1wUL_ zTjGp&n##ypv}nS=?Xf?QHQULo;^AX0R(F{y`##z|6U+}N(fad4&IvG%8*>J6xXVJA zPQ70OYmKJ(Z#nliVkAf`2(96tkhC|dtKxMW&?IjKXsFTRMg3RUs{?o7p(;bkrZKXM zaNKzU$;=ueuJAN{&xr1!2pC0Xq+>g5wJFm4hEGF&o`kuG9lZt8%jbTC@Wpc5< zf}H3G>6SVHpdv0S>F*N9Wzc$uJLm~yzK18^(h{L_pc*Tdkn4V46*C6aeJ*P=*oWCd z(%yp3EbII$xiZTIaYuf{Lkh-kxGE%TfZiPk@ML=F$USv*FJ zn5o&>KqVQyMkOFripEHBUX~G)y1;U0S2#kp%#l<#Rh^Jdf4di&cp!f}Vm{&hu2Q=Z zuFT=%`S7bhJ`BILXb6e0zW23w2b720Fwk(=`KlK>t7F}HPJT5CIUM|(92lXD6qW}n z!EZ|cu%A1KFHVXJ3NRhTD5VZ_p}pcgMfT%i)QjSY)Zx_Rpi`wgy$Rz5d4JK0Nevw3ZD^BSKsttBQilvb(mX<9c>v8YjiVN|%fP+WCE6DqrOfVk0-g zN?b>6tyzA(Z}lB)N&r> zhI*NathI;PF`XE046$ga0RQmBn)u$tKD32GtxXgstZ!ua`zpqEcEm>NN(R@6_X3{+ zG%0i*gJ07Nefi;vvZe3hAw@90IF<@}sHJS8`~$=y0Nook)=Uc zhsZGoDtFD6n7ZFsV|yYo3sApa0pBa3WRC}^V!jmziSjhG;FB;B*4FFhqXPFc#wNrF z*xYfP_da=KlPz#d^3&k4odDsZvW6-rGn-I^yC>GT&Q;3i4JN(JMf;@yBP@33>CY^? zPTW5;>&wS-0f8p01@BGGOQd3Brq|w2j#M?)lfD{*k4{ zGb5Ki2laG;AYchRc(l02`Fgs2(5<&X_;z_2nXrEptk=lhB>877h#I3M)EG$*MG#v; zHf=l-0pPE)xkm|2o%)A6n&%*iq_ETBxX%<&5c>#J(>d40GlN!v@WU`OHLxJVD4{VG zpk_K=tESenajA zbfd`fdcDx|o$S}+jMLb$l!UdtpF@l#`eOU;1^isaQByd-RA1V$fAg=f2Sha3=GC(7 z^_fuFb&y?0TtiXuJ{ABtFd)ktP@#c9sJH1s`+ zHZ5j;KF9Gl>1#Y5aCU3CdSVp1&6p<6=R)$LyoLXY{mf_l`iX~d%6fal025-lkvM5R znZ5Y&aTXIy3TY&h9E%-)GTtN}g>`(7YX%`y)!RE1Gj-B&oUhf*NN$pub+RPbngE&z zxDz42t<~+y_DDX;pMeX`DCtffv=9;&uC9^MbN(rlrc9ehJ_W@ZjEH2Br0j-do(52& z)*qu$#u5#PV(QX_G|?3~Pg3j}Pzy$_9ecR{A1{FM+|{SbW|Y5Ne53Wljj-^EIILCv zu&ElwJD#!rYc}n>SfbLuz@<%17(g|@bE9fyLlGiY;*o3Xm-N(A*Jm;J{_4HO9lQV> zFnkIeaG2BB`xz)$q;~<_Q^IIaF-P-lJi|>}^{5M8nI$)T4ns~|v;r~Vhe7*MsXfF! z&{wS%48_l;Seqdz3Dijm-k~pVGULw)B%vt5n8Q%yEd9t(I1kL4sIJ2(ia|Skfl$x^ z1qmAYmcrdEvp_{&mfvf$U%l8Ly-QE*#U3GXOVJ;4h}YU7h*DUlxILOA1+mN7LWy)T znj$K#(HeW(*xBbR!U%XYM7YPwZ8+lilyrj`2}aBkq5iY^!X*r~4a4w6loG;q{*aze z*f#mPt;SclU~JP&qd2ry(QoI370FQ>(^%6=5a0w2wJ}hG-{nyf;%s;aqIqd>v6C48 zq6Od~J&b|wyb$VfY54#Q}N+_TS}>|Fk@jrTP164CiId&>!jD z(HL9eTe_6~RsS<4jbm!O$u&p9*jd@&;Ski3tGl@^rD%Mt(?e!*L);u+9e}3%0)N04 zB2ZJGC<6TxK%2KyJ503a?g5+;kV+AkECp_P5+O#nZeyI@Cm!qZ$E5!jZzT7Y9emGE zz=S}nt=(dHX99btm=5Nfm5qj5y*1lgFLqfW*w4Vm$!TOB4dT2O4gyKaa2KmzWq;OS zoP;>V|M`>WB>Fjvgv#RRX!&7U6j?|J`V+`K_^dU30j>zkRY(SHTgb^FWCITW&#FuM zw70$3w(NKw9W!M7#sLeZ4KDkGp{}7}^2l(>*`a2HCbcl8122JQ_62`??;K7J148|J z96pJpz;&Blp^r^?R47c^+4B*MQJvmq8bjgVRRsykG!wQ`a%j|u1Lzr)ME_Ap3Ah^q zLZEaFx4m5VeRm7^nmQhom|OMflGf>?-bt^Cn<8Pe0s%j&9qV{)0fww#&dSpri&Y%Q zg{6&USy}n!%*sNoP5T+p&h++h(knr5$Z6`antwG7(dJ}pcD{p^8hf+$g77!{c0M$V z5ua#^BR3Vw)x#j)mI_AM8Q?4YiV4MDV%g@fm_9D9^z8HzQ1>mu_BQtUV(?>)7tb5t zwBcuSdsy0#kilo7cohCAeynEW3y^r#c6p*}H&ilKdhGFeG;rU17A6A(CAE2GDnlKC z7lx8%gNsQ}L4ASZE{%*mUrYI^yWJ0$)o)lp0yBci5Y&szt2g^S>|3L|$L&}$&hdBn zw8bTyH}`6j4uBY-Gp>F$q7X%ThnW$qYc{6NKh7gxSGYHw*}u$kf^*=}6azC|*Inz5JJ8t(efXCqg=U^iIBFKR!1EOGTq zRN8lRRU{QyyaZ&v!kyYhr8BTC0>u5B9Cu~|@0{HTvV9&_ zc$5o4G+^X{fArmR7Vo|w-z0X>+Y{m9E~Iqr5nlFy?GrB0Acx@Fwg^M_&m>%i%HobH zk+u61DNg|$e?|S2+3F8H%Ai5rGt}%rnZ`8Lb8H%Ccj8SpRcOztkS~d4pEkKR&if|$ zM?C_^*yvyl3Z@?KPzHBE z1>a*rt;T?`x5za$opng64_EBP3vp*7gbb_`_}VO}VvDUCLa}yqh3AmZ}Og=w1boe z!aS57Ok@JZq;dBe3a8(OW0!}v`F`OR^?6_IXHx@+77qH}Bpl2AiGI5Dx%->Gy8YvY zJWkW+D1QtnoegNe=z3jR(sNtC9?k^{k-m4_#`0dYK5hc#52g9F*ZWBdtf@6Me;#;k zn>oWgymY*>R=V7{Ie6F~glKT4g0V%pteDmJ6@i;U-N6SS`)T^Z2cJ%Y(G_}fadHX# z)~_Gez2b^!^o3V!FGm(Cuo-mS-y4@~FOORGn$`w%y=TO451HI8`;#~~o#$+tH!bOB zOreQ8EEg=9IREVWo)X3hW8)2q5P9X*AzBGl*_EKQ9AsLlWy6=p?YO!+FB?Im_dsW& z!dv!R%yA>(48hZV)I)LmdtT*3clHHPOoA!*xr?&L*BNY#R%>(2ylrkcLGL%227U7Mz$T})A&;Zq?U)=0^{3b{>|Y7R2?a;3x$CObA{E6?*)UJ^YdXi z!*;jrXsg=t2TKu_>#qZJI6XE!4v$sk`y!56@5vs9XREE<9SfE)Qd1JeYO^|%mR7v) z3W$%-&LVTpnapyF5TpVqtITYRW*LN^A--N2I zxhe5PsAVuic$fx7!g+ z08SVJ67sRrx$Dk(xDU8a9_ z5{@1YsnX!5h@N|<_2r1JU@0PJSfwR7`3h@{cS@L)F_{(_3O(<#b+|E#@xbinV%Nv$ zeHgK8%L~o*<;Q`Y;PbKKmn#7?_wd7!rr2|*wZodEAZZsHL~P`-^cC_H1(U+QQ&OyZ z2-ZFcUN-C+C0j871r`fKGzjH*9yMdk+`Ix;F)mh0Y2%m@lFAJo{C zZ=yq?gvt&=As~@5_o(y;bNU^84GKG|{no||q)g<=7&dC78{~C5yY*k08wJHT2q0xmjGvAJA5izu6$U{V*TcpxLY|xYR z(^yQeX`z*1;m~hWhs0XgBo-agD1W;`iITM8s@ggSA%V05+hRYWy;vB|FlrMXo7Up8 z7RD`SZ9#w+Oh@Q3zgh4v5-JG375Q#R=bw)J*8`rNnZDv3O<2+@!r@TP5oE!mUxiwE z^uTxoS!Qvq(m=q>ECE-kflk9n*<{1WY|nyyhs1^u+RHS)9XMZ z-Z~^9x4^g=-?IZ0&LziYgsA*MGc2@kAP1lQ=ZIDSh@&Vr_x()quW!Sa?&wZ8)(PU~ zVYpu7hcPM;Phd}g?^lFyB561oM}J~OM>Gd5 zLuwL&YBmk9?JSJ;w`1UKqK%%fESluN*LI^dQPCOkyO_y_NU08PdyQ+j7iXkI5CKUZ zcF~TDy&qjU)*ezivK6S}KH~hvQ0>A%AxKc||3}w5M(6c~UB9ty+iGmv zwr$(V-85E{#x@!>XpF|T(bz^~G-vn!jPt(F7-yW1$(Q85*Iw6J`?}`*P4hVN`dag& z+8ieMFi3n>8T3;MdPe>u)i|?IFdi?EI?`N`XF5c(Ch!mGq4A$$oWlsId0wN>AX0A+ zYW!^eiP7WCD`EP#^I7Z;3T}+c-QcHd62tgNr|T}OJ@SEBm@g4*lN;ZS;X;tPdW;-! zbu+et@!rk<)i*2yjmm&rdsd?M6>yi9jr)k+2l7`3Zs zD0k_?G{Q{-aVM#Lt+VT#GC;K#C8GrIv%U`&k>3%-aKSS? z^|@CEIuJ>dlZI5j9L~7?GL!>3c9{Kmu`&bWpXGac8`F|?Ddm6Z({V2OA6ubQRGasU zAuFhI@56H>3T}Sc2X1t&F<@f4L0&!XY%A0Vkc0gUDZ?8+TT0P!f(*>M;U%YJWLN`W zfZNhv6K4z=%h%rZ(X_BIu_T?xMS^73V^K?|UbSuOWvS)d7ebMX9jR!EA8U}UXH|eY zRHjhcR8i~e`N{u+B$%SYr4S;fTC=@!a# zh?85*S>Arx6_%+);_K)msGek^}+C!{mMgBI01#p~jl0n6njwn?Hg}h_%b=*Cu ztb<>gAUp}U!u>)w_(XQNh50dFv<9|ilD|7`G;>9ftR5hPL-Iu`P)bLFY=6ReOIXgZ zOfe*+A*9FK8iGZDqoXPR6G^aUqmSfKu3A(~sAUnD*#z4{53{kE*ri2R(jP8LiW;2X z?Tjl-vOGSpS}e;wRc5pZob~wo`zz(;ue2Kb^a1&Mdg;~>SJh;3FuS5MrTJ)K#4Shz zmxUVw4egHmMh(l@b=tz%+N{G-$L2uv)T@Fhn_FfgG)}@J2Qe_!N-Xv;; zsp5A-z(dm<=?fPS0kMpSp>8C;UMGu1Gt`#v^NaQW$>v@yNU5y%;2p-aYLhIkNDtNw zl4FovR%oPZ-jTFbrAHxvIzBmH0lm6bl$Cr{!;vjzKo9RtUo1Th+{Mg)0%Wz6NU&Xh z=co~1Un22{(sVuTJupW!b|pNQ7M=nDA#uo9`v394EQ>(2Yi>Mhp5kk4RsWb?_J`ZX zis3@HzBSevAQI@LQp`Z+nE07a+@QGmH4dJeKs->fF4`)AFo)iq5#h4uGnOzR(%z;i zT7;qN;XL}dd%tNQNDN&|3}2OH=sJ}99>E=aF`1ZeXP4+)8jaB%8}rGPIeNAGS~=j> ztR%6u9t2JY+fUfvXUY@U#vHq!1hTrO|DBUvQ9GXdDFSA2zMslVC&s;=8LYDQhqW}8 zjVb0OD;n#UZ_wYRlhp*c;zc`W)e^U5=nA=?;NDOscOm`81DT|v8&awyZFnn`xoxXg zD#8B(6DjM=q|N<rdS^>}|Jrwjh&MLbuW?pvhJzWg$wtB1LGMPJ71s3NW*KOPWAFE=G!_(XA)#{~JI z8+O=bp}kd~akCTce{QZukzXof{4N6*u$%3Ic!pHHpzAR)+X~YmZFF}Tn?&}{(hYQ< z?J!v4eDDYs;ur5cANBlZw|IO9PPv*(XQWnJMq$^z+G#$TzxiGTY&ra(uVVPuV*cZ* zz(KbkWZE0`dBjytRBnV${o_cTrx>m|^Uv8g#XUAMtff`E&SHbD&85xOpnxOSkDeSp z=KDo1pN-(ia1QIgv_u|`jnS^$k5UIvx!r=^Di^~i930o zQ~L4lczsR>V^&>V2ou_ngNzBbyOlY^!D@R}3RgEbb|?NXa71)DsG4o_GRIB179o3` zK$oC-cI#v5%H{2`Yr$+nJ@9~HI_T;B{w1geUnazP`4 zX#_fIt8`MS5;k`6=3OcSl5Nl^`}FY0QXN=q5L&6hFkkw7C=nMzH$)wL2gU^;hJ2+x zVO)5V9IwBfDEwDR8PQhmOg*~XXYEv z0vyO)3GzEK8pZK@#wV2ZT>XY##A10HEhFY&Q?hj{d3zn5ADZ^qlH^+muW25;Xc7iS z63vlmdC~5ruDRO-z4HUKTb4d{sG5c_b0C{9c(Ian^&b_T?t0N4BfSdz{2gvWzjdSd zIzvpu)E$)|NN=Zl;1i^kG9%y7(ZVoxSHVe>zB|4nPEK&>yYDN24)-Xj)EppDNaz5= zEG${s(n76q7vRdvS5tzJHXYMK_mb?s1_vitVUvu)8=O^4jUV9i0lNl_4d;58{au_SFHrhS>mwr}=!FpTHkzTV>Q_!) zbe0Jz8%MaxO|2^tQ$&@ydl{t(3+ICX{qsfKc+!8(MjgU`${OeWB1k%9+=#?jrYn z2Q>xu0fhgPS>y=~-;a755e-N8VQNZvb(RzkB54HCdu~Y3ve%6^HwuFFVpxV%PA_FX zVxi!RQy|+2Bf&`l!k3d_L{>bRQ2HJdGQ)G2KGe^0RODntRN>j-3kH5pqD}btJJO?4Pi@=Hvhvg z`5$(neVhH9k0G@(nMl}WzaR}cCCbjh;d_nK4Sv?H4M!>%wFbHZ`)gDWsP9=cwIk8B z>#*U(ZMetcIp5m0d38;Np`X}CWlG@&QV@RiiziX;z1E;4V;=cv^ z+3_tmwmjsEg3Hz1HOW48sRayrls9~M=}u9UTT*Fy>5h0X1Gs^5j@ObN&Hmvc5tL$v zQ^n4oJ(?q4xFjg;8vUlX8OMG#4=+SHUs5tk!{#P#Icy6Fx++a`34~WS_oi($P-ss! z8AKhJrR@;G(;~f8xp-S>bh{ou8=<#3BV0xcV~RWbF_QTcL>yR}*=8pi2V#rst(*7q3(k_GO}}`x=1wUfINYv zO_NT%#0}$AOgbSmN9K!AF9 z8Dip`a3pKGn%MO#SmSBhn`pM+bE*s)C+85@+rXW*bPJPQSxri$dy=(Yke+aX_P!;; zWWdZ8Q;f><{^CwM$zjx2l#?fy`U{2Pkw>`gYA8yrb}L#e9n$vM#rpQapI9{O`&TsI zNpjWICdyZ3EutI6d^{2b(hnc?XJBDam)zv`7E90Q$y8%(_->-vOW8_yW>g6XF9c)6?oBN%PMbM36ele;J`xge zjN*Xw_fr&Smkb3E4uGUDIaHhHJOI^%6x%RDr(>xrTUOfEi>r7Ihd?b|4wg%#h&4d+ z!)HXn9f!1*0;xDs)K{f|8Lt4&3SO1Hyvu5Q3FVNBYsu@;k}y%`p}Bc!YKp~-;MlWH zEY-pQ)4V~p2q1`6#DW3J9mWwF2;n3LAFb8VieMZKlg8&#$7%GwiL$hVI7b(o^*cdc z_YN99sW9c_uSE|C;7%<%&ks6f3*8*C=OFv7g#?cEgoB@@56qDh=W#wJlHcMTcyp`q zf?7zlNrQXx$L6V3%^Ravqo4oQ*@x`SuV*8##8tkTzA>0vI>-*$`RXsiTU+YuCA2x7ezznK!1pJ8#$ZH6pst#xPpIm9vS4mgUW+&5Y6Uzrb_|$yj@nsr5UYd z5k)I2EFCPPG8mmHkiPq5$odG#(qZDolc}lxplfN%+Z>^Mi87kJ=FLF4MQePIL>;0} z2z3v;b%nv*JJ3R-cBCOg%;c*PW*0$X<3vb?YT?jWh@c>fi4x_XhJ(m*k-nQqNd{IT z-13-D^&)%C&3e5)r+K0K;HzKFfDB^0iD%`DYM1@ptH4#kSnenCAuSmn5kS4if=og) zIT9zgH!ekhouc4xG&GGTY?W4l_rhsKG4b8;`- z%CLrWuRlKF*jcKwqL@z{y$d2tQQXC{t@B{>w4|3z&osp*F?=$XNFJftBsI!>h5Rf^ z=8p@(R!VD~2wy3W+h1AIA%Izy#~c?Ea05;{0CkJM-vrou&sPwS*+ZRUU5Vv&NQiuPYs0ayBEg4$d=6hA&G6P&c+Z>u z8R=k*geN&g#5wm10cPs|Sq&^u7ZvZZy9h1;r65~`=xmZomcFelC`hItv>od~y{Qyp z&oZXuI3sr4&AhONv#GmsbN{!6zBDID3~c)IU@R^^(y;~~7aBKny1t3Y`s}P#fobsN z@b*{6Vx+?+m(6586I}z4%nU~oxyuXjB@)eBeYeDkEux+))ZrV1cNUtQIyyw=T;W6r zcuj$)4ActQ1YXvOO=ypDB;uBHO{JJ|l#89+1HHEPNtY!S8NIMQ?abO5MyyN*RyXb4 zHddc68(+A|1yW>>yfJ%UwUm044%g~n|8%L+k~kZRL-h&w5>R92zLYz1it3V?E7@SUj0T5m8yPL(wNv%`f##@P-aoM2&q=5gIfX zP@~yx7+5*c{bjt#qU|Y&{wzMH#ZVwEHlIcNV6DpV&GVl2S%^}#mUw*dN^gB&!Tmy) zCAcU8OCu(9iog?;=P|3e>ov@B|DE3?4BX79uC|*q0G&qr%OiEcj9jCNjz~7`;vZnO z=mS*^0z&D6QK5PaUK~~>(%j_cn>-9300WaO+&MUC11>?mZ5Q1{Qd;q5;L|Q88mekb zRal7v_i`BJK-zro zr{J5|v%`D?PCIlt~5$Y#acD~ct zq_ljO4I_lVVs;zgQoenHQU|(gc$tT>Z{J7#qKzc?d8@{nu6XM``4rITe6~uxbEuJj zCR&#~Y{-Dw_&qFiH+F((GI)e`f#Vqp_|3pw)OYs_gWBXn$%AC|K%ivTCBjW)Y-JG& z7?Tahx)FU*(cA<`A1cm)V=HUf-lU<|M$xH^Y4;DvYb?DT{#y&4C=8OuNdw$2o9D=# zkkq}DU{brtZDAPs-+EL>ngXA1$#~Hyl4nR!3}MU&@W8O3Vt5vJi{aRS*}sy9aBJc< z$|~-A&(6e0Cr|me~$sy0D`i z&uDp`|1Dr9DE|5pKJDjTV$vPBx^4Q=3;XFlHv#ZbM&`-JqlO6Ij=-!_KPA9KqF=tt z5V=7KK>)(LW1xQ|p{_?^QjhZrd4Rw090TMV!r@L1N6eK7Wot6%5o~(Yreyu^kFgyO z>hav_Ne>v*9%{Oc2RHw2^`C4b!wt$9w5_^{MLTL(^Ca^X_nH|g7zf1|yMYvto(>av zAPvU=_>O_VS3oEy9ata;pdO+-eE|`Y%sH*dGrXKK(Nj`O=K(Ws5|D@a4!rV|A)f)l zIiJAmFw)M8=5^oj5h=x|=cD{#6W3MUX2;cbuQL)rdnj<#=`os2Z771p{3Za*H7nv3 zK6Nd`V3UxhwU~-3^PQyN!@8x>F4ymX)q7tajIY5KdDbAbBJsLbH zAS#Jz&2Rl<um)yku>D(raaes?eW*g`zvXn=>?n2BPxog*A=h(B@q$qWY>Gpr|!4pA}hh8PLI_; z0LCg_^Sqf{s;zzE@Tu}E%ATeCCx!li+QS9v$7~!8#pU-0xJ~}{+U1ivuOO^o%Y|4re$cp(4QsPtm`x~t0~CP5SrV2oOOX* z#5xpce7Bu&TngMLtAEl(LLTRRIWskQlKm0N#C<^ZgU2~sS)OOFgF;X(R3AMAY_b4A z#G*TAevgpVkAWTFq5HK@4(i>kIQ}2ZMD6omvI0qjgC_VWA(Cr{I{P z6SaY>kjq$(@C~K~4SAk8N*eiZ52nw&^=|0_BN_icIFbL1!@gFZEpprrtUEKH<#?fw z0Pm$CBuXDb$}6c~L08v?Gl4IxXV@fH;2D%wZ+V!aBO*b7eF1YIcen!#^22f+V2-r_ z6u;({G6kw6uNf3Fj_hL_VHgP{o#J&=bg57K@_`D_T@*d3VIjjnwNd8yK<7?r3^C*~ ziA^unVnkM{9?#Q2e5Q}VzNNojlPVyJ&J2e9QNyit@w8_D<3v9j2osO$YTnm)?QULk zXkRLO$Yn8?`ybxLIWdF=1@D-WyFBSqAdj#8b;))&NUuj*m*Mk$&nLm>WB<24{PM1Y z36ALj?dpK_)wHVLL9a&IWh;_FMl)U0`^8$Ls5Yzvbb%c1DTHbU@ z85sziF*qfUj%uO&alhHCX86um8JNV+ zl0L5ftj=~}KqW;s1rS-nGctDZ@N)xoTp=(KmDo5EL}%#&Y&GP<@gC~nBH3nB`a4_< zFxjUniETPZX|#B2)qqJ+cBrnbwocryUq!^T9a$@4668!L$d4Q6>QFXfy!uW>Q+DOPMSU7vnaownF=~A18vyMksoC+&VGML zMboI=XSa_({Rtp5ETV;e#D&o6;F_&fzb%V1;C6sZcS~_FQIa#Yq%t^QM&q+0TD^Fz zQwXu&GSWStRy|lD=CA!~`zfhI-`{44Gb`8cf02N-K{j`98%P{c5H(JZDbVmX zmmh@=tg!0oCbUGO!0FR{m|M_nu~LX+B9g8U&-&TIO!(#`2&#|xt+RZF32q(dkrkSHMEh`U2!fsP68H#}G}9wbI~ofGvi0PmWD zku1eHP|5*O#ab+j&7tN&o(2&B66F(AVEd$X7JaH-%NsLZ_!or6_zwOR9iMFq9j;!| z6$<6`l}L%TK4q?%PH7Q4%^2Y-g@{E#ci+}_PU_!VB?@Sac;kJq$oQt=j)Vny{McKH znhc%D8_&tH`r>RH4%&#_zmMGUm z4mK$!dQ!+og4ySZuqO&|es0 z$dVou201lIjwm-g0Pb%~srS7ZZe0C~hN%dJs`Y2A3wAk1&8xffs1h{B<*3)$^W~0H z_pi!x6nt2Dj(_Eu6J}IR8a>RJy0JJC#S(`{sJrQE8_L=>nZh42A)vSS?h+l!D70Lt z74{jjbPEcbYroPXOQOn(GDdc0Fa>y3%81$}VCBg{6_wK1Gs(DqvHY3hngn16yqB33 zlaYYhOp|b)<@?kA_O(S7FL^LCk0J-+H9@ou7p8Rjh>qGtI4pneX1cZ+uVbq*qv(QD zTPdi&L>h;EPhI0R0n(E6(>OZOWv?wnsKA#Ez`GflYu?tNsKy@skIFGGW$FT#K-X_% zghg{MjqFbm$byF8>{Wc)3d()9YNe8!5Sv&n^;L=VW%(lLE*a;GihdWV?kZ#-CF3mQwa=0|OZ&crKxc)C1xTQS_W8J>6ugDAVqcWYa2o zzm-tHWm1eAI}|+7e=L51N1VY=H=iT?8)Vm1dBjX$ZkXnNQ3WC*H-u^!XNM|HLDNu8 zIY_<*?JPGBo0GA=PJ^B$1%@{g!$oH={X8x@{r=!EUBLRpgAc8F+Qg09UhZtrOoYD} zQH|7A2x7GjNtKOvNf!|H76uiM?iwC%{lUQAU*vr*G!g-c%ivs7ZC&`EQ#4)SVQ~EM zLA|JoF0AP)Ld3z*s5KhX(-4FmgD-jdr;Gl9z7p_RBB^xRJP_)EoEP!uXG-V4rZ|Sl zwA+7u6a+?Im!k2Ev02b@puXacL=~~`7Gs&C=n)ml%-+eMQ{AuiwBGAg}wh8rxawFYi?Ky~Yhbg!wFrs?WES!o@CB@x%(@iWcg(fD{Kd zxK(Pm8q=C)sG^(PgcZ?EgbA;DtjBM+*U_hvW>K;{(4ZB16s$ETEIue#=CXmsP*z$1 zC!L&z{Zdb1BBlh(_a2>YxmyfvIH-IyYLHFedOBQOz2J^7N08U}otv4to~YN%wMeX~ z`T^nD)i5nb9}&*4F5BJ|9^p1ISgGDR@2y##l3kfgBmpZhG^uVAAcg!*?Vj^&A5i7xsvK5XR0jiOoExn=bT)n9V(Agjc3B?Y_cOvgGvM~CEpw#Rr5(ha z5@BSms5vJ_s56(E>B)c6@Fo4XNcDaE&g*!U2m;=bAvy+lz4m%oGPB*}BC4Af4(j6? zugVDH#xiM?b)7x2FmtWW>z!7OuWF|HR-?kq&s6`=T8hM=vCF(J{OvShY07i(c-3oN z9#8JJ$;cWh-ULk^ap7GCvqCCDh1$^eH2_uYJRG@398?+=NJc)YOozB`?lF|{p zq=mWF72RJ}pHPRf@jOr41~{Dy2X?9^WOs6hn5 z;knyEN0xVb+;l2WUkLR-otD^7*iPFr9RZ;fQZi=(GNN%Ma|(|M5|$bo&6P^Q=bU_= zWe-7K`gMl%7V|mPJG)6|^_e`YwJq-in)aNvq0(3qE10PzgiB#R+n%v$CJvBfZ(gy% zI|B<%zVS5>x?2u#|CS20BU{S?8?`<2rP+H^7*zL7BirUP{GI4_)V^Seja?dGe|{QU zdid+JBdEr8qVh|8h_zh&W`?!oBY*v6S67f52fsr6kk_J z9Xk;|!|gjl1wyNPJ0yvYI|a-o{BYyca=OzO$)O7P#BS?HLjKK3u$kL5U(hM2!bG)* zGVv-kjK4Bj;?bm25cN?(_eE1W<{j9ODcYN9+L){JJx3>_YbbZ;{2jrr437)t!+PV2 zEMpvl@WcOun1tnbENZDK7%0x#otQMMxQ@Bw%7O1jn5Id7d)9xyZ^HPcYf_|r zhD8D$8_?oh%`#U0_|)OVm18i+Dz~0WS?5SDBifiiD6h1TV{Q!(!E0M{=;u&Wc(Hrq z(7?|8=lAt|vP$1Sd+Gu@or3E?o$qPPm|XkCICbfh4mijib>^hm1*yOe5l0T_EcE;J ze&+ij&a93;FIDinN1>CPE1j;G#e&{`(${Oc&?M}|EXr;D(4*uf@K4SOPToFnn>@&B zqMKeW+6~iK)5LU8t+6vD4s*n$6d<+xy|kn)7j;ZwfiM9B74v}nnfI3gn?@_cmOSb0 zh!nkpKv@>AAI&gwRZvrxUZc9fk~CYqri-9nWEL6V|~5im{+Xvq4K z3Dg%B#D3rpC5D0aDt)-RTmWA~Uv{j`I^4-ov0HEB5s| zO_I-q0!J=cEYev_@C&<;mRC-umHKyI`GEuRn!D}W#E?AZ$AvZ`uu&cGpoq)8t!#8% z1$x~~Ve^y8?jjvSWf*SX&+V_C6OTG>>oStPFhCe*f>YV74mX1tTbr_CJ7q}bY|#nd zy-B|DH&M6Wg2-P*Us>%=%huFh?Wi^XIY+>Oy8e;h^%445U2!%1v3~Yo)C|#~;Gz&& zDu=E5b>-eciY;vb0~7NX8ymqp?MwV&(th?np#@XH(3^ys7#o>Z7FiJ|{oFWt=tXLE6T_Thn?+oK-XZBgy2INs3VG@uI zT(GqYWGmi1{(9T52*vyvMun>(gRUc}l-u36F?YiqETR+hNKnR4BDOOI*H?%oe$?X8 zLXjN#a8WQ z&9ZQYAT2Uw(Q>7an5qI%F_4=W2>rcyWXtS_o7!0shJ`ZdIIdVuGM#CH+GT=Kz4Q7& zoeZlI5A4XQm$Oz7rrWO-P7w>C&IL%j3eEgm)h58XfzL~Uv<|Te2w1_&zmvO=MH_yt13}cEnq4uU7gQLL&`=l7P32Nh$`FGz|i)N}Zf!XD(hUa#Bk& zfd@e~yW!WDGRFA~jaCykmP`Z^7p_mIjm%hh88C|5^7;J?IYkYO6o}CN2FK6xrEGLD zIDb5aVy7@iKzO zpVl!xJ=21a>hPHxjWSo5@CxZVT3uAQ7oL>(vviC!IRDo46m?ZlOsMcy7_3fj-I~x&->7=p1EO zJ#~EQP@m9qceIZCEn>uP8a_i9l=nozBrI&9_&9a7?w;(IiH>+)^w}VMJOB0?Kzp_< z#(I^vM+iAT`qHIw)X~?I6yg$fo#SLtac+~wq@o2iL=4@hpM<#5qsFWNKIs~mgio1B zUro4&GKn1qYU70-Y;3c;1Pt+u z?$n@{Sn+>f79{kX^?AQBrIz!`0ELYFudW-)RFeT%Xz#eZ(zd8QLkgGh@1=TQtlZLt z$2S0B=6ylR4M+Mt4xRLhwjw=1FPmS?<<>sCIJ-Q@IJR|A5oyHpQ3>b>xXqAdDr@X2 z7I7!D3UDwOa9pcngGj1xYNHN5q&|XfZu*%fEFZ2?%Q!Q7!~EX*SH@~%)%(&&OAEVM z6$Cf=y{M?6qhmPlsy-`a-b%$q#wr!LHy8`8{rcLg6M}_VF*2cL6D#HY348PhhAMuEHZQK4nMrQZLc#u5K)-VL8FgKHdd>UuPS|Hm@hYjB&$rfKc*;3V+FP^_5O4y-T>7NWk^#Ima8y3 zp%69VIjt~a^>?9%=VPp}?lbLQjH5CSjhEBYQvf+JdTJi|UDJaASXnA=#85u2X zu`U+-W@-Q8oo;C72a?O}?Hx24&Z*#nqM-o3oF})P^<>_KT!2A#URiNhS7H6^bo0{E zO9Tu!n|d=~G*r&UVWa5h#0-Dss0cj&d}uZb9r$|FO(pO2^+%n`?1o~gQpLy zF*r+x;P=|f=m9iv=b)f2ND&4u_*36BQLv~i@DdDrz5cIYOLjkXv{HL>2@(kySW%&} zf^n8@)k0CK=@1NUbZFIitOdjQ?50CQVVE#zR{7*}iHX5^GWPqNFV{qEY|2?v#I9&( zpebV6JNN}O_;Pb8C_(vr3i4=X_@gl=^W^~+7&IiI!V)4}ao_*q@amHadySdBeYcl| zXz3_l--txK^SXyZ0H+&aB_t~deQKSX-S)b_r?46>L{ac;YHsr9w|GHvHyux7ZnU8W z5%u+giORSAEKT{@+AI&+vAkO1q%fsNRa7L5LJC(sK_kt&$jz0TNK1w7R@c_1#i}E` z^uR^Qo0O_>zfPACb#b!m{l!P<|HY58D^5*3Xem1&1!0 zGp48>aC#;uZkSfZ13E_(XYYshmQ%F}2dgh@zz`5%CvtG`s-vus;0<74ch%{3xj_)o z_%P5Q%HfGw!I8qoqNA(Bq*pyA5=d&@D?jF>!fTy-D%d{~y*vI`_L*y`5MKBs6F#hP z(qVV5X}rW6lqCYr? z&i6El3Ec$n-W-)pW}gxgLJ4x^(slXF_5n;3NrFad8Hjn4jrU8i;*XoX?g4cre$*pS zdbRMGv>m|WFZ6R?{9G z4IRdrxit*emY+?1h$7;8?21RzDrgF5b|tubl_RD*+a~9zH=2%8e8DQrB}IWl)tMPa z@+9E;;fALLilB@4TDh;m!(hZOI}zRJnW)a+sEcZG(C8BTRC^-oBB}-8-k`(^D4D>R zqOqZkOOqfS%}Ur52V;{GtKrV12asyy&>Q=)qV%BPXcWw82~; zL#Jkx6z%K~Cp%N|7NK50Ok~8s0Uiid)otvuo(g|xnEl!0GYpf@7=!-cc41POf zOZ6Y39anbvs)Ro~(}~&H*&1ncdn_^eu*~PV!>Z!b6A}>2{ibY5;+!4yS3e|4%~5|8 zBUr4nPaBEaLa?$GOd(%W7fuGJud`xHO^F!BzdLqZqH_f$al-T*?hi@~7*)CYaJ4i` zR)y*~1g!tGo8PW@7d3>xojauF*i=?BHwE&B%<1w{)qWcn^e9j~iO=nbi|y1o`;wH3 zk;^3`>9zJa&!CGRA*-R`K%Mo!l0nW8|1~Eg2pM2_Ub}=;O(F5UF;T z-`Xqa%g&7m2w0pCEEQ?VX4(&)r)HX#>QO^A<=5((D6CWb1gSs`+72%8N5Pul7)S3<5X~xHlDP?nOYigbFPNMVF zOHz>@-U6NC-4;$BjXe9)Q=~jbhN`6>Cd&(RMMNi)nEE-Q#SV5Z;|n*pK>pvQPom%( zAZ=I5=kn0Eu;9BI%e#y>;QoVAp`7c#T*ho*KZ!x8r=?wM+;IrF>Z@EFOFsKpRWWpW zW~`~aRS?~Y<(pgmkb#Ng-e8RYK}jhn_Sl=ba-S=ng`G|u$eTXcv@-H(Qz`LGzB;Yc z70yWp85n42U^Zo7{GQ!N{aT8sqbb+B*m@%}F;Cbntu~U1PBqb#S?Hd2JJMsg?@I}_s>g3v;Q{K!y>Aq$4zm`nL zjC+J2;nlCSH;yQ5&0G%?M6PqyZ?aG3LU#MWu=~g@7aU_`PBB=0EMUEZpT}tpYB=KM zW$MzIvSKOW;q?1=+PvV?BpH%CJ{xY~i%SLPKZ{&VDuT}gLzCHV=0Oq`4T|;tozLX%0gFdW|dbIj!B&`Rj_1Y;$_YZyV`Gp`I| z|G+whg8cmoY!S^%Lfh++B>uLOFJ6C+uGIS}i;KhwWsiOQva0oA#FU%_Au}H0hg=gfFii@ zFmnihz7W9gON8map15DvK8mq z!R1@wjvc=ss6e^D%~L4u5l}M%3YCbmT-m$JXc(#i>aVc1@Oihmn&{go6k2wQUlc50 zs9A#lmG*0PdNf3C6KnF~%r4WX*^)z1y$XV$?@$N<)B7135Z#>qeZ2~q z^jh9IUe6|3Z^Rw|#*OYiFwyqki|6Tn z-MCtU2?pTY;$yrvj~hNFZSDu(wWX#5oqx;H zhP7H>5Ak#-JzN73UyhSmTt9mT|KR2TS`~GKezz}c*t75acPN;B$9J>CBwg3Lv6cT+ z4wquEBm-9O<0gOE6)+_ar}INrt7jU>MZ#bK2lbdTk+-3%5t#;r|6*aMVz+)c!jU5fBui5U^kpqC?f?h+FD4 zm_}zw7X&U{Hw#O8rg0m6y8l5lVdA0_GZ?hVW zt8mK~jeKvU{xQ~sf}H#R=$HgdzJ()JQ#7yaJjWA~1fM6F{PsQrP6fM^!8-H4*_GTY zEBz?J!CJA&p6S-FVq{TC!;azHFw8lER0V8=GoPbznjD{R1+Kas-d*ybj{z!tuZ_9S zqm=@^mZ0gh?_{PXbrz43|K6dJptVceJuV^+bBVVDYUDC${q2fH+Icf0;qWIQXLVjV zq{-Z7BE#+Vq9wq81wC?plckH!Zhu=F4p~LWZs$~#V_jaW{ID2l0GD;cm?9LL1xEH? zLgXV5nhVq;qDtmJ90I9*fN?M$vA{JK20&=xlX+74=R>2t}&$g_Q^?@7S z>rQLYFksb94$E1X*4sTLY?PBE?U47sA3kMe(MR_dFbEIk1+y5mBaH(&Z|E~QTs8?T zs57A!KGvUvpBFS%sO9$7oj<5!cV3S2lyW^yfb^#vnm zVk?foCnn|;SSU^uX|^3T_fJ3PUm`W~uCybMJ{X)zsb!v2;;@-+kUXeJmFZvm3AH|K zu=$|vGimDY^f4r~{@Nw=@<00~jtyFRvPVoeQGQXTDo3qSQEg^So2`UqfyUy&S0RPVj>m=i9@aqL_*Evw-^QXLSb_a*lF7G&+ zil#@EdG?0gezOgG-FpfFNu}}u534r!zcu+)o_$8d^>|Eny!?IOkNp5};RX;Hor<6J zIQ~3DpO+ph)2d$pc|P%Q?$h&kI}Ex71@r1Bqc-z)LlCQ?Eez{D=DS{#p}P^F;fo~p z#$(1`BADn7xN=aAR<>?NQ`h#*mP*0(X3wf&_fkomrYCh``p|=t4u|+^<LH-sLn4o7)>H6oZB zLRK1HQ}9*Jie?dIFMX}v{Svg1$Aajr4E^?oiiN67zsFy^;_)gfC4z@gnPM zXsg}uPvTWiK&;7FRv3S$CD<)^T4m{x#DuJkl!!HOg{|0Wl<&tM=&3cm zIuwn-thNhiKcBLc&)0&hD)JWNb*BF;U+xrRswl*Aq}v z5@^p3DGCIhTaY$(h6h{E$+0KN&rjS93=OR%nBBFXz+Q?!mDvOSR zbZc%_>C?EwjF-XIWOcqoa^|oZn|FfTWl2tk7#)D)J++df)DuP zXlFb&E^~^0yk-WLW18T4JmnHnLJ|&FTd;+LeiXim@Adx=PwyBVS=)7O$LX+R+cr8* zI<{@wwmP?%BT^B@Kf~Ml;SP&91azzC9r7qjYl=KB=#56)9!>1>+*Sk<6U*TbzVX9+h z$nWVoo>l1HX%6WJDEI|e>6i!1F|cSCsS`o;2pN6QNHZv;J_7eaDg4-LYW%_1V2U|v zH^oHschEoR3rl1yY)i|)_7G~H>u(mg^}RTY5}MZCu5LT;T;oq#Yj;kA^BOLJvs<{VeTJbB)=^n%lwr2Fbq|9 z;^*3@vb*t4Z?UM8N)SwUfar{h6173-iMm#s6MG%{w2)A_0Np#VCA;uWDoLPETsx7> zQ~y9o)jeMxaAAr-DY5nS^6M?UycU_;pg}n4Lf^otU_=*qH^#0UZ-8$3rH$Celn5pphyJBn|8`>wTk{z??4>H&Gq(I@h;q__)6~J071*si5#iP ztX}HQ-qetQyb1K|=Gs!9-Vl;vKOr)_hdm`L;r*X-3l>sL<#jtr)vojE4ysHM8Cqt} zyM=SuV0QMRqC)()nGmI;02n$32FYf?mYJyurG6G%&kDUZ4KK<0V zM=zG?_@{yXynvILMH;P=)H5PD3oTZ2Cyg`<^A#TBPxG@>HW8=A6LcC_73phi6h=lhUoeSu&Zdle6q_LU zY>>0a(9WU{Tt1$SMQ3V6@^D3ok*VLJ=?zX}OU4 z!;L0DJ>tOV*BMhVQ<-w?>>R)!4D(V74oQ?$Hfo_jNK$u?J6$SZ6R9N%!*y z&m~5A^(F7o<}#L(RBi$7!jj(=eG4p7*nu?}Ml~y(iiXr(7Q*U5TMTM3lk90P=h)&( z`O4oFf(x{J#v2m5d0Ig-gH*c;ATUg$kv6G_R|q5%90PqQ_x0B1P?J^Wj;@$RDGF78 z&GO-dz!i8x*0#woF$RxO023;MIt7CTG^BD^E(tJz4_@dG)JFx87dk#9LWkXTP=lde zgOTr8KU4b>txv%(o{!hY&Ae2^Eu3?P@yu~=nz6u~)Uw-lY}<8+UXksQ9uo8k0%*p? z+eeG8NguvQYdD%rJ6C%CetE7r4>mW9UtC@qErOz5_bx-eLAzk`-R^phtLR{sw&rg6 zS}lm-wn%BaU(?Vqb|SgB9mZ?%x#WD)63u`bYtFD~mCrB&R&RL2G@eRj(>9V8+-GQ_ z&({eDsl<*~^RYFEjRyZUhBm}r!tR^$Drxn(vJS}NX{o?`}%-JWmXLkK-*mrs_B$R58ey; z7be+!3o}P|ss&5?>!J<`xNAX-rOlfvC9Cq^ldILYV|gm%ejnfE>}?p;R93Dz-y+>? zIxcSxDQz^3_)k4WYd@>aHM)-{#PIodsEe2#?0jv4{!~d;&U`3GPGkN4-u|Xn2+(%; z_I}P-nkfa7J~>|2{$3%DsSmbNZ%$JO3%RWQO~L zu;Di>MXw35zpwqgaj*OR>TR6=ApnWf`kd_y_ z5i96rA0X3`NSE2F_Z4tNE8PGMIvmlrK2~GBt9zlXsBRsEJ`Dv~CKvv+W+*%Nvi*H& z8HpP?7=r6?vIjV@;7mdq$#OrrrO%ex#vk@{;i+NRf5GASv;}~NH@lsjTV9{sIIZ3tiUP*pE6Ef#qvQN2IN;$?%{hs+ zUu4bHSwA#)XZrjN4eCgwm_rj%?v`T09ywg#Sola%cB#EiMTnwo{Q#dgkx~WIN~X~Q^S-*fg1qYKK{~Uvyrf(0 zG#;O?P%)c!3ND@oWRSfD~4p65UguKxs`-te{SX$4dk0LqieINDlWY%-e7|9o2SsctrTWS$1p zy>pb}y1(o~R;kr_oz5jMEnQ8?6x-lxe?2CC-SR&%Rs;&x z=!aM{t4I$IaQ@=xbv6|@GDjkZ?X6THo`dXXvKF%~El|ejt<{&#VFV5Ny&H>4EyMA+ zpbohGl~k_U-RhG09sb@fB*^Nt-KB12+fYp8u*(`6KGlEajK-(+x)<^Fr7@b&%JU!lsMe`6?$D~waWW`712OLJ~V#Ss(?+9P+@72ygFPyg%mav_>&jx zd+%BMXiB@?YW0dHd%mQFg?0A?{DOcyv({;OQ>1db8NmRgcof6>#l!M4ySFcXAC5AR@!R#TA62F%CW6!Im zWe(FEZDVVgsj5;lOY_E?zR-y+%|-g7 z<2^TQ@BlCY*>z517-P(c)k0$MK%B_3CD6y6u0~?5Hp)y%bfV8mfdC`Flwg5BBLhWQ z^U}kT($Bc(Rj!8ejwk(jN8Iqoj|bdN?Bc5H&vW9Q6pu@b7pBDxI+Wli4<>s+O< zmbMo6-*93pQ(IGBDIzOb9x|V2r&m`eXDrkFwBz$DSDKMp;z8F}OxT&$zjY{67W-MJ z7RM#nSmRV}10W#!SRSY$NKa@bkJnh(Tbi3(cKXJ~EF3FVkk_%I)HG@9OIkp?nN4Nb z`win(bD3rt=!6$AER6+IcHaKX194JZj9@E@`$uTWY?;+o7go~L+8rP6nk98->zMDD z^}->Bc1Y5b8cpKL_XRO4(_dPPr-ecfNH!cX%aw>f`yzM=_Snh=Ty4=YyJ>|33iM_} zq9^AFfecbXGFR)0oB#Ti$V&El67QdDUuuifFT=9gteptKdQ$YV&#ZQuClJfrkTDBs zOIuH6*i9gYXzZMfpwbGgRR45&VgJn7kB|-Y9lZH8Opo*&0ZtfIvfGUXile?F#PnL0 zOOO0c6)1(PvI89bZ;&gp*&HLRAFHm)ZlC}7_xo@jR?$i)BVi~QOU1byo={`!43G+% zrfuL{J7)ygdGqXv;5=QP8h*fRr2g@@S9o`(lWQ04Qlo!bjVNQp&Gn7PF)>WKa}-jy!MQ4| zDPH#Ryd47Mv4>eFHq!ZNrC;B3l!*NG0;*8J+<#KEty07MVTQx+8sRCb^BSq5!tBf^ z_`COf|H*y@g8s7$@aEGhM+#0(iz*L@Cn}$qQLX!4w~vpfMxv-WY?ncT2qMQ^;R-{T z;C@r>zz;Y3avcbV9uiRk`1)JZ+90k~LBT>l&Bk5Y^R-W}2P0;e6@L8DuEbvO;Hk4a zOPaqhc0iw_?l|8Z)XdzIkt~28E5edMPG|(?ay4SZY8yCtq{IXnY%)Y)c&8)gnGhS* z`+?KQ$Rc{&8-WLlz5qWkUyZq%0RlsJmHiv|Z7<01hFFBkh2jU+r$)xi#zJ9MXvkM$ zz0Cy>U7H6FOKn#XW)l|fD=0OJ(KMLX-9jLGOC>**T*3Qa>X%ubvg_6N$cPV9VEY)i zDk9%Y{!Pu3E5zsrt#d)%9Vgmwqmg*inlvVMqcG~(1|zkmE--!t zbvNr;n;&4`(780Du!xC2JMAjm3{_cTZrYnHX&--fCJKUJI1i7Y%-A-ZXmI-8g7oZ(|m|3ba+Qwzrbl?Q>Si#Dl43Q%gLU7Ve3Sbyn$tVRWzUWWP|yEZfy^dfJ##~9HdUg(&)bt-vX}P2DM`8`1X+qkq z1h`tHm81&`%T0~VKtDoZ^$Gj!Tk`*A?$Sm2z5`2hL|6(zAJirnVw?;~1ULi@BD{aO%~Nr3y|X4qJ_#5NU=@xx~fbd+hl|r@2JpeP+7< zck>eln>K`6O6^l=b*yKX0FQ$Mg;CEPd~BaFpZ-OD8ixMpYoM^}vjhb=R6xB@wU@#w zC40}FuL6t7ny;Tavm6C{6-QzZCCA_cVJ+PstU8vVjC~m?g3i^bGMxOMHWEn<9hvSQ z_((MR*GgnF)p>ttvRS7kiPN#(x+0lIeP(0ht3r44R7?!7`JXBYwPY_0NIMls0$&oo z4N@cz(F_S|&IMv|%Qw^T+$5$EyE_&}5zg(_jQ&n;iaMF4l=WCrJ3(@RRtGzo2l23> zRtHl^Ur^BGwN8QMeNUAuE|sC7}Hk9}!Ll#45`gvH--?vjKbl6*MWYdx#Qm z#Fe*ReDF%iVTF?iXPCp{r5`%6bd24=q}d-@B#2R|9{^?pHdk9x&!mzcHo6aLkTilX zuxf&1U?e`i#N-QHTfFs02A>C9XNtR7$O0)dU|=|+`P4I9NRWbmt6oS+Ng1p=>>_oF zH(+&$vuG4?LsqSo9H)W5mVy1{%RW*4bLweqP2vhWd{OBKB*tJYdnNYJ$}YW}h8yCR zILeN=DLY9}gHha&9NU2Lz@1>>l`Oh=Bhp`lWm*y0^m}us0g zj&;TBZsr=?G~3m*$5oA0iZnhtI8h_>NV_lQzpvAse+2wbMu?f@5Sn$^2NMBZbI+bG zYNOjZWO#!=-<+i9N~&0KLor4&(3xV%WD$&qx>yX&IX+Q$F!<#Bx!+Ns!0cXmL=*m= zjqQu(i=3j!NJ}+<8tA2Yrw@!*=Q{dfFme#RR(7loxUo>gme5S%xxu9q4ZO(zCFy{K z)_g6U11s9q@Qqf5&M27D^#wNDqCI*M38=N9Ai+od*%_Rm%-4;GY!dxdlJKBA!^d0ALSr&B ztpGAm5Zilr7-l_q07v{Y(PXqgY?}FWjb4@6(U%*pEMt7jr(Y3*FPoK|Kz(YYZ}4@R zf-t4U-7pl){prgBAcDKaQk?j5wtXj&Q*TAo2(6$aG%}0Ze(SC|^IWFHSMziHy=DH1 z{y*2!P%ub=$xbS}E!t&URaF+w&p2zJX{yQSttnAF_k-L(c#STP$A)QMOO?Jbl?jAo zzq_Ls0GWT1ss4G(lPg^60D!uiV(5G7!`OYdp18UY7u8>l(FTDGd1i>JvZzb62$PM{^ye8rpmw(gUa+PX*DOW9FA$V2QS%cEe#Y zaK;fW|8`@5mB9sNEvmBT1+`+Qy{TfZpQou}D@9LkubDhh3q*f=NHz|iXvIf<=6~`T z3d#@Y$ThQ`uFX;JQ+~AOV2E?BdEIt2dYz92McLaCz4F@kVA_cIZ+F?B4TIJ#n?rR0 zsD=P{!?KnmTms}eWJwG_dk<*(9Y9^(`Wxg5gMGseRB-5DQ5B$o8JZ!5Lhc1X7)ky| zSV5c7tPT9Nybtg_7%JRCmjv+vd=6gXN`kx18V10We)NF<9^gJk$>Y!CkyXisF(Rj~ zA9Ve15%NEAB>;pz;om2qC#Pp1R>67MFtfV2F~M9gNVV<#yqU84*9T_;4i*juo$f%q z527!>Pg+pT11go4M5n`rRy6|f$-Dzl9YwwNhriA%8vue{PHnu~Sf)KdbjksAbbT<9 z=waUKSSpkJ`h1v|pD^AXfoNX+Th4z&1PPA1>h*K zb3cF3IUY}DFfT_>HkeL1w0x`+15;+n8Shp%@L3ObpOuwZUv;_d5=jPKl3mKCEj>## zoAv$WNv2JiZPzVY4gb!A^lh=3)VMW|sM_MSMHxW{l_mQTVN3bn)hB>H5ZvZwpb)rq z3{U{d^*7(}7RF1>)m2jJ$n8zc?Kwg{&M7u7%G7$TFvH>skZ)hq@bI9gnjaB zSoN#+bGmUg8qd1nkV)1RxnGt)Bqw|as8F|XK7=l=2y19g%=UlA{JmphGosy6_)l_B z{R5K6Gh89rUn6E5o^oXcje>A(1&w})j)Fl8y|bjZ(n`(tGjfSK+yVN3mt9T{2wcQE zLH;Ok1y(D!h%~EpYNby`UQ@GY-9|Enemh|{ue*D88XN|#sks?|(?R^nYo-dfZp>}c z5w+a?)RdI8*!<`E^fZH&TAf8hV=b9Z`>NaJ@+}Aky+)_&2+r26AJD1j{kW)FqxnqJ zFgI+ zeXxWu{k%9pM;nZ>g}$)z*;qY{u|2!GSnFazwvyAiixt}T5{xUit(>71Hq zfHw=z7KZZE>zHf1tP%YFm=h_eWC-BS`Ky+XL;A}v+263H>#5$DavQFVd+#Lg&*QXB zsG)I1MMaxKsJZp|!Lxov^jY~`bab}3%h*n6FWS%l`*ida6nBas#S-4`BVwp27@#QR z>~2Yb>R$f*ds+=)|2qO8iu`%u4u%RTXAo~ykdnRxe!ofq>GJlZ)652`&fa=;JbsPP zwXbP09_nqn*71aKX?9H^tH{#fv3!f1`+YQ#*<`d!r$cUUt2&(!!{Y-mf>^J%nghH~ zTzfP9E@{m3#MPv%&dODjm#oSKPhFskIM?4TE!Q}Syx)|5kygsRhuQm6CXJ6VDUrKn zEKwKUhsMfDP~e&cg`P(*it;+Ms%&;XZtCuqniYa>+?Qup_1hBWP{O|`V)vPl1SF6X zgU9PBlS1wBJp@RG4GRAf^I`?sHG;8;E)Cs{LGxLbTcRlFsBCS{!(FvL|03(ItgO#R zs$5iFjN_N$Mh#7MJ2TaC7$wRi$97{P{Yt3lMwWVAP7b~wne(GTMYTEPXhocItKzF? z`BeGKF)(*<0c(6@$ml1dw!H8orFg=(+)wpgU29#^Ux4E0TUttT?4-{hf~Xhkytc($ zzX;C*rY5~E(_9+7fw8)q`K6uL^Kd{OBp0PpZ-uZ%?1v~Qg>)u)!^LuBTuxtVU)U9x zL*X>0iUa~E`Evjd~at?P)=@m z8ZqRkb_l6V|J^HaTkt;bS;wY8&2|>MkNx|XXir<)>fAN0w5Ewv4xv5X$ou3}wajO| zC~Xxj7Hko4GOiF1p+q^BovPPOjOlw}d>O=$@me zq8GAK9^DUOnuUJC4`gVje@2oCFhbKppX_}m3PZ&S^D}uYnl1KF9FtP=8^X(=^bW4H zm6bt-1RKyI%`j2~IFwec1=g~}F#>syqN73$WrO&ECV1XZzFHNAr{rBk>uXz(&Se4N zzhj}g&{R$Q5ei zj-MlTFAz-O0nynNMnXWzmLTg81q-OfNGX>fCJ^y>7R%(JvFTR?N_wag3%MvoFBH@S z8%UY~6p9SC3-C7BoOog4f~`@2pV-JwDo{?`uBC!Jx)2(6}u_~M!daUCy|mN*Ui@>B^>6!hW#+@r{_ z$bMO|$a4`UaIf&PrcU1X6}v!_tIN{j((J6qSUpG4S-Qb=VphyzbSH2wK{47m0OE0! z#%wy*Xr?zhT~c4(U)-~lPOEl8P$cJCYbL8(LsOk)Gs{;=6sz=^^KXJ{NcS~L>go!o* zGKkmu<=d0;8uN{?5Cpas-j{WKL_KLs!Mqs6(gfmPDa8oNaH{Ngm5 z*OAOI(8@y}*TPRjb$bS2cn{UpBoC%7NT8&0OfudCvJv!FwyyV8c6xj=;~u?J)C#v>{mo=|T{Dn@Np^+4y-U4J!Ax;Q&6tCGI@tyAvb23Efm zXQLj!r}E!XAWO_2%65l)XT|8B_Wl$Fl$eAvdoi^h0l&xA7A!k zEJ5cmep`adsH{1UR>zxTUzx<3scL{nS#(&c8?6vRBNSpVoY>wWD5z@LgI7{)$kg7M z0S=r1XV}X1=hpRPI!DAPQmc`bwKVPK8jSlkMc<2Qh>ngC77X-Gv5|dsbuj&?*X zp<0K*WCnW-@Hns$p!snKz-n&<9+6-}bEev=%R=c5iwpdSCx{G)^^=o6mwgOOauI=XTyyJajFxtn9c|WSl9`qfJ9ps$jCS|$Y;W2 zehqpt&A7f?_x0C%b^96BF!-JUy4_<#2)=uv^f^4wgPggTAw9IH*s37bw)gbrzbb_5 zo^KzmYlGp&{!Mk$EaM(->)=(Q$mL4BM*1vPQ-r7k&F!xxfJ;=e1i058;NC;O-vXGj zTMc6ryQ?=gJ4zh^^T{M&ToH*hi;6&_eY*+adH^WP!7Hi1H~C-6X_ zmANMCoDnhnm-`u$k;Ag`@UfC=hsFfaSz{BeIHc;ou=lp?i$syDRZXt8G?OGO2wd< zLRkPxr0?glFD`tn#A1P}=~Xmwr~aA9aciVdz#JGobV*rO{gDY>#pr;X{O-$vks-7Z z2NO9N74!QXv*i*jznVVh9QD9_g&%dq>@|D$Z4|(I*iu2?gis`~p_CV2HtzdY;`_Gs z+{s>aeUS^5CRu2;>3GfK`G z8;9v4kmhw-K%WnC5b#iN&}Ku|RLoMr+0oelxtbJsz2YOFqN6n*SZ9EK~U`^VnlUPqaJF9T{1XMpL7i{li__M;ll5Q_v=?kPRTfpMX> zxdmb=zF!B*SsA|u^3-I#bY0P-?~(T#o7k{be+boSl3y1~X8=J9y}M(NVR?y60O*qe z__!NiA-*pm_yAV_UD-<&x*GSS{_pS~$NY)BV^B#Y{va;%MN13ttiU9^Nl4#QS?n1H zu$~4R1r&y}U>?oKaVmrej-cpX#{o4yj}_b(KoT^q^qbbt0C%`AAV{E+n<8;RXPZb& zqjT`De)Jk}w3VscFV0go1H!`C2S3#Zb(;fPt_W)p+T2iAX7CBJf9d5!`RvHvlq?XX z@RsZx>2L@XQ_|bmQg%Lf#!e^rQ2~tcihWN^aJ!NanpJvPCR)9PZxMfxB;VK7>8Rg~n$!lz&;Y=)_>vKi9NTHCh-Di8 zE=?>8sQz3C|MiI&@mZB}vl|-|cq}3#B158idqg#zxnjRIR1A$hLZ*WYAcMhsJAe!@ zQpd_eG33+Adut))Zs9tN5C%6fQ31}4PvY3sFGMz?l(E(lBb%)q)bn9*q76Enz0gJp z4vWjf%OK-_>RBI*{Shx3p`)?C-)g=s9Cg!GoULhv$9hK>V(S>Y9gk+ST(`4U>EImOENY26}Zm zl(D#HfHH5VnHCNnK{Bzl=X(V__H2>Sb=CL0$J7hPFqw5nz^}d)1E{DI{H#SO3Lom? z=AyYS28cmeZi~Y|0WtmA_a}LNl$RCy& zSVw+iDk6e+(AGhiB0-kUe>N!Q#QB#@bT>8gFx z!%}0m9X-@;2c`8tUItuuDJ?UHu}(nl%Jy>B=6Qe;J*O;cuDUceEL5pPUK8K-mb1#igNKu z1Hud$53I<%<3%X$4ihRV^ff5}z4pQepVc;tB!0DiZVkYIVSYHCRMIKx2nx=)Oe-@# zNZ*JB`%J@sxjFVNNg}WfWXAVn*w?65Z(#=beiOH@Cv)Dg`uq%)WqIx4VMD+L9^>;VGep{H*8v&+MMxPaMUDWetvA;g; zedQQy>_Ef^=LcE_uy}J1aX0E)Fv@0X+O!FKWMY?Nf3C;@6r7_^fV|ZH*5P=HB`T8z$wc}b#kL|^ zf|8OtlWDE%4;Ts#xMoNfD&^K3yi?qbQ7=Bha=tuM`2WGAyHQe;v3LQko`X&sqU#&DjM{tE%kppy-4(rOdJ z{qnXO-Y35Uyo|}A&Ku$DAP|hxjNVu|ucuFm8#E-I)^HX!7k}R?3a<6<79BC17JuXr zvMTT=fmB4!KdI>g7Mf(1Igj2z)m9=reVB;HJAyZHrlqcwm#6*aWHxL~ZjAilStfVv zd}wAnNh!yQutkQkeU!cDb<)F_Z!kkWA4+`Rbd7>qG1UMArviy=hFmtQe2*1YIH~Qr z``wI#AB;WfxNu(P^Pcb9@tzw(Y=cwkls{R*2*ZkX4EP=2PiR@!m&Y|*&KtHchT|yp zAA(rL^&VUgGLM})s^@dP2a^{Ho5mZ^GsSgUn9!`CbbFFi#4jf1ZE0-H`6mN70H9H`IF-RB zW}eoT1C_y?ms-b{rom+A%t{+-%JBSY&R0vbu5bbbZ+yP)bB^;#Zvg>6;%2MPYs9Q@ zyBR7gDEn*M>qS>;i9&DbG+`t1E_{y@LP{u?1k9~-T4*C0M^)slbQfPY<5RY;?d-O- zBFg-gjxksPH%&dMY?P~iM)1p|ei%>}-)C1}*ICk(7m5Xl1Ud{ZW@Q#uc5gsbz+`v< zomqX&X8+&20KkQz756@wb6z9!8<7pPdaPnlO%dx=5J1|kAP|ep`JPVoScyNJpMCGy zefw>G-yy@-cLExTf$AhgbZata&RIZ{?3V*eWidLrEq-dEzwTA| zo(gf(x-X<$+9M#gk?ocMdJw4KqEU3ykCJ{86P%r< zq#f|x_yOh)tokRDXNoa(7kM*FOYA01s8JndtpZWtONR6!{?kJ^h9IW&=cLCPV+v+S z=0Iz%4)>rhFL{*iQ@vP{gKRvJO^jF>IS5=o)Avm3TF}$z0_}>Q#j_fYC z&vVDwy4#!U>dNxYt1-R{i<|O_nu}Yr?c<%`zPISU`dxH}OS7W5))ps!_M`XT)0NuW z+c%Rhurg}ZCbYR~y*Ez~4M9@CI_B1n`DWEIf}w^J$?{0$s3Iho;o(HvK5DYJTX#nn zD>ywpKURgDQiNf8J{D_ebh~l(4bSMS)owdN@V^G>eFO+nEBF5z4qe{}{;U|&Iy|=~ z9VhKr;Wwr5*2PHxO@Y+;@JiKH7((SvEeRFl19!l~5BJ=%x$@lk3c>SiZ109|9b(A& zJfFVbj7`Cwa>sw$i7)D4w!>hxXL5aP3BNGDC8{U#bw*s#fzHjNvHzJ3S1vLUA$cx~ z>4h$%@CpI9f}OHE?0{=(tDs0SvlwpQa!69JxC{uI<$Qk}!#`Y&CJRzR3LJGgn8Qct3%>oDua^L{JiT=Rw)7xwz8D7K=ToQP4YK=xEP!mzJ%tc# z2#T>X{zU#vk=&As^*iKhWsC%8!*9@^Uh|q;NHEH&BwLPGZK_(%gUQ9xq3Q|ELZ_#f z=gr-RYv{#G*~)5KvOI4?X9etn}>C% zCH9zqy@gZCW0R}v=X}ps#3JKt^X2;^AXR%?q5Enf68Nx){4ln{w#aj=?hm}b3-(!@ zzXpH_pn?ze_A+*#B*73bdc@6pvRSP^wLhiY@9B$-=_tsMT}$}bdY&c_70J-e5+lDh z;-fzfnw#zg<#?Tm@2erdLl~LBR!Rd%_i5F$#Dd04a0Q1H`U(h!_1=FF8xw23MNZ2#ug}%MHh4%ynMEv2fUpO;+C4# z?rpJVGEsxr*J76Q2&$qLcvrv= zsm*HtTx+%9(Z~9s12gYu4vJfPE(nM~03vhET~8b5|E4`lHz^0K0eH?uqHnZ#%mK^g zs(B!(X2=0FUL5-sL~M531tkM?JnDsitF#Dlaflk?^`zWBgdKA^ZN&n?7Qa0J1c8`c z>I?giBh>3c32zb1j*y-hO_%7{Gg@+rup@fvcM2dkwTE2Xx|bM8gx~@P%n!q?;C0ZC zzw4Xl*hn;*oWFZZ)#o_P_gta-8SV{yTu($u$v0+(0k1jx8sNtRV$F9K7h`3!25Xja z@iLk*-?s-8d4`UBfMj5Jextqk*`Nh)=U zc_P#pr2ySSo(GG$8*{uCCcL;o|F_)*2X~aisi|?Uz7IP*GRv z@lZvYw>7!;P5*jKNlN3+*F_W`INqhXOzapu#y(dFK2gg^Pmc`2%ylBjw0tl<(x#}k@wLxYIE-OxhfJUkS|bx*uxreOcXZcZVchM!lM$1c%q?$u1{ z1IZ<-+G+Bb;O3K#$QSHe#H+Mq@HVOgp(%-c-3mvo0$V%kC>;Sy z$f%}Y>BISYkN`lNKKoEf6HKfUD?67DLKe@0?y2ChOTnIQJd{&8eeK5hgccGsTP_0n z=8;Efuz?fiSD&@I$u*i>n>9tKi240TlnDC(3H6F;(q4Pc0@R{$9~`v2OuG%JdO24p zuP9)tEh2h(2G1iH$Ziexv&F3n@zQMR0YMru%DD)Xe5t*`3R;(Yv_pz0%)wVK$K#1C z3j(xl&3_8?ilSaPAY#LoS0EeS^5gnqIja9o@Og1})>BCq5@!?dP{ehlQD7BXbLf7W zH$q4zwu!8>plb8hr1IlCMo4E#x zdf2HZnzp2#er==@{t;|cpUTbmqwaSRkKN}F>rvwKmZ&D!)bE1?Uz#X4%==~%EiFTS z;J4BuK@{~&7?6fm-Iu@UmEFx=SRtH+Gh#!;%-<%ic|)m1q+n`y$z#2YrPjCMm-#@c zH>wjeAQAHYzmmb&HZ|%$MYN#fNOt-Mfe%f;J5p)gX*EpLYrG0VItPoq9%* zROptuKbklNjt&iD(O5|k{lCL^HpkYJ_{k(AQ~EXZiDRyPu0aa+5I}JFjan=Nz3J4c zX}DLNZ>u5t!;>Umw+!k7ycm>@g!sQK`SdjzHORgJN;(Q?OQ-KeXO})8nkI=FqR^UXGj}lE>6Q8MloG4r6QdzdYS7J=N8~MBr5YgwI@mN z0+f9Mr`^p#@G+l~O8xc109NyX=MaHXqE_$h#W4C2O8%P?-1xTce?BwDe-8=6Ue|qa z&gbM8OIUAAwBmc=0ea-9Uk^QSedh5^8~b1;|qw&%>!|WBXmP6Kqz`g-fj3L(d=W%yWTM>ubb{0?z z)FHn29&!!WxwFo~(wfEm3CmtpW#-b#3prr+h0i=1F!jy-2W9AVNEBzE0cmO})x=u? zj_sTCubt`2CFHC zhgmc@O-L#m7J3rz?A*=Pu9h9!uBM#@{~~Sck$?;>O?)GF2yR_Vk|vO-ZqTn`{;^;$ z10^B75>p5?SXa~S$19y?vYC7RwW#}vdJb_3U8zLT;8<*b!A+G$NdPBU7>xKbH%h@j zfzNG~*78f(lO(>}NXr|5BAEk75uHrI>Ad<-Y;jaJc&Q?uD|sQS2vdo_6C_Zj7UM-qbGF#h7^Wwf)BK3-;&OAY9I1OkT*c<$?PL5N{UzuAn05o*^ z%?iE8#c_wZP%uHGwKpl}v9-+=VO}5(QDWY93@VpvL#%e1fZ6l@Rm>h0~uwN9Fr}JAY;hhC}XO5@D$* z{!T?Y+b&_0shjou9QUlKbU{TU`=p~&;$ib@p&t({>#hVr5Oi+>)gMX0klC_d-?y)M z&@kACXIl^MNlmOzF-}f6+hP(cP{TR33=NicAxr3IOtj#lxR@a>mkBu*$Y(I-d=E*b zOca#-7mD9ckG}f=z91tV6QR^+eX0JSKXqg>X)Y+EL!Fsi*aR7-0q~pc_mizG@2SyY zro$cOLpiAm=w~bn*D;n2euNns3W+x@kvulLt9QxSn(Da z@|$fN!S@OWa=vdI^FkV*!zE38 zyvxpB4$Q6SPK&@kiFWkEW8*TJ6VYZT6EPMUi7csKPtT zg+}6l;^OP{YWyc9G6I}VY<5NuxN}J+o= z8b7TW2L99}?El8hF^Z1`3=Kj8sd-L= zGi-lA!eJ#PtpL;vU$bmJU=0Oc za=6}h)N&3usQ?4DpdW@V@*?UrYaN`&lUdIIhzzpG5Hp&#qAy{nroB^Uu%V(FdTSd+ zNMc0XM5=O=+bp~skQ&5q*(!~os!;Vnh4Yd8On~`dFaoVXpn=&yFcmAB$trGZ@ljkq zHNblnUe0Zz-j9Aun5=(fK~mUQ*v-z#$raP$?^HcgsW^i|mEY8Nv^xm>F{t+E-K;47 zr5#*bCY41w{&Ise)x4bgxHvP~p}BA#MhzJbOA^9@476$@hA2HI6gD9;qCHC)A>%xo ze!f@SKv1+_<4By-$yD2ueZ-cwy&+sVukQ$c0dZke>wX#Kf<; zPsLccNw}=eTb6~JwALs{%I+EM83?hS3f7X+`d097=KGeTJ8ICTwZyL4e~vaoS$}cM z9gISwV?N0)wtBH<$O4vzfzi2H!_K418(>c`e0b{Uh8LeI87bjrRM8iE*o)y?5IeyO z($AQDkXbmP1^x*b_hCm04=&aPRe572-Wbg0wd^x2XP@l!-nJb;BE9VZX-!sHyUJ&( z@H2DOQA0x$$3diR)?0$UD0=lph5vQ;j?-#a*ht17@D)lXs%HT>eI9{2{fbsCXMlrb-q6`oDs)ZGME{Ix0361;TSvNO&I1 zivBK$A17`{9AuZsMSE{lfFF~j1ECiOE_4(R_FEV0hr?!H(MnX6nb=|$Q+MtGq#%1yR;N?LI@pfi5Q?T@9)olG?9sfni2|%8g|(TsD*ltf3R@O@jJAiXHAV zG2gRqc`>KLGOgmk84@wx(&;@%F<7i@_7O`a6h{69Cpu(fD~vmn8;F4h??pcZvvW`T z_yrqiZ>h$f8!TP~l`F2QKj|k&&>yxvRXxR%d@V4s=bD)@G}qPDZo(Bd@&C)$+dYa+)qk^u*%(B%eMVF)66X%k74$AT zh5ek;a>!=2fI+Uk!;7}Zfzm5yAW}-k(uGJMM3Q*!Q}$D;)U6n4^E63MexG|upXC1a zwa#y)GFJLm}(Zb{uE?+vhw@cj?;7=Xz17EXU zBE@@O)@pq&tf%?YrgYkXF+5(`6o~D}fvhf*wPRPuK5M}_vy2c1KQduWrLgvOHN{oJ zeA8e#AB9oBC;M^)2nUpy_3*r(e-v>42tww2TBs-mKx4KlZr{Ab2Pop1Gl%j&06~G@ zXzk_I?FmQ$ej7j*m7q{-B(vk@4m%ed?dpbfFqusbe?^C@=jv1N-b4K-BBVrudDMzQ zCfz4|1TGbw@dI@XG5tq{p&VcXPfgls6``*DW-bhRO&4fj89zNxaP@H3cZUAWhkD;9 zYc-n@@)(|`pg1<2QN36RhK`gWns$0@DKBYr6E&7@E1(Hj`wh$pG6($G1JM=2!2kS% zaAmtZXkPkGcV19hX~RsVJn6nLF^u1o1E{bE9y?0k)@)KIs==nM2z7lYQ6o0VO&jZ1UqsJ#*t%npd>kr|7fU8JSXVh`-De{4pu<> ziCP9+*{NkOwm&a6k5pvvA3F?GnM9cC6WIIms4pgd^@I4_J8;N_&83BFpYkl;J~Jii z+c0QZhkP8M=!{+clc5kd8G_Rhq+O2yGdSpyotgG;3W8xWu|E-RL0Vt3Lavr@dPNZwU5ER)2_EHn0;|!nuj?CAH900SseGW2$>**P6vq9cpXiG~yV?>cez?CT zvO+T2=JunLzD*c;a@mo&d1*s^YCH7d6Mpk@D5C10FeJ^nw#~6>c^m2T#nV)Er2XN~ zFWXyO8TDt9Ujv{Qe?wMWUlH_})7%0C2;B1AllGVG5@9%ng#aqzINGIBI#DT4-Pwy= z6kkH9Z`Q!`WzI0Eg|%=AEa3rCg=PWYZNpIJ+sfxo$mAu{kriJ&L>EMRk8y1q@^Lo7 zSAbZ=MX@CH9fN-+z``=C5f!gYx(l$>UyF7mu$;K=AMck6f|$y?|0wWWu&y!5e+qC6 z*S)45;;p08+i_w*#CLOTNr=REbvGuKovK@d?Dl|*w-WX(X!p6Te;V)b!9Y~Geu#dZ zFy}XJB&)hOhs3jW1V28rvRa{qr=rA|uv96snXqg%2tC>eH_*Yk?l6O~!YZ%P?L~Td z=rhvcw;1lPng$g4UEsC|Dz*{B?zY{DLd{~~cjT+ZqeuUir|m=l9bGO1NhU9*L2un! z$dJLZ0d|5i#=h;fqjzW?GwgDihF%kE$k@~=@s4G>1SLklo3d?!g`lZivJgoudbVLg z_){}uVxd&H#RI%albD5<1a}KU@hXERmH(KE@rj*Gj=l)dS?pqx>A`K@2d}!O<=w&& zmh&N4qQ78#hZ%x}CT#U(X;BZ&B^BsyRVaQm4^r?tjsw^ZtRmkTg zWbYkFR=yPr8u@cs@btAvcSUAr!+endFtO*gjF-;oe9 zKm9%iu58LYxKU6RpgR2F3pbP=nJ5qL_zCYwuFbN_mTHhF&Jh%G84V_}KNE zuU=G4eA9$qgJz6-i%M`5M4rUdrG1es

?!W?|s}t=FW>gh{p?P#}s$)Zb#esMS2* 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%0ANfh*jR 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˷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 literal 0 HcmV?d00001 diff --git a/docs/assets/codex_inspector/overview-390.png b/docs/assets/codex_inspector/overview-390.png new file mode 100644 index 0000000000000000000000000000000000000000..00776335ec37961b8a889d87c65f3824c4747089 GIT binary patch literal 21069 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 LJ6hEm4#@uiGT;Zm literal 0 HcmV?d00001 diff --git a/docs/assets/codex_inspector/sessions-1440.png b/docs/assets/codex_inspector/sessions-1440.png new file mode 100644 index 0000000000000000000000000000000000000000..4035ade661acd989ca020c85ae6061cb29490250 GIT binary patch literal 313606 zcmdS>^;;ZKw*?I1?(Xgm!QCaeLvRTMcZcBa?(W*SyL)hl;O_2B=ic|dGxN;%56lns zl=P|Ut~$H+UT3X!I$TLX3K0$u4g>@QQAS!^1q1{#4+I1p4F(K&1Rdpm9k>E@Qjrn` zshK7?0q%(Z)RHlimj|H(Zo`0phFX9?{A&VS@PG^O)I3lSaNrvB-?2Qf|9%RYmk0je zZE&=I4FSQ*jUXVxATr`2YVM%to6uQi63Lv`mn}|z

vA2YTZuLq#a)MU*u)QRfS) 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

F8s47cjHwh`n>UVNoQEok& z&C^syJ>I(Frn+K}vAN>s;H736q>0LEKr!dCb8&*RX2PpL9bg(_zb>X2q0UOPq@=ik7Lr@yN9N+>|2XkjY$w@wzW2&mXB%#_sIVZWeKU{g zo7I3ZfHgw7`Nt_lF`z&*@IkOV5!mUCFr%2upj|z#cCUO`=MG(t!B~8=g3>4ruKM0R;{WOuD_U76EJr_8=Kp(;P=6y zx_4Z(uOA6M@fb)rAcTtVm%#yfyE5;;?}uEneQsKVkbJ)8kuz!-1Js7z+8XHGpg|Ch z3t<6uo5D%YIZPWk4U<`{stnNa6~EO?<(`jv|BDSA$Wan;6EXs69AaT}7;_1fpZfU2 z+H@xi0yj}eV4q$yE`bEpc$()80m|zVR7CK7ntU?f&q+y$u(9M`wg`rC0$C}HUXw|k zT?e0TsWI8X@!Qy@$+XBc321asro)(kZ{|jSt{F@mjP#C$s86R^SBt z{Wi~e;XqtrU&T^qCzuThvMiio{~V{xP%>a z5?K>_Y2sD9V8tY(Eu6M)pDjg2!EC9@e3bT?uuPR9R{%;l&1~_{QV`fb#%4_3@7+O1 zFoqV}i4n1{LsvAnXsFz%^xjMRH55PZL2#REu2V@uJ7h5>jk%U63Ks{C#lTq*Jxk?T zMFe~niQYYC*EC%p9v9SJsoBBWS>p*^%3bL6e5yog+AXTpc+So=A0Ml9+q{j% z=J&^JGGx-dyylkN#{wlJ5R8!pUSafnPNPorE(jfOd_bCp-Po)9jg++Ozx`vbSWu)* z{^H1HXxLqEK=bvFB1@Vlxt`i^%G*|(%3w{7ug8-MnHa`yQ9g<-7fcjM%J zQu_|*!Uu9`_p}loVdsup5<%$}C`JTkYorrNQasSu7T0@*Em8dK$Vlf7U0qPAoEF?e z{;5f1kVH!Xf#LM!7kDa#y}1O6?W%Un$0R+@t13U@G-^dnK*7&37y+VBFwtSWq~&=; zSWG{-eb(;l(`gX&)3cbh+k;#Ob87-r{i>HrC4$ySR+B_EH7S~Y-4qnrEi8`|ZX`>Q z^^YpwsI9Kg42m-E8e|l}G*hLrQ<4>ZlJg;{@4@f}!i`^G=3&TTiP}L$BeW zd}*Z&Ddonu2Ez-aS_lZTV~OF3+Y3M@G#zk_B1yGD3zqBywcf{r6oY9IbY_STPxHBM zvE?vD;UO7_m3K?k@H~?|f4tWRIWX#USJ|lGhaN7qf_CKkM^s9Ks6gmW;A^RsLd5Ba zMpXDZ(wi3HC(TQHuy|ctN|<{ox-IV11Vc)#jr1*R&FHBL9L>RZ`y8HhMY~K`be;bDoRyXDDpIc; z&aE`o3+~L!8O+8kmb@l!X8Y(_kDosDBSPlYDw?$F5a>3Ay8UMyYMJ0Bj zR=Yo7R;p8ehVS*-lE%AN>HAe&k^$#+_ev%QcQZMGtz)e%bhDSPbcrGayy9 zE$d5rDe03H*P$?!r?q5v!2issJyYOBUL7U`pHf0DgoviBMM-@c--Ivh&MKWDhk8_>hg!7N3Vj2GzGTC+Up~% zUV;1Hm)FS9@r)GVSmA?u+bB0gvQoH)F1fdhujgUL0KJ_Px*z@oPtf}__OuE|ieiG9Rz?7@qvi)Ih zLo4kckvKzHPKqy4dyMmUv%1bbFSt6P3z+XHlS5Usg9W3xl=1a4JJJr^mx4zd^al(2 z2+OODaG|QaPdjcP3xA6R>cHIeK*A!GAixLXE|Dqwk|@(~$l<*3;~Q`*}uSroo`JxW*z%GC({ zMYl|GpxhtyfE*CIIk9cYp%x7aKMr_=j;+7wcb%!KpG!JIm22EvXAt??n+aDR10%Uef z{@TH*btLOM6KVpo6b3m#anJeqE^PCs0UeGDf$l=tm0_;A3wYu=6vquCOZ7kmWH2cz z=+OC(!XO^=UsR&QY6QCAy6TH)+yn2fPG&MMk~-I_@K{VJX*o)CPz$iy;=JsL)hDrQ zvl!-ne!VJ1Fq#*wNY!n_u zRLN`2`+a{T>ABWF5}iAwd$tFaYm+cLn|^)IT9ACWaZHt}rOCy`xiE@K!Md`tj(<$N z43)6a`Q)~yCMWpc34Iz+^6i<8UR4=JYwO|RD? z?Gu1p#>}B$Bh3rXKM-LL)P>-YJj45@TTP@X$q{{r#qpVNG@n;0R7tbA9RB(|0ri@X z)T`Rp(~&@A!C&`o!Hy=}L^v5Ezxqgx<(|jB4LD35y~MQ!`Lx;QNsL-(<5clgW`CD; zOzfcW9QASxjy0^yKqU)85hVztxiO8`VvvcKw4|nujc+m}3LHby52R6H_VBpJ4!$`y zp%+aE2qT&cqfmu9k>XXLUbUR4PVy%bE@~r_0xgiDeCstHsUmoR=mRjx@fVTHOR`&v zA4&x1&wfjYtE?9H5hI7du%LUQ@!P!#r%@XnrT_bX^UqLV;>b;Tb*zksvPigNKs~!* z;!BJwbHp5P6ja<7OOn$(Q5EYBM0iUA@oFU_z?ManrzdYy2Jgr9c=y#H?r;Pp zrcbcKQ)BVtz$;FRd&Mjpsnq>KzA+aGdncY0_%S)B#ni-jn*ZW$b(Z*%QNj~6Q>yoC zaEfbP*Ug zHBhU10`}GNcl{9EyL%}(Sg~>S7maRDT1C2y@73qh5d}hi!mv@OXfO*BwhxGis`Q3r z;tMY?R@it|2dr8mUYAHtB8+~6Hq4Gn8D_-~7N%_j8}yb%4c6?qiwYRjQ!-K$yllA^ z;g~F>s%g8sGfQ#W@HD%jRJdtUZvjuhDJ1Q{=@;2fsg?_?u-=EmfZq?5PMKi+Qg%25G%qh7Ta6x*H^07)6RdvV&hUJ^g+xB^1Hj z+kwxk2bu*+8QpI}!95z-NVTm)jZTe<1_44`kl`Lo zNGg3x1A9!NwLj|x#S(A5ZZ4|lC5kb4k{;SxP-3PK?NV}65zk;pBU3F7qG-`2)q{X{4J0p%PV(YNkB4C{ysajXP)o&~ zH;37Sn@33Z#Ppo(AA+A{&$p+boLjbheH$HJt$Z93AN)VwU!DNeI4sOTw`HJt$~>!4 z{`#h_D?y2TP^LxP9s~PCEGwQiN6r}65$-C`V8`V1r6Ko24rCUVS<2u|txd`}EY_KY zq-E1JQ!$YBB}>pm(vB2DEaZDFUy`i4l|p z&-OS>r>d#la9MU{;wz&CUpDalI1>7L@dawd8+#I7y1oMsrP;1{K4Y^dc3$i2&6{RA zvJ8SIb~TlC1oc#W(M*uk8DHx?ADNxrW%}@2_5+A?trJWg(kaHSI}+HRpHDsJV8XGE zhp(OBN6}5)uQKAZAIB1ERbOvCUrtdUtLC{jt`XcIR461bJIKD=(}=iMSOX!@gudzD z4RHPT2HiSp&8Kr*fU@#s*Yegv#kXnhK#%&@*TI~^-EtkFmlH*%_G7Z|*oFo#xcf?=MBeXSZH;?OfBhCgF3B5$4SaR&B`m6+ zrPfGAM}Zy=HeC-((yU1%G&0pM^s+GyqY~n?E5El=K#^Cx{stmv9YysF$)+mB+jT#r zL^8b$+zw4pbCUo{0evsn0zOmG$=VHO#CN*`G2S=vPgU;LH;H#gf4^7?V=di$=LcaC z2I)V1&@=GR%Xb=LhdxP~el;fjQkhu|d{1jwO`-1DVSEy>|I0=Edy*l~{3HS|cW~@~ z#_sUsOwqdA8jzX4DQisRC#N-cdQG zomwWrH}}LjpFl^`f$!IoFDfoX1AF}OK4{z9%3dsL8P}$>YAt@m4e{3tap~^^wcx&A zD0F7eBJ4EaHw;zwW`Dsk3WSOIPX@^8z-PT(}q=Pol?toj*n;xzO{Di^^G~+)9 zDh3J3FE`Iot$AYF&KeqnYEzC#d5A{fREeblWFZ2iXBhRw!nNQSw{hCi39iY`LhNq!x-EGq+H3pGuDj)fqi+|?uchB?NgWQ)%^Eu>FrD|oh z-`MQzh!wLRrtkF-ss`-PkT~)A;|9`_ zq19B1xoZoaE5GlMHlKu#!XFv5>o(6BT{FM66qoGu8+@7V>?wL?bxZ*hX?pkSzQs2x zdD}`W-d|TAu77`ztlFsRSf0MyEOEND5W4caUw!EIhyMQWe*u(mHosb(R;O#tv$W-V zRF;2JtqlkNORSZcaK!RY6MqfqO=IMavI=o`Oao^YmSVlfmpk*WF6_WxAG1l~dYt{e zfjCGSXPl(w8w=JdDh`Vd5C`I0wEGKc*xQ>Fj*QMA#WpTJcQPBdeX#euao$!f4fK(^3hW*$g8t?h^|#z}i1U=oui!y%HU^eS5+^`|wN zFYs27+yC+}$m0h|eva=}BM%tF?!ip6j@&3708w#`hfL}pA^$X<&f-}jzz`$5b)<$_ z%~$fPS`VXsWq9+x136{Aj$y$%nlt%gQq4o zFHkhrC=ycuGwG>`9S{Om_Q}|?VO&sy993QqCieeg>Kw!44*sqm+cq}b*o}>ijmBnU z+qRPijh)7}Z8WykSWVI=z45=Fw|ni2xqhQF-}#&~Dhyt-_=%a2^6}__-Q=nt;PreT z#Ym4t#L`ss_kh#c`?4T=j{!m-=>1#zn(L^7h$rw+5=-RMOMCwgSGHP~9K-7Z@+z)f zV;2)BwAr$%t1|#GZ>}q~cv!+>oAWf!$V^mz$i>$4@E2p1S#@R}?p3L`_tL+)`ZTI` zJt9!yY%4e+wE0&bo7?ZiCJ67_HNXE^UH~rw^P1>r;ORey^1nn)U#b{hB{JEkQuf>E zqD&qC`s4&v)ji6`()TU}RRAUrH7MFnhgFxd=7y&_bW7dK-(Q8^9)l`>wiZ0t6Fjc^ zZrhejU+A~q2a~>xrkESZUiAFUhwZ*wAiZpvAmOubhRk^$6!Inp8N3yAwPbXM+K=hG z&me2+Ij!0lyqp0WEELPEJPrFGh2Hv3Y4hE?Pm8*au9nmnc0=M8{O=))to$v0G3nU- zty2}`ZZjJXju*P_vwy>+6nnC@QqbTRRIK#YDGv$wSl<4Dv`RS1d4->Jkk zyf*`udLTP-u5&Bp&lW5x3*2iC;m&a9J&R}#C6x&C800>u6hVaV7ZgV0Q3EP;`3FV{ zEg7$09b2K6*CJn!GqyZ`yDnLq+!Am;a*ul;^#A zKgyu0Z|Rra0`B-}=Sk}z$KLe&gkO@7f9ZQOZpIl~Jcwc0Vj#mTZK_uc48DfV1Ul#-^&)b!l?dRw>J%$U!NXTp8l_~L_ggHB2=c5v z_*6Y5QKlmoAAc@U3uX;Y0abdYNlDgQ63gi9ML0;z#`iNYqr zFD`>DpKFvDaO?czPqvx0%1mQsVDD$PffbDGRfelKwyI5?T&(f3_;~FPn$pSS7feO! zZ@Bs%z4z`8ZCK zt$VUNSC7Q304MYt^T?B6RNoUZJY*FTJA`jeC_gd)D%!(z7S&Z`%nW*OFE)R5Ij>$8 z1TMHI1A#)#jHBu85DsPYM58zVFht7;gCBP`8{y9M98@8kKTlaD12hb~>4=pxR!MxW z`<69(D?L<{{8GRLMB++rh%6InYh%<#-m)PIAAE5JA2IzE`CkS<8AYn`_;PM_sr5Rr zg5H%e<430LI#JRbnjH+ymO1i6l2eD#P*ne%a1+LQyk?M75wSEo!u6*X-fm2rFaGt3 z+}bBa%j6$G6-GPdVOtuMc0OTwt2p35P(19Q@{X!@g-G#(Clo+Sqn8_DSO9~`li*s; zz=RSJW93^m{nkH$Z?{k63UFJit!8kTf1-_1m@;n;3|Z^ffm1T*``MU*#SzYc)vGuI zom@utRLjYjh($K*j0#Kot^rmq&8{sH^m)~pM6gilM8fJJ!04M?-qF%s!sdQ%YtiF# z_S4x-tJy`wR`a*_)<@jx)WWA8z6D~^T-Kl4G4owSgp+t&?@p1f*hODXzn;!yN-SM= zE85CG?9nrMS?>nDKdsnYU0h!2JYP4tZ#Mny{zL44U#C_2eth+CP)}pu`2n-pk-v@7 z@>;USYm?;Pd1@|HK+LtR5ZBi>Vd`bBR(_HCMV zW8aL(^raQaeS3CqXnuU+k2d{A1nhOymq$AGT}SQb)NoSKp3!1SXNFp%z0ng?Sbvw>hq;`19E}7g9-I7BS#vZfOA}a=c%Drm; z&ZWj>?Fjbi6=)E0GeH~?Y{@Xf4};tX*>$lvp^xXM?x!xc*wt25o*}9eMZU{MZeX&4 z86wP(B&H26mHT}7*(_QasTzR{bo~+Lk7uZ}!Dhq;JG!VC7GjmWB4s)y9&77W|7ka8 zOTH5@*bzXfCGkq&3CN_v$%RCDQ8uVO4FEj`VX9OK5z=+ogL4|Mf_FNh0M4D)SCq~g z_c^59JA*}s*kuaTgm=svCpd!TVW&s?@c&)ko`5~+7@|<5Esr=@;d)UtPL(wg3{C#- z*DKcTU(jY8;;|UChZQQuu3BLYya}F%;t&?%UCZNZift~TY&1T1p0vJZ@XKvf@`(bJ z=d?J*2$q|~s2RLS8a_FMi&@N;7lG{tXx5~yflgzVgr;{u?z(4rciaWnyfc*sFBQP* zA=u83M;b~|0Z&l^?)|NhJku-##5koFDvkPg=IvSd)mGINAL(KN= zA7NZ09n1GziyDtBt}Ulisx7O=6K2skLf0q0v8i4@Qi|!!rHhstQ{kt7ZczPQF4Z-& zh@mU!Dgonp&?d_)%U*}q|1|Ag{C{cMd>HO+z1u9B;}}Q!sNXJl&?Ck7VG8@BgK5jl z&3ll)hV%_KfHo{JZeiMT;kz>l)<2+SCq4r;aO>n@YLz+o$)Q1xfWg+^@gSxC6?jn= zZ?jJJ!OEZ(1UYtL)`)1;+IkTMt)S~=7AYo3-Wlx$Fi_-8s=&jNzb8N;FC6qW-b=%t;MD8 zF;5iyd;7DZvgXi7mIoM(*^|C(Q}j$G!^`84YD}aC`i{IDf0%b!r)T_8rV&kYDg&Cx z-R6`>-)0q72ztn4MQUpgW{l4S1*eo2%$n}q%X9?d4Jjd2HH{JrJ_5Doz$ttOiq_I# zW1&@E#+8FHt`-TYIDAt(fE@IY?Pxdyi`w+`)h-9d{s?-ZNxdb*c8D^e%fIsSmoh*T z%HLJ;l4&F1JBcN+XiC*U2~m4D>NP&t)noI~3iYcMsBu-E)f9ZzNVE4}(2Gm(9F)-0 zrL;-23wdpFZ%@b%X#)hMOM@VjAZ%}5zhozP*~|A-tK18~X&I@oWQm^?pnR#*JUln} z%d4aJ{dif&R(}6>U8FC>3QX>r%rLNYdWP=nlbb1g2W8XsvH}iKngm}YUz}zZ9VE%1 zOonlp;AYa*NQsvFEu=F4gwwr1TWvxTHR(vAF@{kAWPpU2>|l;}5uFsCA;SLC&#$VV zhg-=jCRY~;-dkc|PTeb?i^V85iLGjB)rC#ZZM#i#29Nh&UzB_DRA^b;UtC|@mhN@$ z!=p*PuXlO)rt}s!ui#V&r-^s#EKieGKdnRyO25{(pGK48&wB+<$vWE`rUkuU=8IeB zrp%|bYb|$w`}vb=4<P0J*lsk$X`D6?W>U zsy`zGE&L|``G3Da4a+$^hgJp$qHn)dI?vqTv6&OmQ;SeUfUgk=!ldlwMVb;3woT9v z8w_*}f%g-N^(|uZ8KQkbLzHI06;t8$()Q5shw=T8^odFtS^0rsjPV-{9)LJlV7ek? zY>648Ei9Krg`r%;l1OF`VjxF;*Z+EWjT5a{K@QDek?8EE#^#;OSB>IHZVCtE9;k;< zSY};>bO5WdMWy;l87xoYvrBUq1KP^T2J<5_2nciGg=mz=pmP*WWunZ&3lM}==;B+` zbSV#0p*c!uakO?!4#k6i!HpX0~N>WUhZa2#O#h!0jgzU<75=JXFg~I#LELr*sAW8H|7r})y$zXz>9|qX{OugPd-3-eW7#b1F zQnn3*hfOt})ru>%>q}K}2eTW^2mjnS4y|EZl|N)*S&y|aqsk(>>j0EylYLYX@Z=9} zLaaTU)a|{$q+RT7t35nEn?pdqDAWT-GlE#Y$Gqn24lL{5)Dcw?PrYRRd&>-sLeT#^ zy&IOP=R`S$7ZgRZX4o3~h)qf@!we$8d%in)9mD&G>b)@Htle5crp>*nPRpOYR<8S0p4t?p&N`alR ztbweUqOYx{qUJ-xZpc6Rpb*WAeR{`oA4VZ`af?|CG3NO8InZ?7WB@ zPC|wEzCNPN*AzPn1m~Vb99t0YZk&Gz)j6O@Ulwq@2vWh1Cb20*_ffHSF z6V=k4ZyhI(BUP@3Nr0f3fzct(MNDQ0PHdW&KW!&{&|#h&Gv9+m)VZV<2ll-sjV0~0M4JdGUjTz%JMjwa&(gf;^uAgI2ofJu^aAJ zGb#F)3_AK+wvKb8oq1_p>*ED-uju)pxnh+@+#!(af@Ax=Y5L$j2id-RKPb)mWIjS8 zHQP^=28t7T3WYc%r&^dp03lU^yDA)ICtHs=m7Fn1Y^1sCBu&RYU(uS_cR-@4K^D%R zobNQCy}4;wnX^&GjrGC>552P6031Tr^O{1(u8t~;`izJch3`OV<+aI+$_9pl7F)2- z&eDYug4X`9iTW8t_e$COKACT=ntBG+4+9QlhfCUN)$PvQGcMHA-%udwy4>oJ=XfPN zKd#Yz+~0n8ineX}nX_@GHusoH?CieM=d(LcSR?Qo758lNiT|y)OObz`#dELV5j$Pi z-LUu(|JTEwv2!LPP7A)jA-9^Fi+34ApB*+GmCU| zK6hGZ%YA12L*I^ggd z^l-n+@kfbd9v+f?(#8q*G|p9fLr?w)5;?UU@^O6|Af{7!7qws~`A7A6L^4$-G5vrQ zS_59`*-gE6fKvP01&21VM{nR(Jt3tGvW0kkqO3B!NoO!CfjioFaG>#QixDb2fO5_f zj-pnXhAAbGR)aF;BBZ5n+7i@Q2*QGaH_nN=aP+Ic01-qHlLS(tNtPVolm}~(rvja2 zBwP)HY_K$d2UhXN2^?uj6)x08FuAgxklrSV5n0k5 z7RGTW#hbBKUtmZOFEND>N&PPwWEd1k_QpfhKYg9xu< zN`|)KfFBH!p<02p*JMU~OskZVDEnN6dg?olFF%A!AhN7D4 zZj=@0`HdR}6NjQpPDM>W=3bqNTb5$p*eq^W4U|f?+f*FudiAx;@OQP;*?HQ!%j*@l zwFJ$9?4un=LqvCE45lW_7fAeeMDSngR({OutlJ|>Ybv_`Er`QkDADBW_;XH=%B+_c zYu+e#c5$k&k_A&-{=j&WjlI+uTH)>aC&p^Qi?3aY-F?fs#h7Ae1DQ{h$)HVi+%Mm! zQLrjOBjx2gJT@Mewwvh$f_mh5VJ}b0IV&U>FQQII znG#7c$HOuf7+**LuYsh~u1PCL8M>xEJdRieEm7Da+E2E_5=kZQA_jw388}%$0%e-! zD2=^deTIOITg1}5zS!;pxBf}W9^fmM^lO2vZdHP(0%h^wAiZ+Lnc7r|xv`3T7U9B| zOUi2l!lT5&{Hs_Hp&@%*&+#febpT;G;<0G0zPK?R5a7zG zn+9kc%0X_dbPZ*!ciFq4uR=*SC6YlaIXW_`H(r2dF&dE3gT7sWmZ&KBKqqPg|xIowujvXk!0Mf6n%|!NsEBy(H`C`d7X`4A31E6<0#cqDTJ52tVFX29aHN|ux;zEWM>I^Oq%=5vRchf(`c!^$_%MBe zFyV``HJK{UE98J(+;XK_1D25cLJi2VQ!?_=#) zOzMv1sWg<-nB!nb!Oxx&-=XoZ3l?A%8u8!kOrviWlO&Q$QmnY6cl=~T;E!noR)s6LIy9lg4=`mLt`!}z>y-etfj0pKZjo`}^|ISx{|XfRFY9k@Bn6t&LJl0Y>6lGiqowY*Y1GrxY8y;gYhrcM z{#sYmCMhPOWu6`TVTB+0f^C-K`i@%QB|xh@T2xY$zs#IPaO}3PF1xD^tYA{KYBu!Ue7?(6 z$M4&j7Awm2wKit%{;pn11ZM3sM|dXJ7P59tPfhQTA<@plZ`hNvMu7|KzqEhN>MqQ- zd8|HW*?OK?bg!tX&IA=k>Ww>SHt*n}q+X<>Yqh||*bbD|hu{et5!7z@&c!-{cfb>p zMpz*7y#?DjD27P5J}a7fOO&Ar6|_1h)3!$X8q}u~`#OGTupF|*LP?4Cuh2moU68^L z^e2j%|8JJpr@d_t4(&TyM5fLp82l{S)eSe^4|EIWU`VqkEi^a~)>9P`t^q)aAPoSIS7GnDU7^`TRd%mtaup0383 zC4CQ^nUe{NWEtEsK_mZ7(ede~QwA+F8rmx9I9G+XY=~ z>)T80MsH#6tSRDSG6R0%C8AQYs9%;-P*8gW)Gh2A(4{6 z_XZOzs4zpVFesDxE&3*_dZlyknsS}HMyJ(%#6ix~)8ta3&cA^I6YG`qymSKU)EKVa z6dl9vZ~eUQ3qo&WqUAo5Lk7OPmM1lOZwEdG_N(U6jHoO2{*&SH5>y`)|Ls=~{+Hm3 zH=%oIg*ynQAACYwg_^h!5@L4rY38Jz0G(xYDE;I%Fk_TL`y_uqt)W0 zCmN;|l|E+fYZSqyxqhPgc((E^Klif%X8g3cEct0o0{@~tzRkJOg$&b;coSSgA*+yZcAm|V-y@#fYblO_OnFdu$uG=e`*+qWjS?K zn10sQ!`RYW#LgXc;G-#V`lq8^+vePW!~K^S3cqCoe8ZXVQ%hW|%zr7M2e^Oh9XVc% zJXFKP>~FS^q1hu6O*Q2Jmx@^jO&`>auj7*S#*ph^@pf9`>3I0n)a1aRQZf@`Fg*dP zQrB7{^j`WQ2Tc+)JmA|I(DcXuBw>86@t>)4i9Zv5g;0;#aP6sD9+Ve{W{5(H2goC& z9hcV6qHKo6nF21+j}qcH3iV*pO%2=1SnhXzD<>nPBy0`Cl49D?W) zn7yh(?xfbK`=#q{n?9s)7idg4`s$#W(TY{lspY)*Ytgpu@^OU3?I7^amHpMO znTeiJ@_a%>!+()1=a3L4X^F*ZELX|1H+Ti@RWmy*BKj#cGT|p;`Zv zl0#+zq3#5PDmi?FPSRqv@}(?Wa$m+`lQY)#Aic$h53;@eLUZkd2tp%wUNHm#6u zH2}P_-A<=NnV#raq|BRYltCrYziR`z-$#iwTBwv1<14UVqD~N7nk=J=$cY5 z&F$ZheszCDh@rd>+50Wk)%(7TV=v|Ehmky_@^bC?b}hAsz2b&E8`>18lv_ut-w%!4 zXFY6=n8fp%U%9Q@cdTkWjK+3v4a?B!Q|0vi_k#<*BA=zSkyn*#-MIhsyeZT$D)_c| z^q_G&2K%KG9k<`hw=-bims)6X?#V*k;$yS`hA?llVZ4wC^C+08v6qD2mpbu0$^gTO zhLA5L6NUr45Vm(;l^UM$xa1y@pbS&n?Hwhgko`%BK&|9DQzGAEI=U`@-?eESJ5T0v zm>8djDE2&=w8rNWG_SlX+_-?GmLwm)3)+3mYrl6ZWRcwvR(@DV--^4Y{nX|1?Z*l= z%G)~LZ+`bx!25J{t^apV!$O>A?~L|5KNRLW1OLydLjYlvY~L>W)m=iVA!S}b`{2zk z7M;bGgzK9eoTk5er|y45ydX)yDpxC<9>XQ=s35K z&0nAh&aKr-H2&Y6cjCn9-cI4{tq*GhMZLO)!s?&J%&g?^uAB@sF@mRr4Pz_?hFl0w zck&KU?5d{38=)Pf`j=Hfo1j7YrkckniT==)CY(_-3!5vCu}*uW{37U#(4Y>@ zY-;UwCHrt0dG(QDcO(aRV8S~PC?}Fg`D)l|aW;ceh8f(1~0xb8ePD z0q-may$LQTBRyd#)-Udjd@~tO1u>dez+9^1A?c68KVeubCiFyiQpy(7ihqnzU_=c5 z+wj{!DF)J@HKxCXYl(~3f@Sh!VG$++0%rW4Y{Z+mJ8~nmPQ0HW0sF<}rIPlzM+*H?s;S6-S&w4qqfjGC;UR@ zxu9jVf$^3hfBM_^sk^BbNAwzNokT$ z+_4kGyjd0eT!YyiF3Rb#8%ox`I4~r}?>=g}#LL{5?#gBwAN+F$cy#}3>RqhIH1mH( z@Hsg|T@W#}Ec@xRxbcnr!b5E%pFnQ9y}*fUEW2~XsB=Zmr_09 zD5^y_4xw0X++UwIA5sYo$ZCV^Zgfs$dQy_pI@&B_w+A(vWudO(!xuV}X`0X0;gJNs z)?FD@B4^c#^z6C7DH_=vmF0BnV-(fo*G+HI6s|rzJUuLbdFFMA3OJW5RsDs#Y&kTN zzQ2?KRvd0RaVi7f&xN92t-9O^fK&X zY-?i)nONO0{tU(C@E;E`k2w?7nh?cY8mh|uCMFN0TvYn4UG1j1?%mbZv;D>5xAhVc zh?2z^Wn!+)`B?5nvF+~t_)mA_=Sw6lj0E!S*&1L9RC{jW!P}6z*l|wXX-aztnc0nG z10ybgLk9;Y+?sG6)3}nvDc+lYv#8RfY{j1nv|p65=%yz+&3v-@?~>Km!VN$24MW(A zlYRJeo7bHS>dJN)bX$0GxmA35VC0%A>U1Qaz{$x^`G|OuB4v`@Tsmw+7BVPvL8cdO zR%|X9k;yVedOwNA6+H{i=$$l$IOaEWJxT~}M;SMVP2E6b>Ee)PUWHEJ66t8nCaX0_ z9xvaHQrHGYRk78V^!yqvfrW2$v5j?sViLV_L*cdQgH%UK6%{%a_e=42v&j#X$kHm3 zLaes{F4T==@3DcuE8TKYD6%a45ytlr+9H+bw#Mk?ltG6L+KRz=0oRA{UrXy{g)lhh9MV}+b>bWS1?%6FRFaNvQeyaV`#nxuQM*= zvB5J1KTAsM?DgTFcM$P$vZeU|NTS8_sddI6SE)~H`I5@H_jKsSYDzZEu}f!tpvl7S zCqnE&-^FnaWB@5_mEpQt3*YWG0Gt^Cknw-m1=4Tlt3)F5R;om^_K%tn*`@^&m7Ce zaGLo>F~b|Auz8jeBAd@z3mG@D0*0In_@o=pmF&`7HcF^igtSI9vGimTMJQGu^MqR> z_wH@#5RBQrlXP)wZ?txqLwTrt-F~_0uxau(?16M5-9ki;ihmxyF%7LixfvN8TZXUG zJ>I2x-O-AZrLQVKK?{$q61f$7Q<6Niv`p7@!@Zg%bUVj(#pAILTkcq-1F&P(5Rkc6 z&E-TUI5U`N2!zP2XD;$A3pMR`XS-EH-Q9!h4+r+dGaM+2)w zf7-1nTCQ;M$@1kAjq$pXi(8Ddk6m-LFprQN;36CZPf61mqRHK1FF+b_#h;c#GhZIX zAfh3`mAo3+R_8OfVa-0cCQJJ&m#3V*2wg?SiAPbVHM#46N5}~yZ6qEwQpl7pi=Aal z1F3TQGbS`&jZK~0c%vMe&@*_DF$YF8_JHQs7+zfl5Hx^&8V14!uXK$+{n5_|}P$B(OMuJ`EQe4SMKI}>*5&j~>Q9vkp)PQg$(+{>7^7Q7urnczmNH;=De7+z8*1$J{l5Ckqn zf}OuS@k}D|1hWx8>N9n;eWL^*Mo}{V$pJwFz5`#hJ-`wn z56P@j3-BYg2I)r80g)Qu^^id-=47)!(sdFPXfC*#>CN2Ht?(5@R*)0x=G{s!0Dyr8 zuNED~NVN@fkv{UcwT!X^vbAFFNQ6u<9?~tyE(Dyj6U$mW8Wkh}4y!CBvYQ0D%b1R1 z103||%9!a!*h#!g_3{JUQVNg&-fM&DL@Rs~UOGW8f$uM%K8k=6Zfpzpp&;ok9FC&D zgo7HBh!bN@TP8#NS&B$>+;AR}kB;0^#UDK-zH0;%NKOrsP6byUF|IG!htFg>#NMhC zM*PY+?EygyUMU7NZ~)-ah7O4I%t&D`+?d9(h?t^8icLw-!{kH9ri$}3@TYKuJ9dAE z(>t(~Fk}rhO8QRDFa3_K7i0(>FYG;+h!KhB$|@^&auzd@PfJ_QZH&8fhdMD$Y?_I`#uA0}*Urqmq&?ha9^! z9Iu*T{Qx3fG@e&l452Nrh+S}85v3_XEwxs%xD5C%Pfqi`NXAzNJ>x?55G+x0i~JYS zn^O%2T?1UHl^TfSsPIf<4<89*PhpafJ}Lm|(<#0iekB7)`=)k=A&6x>m`L~I0Cknn ztc;vDz}HWEsuge*35M)@S^T9ykT>RZ;|ooT#AW?SO+sW_pl>BSUShkrhl1 zV^qu{jVZdB8K9u@@r{+T=Az-v+oycXdvw%gu>pdYknYqJ?=M>&x5`*+0yvKYvU1j@ zf_=KOVMCkv4+w0^Fw{bF6xfOiuxRvBP9vN$GEA}n9b(ZjN3(gy2I)m%y!ZfdS>ZcY zU)EHKeO8c4JH$4x?V}d|QR6_xENL-CM9H=BHyrXI_;X(6q0houLQNY& znPMltPiU~4C=3>idBk*KYKT>3z5vbN2T-KA!ag)V|H%CSrxhwMUS=Zkx^)Gxj#MKn z$aAa{JqqNbH_w_HyUls%S~#tzeK?Tg4?~Om3MZzmFB`qqjD~#TgaqHNB|M7pwK!Wk zk1+?t%YP-#a8cWy7^9>C8U%QH`l-U?oKrT0Utn1LV0Ccd&H+i+StcBIkL>3I<}B5K zNkv*E4XMnTh$aAzsBeC3J+)&s9w5;6yug;$iun9+$T7`bGklzlFAcCNfeX=q0;7Z_%@9Nq){j8rBZ$OWh_ z(Z8q=fTKF2U+KQ~OKiv$n>Yx5tEQL77o*}?Z%+w9N~-6P`+npCArcK3C(6z5wbas5 zp+htkg5r7wuQqJRGMS^j6xAPH8Vz5JL`z51LzVtoB_tj*A>J>73quD}E+SRnk(8qg z_&H{#K(W)74L3-u3PwCt`dB2v87ez_q;iI!gy5hfI#ou-Dlrb1Trf{#miRN2Igtz8 zxtNPwzTloVG+lW>xKX^9s6wPsvZxfkgNz@lCbA@KMR5+l2*9FQ;5GX7D(DT(lFl6u zlgR@QqF7~QLmD(sboC-BHx{{3tb8D`KV6AoOj$6G|EeL%W(Z+J0WEaKL>1N`a!QRI zyd~NLMj*RFR9;gnM$?Y^E5P2$7(jS9wxwR%p2GnB+R$0H0stTwV+dhuq5?a_R=`1u zN}-@$bA$~tY_%7u0*;WP@o3}Go{gfd{%{iYh5hpn8nL+V=V9~et7SwUoVFIvMVNN+ znAI#;*=$%O6Fl_32EctKINq%9(6c9Oi@0zQyGYJ4_Xzp&)dgDQ4dBj!dXhkX>Nin2 zkPdqnVq98=v`Xkr0F7{81nh^JP8P93Sk{UdYa>3mb(pDLO8%hK(i0R`So#@=4G~FR z+&U^SCt5-br9~<%0XYDesf#nWBR$I)!H^6lZPadtR~o4glGD=2Bp>pNojY(_!;8Vn zzRyAHFQKfW!d5GS$)=VFLd8ZIqTU_AHG`CHyX(29;Ht9W)1gM z?DXqwqSA?JV_bAiB8S>V^9DT^a+VxW;ole{lW^=>5D^p32Hb&D`aLE3Pa?c{Y)Er{lz$Osix*-x7)^I!9%Z*F!R(PSiuo_L_DBJ!c@0j2f3I9rh{}S-S#& z(W13O!BO(=XJBvNvU!CR+Fx|?a0E|bGYlqaY8HcvVdBBWimeC48W)1TzSZPQ8wAUI#Y|YuCc~} z=$cg~E0CxUli2UTMTI)So+_v!<%Sgt4-O_c#G^}pZ^tbVXIDaW^gBc{Bx7VlNp1)pBi)@HHh{HN|1bzOp`Y$`P_9{Tl5^lB2e0FnFuum$f$q*vl+X zX~I&g$}!mM8n?>jYy$!- z@ExB_zzfS{=df|TjYb5o3o={`CPT}2Y}D62-DSE^^}S{r(>07Ccc-`EzKAl+oXLxu z9C#v|&W?dVfw6E$aY6v<8nqmxdgUCzEe{9?gm-_rdQR#pO)x@gC`UeK)m0_P{wdKQ znmX^DDv=6YO)m1E4}1YJ7qkEI5xlA`J5eb2%Myb-M1X?LLu2X9_ue@S??#XB+i#7S z)Z?{fkW<;!O8L{fLnbB`voB7M%%n*KhFk$tpgCcO`bvO*W7VHW<}Nc4L6IFT%=A5l zyDtDgm|&b?d)QbZTviKH(i7D{d+<#f0rMg1nD|~Jq@L={&78MI0COJd^lvwJMH+v7|GC6%`S+sF?J-*gYO?$}Kk2{R7XrBVjY;Rc%yzW^Z*sG=GRFCyw44e37uT792DZBr9+W`fK`s=9RBNfd|}h> zgSlxw^Xo2Cd^pB5&fmDtInJ@`N}$DO$<->5#Xb zll}uCGypLUfF2Fphg%hwq}bebL@=%et$dJ)OB6KbH72s)Uhp*N(PJSU34>@OSQQ@A zJsE=`A`;*ZY5>u%lGJHviP%OkJz)XC$8nZer}_l_*0GAG7bc@#1wI&K^aY`0%*Xz{&Ak$s9O{B?aF-%!rHwS zj51BsI|>;s$dl46k^tg)&pA#Oikl5k<5MN4g#R=Sj!=e?QBgai#whqEgSlYsPRoC@ z%q{H}YgbS>~#{0HNF+2w`3fv%(UHss-tElOnhy z6}4jI#I7GZ?@wqhKD;4tnfaDjp$S^@a7VhCNNo$1$bDL(pNB(lkMTqcU|jx*v08YC z$XB=~Rv%!6WeAzT+t3dmZWV>hL-DMgvh%V~xTyq`hexjr>#F6zpG@Muybf#_`GIBW zu^)1-&l6+tkM|ykh^fgqh}}NMb1a49!#)xuH{1;f8Ck?~0l*c}GR4e#OQlJ5JT?WL z+R_;vHCnyRQ>4cyNJK4>WD$u(?idO>u`$d3C^}d?QE0XjU8Ki=_2YfJ-ie$RynLUD zhS=SKH?&ye`_Mf&y>!I{uj_$(h*m>w5uVco9vzU1ioeKbydDw+Rno-SmDFC9Ja zKfjGf=Z|~0Q*4bB5Wpl=e|;IagQD9Q z!+%V+Z6+%Hb-7cOtX0&~(N$XL>yY;aW8Dsx>wmKVE>KY(p35diCY;A1KTkryLiG5YJ8h43R+0xFRv^E~qI6_`sOvH$R zrF)6FS8;}hWF+vejV&xa9=C69(QQ37u#(WOaCKF6N0bG-eSv~%v`!8?y+J}aBEdm5 zL4Dote;zgBDgp=sD?mf54wCW|bIWUs>zm3-8Yk4=00?3)N^#76kIvlN0Cx1~OuB}Vv-{RiJdEu4cd^gF@7~Bu zWIs}({$`?|)lBz)xa`+^C1KXi%7P4j?|#$0A+c##ULpz+b?C@>=G+BONS=$}W5$(@@4ixSIg~%uqU4A; z$Lbq4k`IBYtbD@8KGYFVsPjiBq~^*Jd*%rt3i2Bmrsd+Uwf&P8m9)pvv3k!0WR|*9 z60{Oz!^StzB6m?7#HA33{lGzm6`2q0k6sM6b$Zzk)F_U-4PVTV2?;jx5`35n#6m|# zDUuND7$QPW5=F{PbAz=d_eDE4OeNc`%_ApaL@<*gM4T-kcU1G9Q(==+*oZSefEbI1 zh-)<}=D4_&IxX01OEL9GL^4w==r0?l_97IU;g(gNN#g!hCoo70xrGJu>Xm1GVMl{3 zqa(c0n+wMZ;+3>s?eIE0>Hk5wijJ*jHc`ToO?|2g&f6ra>Vd$9t;(!Q;Ga3K@1`R= zVB~KkC`LvcA0-b9X${9~rR|B+CBM-vlSo_PL@Z0>H0X+qO7rt}tUr7rZOD1>yh=Ds zg}nlGJHy(xtQ6rsyQy;fyTfu(m>6t%+{9(kZ)MyMyev79KaW?#94MUlH>lBL86L8s z6Ck8VS9VV5;9xXI+bQ|o9YYH#Z)FK+dv?X|#7Cyw9Ne=*RY9z9jbTft0i@vgyl35; z>+dAEIYQV7!oe3C%|nOifB5DY3XYF69xqqbHB_MJKgVk1tCpf7E*!g&N^|$t)m2uM9M~1M4H?rzp@F)Kl^KI z`NEM0K?EG-$!gUE&bk|T{|7SwPTI|>-(GS2DPC~<0f>uEMEu44K!71)+k7= zPQ?5_uFf$$vUc6pvF(o4v2EMwxMOwFv2EM7ZL?xK>Dac>aZY_}t-aSd=Vx7|`Od02 z-v{Hl2k{6m{3DpG!o?Uo%s; zT%w!0$ozK(vMQFYwi?pPzsa#ADEsyuziyxf`_=P$T92DG^yx-vyWZ!&`?~G?wI;Zn zik4rP&Yu3f?H9+M(rq%Iion!vwdz|m_p#Xm`Gw?WX2;XP!-Gu+bb4CMg+Y1}cziZq zWQRt!Otb%VPea-B-n%Na*$m489dSz10mm|xjQ~F#$bAHXIKlIm* zb30i$%#mQKzVl&}0g((yA2?npP@Nnpu6^z=?Dmcd)nAh#W(P-1vgSGcrC^kiof3oc!D`~%p_!AeRIcyY<3z@4|iV!q8 zs`B)kh1p<=V+>V^85q>H_Qbv=m78_yw8!`LWtF{LF52q->TJp@L*dq8GlpOehLoqC zkzqGIQ4mDS21#QqWTULS9_@(r;@CplD9Un33KLNikco(sP9ST>s(PWEUs&~Ot7+^u zJxglT_qlB^j>M|b?Y0JnTaB;>?#+=Gv zX3deQ(tBK*=I1TP>;@*T9-f!DwG)AaL#-oG%)EIbTme)W(h`K;C&*OV{9hL;zK`A4 z!UHc6G9+e+^|ME=oE=svW9~WA)4zD`Cm8vi}RNXGOG45jp{T{=Gvqj6J$z0cu$K?f9<%@t< zlh;SjF8^MGslE?gU4oa-4eQRQ&!H2U*Ozm~9=Ea@tdh$PyqfJEvugl9Zz{c3hxJ6s z-JVG8HhBL15nk<&zhj9r{VrDT&*A4wH8oXLRk*xxk|pXTUUPOvAw`{VIR>bQ*9`1kW-dLU3PXf)X?rv|twWF8a(&P*H@(uG#)%Tb_o-jq8xxAmr@isK{ z*}8!LRnY4vv4lsfUWY=&?t_W32=#dezwf5pKmamjT~t=D;GI52|q zkd2UoZFwT&s1^LPKDEb35Z!ZgalfTQewLj5ODa~P~fu+(sFx1{Y(|IL>inbnY!M3Nv>_simHlUN#3`kk*t=GO}|A;=z|xs zn>}(ag@T?FrlOwK?{SeQ$KlfPG#`%o7J7E>a=FpryG@w8{gqt10hFgdU9QFO!{DN% zt6tFRe+EqKOQ8F#w^(m>cQ@2d95pVW62Y`}os^Z5&BaYzANOivPMiY=bpC0JWe z1t$&%2YwWx;GUQ|@@`*OSC%s{P_^CN$u4(wcK}*Sn(BJdj4QcF@rL|@wP%I?@$qxt zas7Ik&SMWm@bl*syr&GmLi@aRE-j^W z`aap>d)$u8GFol56c;qTD|ufY+rH`82yflb2oOkw6I&M`Ct+ZHJ?nqz^Pm(+e%yb3 zjPx0_g_$IV6MgL1Cf-uvorR5zX};(B+{G4)4_)eJ!yhv~A7Bf_Ldj$qJ0yg!Wt>TV zJ#!IK^|%~!$_WV5Vc=je($BSRo=aB9itk~S(zD<=9liz&h&DrD#}X>?;Kzs+<^+Ic z#G+t`+wG>oK>0du`%Y#|38k;DZnZd$#6V)}<9|bFyK_*1NVl<5@_fa4K24^R&0&M&9CVx3&92^LIJR~Mk$~!n%DAI{cNPzoq zT``REcMbo%5LwJy24R+r7mZIF$;C$8Cs~ocGLa9BPX-w+jOeAEOT!-~mtie2A-8bu zl)Ht{^CbQFNLoIul&#iV&;N1E@i~K)^6%;g>$*=$ zO%@yI6NUC9;CSmWTS~&jO4dkmc4^Y}Ii3I3$S6j1oXu{@nC1Lg7BM%|a}!|huH+|0 z_hUm46J7mMxXQs#dZWxclT4#HCnUjm_ zW-?JRkFv>WwIQAL*TrUI=!2`(rbAsvM{Q4ToD$VILZjh8#{@%nQ%~s|&};E(5j*$3 z?b5c|tNT@GO7Q*p`s!n`R=w+K4Ra#3=kwK)R?jmV>*Dlk`tKW)$m#VpJv}|5gmKTy zV>jpK-B?UZ$-2N>`9QO?cXzgiZv91{B;i*5rLJnK4w5V%+pLm4_$GJ01^%mB_hz7) zF-@!Wx~3Qy3H;kJa_t-^1>As8g>0^i%Ut zpIOCrAhgA*jK!eQv$e0@%Ly>mGep-pN+sJC$}J!Su3&Ipm4}&t?0AINczzU<2?-4w zcUSNX?4u~>!*NVq0&8gGi%h29Xa%S_VurMLGBWoOJ4mFrc5cTty89y<(FB5^t{{8G z=-c=uQ6oT3-_=HsE9E4G#o|gc#M@gPMBl~WFLYNtsZ23hBm|yS8qV|#B+dhp0kM8_ zuZO3nmZm1JQ(66u9?y|=+n%WsBR#<1)zVx92rzRjI>1GP6xGV|^4t2GZ@1&|G|<(u zwl+4{+f`V&&s1Y8ZvU}qafyS2BPBI;Kn!0%XNJJl!`hm+txz^5kUw`Ol4W!&1N`yv z&C~O>1-PodcX2NCXo&$B1w78`?Pg;j6PNJN=Gr{))bG$AN7$#=g`W_P1kq^Wb2^ju z=g*AKtLx92t|AO?|Lu>XR&7pOz{%Z2CQvKR&VG3KCM!D*KOsY`j&!vZK0(5f>e=bh zg<~mnRZ?zitYXBvfKTU zo~N@3@gYco+P6neJ^te?$2f;}CCvO{s+Cn0im!pMm+cQ-`dGnF^3GY~>5RMS@m2~s zo=&g+XaAV#jlDfN^1a&*H2>Z+wMrl{1FrPx>A~eih3kmP`%zXuhsk;^QjxFTW|P;| z`|EA{ZHo$;0qRHj_J;3Qk#ypYIul1Zw^H=xtm4;UE>o=6^KNLXmAC7303<~c9BI7g z^;fK8seJct2p-BD0Lb2B_}Nw0)G&WIcKO@F<0##%%uNspCX1>)?dREfj_>IZ5KC*d zcQ9tYzb{FS3-6iLUiSAsG6YRrUtg9BW!TBEZ?E{-c%|Lv!~Om^O?0lLWZ+_TJ*#D@ zq{Je3J<>5$4owU2Yuo2%X;G2MWLkxtZ7be=;Ct6|o?C5iBe<3jgIx*>;FrM?5+R?G z>QAL^$2YBG1))2bJtjw0>F(~3IHZ_Z2Zk{qr!AI$pQO<#4lyyUw!4}uyS+Es zZWAfwonHB%U9L@Jb4dbU2iuQx;MK@t1b<6rlKokRKKDn*hOYrmknKCF1QD<(?tZYUJhj_EuHkp1XA9JO0F->$C_6ZQJRG=Lgy&{h`EALggdQ$Q zp~!8vwXvE;y4qFqq22Nq*{M*26{xk>w+|orr8rFbEHbu}NSSQUt1Dt=M};0^J5@ew zP}f}E&N+)b^@F>k!C@n4>uISZq(qADhpG~r&)#$2w98}_Fenkg!LOpKBvv5BEwAJb z3e+4ecbw*Romr~hm5Q?$cEM)=51(DJbK4(&#MbZP!htDV*|$HeecQLNXm!2Tdzi*O zv)J~q{B8^#5-g28I~-HdbvI7?_hJ=&YU1(j!`j+9m_boo9Fi`7VoIyRD5TN%I)`Ar zWjcesvi_DS+xlWgynkIVDzNZwdN?a$&O|I-PXcB7VBL2068K93kIB%tMikSE5S*GFRU_InSbPZ)(s>K%u!rQmE*CzOu;Eq@3$zSjJ! zxBrhmh7}i7bUo<}m0h!V!9J;u8_mBEFiZ5$Gb+KoZ=4_l^}c-5ge=;Qky!NoFa4G? z{GPY{khB^S(>&)@bH*b%zMpc9Gr2H9H`df6ig}y)NW?-4y$A!-<>cWI>lgW-dghQ| zs4I7lj;I4Dh_^|gQ>Z8A_n4UV?bS{l3F@gUWya&c#Jd+xKu{1n1!4xJj>hq5Qmf4> ze0hJZ>9>lsJ!k?{g4u6-W}7F?S2FI{N?b>SFFmY>3yT6cpQ{H)6lBuP>@YY20)k6x zdKkC!rD{=JL+%)2(8E6M@1~}*BRb)HuqeS z?ZjJ7yx#3F7ZqI~(0^&z#`D@=)L?4uV;tM>3(_E3Jiu_UfmavNUon^O`W6%g*$=D6eoq7Bh1{D8S;3yC1K!iIb!O+* z#tjkYq}qrDT~8B+PHea?T-a_#)T2vbmCy|pwI5uW++ZbH<{S150>JUIz9Gv&TtJDz z5+5HP+FxH@o}QeEbb=~$6m~!Ee1iK6nO~eZRGxSNOR(CvB*Y%i>8f1#y4|nUDJd=A zWw9EUb@lZ-ZMQ+|3#G|B*LX{^`JGq4%kuE@0-Xdl(^<_T9OUu0L7%2FIrV|Q%~H?s zwQXQ?9t-g2Qdvf6M)jhhNbNd+{{H@r28Z|A2zQx`d+KZ$w}r!>}f!6%K5+`_il)xPW34Zuh{;d{=QscS&zy1PL*O;aXFqRp zQtiYd;)QI2?}74+3fo6_Q6|{b+0=%Rn4S>O&#YFc@AkR6m+&6ZFuuv#3N&wZEK#(! zv7n-56e$GFhJUcRSv#rg9NlBhZLhAX7{@TJBfs!r>{d>Svf~Q~MdjkaDEx7&#I*yb zxl0EJf1l%ZQNP!)C&kp@{g!fG(>|RUnTsbW|LA|_y}0sARV~Kns+?edUgNiq_`~OzMb;ekWn8f6H;KgF&##rcKx2(cS>kR1npLv zquwJauJDmrR=B^zh}Q*p#Y zA9<1%S3n5%PrPcxXj=6uDmvN-(L}KTfzr(U?!9KrWMi64ybRlp!;*?QwOGCfVq3TO z9B*D%(b^*PQ~i&-t%($RJYJiPn(EBuD)&qegSsV6eb<-6)B)Z+$if(*mP13-;l8;! z6mXNjSDVS0rpr2xQ$WMz#?{7O^YphY^=@;dRmDd$nftVpp()iB6$R1ewV(bdVk`YG z_cD=@JUl;@!EjlBJ+#^H??_&#TN?TZ40A?e>mgLfO;6Zbl=bX(D6(<3iiqu5Bw?fp zrRcja0=(aLs7j|Z5W9H+78_Taojg2iRP=?g$Xt_g$%n;TcMXbkJ!j3!dYOFo@A-ky zP;Z`*@b|Z7qCp7-0TpBD>2_yG1P5Fd@YA{e7Eo)nf44lZ%>+DohwX33@^^?6|P)iyNts)Vr7)WI{Ae2jXPS2IeaP(`6eFNT8e2PEkp}vUyEQZ@txu zZ5o7E)8q2->bzfB!C}4Wu@#k`jfhxWI9#BX0|OB+`)xuA&D>?wBQ@H*Mh;5%!@q+k zMtth=h1uP1)uH>aW;n!SP$a>$ar5Z!fG{7BGX8hlR}c+reXR}|22UcWT&1)Crq^*3 z;9U#cf#-{5Ei5cX4-;e={41F9{fVOcU5Q_7blMXx<%^73v{%JUk5`j(k;!^HyBwZY z%?eTc(?&F^tE)|RB`J2DlKc9aEtebGy@yOAp`gI*IFb1uW_4XjU`M6l82MkRNZE{# z@#>^le(xHwlqHcR+XEhz?)Pv=amATIW0M@_K?+!o!0T^@o3HV?>aH`l-+w7fkC7qs zH`xzBjfQEmd7PTcGH$((#jZ^iuAai^CZk8^9sOl*Es;*=heWOpy1<9 zPv|ow&YhjZo&2@A!jb80&Y82nrC|1v6E1yS?$M!03Aom~lWE?jrc63`TkfU#`Jh?9 zsaFt@t_=6RZ}*05RJr>NUrG3bra_{zoMCmi7)WM;Y{vCS7i8N*6jrp|XGMV=PFuom z>@~2{7$-l~K_8yRb$-*MNjulp&NA|Fg3t=p0MUTSU%vLto3@`9r%r26ls{cB*O)z= zirr?!ksjLY_Il6FvIPq(ED%`e^@X<#-5y_NfHQqpABVm>2_d-lNOCmk{?J8MK%&l# zzf|~`d&h$&#Bw7=Os?Z@mGk*>p@7}xou!V#@%87u;M^fKH8qc_%I4~-&r=e$hK{?b zndHc{^}6lL0i|TJ264mHW^-l^Y>(sA;smXP8tL!apUr0lrW0k@n38|TGE*rj&C2#Y z=PY3VKE}Ug+5)tG>NreM)*Q9EFV|#y^LKZ;UUfV!X^$wBRcv*K`g52qU7USDmnaIF ztu~k{+5Y24Tno6PQCP1oFZa0}0tY(Ra{{Y!#ttiJ^<2%Xt!9kDgJHknmsK9I-AUt3;GspTa8jM+k$&qOv2F||#b$P^-_JmmX=&=GWZ`Q5Rc!HnRYL%Zi zxyW8`HJx_Qjw9Ftis;4{DoRSDbs{=ngLjsE!R~?|V_(A3yGM#!K`z5YKsPiz+qa8= zcE=~8s=n9|JD#mBRT%Z@hYiOW<`cl(V(lG6v1vixG1FvaW#zH1&r4akioAdCouYR{ ziTk^2&j9R@#&uT?As7(uGFn{ngOnA&*Lt@<*lo-GVNNm|DU5;v`_lQcd3nu|)ZEU1 z&8(THUW@0t>sys$9#SQR!bZ2x$C2yykb}un6}|QBVjWy11ZC%QgJI%pl-xA*c{U@WU{kI&19$Yygvg{@Of0<(}s~@$ZF_ z`>rA7A-mm%Q@BvLD$MP1#GA=nlY+A`vHVXsA4^h#D{JFjpx59m-QC%{b)Fk-G;3Ff zsrmsXCQhD4_UIH+C^1-F;N_y4CzY@B|5N4uM_~Ss5Y}r4Ml&?)y!$w6e>W^zlx@J! zR(a0fI&-<&=Pdx9K}f)aee$)fvi92S%i}L6z!{rTsjk_^wS#*btThDKddAxL9ffgW zp5-V21%+CbqgB|LCc#Yvomi&OYqT>&h8{s2)Ohzf*7K=7mBVj`4v9Z<;&8c9x7(G@ zx=N@BJphy7=1wlpC#HbI=`&NqUp4U|K;-gRb!Vuy_Ved1~hcVfzBi*E*#C) zr|j;xOo7{QMU3cgjjxBxap%+NJOrJvU064*KARF&i0{Ri^*I83mRD=-&=WARp#$uq zV%nX*76yQwMIbV;rLxg+xkmT?ST`tdJjYC0S}SHEdKsh$Luls)n}d~k-jFrrj2MSb zlW98!1_RDc4lI-nicI)PIdV9b9a0nr6~Dq7hw~TR7H6caOu4bWFo^(H{5eyIfQGjirQ;^-v`k+;f(^fBD>Rs;@WCA^pzK^G3dYybEc>dFB>0{Ds%uP6HMLi9@q#z zQs?poBV+BLB`h0C=Dbuz*?uqdDyr7si*&X}D^@c;t~b;p-t~1^8d^}qDR?P3zeD+h zqW3!o2;;V*mK3am?(>??n2y;7VDu&KB$g(IPPiMJXlmMnU6|G4v1 zKf7<*ERz1La4M;95B@_Xt)&HtR&aqC$ry@ZW^HsCYniG^w@XXkTTQ!na!urhvY)rt zAalA#?Urd`Ci%A@a$<0qJiv<{! z1rV`Y%Ejf_b;uyYieBOVHfOt6$3XDFG?rZ^FeF7x?#1n`oYa{Y76u6UKcGR2{V+1w zq?1=2i3?#_3SBE}4)<&8YZVf)@hY-~_2Ur{qKnYKSvLN%#8AZM?l^Vc$_LVh>Th@> z^Kd2M`^=sKF*6v(RJOt-fnfor0VH?|=od(}v5ty~Y@u1TRhpCyF3%tQx|?B3gbv|D z$8b+R413LU|!<5{(j!2T2Imc(}pVm zE^GDL_iyfVOg^b;GA7Xd(EkK_m+RpD1^xtQeOoJ(l2}1LK&>wY4jHhx2>qj6%uw%Y zx7%~hnY1wAJwPk~J>i=&zU)B;`?*NaSF`1oVbq^Le+qoXNWN_*nboyp){aG)cff7p z1SEqQ35v@#{Z!(mVPquW{e@q&)pS2Sa7*8Xh;catkG&0K9xIi_6ckYUIB)y&;~5Cg z`O{EQ8R7?v#0T{6MMNm;6RJQCNqF^aN8;jAvpx``z{?D`v^ry9rZBZ#0U^ZZ<>xis zefzgv?{^bf02O6{2bbzyA>C)@EXUrJUAnRTL;p=a*u98&NJz-1 zbH`C zv{d(fG#!dmW95>r#J+w^@B7-Cm}Y|)H{OwaC{n&hZvbAZTVQo{+Am_=M%Y+E$OEAR zxFpG+=ax5Xe#9dhr*d$3(0Y<9LUh7qJ3bTit#x~nEW(2YD^jK6ZA<4DgBW1wPM$sj z9LF#q?U-4sstQ-hYHFd#M0!0w{0@(wA8(nN7I7v@-~C2bTb$ntV+90kx9}giO<4|Fg`illaGQfWq!29ui9V9A}uEaWUDcuZvgLAN4wDq6%p4+{WicBOm zmXa~rKRP+xU^W|2V&&taVwgf}f(PPM=1D_qccV9Do z9KXD`--nl1(7d^kRgjTkWuL?p3H?VWHblz>vYZokw(C*)P{a z@o^9!y4*O#qnd!@R*<5&6{k>28S8Cq7145zpMV)Sjs4T3`(u#4x@Ci3o}mrNmhZ>=Lt$ zNvAar&B1O2X$8(;upZtU?ZA-sgq2OEt93b64?Lz$rJTeqdpaj1q%_9^Zu8rLX8fU@ zVxTzesCKoTkX7K7gm5af7& zZz$%;h5Vf*j;$ss%Rc}KwYTI?=j`{}oSg9nhgUs)NBA9ASEnB;Fz_^Cd~!sdW{cVf zki~aE-xbfhKh*q}mp@dY^^A5(2f3-j;(3WBUZH=-!ZZAY>GLOqD-VB_@a=ghR)q_O zlMUKNe0q=zy66%q#5oW1H}iXLZ4G1Il%ohInab=#v><>0b{EUZ`ux}&Rjy^JT@ z_PsN7S-5w#UYAqmc0Rr0r8P_0ozBb7ool(>23)Rlh+Z$)41>dL4Rr|?dvAop{gV*`@%B(n}Iq;loaaZJ%&QdV(1QQGAEysOQ1 zJIT+<5zw&`%C5_fsbcqjZKsN@0%}hBgTfb%rz8J9LW1>)k$$^Amm~~=K0Ut}pO`qt zz%hpy#MH0pZtOH$%4#RL+|&o$TZW;ip;M}^mh#=Nh!UelgitDS<1vNtKrcaVpJ$Xt#-0b3U0#vh(p)b%Ll7XT zuuor8?D>91FxCQU0~Cs&tiT}lD_vW#yEgxFic>>)_?gcJ!K>;spm&SExcKnvw(>1b zbFUtP4k5gkw@SAYDHx-1IWST6VYqyvI=8F1qT>D?{ukB(HpRj@s)GR)M^C5oW=OQF z_Zy?*rcLBxOkNmdeA+_ezHMtg`nkPl>11Y9589wIlh~)E&lbQ~!`IAAPul(RQ#Wh9 zA2r??F|=JVTVP86M}zU-npAyHOxGwj4_Qw<53Dfh35Fg7;hM5K1nxMRw+R}q@uKo# zdR#>#g+LU%(@SwWC(n;xv5fPZ=d|>p2LUi?+>ThJZjz38ImCE)8FfYW9enP=Lvb+p zzcZzaW<~Q=?3HL!;C*bjYJI&0ZHJ6*33y#dZMPjp2zZyOfjQgPZLIGF9UX$Ri@@Wb z1t*f0k;sS$-^cT}Ubw!hrh=}<@_0vnZoO0$E9R)zfdOO^ddDrw?RnXFPgK;^10tLq z3_?bA(kL)QKpi|^K;yqjx(C+!T8Ck%`4M zqQ9wdyR%HeVTMWd_+A5o;j#UOqB%E+Es)sRVFsi&gA0Ki-rK+JGrpgF+h3pY!1~?1 z1|T3B)J4>WkJfa#Mx@uV0o8YutR|2#Q>OY%n zy^Zv@K@Bv&O)!1rbqy_K-sAgx-gn)2aSkJwBpt>81r?Ty6pwOpLn`gJ$xXd4+IU_b zD=G|s-Yb?hH!>HF`P{Aire-{6J;q3LKt@Rk)P$lEGkp};d>^PTE2}RrxA$cS5Bdg@ z00Unt#s?*Q>caK*#ytvSMr4`x>y%Rb@X(2Gr#LsSYZzZvBVR8H%<4hPpFvf>HPr@Y zr&1j-#Ro$4XL%__U#G*?_wj1;ZB~btjz-uFBFxSv!MNVAnes#ZA5Gc6Gjgs%)VRWv zLms^f-28e&E+WiQe20Uqe`|1qK#nOKn9knXOrA^TdRvE~pt;22oZG3{{6OwCd>^wr zfqDozax0g-ny3~}tK}_z`KjuxzTP8BFiKhLQH((ma~LPuaoI?pSH`c}hAy1or-FGA zjQ#!Y=PPr!hvMW>nv1QkyVM>r2yqS}1FX3@3xbO)iP1sqVPu~h@RWV40}+%5w#7!f z(0&86WKr!LuLotgFpz;=imJKQ0?8~KK>!?T{D+*}-sM$+qVMYhj4YKTvEVzyVPg=# zptAfWKa^;vYFU<1_ou#gs7`2?>$#agbi^QVBZg+}kIxFT)60ckJ%w-ejgendHXbH@ zVQXn(&}lQ@Rny>HCj1;?y#5%;eMcX$CRGV0RemNwdM}FMx0c6S0&FgCI$t$8az&$& zl-8FYc7C1PI(Tg*Gxo$B4ep7{3Kg95c{ z2|I0>m!RPT{l0!6Ke-(0j?$} zuM}ybF|6MLm{)NNfq*R9WJByr%Ml#)Y!H;vlx ze^Ti1PEv{3p?!O;TaS1^H28iC1E9C*@qTCv&#IAeo?RI)x+TUt+*x1h;F(jLef?gy2?Iu%VLuP-ZW zP#5Y#N5na8(m=6aUIXaU(DQ!0_`SfG#g8q4LP`Ei6EYKjn-=xJ#*vRQ46=(rOaT#- zUZ%lMO_fPzJMbB+(sVdle+kPPp9gc4-cg0~I)c?*-pkW#qR!Ar>R;>pJzRA?8C*ND89#nY zqb8qSo(A1#2%0gdY?n-F8|adZ=7}q>t@!jPQ=r*rpaj@e$+TVq_S^0;<-j;3=`j4u^S@4H|C_Y) zfnjmCq?~I86!!RnJ1qUp%; z6}QOx87l>nQB<#IsUd3caGcW{ghenhFR}8GXwn4SWgOu?=5OpvuK(FzfwQfBFgw_~ zi#BOHO33M1bbTZf*YOaN8-oJH|Cw~@4KH5!l2E6s(wZWJ>t(KsIwA%3nLYdeXredr z9MkR#U`U2l@Le=!?q9gJ-Y;+q&mKNZlekQBf>~FUiJQ4bmVYc(u-UdLYZ)8B<@|jzSvc1 zXN`#@mWh})4w*QLPj2+5ARRgPJYYl6?=`2Y%&CW@7jqMw4kHAdDZU-uKh{XG2x%b2tZ;-7k=kE^=f<_{;ika;+Z0J{ToqW51T$_J41|c= zSQ}G5G#QcyEIE96Qp98!1oezfkni5V|0CBQK?C(^R(#vLG={CJX_DCK zk=RK>#c#i;Z=6??!5U6THLa;n5HO?`3p>QE-yr(wLVMjf;U%$OT&9WOHD7IC6O8A7(CTRdUF(^9LrXd zkRi3?=fM?>e)KtqSo9|2t>#+Lpo;E|r`*F0J6&2)QpC7=+hYMw#%nB>T|uXiHa+Tc zuo_pR=xVB{iAIL_0Q(Wj&}w|ZgRgO0IT+4Qp&|y6A%aVi=mEVNfs8B!HG+E?C{^x`e8@fybs|1C zx&;fhx`mUD4$&!o81b2cbx_p(5;(XJ#eI z=#uT@9nd6<-n6csh<@Q7?qcpYqDJ$w6Zi-mB_r?b+x-qD3Xyg5y24m|P8rqVb0n#3 z+qe?rvymbu-ckM}i&_>hQfA>Gau*uk8`@X-L?`KT?zatX2u=TiCn>aLiA2%@pkyY+glgep*z^(cf-E1FmUb1Xf527fj|8 zR00!LFabnTA7f^|sdTf#2Zx0_o&50!fpoJo6j7~1`3a@WCmGRj8#At7hF@5(0y>JD zhc9*Uw<2vR+DZ=;Zcwy!bc=3Tw{@e;X#D;@V?AkadjZ`y zm{j*d=u!qQ>hUMTwB=25EzirvZ563f+zTw=@CheLWg5>vhLr9z@yjN^&&=l+ncY&> z#-(}{Mo0|VQ0vg#__wgQT~&#zbEM1WiYW31)a~c8uJdeSOA4H(lEtfnLF_*L5*%q7?HuE+ zf*->iM|S?-!PLl5ABkOS61!}?+-a^&lEid^O@b59l*M%R*--2U@~!L& zl<>lX#3sPFFtoZ!YYEBHq#bFCCW4KAwRV)QExh4Oa+B2 zrbIm|`PebIt2ji$$e?rP2UQ-92p`Oe(cs1h{$tR%6W&oU`{b$Jo$O569O zwL;3Hl&guVUosANTy!W%*u8FffCljj7m8wY(Zv}oz3(h{!`MF<6DHLMS8z?oYSGxP zMAOFwE3n8^xSD4qUI&tS5}u{+*q;o<4~4^7|A_q9@eK`JAh6;ZRI+>WMpXJA7QiaL zLO<6U#L|FN7A~Iq7zg7r^%*58S$P4{p%GtcvFbqZNa!% zKn1T%1J|2-=36iUqBX(l2sQkzDQHEX={{|eI!BF;J;Wp;0T)#*9{jGOVr&-QQjVAG zS6%*DrGL0T9QVSNc}N*TwAd`sx2*$ZKdG?;U)*qC@{fGE;@q2(GX}}2UUHgm;pcem z=0JX_g+5_fh8G&oPc*gIgsL-S6l*k6-@zj7pJ{w*Ui;3;d8%9^340HE>=7i=2GZgm z;w=2-_rCyt{x2Du7zA)&(B!wN4#XYjdu9ⅇR|JpzJWwyMF}%rD)V$C&h^t=$f#F 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

; z!&`(A2H!zW90B7OMXIa8Ux8Q44t-K+B1;@k+=OO;;)0JzdmiHpVH3ePejoZwg7@$c z75V%vP8Y+gp|U5jIQj*chb}a?%*vP=bI&tPE1Ib)=WU;RfeJXB&&3R`SUe z_4b@{kw)hvuofSA=jpI*68A{YAJ7WvjiML(eQ9HM2#5cb_En(dY}7P?5?j=uAU5-FQra#@gl!I%~^=SD3o-)WIW&BP#=TU&P7H+&EZR zQ2C!)!+?SVCdpk>-vmPhrF5KmdhuRYLb{T)Fq$^T8<8^NeS3$sJybuD=COJX<>{GU zjzgEL3CSDP*%GfXisOLm){9n3u)UlK0=Ql>W>U5mZTmiE9_8R^NS|pJ-bjGz~N^kH5V<8DPytWgDX2Bl~2F>aqN4FQKaqZ8hdLj>D%NLRR3x2^%$dOO

>GerzqGwM#$#F};dG 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%0Ax#B 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

VG}z*By=SVZsMpaG+aRm=y=AWF8;M?idA z{}U{FRl@I-(?m*-5}$|g{GvV98(Q7oGxGt1ih_YD>qUO>OzC21o z{6;?xOT(v<{!bRbB4YFC2a76Bs4QG41ACzl214hkB>bkLf*vHz{d;qB8H;JH3n=QK zfodWW(LU*8b|~q%eoTURX1JcCZ*DNQvPH6IAgWl_OAdmR7i-x3N7qn-X_sj^ zTCcV1P1{XnR|KDl4^efaqB{^NV@&Rd62@HUM(%qjxRW_>SN`ATvqtf)kBt=Ba+9RxCn1X3Nm)l2m0WTrLd z8sxL(n%%KC?}S$Agjq-hrtYPigtzXF_$g##Qvz$n`<-KEij-H^IcWg}Gc;31qGWuN zeqU=PAZ0SUl!IBk*@=B0Z3ZqXSv16=j=L0OPK8tYDN7gVPN3JyR`Mw^VbOfRb{l4c z!ZIobq?^PL}Xlf9#A z!xm4-Nc0%TvLQi+hHKYec{h zK>4GW1O@en8IfAmMGmMS>54J;vQ+=181F4lmSn+d$QaQ=#1|ucE=Ppo_)9OQKo=KX zUmqxh&Mh9S*54n$F9F&YvWuLt(jE{zz{*oQBgO-pMXd(of1gU;p5kG=^qlp-&q-ta z59s$MBAdR^f3dMvbIoEfzRIKigrX3h?UdsPw|zWjk9Q2e{vdw5XTZoNCCsygu521n zCv0!M_!-l!CmB$6ir$ASJL>CB!vfK2)E{0pI*g@Ep#}jj_6Uq@N4W_UAo(RI6piZL zpw>b zY#2eEmCrs`CIHP2h9u#~49e{5bq(hbg#nG6t+*dgvP)Uc%#p(;fMg-5q@%j%K4c68 zC-g)P51FLziR(JM!G$7npju<7o60hVmWiqjYg7(XdTbn0Zlt!Epz!~_N5Jt8_~z*q z?-;Bs60bhqX$`&~B5V(Vu;bf+=8eflz@+WB_3-wnwYvH&VzLbykmx4#r81cisaFaV zF>yg=+6!5z;yT18W$CI`4f;%KXFly%%VKENN9a6kUl-4O&neYG<@fOmy;{x~hD$ag z3PUD`yL@qu2`4@u`)ghw8GWz#1F#GC_YPB4;2*;3^Z zMy-@xRYt=jdC^`Cn@B1CkoSG^kgz3vB#i>!L)q+&wbO|k`xi^GLlq8)Lz7gr>E4q` zQp}{5LGZdQs95$@PU>)1YG{vyCoK%!+E}CN{eH>@uG_FMl4?vJTP6*3;>isl>^EBb zP}iZR-LMBLsdEK9d_s(h8{Z#J6YyB)#+euj7oh$bjD*oiAfXeC5VDV=QzAh@&tMSe z@`MT6I{RM9NJ1wi_{d!*j`nObV>^ZUC5cwFLCsqUieWaG-u6bNQ6=qnQliyI-_BZ>KJ%|%$<%WFGV{YEZ#2SS%B<#<0|&+A<$R|2e6D`26o+kGWc7F!E<74O z^(i-gj;{^TaB6Zr*=|N{mD;8FUL++zqu1Ee4I^qxh6EsnCD4R4^hdXLD~8L=$A)NR zG5aJzY|c3A8-LC_gBYDlKnwZCr%W%K05g2J+*}KnS=$5-%c7zr!O_N6f8St`2IW2;C}i=NP&8Hxc! zR)$0Sh&)eI+kD3%eS^oG>o(2R3izvjW|F!Q!bBx^eCe>qpBb&;X)hcULNGEs<9f-3uDLquO%8dVaL5K(jHG3?QO`~iwi1x zS|T1VPn^Ox?7tW<&Sc{8e>dtiXE}B>PB^p?dmKB@uQ@#fVa7vaH8o#_c4pL>tMNF1 z!~VmqZLQEwiuw#XbXSt4f(L_@HoKgcYm;<98d7h=Jl3{&H2Ji>8Hnp z&}oKcUh6?=*3FV-Ugcq?CU)!x$vgl?PBQ=XiG;khh{xpDr&kANYTTtmA zQI#QnXTJ2kC|>B(>+=n6I-BFm(@xcg&a=(v8(pSTMC;ZU(qw82_KT z2wMhTJ9U(C>#rhb-OxqS@h8)bM~clWF2m&EWQq=*_ZCEx0g%v}yX$#(g1-XkbMA*o z{j+_xRHB~(x%?z+%2kNdA{)NDp5|DNXAUqPO%_1+Lh;O$Dd(MI(rTY2Apr%YWxz-& zVbdIkW&1-x;HN+C^FT{noaY8CNfK9*`Nj56rNrYViDrv2y~(`vl)=HwDESz1Mg2dF z$q;}!*yebu2)=SS3~|HuydUCZWYu{uNAzUAInVD~-8Y;2kuP6nXD0-2v(KCILCZUQ1bmVU2gck7DFFJ`xIdqCdj$?Dg( zpdghNaNFOetTXqRpDoT?OHKB_mc2G3X;&XtZxK`W*Sfk|;yH!A;pE6kc#-15>(Cuy z)Uiyc>(Jg@7(zgW`YGT_V0Y>kjZ^8D56LT1746HFrIQk&q(tnS*BWj=>qQ!dJ*RAe zE)O_@CcT4znPfcfDYmM{iDWD|11i{yAd{XLaf2Z75bptfS|Wdv%o)g;wGqe~h%cu* zghHn<-JdLwUli>b!~A>!Tx28yTyn|NSRu8ms}K4(8qO(EH;UGQhM-M~Bn?;%K+qPO z-QYN`a8V4M2E~dA)`Ri;#Z7=&Wc%~YGJ;j~w`IpJAxA~d0(2e;0DW5}fO1eB@A}s6 zHz8mkp}Zq^>*)>gCnQ&rI87F%2Q`RZ@R918%E8(#IE!sChK&9S&f&9il<#dN{0MZ! zmrGE&6t;sF!bB!P@R!N1)(%^}*~+B~Pa8oU8w~;KVMVl-A$ewo>#M0EmWk>;{j%+z z9tTf0`hN4D-_NWrDZhO|)(8CnsU`XGBWQ!C*kpu(k z5$NmIm!iDff_s3NvEYPpA_mD$3u)cEx53RO2T;W+Z@w4j9$4J7(a>tf_oM5H02Y!k z2Dp1tmRiq2X;&T1g2v=L5_QmJK@1~a1lfpIZ0RV%Q0hC$Ogxm?pHLB~sl48?TlDKl zMnW=)g7%_BO-OBQ@_WMB9i#|Jy|&S}kwUX6`b1S20x+C5nC$OheQ3m%ok*DAq<4=S zCc+v-(Qtd+5w=jsHf7LvJwn4vDTFZ&C7A&h9G$S{#~}kYyEb!K-lvC6OI+5EEh>cd zQoZ*3k}dfRTsXrCL%Br2jt-@{?z+R}kWVh8mqo7PKRMLs&lAt0U;`4;z z>$Rbe(s_E`i*I$Yh5Mhaw@k#=U7mg3 z#LSyCJSf5wg$~oux?G(2Jm(sC{g~BtPl$G%_jHiwNg+6sD>G3_WOjnvbtffREWDwf z_mE<+`Nr=kAqP{sN$K-qpvzvHG_Jw{oLcv3TP0A(=m^s@(ckS_7=RA{c-={?K z#3iy8W~1YyYIg`k_LI#YZ$7Y5Cm)K3=bfNs^n(rDTUaB zaa*2r;}vZ9@XL0hlhS1%@CSOYcO1c6=%iZpw8FTy^ekk)pE+QTHT#oQ(bc*^=!)I& z2zJH@J}q))=_45hVza0Rk~yOB+@4FnjJpAMRN3*{WMR&&9#u1;7- z<%_^TsG+eZ;O?ah4`fO5L%oirTX)uX6Wc5>jjZn%ypQ2-hCq zy8a*kEeBK^=uL#cZ3Pz%Ad^6K<#3W!uLGvm>u(MVd>->dav9k+j(ft)Q6JVV&WL=Q zx4GAaEhaJ*!`e=AR+$Jld0~Rn>!F+uE=}!;^ZMJ`5}67Sf-cq>JmZIAz*a{NTM4qH zUj2!I??@%|+mUKOO+kkCQrPJDg5Ws#Tx!4R>e?aJe62#+7Sc`B8S@nwt-Pvkp>Fzo zRmnuQ1rLofywMW&iBMkHnl|;p;BxUxK9OEbPhv#*%WAId^q`AY>dxCu`bkXoEF))2 zn1S^(APJi$Ki?=ED^u7y>CTG;JrBMl$Z-8tM&B)yM3ZsaDDMm7yHwl|-0t3WN-_j| zLKsGiba)pvG}JZG^+2<6SS7XOQA@;jqbjs|$t*q78qcNSnoAYh!SM_c z7iK6Kbw+bc_i0doWk&evjqC3pC9Hsv^&Wl{mvNiKwaD8*_$&}@zm(1Sq@&-F`<;*H z02smfLc2BDT|TH_VO^zp{gb;RrDbB)NK~=Phj2UQ{dS3c^ zT7`~_5k^w)eew=WeEq@}w449~7I1PzxbAXr(35_`sQJHUxa|#ZiDfwh{xh@ViR;Zi zU3;0{Tetct{5$G?%#k>Wl`fEtg3q4auk0+Hczve0xL%q;%NoN>0po497AO z5sz$f(%QU`TTH&iC_K`P$T3}ifld)I8!Z)mboTM*Gu*A$Sjh7!O}F3-;WHX|Voxx8 zHoC_B>k47844CDxFaZh1%(K#Ab;WCP7m7S){iir2{Q`KvOQ$A?NLwsjpp0oKQh7iZ zl@P3gXNA>kW0|YaD{eF?iieZ-<&;Vt+m}`Ys|kudP+7I8uSIR-K>)ZoS?wyG<7r0u z8p|a}GMHn;1&1DrkI6DZQQTDxfFaWG8j3zyHS}w$yn92Z-&P#yKT^o~5)%j^Dxb=DABUiSfPEzcA|Lx<03P)XyzH_+#BRd-sQ=ICb% z#%0{pRLXO8EZUNV27=0li)?3WXp7Z(v%*!o%+&h}vP8VO2XYVziwBaJwChCmtFL7b zNq%xpB-D33FL%xI)#)(jQl^5{Rp5b&t|GN85+?raW@J;A^#AL41hi~o835cny`#p{ zhtm$0ki9a7C;gUxoZ%yOduV8VH53wg+PW@2UfH))d1#$Xqs)I`ru5EDe9)!@{-pU8 z(sj=Z{nqBBqaC8=hoEO?ebY(xZ>8Il6KY{@rtT8lE}0(*b_}Ux%<3e#xjrO@)K^99 zyQA6f9{WfUo(&#$I7hYP2m)6+I($ywxz5E1*;d(lGy1Ud?tL_w2|J&u%(?7*?R4E6 zlj}2X`d;-d39pKm%7vFu+A7B0W>;}$J_QIm9p^i;%WNLj(ulKl;Jf{^*H7L+UtLl8 z32!<5;-YGL_KS7?&_*~((@uyK5zvH#|9hcWsvw~c(^BLr@E2lza-2Z!??%|1)lN<& zzIP>$4{_Q~bQt03(HQgQhy8M@mFuXwBgbK*MdiJ#|+pHikMs>^2W9uReWp zSI&{PocaVwxYzYa1iEr_3lkdQaGY*APy6Vpx_}@$OuAUhTnT~xozdGHb?G(0Oxkg6 zRLJ5kS<*lKt3=QS1C*VyaT4GNTxTX7PLw<6?x$1tS^>SXh_&B=g^V&b+)em+Jn`)I}mbCv7 z`!uDfHhjXgOYP=|3JiLMhKogf#0+ zPy<%Pvl%Igx8@p33RnyP!r3TE7@hs{303Qqn}uDdz+V(|b#j*}0UZw&vbnq^QX4cU zM4u$ftC?ARskdge{C)Ay$&G{UAK(2Ti2*RajKzNVK6AZlZzhupGoAI?GsZ204Z>{{ zV?9i@4tM8O39B(UW&&f-{7bUPQ=iDwudb)}8-&uuX7Wy(4|4{45zmxGUuwMTdbLu}%-IEh!s``dj)fG-cx?A^T0_{!ea-tXTfH zMrME{P-B_Xt9M)sPeIkNGl9oCsVRW#F|jY;JV&Ve;50jbtLuq z`nq)m55792gMp&D?+%MwbktZ-XPP$8>&F+J-BW*2a5WYO2Y#1zviCd5bFR#4;W5bU zULNlsD1yc$^>{g!+ELvoTOXP3%_=GRorywpq~az2w`kv8E-p&T6jrkmTV_4eDD;`e zrn*tcY58L6ebd35-w04Zf1euoSxBhUAhhN4!iVD6R&Er`u?Oux--Ip*(w@g(2vF^G zgvUY025*n=&yn}Z#n*F*-ocj+|Lu^C^JJB6-m7GAxKz(el4EHrG$JaU+RQuA>N{rw zCXu_8Z^4}KSjYY?9T(5PPKwpQP4Q9MOX7H zU9rK8hpdaQ$4&3A(?$<~!(W^z8!8>bZ9^bcAs;dZ`yO4U*l_R$iSTks!yh5{5?vm9 zdPP0eqi91JA0JB(+?U=NQG5Nb{7}YZaDHqEe(P2F!=U2G@+isBbdr{K4mUB^ejZ_V zf{Sy4T+05C?_+`lcM(SXA)dS?sc3#@E-4|y6%R{GT$I*YxSxXY3ptl`^$34O^JML~ zJuNstjNHsMtyXdYgL15)+4PZlu98ej&kz@ag`W(&JG3VrUD5yecm8u(_yqel3S;~j zs%jRDd;9YB`U5fRoNt&c@B7kM<6&IOM_f{t4*lLf`b5K)HR$645hZMF>_~CF*KEjx zmvHFq;CB(D9B-zmF9fj#;NF)YtTv#a$@dxwJmWGiz#jLM(NlDn)RloY=oKTt$N$T<6 zp{tSmN`OO_U0jzf9>GqogU<)}=QHKM$mK)ptUbPcX-r#aIF zidsvgo(8`ERNt;%t20pfnb~NY-my8W#e9lEkU0wfQKxkgglqHYeMZpq?r1(8#_Zwy z!DxfA@gxP4nEW(pk=6wrHpIUS--&UeG`!Le*hI!RUEI;#5Phm}&#p}*Q8_1h`o+Hz zw+2+ZB)wL)Ce0t@I#QX?GQ9pe*)k9%EjW(({OMZez2`#PCihL^5Lve`^FHE4pt*=fEh#xHa7jIb`}IBsEbM2jdlP=|A8pq8 zMCa(m#S+}S-_ur2ViIB>yy5m2ovM!A_R755+GyhP$Z(+BjK@)3lZ7|J& zmtel&+ibAj>(dKg;z?fLJBIDYz3{M}i|2QzF>b0`r{#j3XyHj#rd+Nq+%IvnJDd1{ zIZ+S{fuD(i)IAKqbq>EWy@0YEq|`&f1VSZFmW?@7Q;avTJ(8b5=Mht@4O&bP#gU~H zJI3@-(Ihq%ZBn7_u=Z9Zn54EiudAj1;>|dHOhT-m^Fc&4R49rE);yi2s12#DAZ?|^ zi&K+?KPzsWtFW4*81}p%Klk?%%U^qYc7st@0>6rmuzqskfr74lLuzeXR{ye~>@WY@ zME!pjYEMG&FwD?0giFolJD8yOb*bUrkNvultL-~fJo(KsW}f^^U2Vzda1+1lvdJMY zR=3O_SP1fn&T*-BKu_GpB*qVZ^)csXotm2*PkhBa9vW-b2uQf`T3$=MQwAK4cU)8B|G2|CT`+(udM&Y)msL|wXR#+IE@B(cXto&?rwqLZo%E15Zv9J z;I2VJa0%`Zf;$8W-|V%{KHq-NFRCbt>gw+K$UVlmh9hz?AdWqaNGD~l>MOLkPxm~E z(=|TGEGq_D()qir%ozmw`}*pXE3*Fm`v`r9QfXqQaT76_&C}|rJzLdcXFeF7K1jc9 zL-ngv(8Y3wt_#t8B>`;cprs5d?{_i5S->PGJks>5mUx9ml<1Cdr0OJi=CXjSd}Mya)Jd=&Q6qrV)!O!FUT-nQR%v3Edb_AfptGKb-I508 z+YcU|d(ETDs&Mxs*#k{&ooA$8-Ka>s#P7!pE~MC6spc;S|1J8&^;=5-OGoipOyAI% z5<70HRvN$gs5@Y@e|vrC10)ea#1F)^hL^`NI&Z)8|BmZNu=YOg0%KeS#~@Rhi8N+R zzs8q?gIh*J_I!e)Kr{f@g3Xz{XdH`)E zn4Sr{3hWQj9Zc9F>s-Ai|64e(77{f2LBX9*fTCC}gd@s1PTeR=k4BBK?Co?UqHKVY zxW@>GZh+0i=u3k6qtjD4a+|UZ zwBAC2TrE49E^jfcntG?i;ysL>V3dJhMHasoCFW}QOpA@A#}6hZ{~sk+l`N4KpSfTx zx(yog;)FeC|Ng^PujORcN|RN+ZsTtMANXs;8BA?kEX)8P)kaQG2WS|8mmnc1-D?=0 zJ!Ldi$IyljQNpSB&mnD|S4ck~x6_M11CvPUa3cTPS*tu3nwFbi(`}an0J^Nj<4k|` z9I)Sm2jVjiK?cu0$x2NFz1dhQhZ;LBHWn1k-zU|qr33Vq z&6l-+T^JMpt5^lfM`e5`ap?+K3Nl-H%ftTKdo9{QD52mDRoq;gZMpc%#45y4Wpyk$ zcv~~S8(qvGO|2z++qLzD8FLcKFa@c~&eoXgX3HjeL3Idu_ZB>~)}Ge5n?#-iaP;** zCmUc4N(qLj6W1TJte4?IfBZ5Cw)gX10n*;cZNM^03e3GJ5V-m9daR@NZi#!{sqfWK ziF?&=wnz%BS^_!2;PemP-oU|N)pHPm)>(>;V7^TGdF#X9EhHQ!0Kf*_`@C_XoF|CS z+vvO_PBJ0%uzs`o(5s^tt-#U&qXr0xZGONQ@4#kT0~}Q{0)V~BXMh95w&SQMR=ZaJ z4$$jvfG$(B&qjEI_WHmpZwN)7VU5n{w;-dZ@RRTi-kwq0#)Xkgk#~n%Ldfd3i~3zr zS5aAAdr{eMSF)x01>c55jY}r;8=ig6C41FAEf8tj<@@xZ^pLCC+QGr!S7mgh)dQU< z{tm^x^l39@vn;}LvBjhH?(ViqxqLyr%0kXtVMygg$4G5MM=P4HlA&}(no!=I*a(<5 zcdF+`VJ_l(77H059t8fEk9-UihYDQNr;pmFx)d3uRGSWf0rj6ae9rC=r}g&PbZP$U zTEq7J4r=LoBCqXW!*C$~gt1}r0t(p!D16U7ThBtpY6NB6!-hc`<;o6rcG(;jG4HBE zSi#i`cx@a`n}TYD0C2Ac&xsw#ZjJ^DntjHP#bq5SWHRdHDw>(4GmHh2)t-tI88-7} z4#s`KNkF9J79bn*SRVkoSrhI9d5u~6025&naHTypgt^6w&aS9ITjq8<|imb z!ZT77eJo;4YfnsuG#J0**QPJ8<1*R($K5al8B#Yz`bo3Zr;|0O4;{8z68^94S9>aa ze;*@OM|?>;oxXif%`il^H}C|&fLnFA8vw4zvG>4|_^@l*$J4_5<17|J$d^i%9Shru zmkAT!|D_%Ndm-Pz1{BBBIvtOn4nMyhOmrU*hV8-<#|B%VrITL|z84_)I9DQ9#OZ}= zxr^4q?s;xFK?-o#6^Ac^N?3H_HSN3UHd0xR0B6wT zp=6|`q@WP{iG9!_DBg!$&4wej<>xFuj+Nx*3*|cluV1-afUf?@#T;YDK+Wa)iuUbB z++~@*{M$NHMYcYnM(fOcqf0ixv=QY z$+QuiFzGD&F?FWJu{6Pnqo9+-cmFl;UVcRfw&(M}c+Xm#`&-3)!Gl4!X|q(%TbD`Z z&F6BZEWe>UUN4O;v+oP<9ed8|-s8lqdhM)GTjhFmHYJb5i(Iwu0bQxVPX4dQTW_yh zI%v7GnmTXCUk_B$ZD~K}J1-AJzFc-~4aqx;uymbrphhbiBi`@h^1hq`ifO>*<}*nE znLn%2hYz2H%j&DU%-rm9x%F)29}}n*(o9rTNybn~U|qvB&?Rgax>49OoJPwbp3I(G6t1n#AabO2tM1d%@_{2GUf6-Tu-^^O;Ita@>kot|?! z_!s_LrB6}QF9-QsxBa;{Dtx=0b^&3s4i%N$1~b3jcHQ0%vft?bp3DcnyuIGx{^c~j z+j<>%bDOAl^gH}A`ZoRc^t>5kdlP!UpouT7E>w7s>0Ym#!_m=Icg_25%PR1o?-{z# zd}Kz8D>cvPZuebX-+hKz!XF^rTm=0R3CN^t=Ur}Fu<$h}tKBtKuUTDAnXX3x@T6X< zzlO`O50PycT7GId9G%rT0e~Wvq1lziP4%skU<$Dq%R|ZkTF>!=)j~uAAPJ~(eROPS z(jYyzeJfcr@1eL7Q856jW?}{^sWJ+WH-MFFLmyGyk;C>#C)@UbS48Ft@ZLvsXYw(96Q@lNh1}()kd`=t$Hxpb zQIvFcW*he9oHj`V9z+ID#a3YV<3vZ>Hwlt6&@pgu2n}`>NK0611us`v^;fik*R(Qc zEz>1e$uLIE5AFgjmF`WMJ~eBro2!=RdBB{uJd*#y=;mMn(B@v3y#$S**pCz0o{9@jtMub$;KXE;|K&%zusT%V~QHD9`uF zLP#R@*%nhgsp+vyvZ-@Sx@kIblD)Mvn_uRjw1+ypG8?TmZgd@NzdFk{@D=E)%Bs@u zGGHe_No}z_J*qnTZExq~Xno9B|EY`fYNGSM9ur{o)CXsVes+>{^>Bw!s$$5ZNJ1YE zKwx4;Xcx0ddirkgcCTlkzd&&euIE!QHDJTcbp^OJeQgEZXlu{FI}WY@q{R%~nwOZS z0x=rty%~vjsfnzjL&jo+1mXDCU&wwW_S>-yRpRwy4D4V3b7DVL24&=N{^hEAdyF4h z9ZA?!W;f12f*HuuDEIXAFnZV{y?71&eC(nAC8jsw{yyE<>uM?6spBH}*iUB zW9^x~)92?WUb~H>DCu1<(CKF)o||pGceU6PAB3N8IkQd((*&Cyqen^RSvLZ1m@!8Z z)`0)TTWio~I=MQ8s>f!wdRzT=Wmka`dACSyKeiu@`9c3lUCL9%LCFRPu82DynXCz{ z63ACZ{vSx~uEFvCV z7TwT#GM-Rhf5h?JzV_(Ydm0wk*l(P=sGq=&fRWKhN(E2jr-99%#kpbjJyfB`MD|JM zz?-(Wll;Crhj|hw!?sOHkz`tB4#BXh!_}vrGUX4=K4FvQ?P|Hh_KuSO^K@wRUkh$AJlN@!XV+8R%$0%Ubb~C;I826airWsC z*^W?u$ia?l9lOmTi$fLugG?p|(RfJD#$2XZ)e@`i^9ompN_3~DDMa_Nqyrl0wNNHL zWegdPs`&t%mT2&$49dX!$>E`~cDUNP+V^+*&HFyDsf*EPwd?&i!)C`#F1V&d%b5zl zX(`-#!ya3EvztPA;uo3xmlS$mQ~{HKdNGPrEhQ9`!?9(z&-f^drSIN0EmT+oB9J@p zF?9_2{l9CPDKa%d4PEVxygdg3thckn54Fa9=l<}4+rxXx7}Xx%A_1psVPw|SP*t7V z!^*=pY~)dp@ZUm4t8@0f=<+-+8tTbOmtC9eE`3}gFV%@hgn1gptOd675Vxt?qf_DQ zF-k%O_lv-b(iB3yrhqd61q)tYE&^4|jni}g9oLip=g5pK4JaxOu?BpPhEppjXxr6J z#n`XY_bQCL4P()gsu=8S!<#X+z?3;$|+2!Hh@$lYqYTd26|Ku>0j$>;e>`ry^*+9@P zPusFD^qveIMp8E=3x#PmKE+mEJFc#>Ze?Lm z0h;?iA4mTs=&0=#MiNF-Se z8P>aS^ucV87sAT)q9*6jG;u@;2sK@(zVIxMdg1i3uzSnUc^=Wy#*nc-2G6M>d8b6` zS7>o-APVhfL+a+RcesjQxLXebj#)L7aU_z8rgn^9Y*uw%UFyQhi zXtq^(qTV&bPKJeE^t*)lapfVCiZV-;W%7aED@Zgvl4H7u>q|Z5Q=F>OC)v8BwKf>Yj=y>mmAgB7)RLaS9p?_|-#xV%u_W1Wilb@Y20-G=5#HFSWouqn-3c7?S z-qX&N{6xL>?P~hOz5XPXkSlg&0j;^An}W&*rO9E7ip&F*5rc@4Jl!cA;Xi%Yh z#3h;&NWMuxJE-xmgdAT>Si#D(I#T+Naaxfv)oCEqJ3RsJy*|)HE5Gf!H>I6 zAv_o$ri-A`=Ak&7pf8Dfk<{fQ{Ft}v`t|FJupvEa2~iIb_1uKpi^Hod|w6#u$XIMe{|2<`NqeFeG4cMLEGQX*$B>6NDEKp7SdusAA1I;;&T0$AIqRHUPscb-&8oOAyrWn zg<=6-rx>?k4uWoF^3ThRoc^oK_0trQY?H@HPDom&(wgWkn9g`M(P*H9Ib=oxDVkfX zdr2{ZoS3is#Wh3ASmdg7U+`(9dcySTG@Ek|O%(Sla`pdEm13vpomz~T(rG4^bV>%2 zX;YD5P8>iq6;uZMTW`8-i)d!vS{2Pi-;ZIlRBz+V{l18oW@Cki&YG z?DE`rro8z#b-B*|M0od5Qkx(#r_yye%V82By(-mrnqgzRId;%$8VMRCD zMl*;v2?blrHqYv<9(|HWr4CR+q8@6Jgh+x{!%bNqZI8Aswkx+OpEO9 zv?s^>ttw6ey5;*O*rI@$DCZCspZI&)QBsTpLmAyoO%y#n8siTkuOriKGQxPfhiTJ~ z!Hfox;UZ1IL+?Qbb%pku8d=t*sT7`Eh~*%!Tv1nYOj@lN(}1LvqB^I7;n&FDJF7Xh zU77EzAr`Xm25rNiQl{Y!8oA%UW&e*W;{qA#U@PdBdgOCRKAgdedN=3NzCQS>MjYI4 zx4D-vljaVfHz9&UXf6#f&fB2oy8T6%TX#LFKhotGHCaxEAoMbp$@si{cp(9_(EtSdp0OES1*{JkDznDPA7d}nH#X@EZnVeEK zg1IfYkJnmaL)#~eoItq@ag=CQXmQml0c~1I9ZTsSJ|Si;?#07Z(B?p4Ur5AJF$gVE_z;=DoTA%mxy81*kz?A8|5esiS1ujloZdn-3^7@sHR1Q)ayxEIEA z(*NhpH9(Vf(xyq{5pq*`dck2$_C`(c3p9t3<^r#f0F`PVpEThWfJ|9pvrMsFcs||! z2DkT-;>GWrM~prLi1L@0Um{>wBmW{WrxXTw<=zWKW+H-M;1o4r#K)53@Aht5On{kpe>uyGXH-UT`uU}jd@pLkgmMAu{{s*+so9p|YM?)trTS>T_s>q>Lrzr{Xl;%?Cn`n~_01ivP3-aY1d0cANX~ z%ZXqfbQEoUnq>l?G5&i(0RnB>dmSz*8MfGBZ+YFHuH;xbdJMyE3zsQn^H@z0^|I%M z3^8rhqn2mMOpbfDo<=;wWaEVR-!1A4v6rzKI%cM!qCbh16NJ0cO{sm}!7f|-6l4B) zGev=p*Uxt2!XS%GELyIbfT_$E%u`-tu8bW{Rj!yRUPvULF`B1JQJdnGe7W4hf*flj zjGaE@3N;621)hEuy4PLJC^1egg0r7P_Z~I}0U=IDAwK=Q}yxYkQuFS)2RWDrCEC5ImEh%C7a zF~5|*cch|VFGR}GGZss-AMRfykdzm-U2(j@u?3gLWu60^e}EO0x8-hxsqEDpKAjbr zCN(4FzfRzfMwiOF4w4}$4+0{X^gVZG%a>9&nP7bqR|=2?yN<$Fj3yDGLR3!d`eb3q z;edH>(H4fUF?hs3wS`l42^7A3ZexWB-6J0bB7qMgK%f;oz1|`rr;wrVlM}oQN5Z|% z`LhGaG=R7wG#HDjlOGg?oC9jhA+1wScmjTRzn`q)+VpEOdsL)64I=rH(kjx;RB z1t=u9K$YQ?y4S(7I12|++-+xab%MIt`~4~Fki!)Sh&MbTs}3fBLor_7mS1d`$k zhOZa{vTBNig80(XWkT#qv3Bro-ExVlo*VAzhhe7Xh978b>YXv*(4fD~%8;T6{S41g zh?sW8E~vsr>yMiudO*+scHHG)ke6+DQ|F}MVeZDpdGl0n9*ACDVZa5(E{I;#dF)NTET`BHxuo+52r z9Nnq!t0DNAU8V+)xmaBAr9Y!LrpZYt+;|2)h9dBmiNcjg7@6%I-<=o-+@%(u92*<; z93P}IGAM9=7P;Ghkw7(Wv~+jUI;e8Db29K6jTF8mue&Q&VM?0UF~U9xOcXqtfhBTf zxlNAE&*X5hoycGhND=51K&k!E>9^v>D)>3*G8SAZ{&T6^hMpww<1CN^j_KHLW92)Y z8P_N$^12k;MeV(ccOvqAaakC$C<)F zqR41!O=Sl{Yz5T!SoPh`DNF-RIAI#f+OrRR&l^Hk=Pj;xRXvuIf&hLkW0GVtvumsS zn?l}(=jM86#M4Q@Q}Snk8F~~AE-xB~!aPNulA?;*veY(ZPvp>rwlRmV3eh?ikM%o> z`CKF$0Pw4RtXd`b=+qgxUH>lcK=j=3bh2`qHdA4$s;dTOpbr$n+bUMmq3>SyKLj!? z>>6G8;7%t}BSR=pEVDWC9e(2DYU{;TB@y@e-TPh6+d`67gAF3k9i$Cm7XPYY{Xzu^uka z@gCc;82-AMz_ndW1FfX>kNbNJ| zjJ(;^{#jkgX5-0y5JeR_<+8%%hVvoIhOe{%HgXVi7^H|NA~rnm_xVf(!RZC)f%566 zV1|$^)k@WJICDU`v(Z*wY?PNoAo%v3qWASWfejbT23o1d-gkKmVWm;dI7(S<#OwCA zw9AcxV@HLejx&#@0r3pb13+;fwRc>ADLbM0@G+tQ@e3+|VmXBn>KTWFn?ScOvOoGl zi7fdEZpd;fXB_TMov>K2fh5jFmiblL#*09Z!-I%M>Js*bs$x!^hf-`GL{+FkHwtuX z)h>c5V1cjoZ+AtpEOX6wgiD`^IdOu57K`MPX&Q-mAu0ZnPtv8<8~Jl@O4=tJ3O>BJ zDO$vtpm6w}b>J!#1nYlH-OZX;t+MDCVEW;Phv|Vf0oczSMEl*)Tf96XYFPR*vz+ zzV3B8xG6#S_Kd`kwrPBtn>dJgdX2$SD^mQtjw|}*_<0o(;^Kj=G}hq50vv+@r(bF! zZ-Y08Bf7}KBH`IQd+a<{&0kPGH@$xWT6!!~I{*P*q=@_?^}L9I+O25d;4dVH^CZ>1 z8^cKVXXjmDI{?}=5#aj%9l;C#2UH}fSV26P#^{AOVx2n^Z84EDj8D6hrMA?jOHqG5q->wbHQ5GXg6a1op87hos zJ7t&T>JK}hLTJD=fRwPn%y4js!Vt~Gk&F)xiWcXBQDxMw%i!>iQH+POVNlQ1K29yJ zQ9>UJ1OP-j7xjU!cJZ!@&EoM~cy(WG?-QwMAE#PF zHu*NJC9j>DBe+8EGK(_35dfm0fKrP8s%Jz56Z)BOUt50DE?|D_wDjAyd>>1*-M@A- zPAv)PoX0=D?y3n@L_WwXsp~uj%Z;aQiin(SEg1%CF~s$0f5Hn^J>f-ux4Y2R_j(4d z=UTTfM^4WuZgbF60@KXWW^FJXJcz4mVy@^tjInyltcD%vu&p+GT>w- zlH45C&<`^?45e!tmOPDYEgI&kH31+}Ft$S*82NIU^$DuX~Z z13FyDcEHnwar5o(L$NIKFEM9(#|=e}BZRoP7%rS}G3<5wpN787)Ik<`s_0~NzK5As zQ1Wa@azABH@Y3`bQfbs@1@5G8QsDR5!Zj30f*fDhLdH*vx$8!OB zjU!}pJ`3&E83E6ODw*oa>XH`G{_uIE=&Z)OmFB-z&*cd3nOrH*r-D=-t|0SiMcj{5 zvI;4?B5Rl}9M7%m>#Lm{><-e*7~8)SIU)N02=o|l8lbt{x0=kk13Xc=7#97{4))eu z!Xfz9u){Eohh>(lFdv;uuFwSo4_#VM6zIz!ShrQZLJH}mYg8$cF@*!xy$}jvx=);2 zsgb+9t}AK17uH?HsFAY;EEpP>mui$wYRQN*R_E5|lFLwQ_A{Ge^ic)%2O>K9wJ-Mv z#N{;1FbVfB*Jfd0j%`nt>I@X}@}Pf_;=#m6VYlEl79lJX@u=hq>Y3?P7}b;xTT-Dm zQba&uE$otA3di5s&_FVmhQ)DF$MmzAH2&oJB+WItk82&ZFjsb%FomjQQi3ElbgI`h zD?wo`i-?Cm&k-SN<@?^xq(XqdFbp!QJ{~3mg+$PV($iXBlhX_19RbYz=#l z+yfc0^ti!xe=yXNDXv5Ch<3!JMrNVK_jC{8cq?sypM_`;G&Q_Vd#*yJsl9l|*m6*- zkg!WN5iCZ`X?3nQc4|8dQb_MT+MI80n90RQVL~QJS?>5Shq#QCJQzd~7$o%GHz5gf z@nGnG%te4N)!qy>p=e~ct>A^yz#KRFXF#FPM0E{dPg#F1B()RSf@6%#*-GD~l^(R4 z)6y|I_%-dDt3&*Z#M0g`dEsmI-Hj?&xP$p9HwGw_c-1ZcM=qluk%zy7-i;(Bx zb-@9URERZ{WeHEvnV@M`$OVG3nFq9ZUWQjP$N(0QW0S`BR?p_-+os`MX=&#UE%Jl{ z3hdhLo;@Vw8Z=3?U@DHvuUkO&bZ95N-dO$xt1?S`iU%oLE#n9-m_%zaU_1w9mvTKo zM3d@u3YK{2Mg`ylVkU*OVx_5PA7KY-&PvdxnScIm!xSMQP4gb*;WAL_TS;^>7aOs* z_T6piiY9$DIt4qrbOCw3R28bnkm*avlbF`~k5bBwfkSh3aZ_uh zT!4;MIzu8;5#ccIn2n8XS$AvMz62+QC`ejL&%&tE1L+$HQqjYGYE`uqW0=TAxzqYm zK?J9=P`t?Wl)3~r^<7H~(X;vro0M&~!2-o**h2!P^~GreFSAU1sd2Sk`|Ii;L^ITL z<8!Ne%eed;4uUTaXIV!h{k4Sf7%?m{1NM@9HE5!k50cKt-d2<16GPR>Nv%dEix>gy z{Fbm-f414i(zz(`dVNwUv87|Il0v|9OX#9{r;^)@c7X9e;R zs+3SgfoPHfMB>LSHD@hWd=5ju$0bMXbbo37mzIbhyn!BkE5;41m~AMK!gZbPOS`zk zA1`mt`2UQTvv!RVnGt$~POBtk5NU|;DIiY<&u;TX4t&93A;%F#&2%=Ip`pWQ8QV`T zhNF^1yZiyGarwu=RsBU)i2`-(eY49oI;4xN#0rWEfjBcEenaYptQkxOE;@eAB97G+ zfelF_Vq@aCY)vHBjVvODnv<*m7KXSeU#Jja(ytFX`OXz}meP`f0;R_d`9i4p_LoqQ zf95PgDn7GKB1TXRHFL$siWzHa?Vxgzhj1*zspvqSB5M#;L1?lqvhbC*!J|tk8vVdY zF4}CjHHQL5&}2v>RO9F8CPE7sXQhx(a|X-tG0b0BD-kS|X<77i>u@M7$S#hp^(}b| zQrdV!MSU6qBPZjD*DeYuasSi5x&aT#s?&HTtn{6E926%EhAba-9bQ<+^0yuTG8n2?p8JCNaYS`kkE9)@ZABQSB))|1yCXW|Jj@r=e8D-v8(A1P^xtIfOI}M%VW?7C zS+Ae%K+s9fD-moeV*IUqvF{U6A!~v^*}C&nl~`M1rF@uAgh0?uif~=b?4Uu!VK_n;(4LXnxp&F6sDOB4U)l3wN4*TrbDfLre`>y8f zJ|7ovq$JFOr1Itk8cYlxe2zZ9Jp-)rH}~?lmU72PO&;0kRM*umffM=PjmNdJ(8H}t za`yE?`nZUgZnRahpE5G-6k2AFcXs)b*e&Lo-k62P?sNXrcUlYze(7S1VexQ0J_m;~ zJRTTx*8ZL4eK(8h4}!WxZF89)smpUjR}>otLZPdO9mwd}71s(1bk#ZiKScWChAAGQ0G z0t$CECPB8EJly~1tZToQeVkBvt>n$?)KgX4NZ@2NM3}N}{M?2)bB4vLvU&xF(|3NW zJo?MMlc_35K zx+B`gcZ?|*+mg2d!%mBH(w|T71dhn;I92lajG+!sto@|1wJ_Gh%jlTJJOV1pZF=~6q@;E#9rjmz#n;?kf+DYG znMC2o{+xlq^Li{RnIjIfzWGiMHS8{bL&r-U(SP1cQhW*m1?M4Y-EyEU#(6A2SWR| zgngR_rQfpdP89D=DRw%ZPYLHC-pzGWhc@WwmPF|2K2ubf%l`TI>hk|zZa}Dp5zGMu zGg|>&{u@u)rve(Y>Rswo!dKf%VdwhO&V7O9q$K z+4f|%o&M3N{MbPIxKktGx6VwnoQ9$+!&hoR^)%-T@z;qaCY*rTY$$9)Tj@1w+ zRPjILoK3rY18}Qu90rVbonDL2o$ZH;?*6+^_XOY3ciO$+K_zdVQ@!<`NL^xm1fi!< z{vA`nU1u%uLWNRr*N8U4P7)bX)fGY|EFvk%;u?SdKCZi*tSwTX=ThaQ_a^Q_w@%sP z`?1pKaUf7#cYAxM?iho1sL!rr#1t&&P`SiJj-duPiPJ2;q>WQa5oN8UI16a$Sovs2 z8uZry^&@q^Pp>!X;d~B-R@OW94CJ|~GeyZ1Q^!?*U=*d?0wI*N!!%Xv%(d2go(q6+ z%fZTo0$hXf<~ho$yJ9h{4tN)MmlZ-w8?<{;mH`p%*n&BGJd$CAPP|{80~m#X@3&kw zNs@L3cA%mBhM|!N>8JQ7(}pT;8F5TanbZiZydZ*Hi$7(P+3O6=Qbwi?6tk|c=#vJ1X9$u5f1$ey0xn7uL>QJry+bz6l3d4qrNvq7YOBn^{7v`?J^_=(M z@jxST0|*!GcS{C8>x?GKEh>nn*x-gQ(H5j7BtoU+%&(2!@$V-Bc){DJlll)GuGF4c z;-_#2en!3QAwlIaOqa^h=mkn;ozCzuIR__j*n{O8l~H6Mf$whKVS#zwS6S*5P|h$1 zu+|w=@t|#Y&J6asAC%*dWMVnTm5TgR7^wJ>V^D)!iKAq3#M#m_V-NE26S_T?EiMvS z`Rzf+w*0ou@r3UkSFSBM?=uG2tQ01x1++?V2>VwQRkqhxGj$OnkBhY3MMrQ;faqQ# z!7|J#1f(M50RZCkM%1cHkJ(pfLivoDrZH$DUBy@z8y3;U0>j0>64P;Xg6IP^jeQ%> zxNQ7oj2p}77E>7c%tIM888vLJwjghj#;-PZv;YCskMP+S1`=toevsK;d~c+CF! zAY34J46W=6*yPaPA6FE6b%R~|fT||F4ekTybzHwbm;iWLKjbz6cl^f&WGy^2<*u(l z7-g<$T6m&MJF#9N4pML@*I!68{U~&5>aw}xDaWmsi%@ei2$W!wq3BEE2;{+V=Q&kN z?-Yx|7)0+U;+XEl3kBixh$k0js-|P*MC%b6 z)MUzLXJZmt+uO=h#6vcYM>CLoEiTgX|C&T+NP#c(tqf&3_}dM>c*g(SR=f`LPV!Tm z#YY7^kTi-JCVt=NN)b)_=UdR9&#XQ#yMUYi;jb?`KA>)7X*?$Q|2pk5osYm~)c%pf z&-sWhaE0{SEYN#z>wKYlZ~!%*bfZ7`vq>ZffBVP#Zy0dS-8*EEq|cX~_+vw(s?LXI zUP$bQ(1>LAJU_w&dGk(`$;6q*Kv@+msboJIBQfv^%;n!J@IMuNZB-8nUHw`60k;O8 zof|Q|qN);zV@E{NwO6`fPTo#LtFaA0fhxXWno?%jm@#}6rAHP=P9u*#Ex_THD4)Up z7_C*QTu2x7PIb(%FF?rK299x1FzXB&^XDoxl1~&vsb;OT58Y3SAj!4VLAMpgD7B=9 zFTYO}Y!)IETlm(NR*zBD(wPTJcMjN<4lum`BLx4uZGvEoc{RPGZulAhM|zaThdNoR z-BWZ8;$O2yDpn&2crNn7CF{+;viT;Kjfm$XEE8h#sHa@YXJU- zQx?3p{j%kEGs)3Nc<8^~((2iI0gNrf9Kf6)0BP0yl6qjB0uEu3rGrdCI%#eb5Eh<1 zFYA`>mEpVrKqhM!3yrlU`t735hi_1caS-ro z*j|vy)+OzsF~W*6k2kk_P-GDTv!adUggk&KnrUThbj2X@;S|}Nt`O}y13klp*BTnP zV3!F_43+&9PF)mRx=Rp{uvbGO`d#R#BZU;wnN#uE(K)bPc2bgbJ8Y>54Y91K8%Uto zRRzU_=qdzos*q6YxRX;pvQYv34Mr#>;{|qsC3r|v=3g$tf8txn;Xsi+9%AbMNc7U| zP?q0C8J%fNO{TN`U#>=B9WRHbfp-nCmwO#AR084`?q8@^cHhHO?vo`!Ky%B{`U97@ zkb3;M2Eg$mFaC7vL1VH3T``1{hFi`}LoV)k*t65o*dQ{KUtxU4MOAcp zaT6%0U7&Vu8PMWkGcJEo=8zkHvK*U@A*1I~x`cWVc45a(on{JvBa6jh#@KiL!9JSf zcRfCP?|k^@_;mEs^34r+vMYh%d6@@P8&yz#=J+}C_S*M`OQV?!q-e_Ci=n;j(~5|3 zMWz1%e)2n=cSn+XKU#@A;|tjrytVHo#L6P31goERpWUw^lR>>d|GjY$&?cwutoVsz zXuS^Lw7}EG<)f{ODT1Dg?E=G4Tv8vl0^ed;d-1mGa8YoLy$Z<)+?n;h!nl}aAQv6G z_5sq)_^<~F7pbDouhXS)&MAWR)g?0a5F>%{HoEWqr-@j}- z#j5sev;FP!zv|m?yAYabfRxV(=|^cqz%Vc2MsXlNJm`mhxA1cDb{Ppz&OxS;dYacSPTW|-oeACf}ImX4cU(4oZ7C7nvl9dsi2hvAc}3=no(Uo!t%fV9^aKVt^gd!0023@J;5l;L}m@DlAT!`W+yP ztE|)m#6mvQLPp0DaB~_Ai{ob?xVhzD1k9pC7a(vv!x{f>_1$irT zAOi|z`}{hM|18HKfvYV)@&`mhU5_6e%t2$5zTJ;-YPE^=7-@D^#X%Rg-}h@yqr%q2 zIz(3kHowv+Ss(ZD@DqB<*i)bVPuWK)(D$1-+Y5&sGg_Kkm4&HbRZRqb3?U{*W72GT z&BwEI!<|D=o9nA;fuaiHvhAp9nY7gwGb=RYH75|-i90-GUQ zQBu`CQxo+Lfe8+BuxO6 zvxmrG%MiK1P#mWBy-+{FO$N8m;%Jle9pQ!*k(s&(L=i$!sIDu7;r9y$b9$lBn6fXI z0SZ!9(I$}96*sc1_(rW3V#>~8{c8hR&+WhFW|aTjeUB!1tKuJ4i9dL5DPwgzxP{p} zS(SFwf$1Ybzrx=iFCF0BSn^lf^nYXXl%t#Kbot3lysA!pS}0oFQ_3B+i)^Q@lY(9 z@vLmB7C>^AOEhSHD%i^77TfQcFu())SAJer8dgkE&)jF>2pXT;!B|#pdJKTVgCO$Z zjK~*SVmXLs5Z!N|l5{|08+Hc%qq!j{7~4%)SVl2Y6z|)wsa%ErQn4>lIE67N5ap2X zN~KrvYy@<*_VSSP2i|XMLm9k4VMxvsseh~|6GDv8-yS0;T~wpU&nT;e<*;AUje~=N zYNIfrJ#U`5NK=JH0U8Bh*Cf9X`OOTluYl##Gs^cg2cnw@7|{NSt$f?tlgA={ zPZ6RT@T}M^Rb&nR$I9~WW(6FH^UOc7(ePWrkZp%A+colT4=&x_cO~yFFLIX@-|;LM zaB^ydsZ;m^YW~FnN`_z2P z;{0?E*0c%5jpI=WdHgEbS0fow^aXm4a8=@pk{#j1x}hIlc5y>kQTZRy!l2CP_M6w1 zEum0-EtKwqv)PECojzhAzgAIFT0_l>_N7(nU@yl5LFTaQC>OLhapTfeYju@E3idgf z9y;V;40aj%Bq_znNo#@~+M{as;`KnRr6A)O^b|4U}vz;g>Wp(2JUdh=P1SAWzmEXC!Vaczr~9gjXn} z%lSlau1F!-i8(J;u85aaA2ta$Rj{v02si_mSN_k3fD!ys#74!$@1`TuU+o--*%Rx# z*m^g;j{kc=%d2S%AKM}q>?4FI|Kil$*v(PF`r>Hzmuh;YIZa{-# zVtilr4On;&pxr(V?cFh9eGc_2ZNI&hDHC$iE0ZjA7Cn=?LZcgw*kj@vp#MlOW%d(HGHlH2$$g$87th$^y=*J#+={|^<092~4o z1bVX3LxUcivfI4tzfq1H*;`9*pGgJL{)jd1^uw2F{z{{iIDWIg8$rmwjPp*@+^3!D zBkRC>EvgWv_S``tb9HJ?p~wRzWwma)lekZsv_k9i1Rts3?T1$6m~xz<3>~kavML*) zWBPUq8{e5GNoOjDY$a3`WCHRD8Vfn|hnwFr6fcLoee4Edw`m@C)Qar~sNnk0lz|Xf zq>qzWrdaDyQmq#*$oWL-lx*r{j!tn2_ut1 zE)4)qTbwpWN~J*tieN!N(k@#C*(@XiLTlR%DUK z-KsOb{XE5dI~hIJ=pKj!-Rt8=bUwD|JU}2TR^t-O;yD=;*DAHNC+~+~XCnL9Z?M-; zME+03*?;!!^LSAUI|HBE@wM}qpoc*RuG+Vizcx}tIQ(Bg<<$O-HMK3j))aFEN-dAx z^{-X9jpoF#wh8mxdzO0f89#X{!VXzOO1%-t-N9RBi1Yh4Q>qHe!=i<{t?T5pIX9t@ zZcCM`hE)9>0M!dk0H`*G&+!@jZqwop7E!mc<}t`0h9=#-pNac$=oxwT$xtGG|6N}=cFL-U$BHgF64ZoB+1F=Y@?2G= z2gMj^mTjQu;`3dO)}V)bY$|}wT8?3MBfSi2$3(%7@)`C+lxmRQCz@l7ObWx0hpENS zEoNqoNhpN8Fjm3uw@vK6#;{ScFG-+sVns&u@JlL1BJAVcL%m#%4~hJ0s}^9#GBO%N zN(=fTcU@Qo+7d>dnWe@sU9z{LN9P&bc~=C3TVN|GTJT*{5)Or-2s4{ZpXv%0+cBnj zG@`<&6hsCs6cv5<|MB&fVO2%%+V5JhXcjCwq!!&E4bm-*gmfd_2uMkHcd2xDNW-F2 z8l*(JQCdL6Gu{8Q_q*To;auaoV11u+j`57=x$pZ2V$T5TzfdyP7LtP0^NQ-m%PJTy z$0D=vC}AJVj27JhcGZQUq~xL_U1{~J^JY!!MZJ8umY!T_Dn`;}J;}|u6}&|^__;r7 z;=pIb$O?y`jtiI7x(n+ftqLBQ(-jr%T}||-=$y*0elRBTLg>4jr9K+?wZj#lRndPwb ze5ehcTIb2!#v`l2gveRh;!+s&#klU!Xv>YBHWJlveGYtP> zQO*P6W~RQ&+;$Kr7Wy0ET`z2)`o3%Xwa)8klUYoZBX3>a3$98=?2NgzW<-pD?xHS= zlAen^Yi%$s|0o)REUFShyN))$wp{JX*_MZbSvDN@h7`-%UI-fJ?TzXgMW0@4*vpxb zI6KFYb?|@3XLL~ofA|6G>FMxK!&`oieoof)((iubGUAKG%Ka(oypGM!J--n?I)^dz zE)MiT$`_^YfIB7y@4HoPI+_^*imw}uUqzO~+NRNVwYCd(lHIlL*V^#Kdno)WQPD>V zXx)_Xgtvs16)Z++*V6TMcw!Y>G_Z<<_a}3V4O3Cey23|zeQ{CRw-;L$9e-4+#HS<* zZEi#=#E%zz;!PxRjS(HmeP1iAhSCIr@~pe}h*%&c!o+k2h0FxG(H#YHLiH59GbuR5 z#Doa#M$w>s_^9Yk2p%&?h9{&Nz3Pa&`fUTV8+d8%wrX< zoKI?7zXi0U-p&RKi_b(`-Zh>hbNbw_mkmZmDy! zKzP&s+#20Pc2-gWPJc4E{(d-{sF*@#&gppb~rT^!; zLJ{&;x`qX{K>i--9k-s(GvRVbqCo$GN4&$PyT=qAYyd(*3VCl7aPRLo)$SZAAU8Up zaum};^J36D2#3V%EPZfCyG+i*P96pU!?j-Fse~EPhfsK;ddZY(G7$``M|Ds%O66dG zqUPUBGVj*08z%UgHl3)Op9i(Kscej9cz$Io%#180$+*mXiNiKtfLr0?Q#|Z`ydsN9^-%3WvQhr~9yKzk1evi(|%5zWq#@5HFWi`t1En*#b9Pm+eCOq7MOk z%@`JJtU2si7LHK~wf=|xwi=zyO%W*zOAA6XCCiCUb_LcdT1^A}^iaq0DrEvXJIxix z$coC1k27@>tN3zACT#r~7-<{h&gpYx#3{II2II!5Q%Wu@T)rHq@-wtA+5a=P`R_a? zRQUO7)p5R-Fc6)wgSQ#;JI#9lD(DXsy0_$~Ult7osDIZz9oKPo9MV#Sy#D)nN}#M* z_-w4L7PO*(cb+Y|{4*XW<|m2c`* z*_aRPWTjX7yPu;z0howrMniAO1&ocsO!fYT%8+Jjx*7&Dd!lCS;ETU8RkU($nG$bN zGx4akb#m@NmH zG&BmNUj75PY$;^9!ZO!Tki?>`DpclmxFr{j#aQxWEjq6q>*`JTVr<ZwH(9o znDr9JD+hhk>?jL34O*dpXq564-_5}&Tc}KINGE4EUv=>0#1(jz`<+jH>(~49fWgRo ze5=8VvX31j*J2rfkoY)GD7h#>M5){4$KtlwT26xChELJ*Pr3x55S=<8;Dw`g-Qptr zYWl_Bj!#Cdo=0;8>Y^9*GPt42alwKtg3}{UKyOKb&5U9BP0ir1?wzdLUlWqed-S^kEe*qYQL81F%r4B%2Y4f_^<2xUI;i7Fs*!q?Y zr8r2rbMtDHE>VwmYd2NR#OFZzj7Mg7_ky6=0r06XodfwN7>py(U_#q9H;g9WQuGBL zq;NGFc2WhA$W!imCRCn<1-+0(`(0s&ucvswI$?|}-#B`3b+s$j%d*;!SzXdxfATpx zXbYs4=i>CXZ%yeC5<#$`c`s!@6Omi*ZHpW1={5oOj$UHn`kbP-&%-8WwTM?1@xd*_ zzdv7P6NiODXYgBLyen1+JN^LC*!_QIOaC?Ih;s*$V4sh>1hsbF_X|#{9(FGc`jrPK z23{9Y_^5TB-5-4V_4Hu#{?C>OnWCf~d)jPl#L1G61 zOYi>q`Cg*oA9zKYNLD_dDTxL>B>Qp=p5lV1rgVPzufEZ&-;(NVa!INk-@;C83r(QN3pBlW-`n>00wLWnnH&ey{4Id|Jx=u6sKB^%N8+vzcNAHHJNNa6KX@rGwN?#Z^F9xA z2AT3jN}$W`17s&eX3sT4)HJ~Basx~f(hPS^LB;^9kJH}_#?^Hmvj2EDB2mgVDR&fV z#(XgR%w^Y4I_O`|aYW;@E=hJ;l z8uIph)}N1TQ}3&o`FuGpBH8O9Dk};YL(imBJiI8UU0Ji{a2*~;pQ<-hx_qX*)?(k* z89_OSP?{FC&NxR$M$$lhTlB?~WYR;SwxMW?Y2JIPH^_UfmX}ZA5S}5efS&&rb&NJd zomWeFf{hvSDakb)dxw}CeLXI8|CtN4Kc+5;ivEm~izw}oXb^m%RH+C5l$Xt)^gpZq z$ky!U&FkC*6L;nBOiT}s{W07U zMOReUe>#i@fOA>YQBYpI-|*H)+5Rg|lc2fU99J z5jyozTOgVAZ2@zGBo82}Cpb_Xu#FJp3V>+W1z*jmjx@V44-Qt+{+!>Laujrf0zRNB z4twtCV8ui%t5i!88U#TmS0z&Lmh@GsLTJ1sE2~*fuya&^45Q6kQ`|hAk^K>B=MV`T z`Ps$2rjF}X6!{B2=*LPNn|OLj79P2)mpbRzErgjh1bFSCh$Lp}udZKgRp&)&Fe54C zY*Ronj@2&OClLppOOpSyfRq~=KiBGpWA{G(g&^UoclIh@2A}fe-OWmqz)Jyslm4eG|MromTKw(A#hlC|00r2R+J%< z&eLUPFG3>-hv|c7N(}d42EjOSXzONozo{hOO+e#|rbSxku#f;I6 zrNChvWUP@)Kl{9vumPfe)aT1~Ly-*bkHW_kz7lpYt8t*Io;N!QxUH^!HJCSn%Ntg@G0X!ucNUPjw2>Unn}2II7?2VcN0Nhqg%?Mcx_uk zQ(tA`^@SOlj+tUK5ZoW;{SrHJX-x1VsWNio%j}x-1n&jXwF+(Tiqdk|nW*ibG_ezA zI)lGSn~#htmUC>v<=o%=&vTMoLNL|_W4k(Tb0IpMd*py59KysOF1M4}sZ6R?RT7uy z1EHwc%jUn&Y*ccWI&G%ua9*4O=TbNq_vPclXwJas!X|c1MA;w52~DN+?{u^NN!KQ*(}c# zxOCmF0)Doas5-7WAaIm@AG8X{R}|y5!$*oj5OaqHBXjs%e9d(ZsmWT11(DUSyb18V zX=Fj@+k9*X$^&VeC?y{U*RIPs&Qw#KxQ0 z-E}k9D(9<)`o$1AVeFX#9Z2Rvd`ltZIWA)dq%sH*HfojaSwjo`Y9ma1_TXM8B5)}v zs(>|#&dI+wxBVD%EKMKz|Ex1zWs0v9&6uIbFu?dBNPSkD^`jEH{x4cNZ~wGlE!Q>heo%NhWli1PMPZ_T-U9p6W}%7>6V8>H`~vl!M%!D z@#cjziq!C6%B%hCwk9$~+Ntmll8y;PTTb8=JfNeq`XiN#3m+?rC#lU0ee50puQ5hN z{2c}QB}HT30i(~f=#`3Dyum4<4DUk!S-3*AX@$n* zBl|9DS@2;1{IloD1hkf;2Icd0gfm+t%2Wwf8_SZ4po&9OMj48CKByzh`Dt!~>(4ex zFE`S<>j2cN%BXS)#RkL7AduSt4=H(!NQbO-XXFsv&tIG>%#BEN42f)XC${uJ9Ynm z9_GJa>E9o2-|1uNBUcp$bF1lXs@U3St#x!vIhc{>F62NwT41OaFVWkE0X>0!tSnTE={Q#+FOKrtAq>T7Xs2P7Z35GI$u{R7>4Oe2|63nl~__JbTKv`S|?o=}9>*)j7=2ww+ z)ZzSsz%Y$&DGwhP@CzDSK7ZT}jBu+(HRMKBc)&dVnLNK?&{pLmEw3 ze36!|b+1|saGr`6O?)tm_k%Qx>MvW!&>ZaybDFCzk*sol=^$^YySQBQxbTxab5VZx zE;kX?nnlsUt<~8Wt8dj15*1kR8@4DlY72OevcFm*9V66mj1o!h_^K2ga8D?$id-{; zQzNwHS@&B_*zvqe#K>`@3UH?Cbt(-3sfC1h+*#|I$!n!xR({GmN}AM7-aR2e(gw;0 z&5L*c=AJdpzQi=^4+3$4LJqSq@h2NUJZ}~$+XD(GEAr&RD^}(nI$|~`TsT(hb-P#uJSS~Uk=MF->WeYVQOh8UVEUVmbZt#d{dH-(3%Y@7 zZ?k&4<)xp)lzbe5` zCGkJg6*#{q@S7!eENlH6%pGg2Yi2iIyh0&Xn}$j5*A^n`k8L%OipdQ6cK6ftuV5n? zFMwF--_3ewhC_)`(+4+4{aMYK@lxBEJB_-@<5l(#1s3zGH)s2Yc?|@Qn#rqi>G$6L zesSBRueAH}IxvH0d9g8{YZu&C>dxRgL*iWKJYzEm_DVnM)^~OkghE~u+ZDk z=bLLotQ~S}ll|q`CNfEJquU5S(c<-<;NSav;)98m^Iz?Gh*G+w{h}tzoq2Js7Va_kZ7KE^nru&8}(M>+3*t#N$v~fId;wJ5y6r zT=TG2X}g-|j`3E?NJsqqz!F!QVZ*yxSenob81<=Tc2BtD}04WYOoXgfe&6S7 z={>Fgs(=uFi$TdVu1@&Yl2>%$#*ZqXh)m1w$!{&~3}6ba(yllDx0YuIYtxD|zopy= z?Lf8W6gEOpQgbVkXRS1WKQgOmZLFYH&}tMY`$?5Uu>PB5{&Q#Y@|p%^+Mmb!%&8#^*>DOH1cS`t~DGu+}ZICk}qY<578N#OnVBz5m<#^TU0G zx_8aVT-ocNpPufRBt-s3jy~R;ZVc!LMjn$-x@i@6G>)6X%B!@T6ztyebE-JfnabIA zc-DGU*xO{nIdtinbm}q3@YtOlrOEoIbA+`Lt{>a47GmFVYkJ*Q>wCR(^WF-HfXT=d zk1;kiolylmIyTlwt`tUu7u~M?ZL>_E6t%rdptRS?+;wr5qJDsfQt$|J*cYRRo_|=3epa!KMf#!<=s(aa?jjfNde*0(yCE#bnLeg-4wdM6$d&^ z_o@|r&=?tL5SI9%+h*fBF))=0iR^)v&35k?9#fx2*TEHDIR^9AEKs*|OhvvMDBEBSQ_+_@txU}U>Da`I2-H#zme9S9>>N|=( z`2zdx8)U-u7$VXf`&=8gQHw;{o)8|UJ0luh)|hgv_cm$n6#GBIMJtm`VQAFei&Ni_ zOFD6eh~mNw(X|Pq^@L#5AMY7fc~oY2{jvm;k$+}NCcZ4D`z~zYbUdv+BjVr%8$M8d z#3G+0V!tM+-sapcApbudd^41$kFnNw0ANBK1W_||cy zpAXd)c^{8Kz&Lu)1PV3ti^chU_31A=r{x6Pklag>%D2ju$eH}%?P1aZ$z*?9U++LY zh!G)mAV+fslV#jceMC{AQe1gS2qOb~SnoLS%i+A0NK<*4EWg z^H@c_6}dRD0-vIffeECi^EsF(-uD9mFV64sfq0gT6SO>(APaBSKw=yY={k-O@zXgc zJ%k2?0$pYjO9OcWoCYs*Dh_5J#;gf4)d<0hFpW4X*(G&{7n70)>!_;Xd0i5D1D{?% zjFvnEImUHsi^uWA+@ePEbm20RG|$Wxok5h`ykD;Ai^x>+!Kj=%1qs!crm*4v+ z@zQH6@VY_R4nQxY@iQ?i6-yFAc*#|^iOJsz?-Yp){tzKyb!Vg2N6yVbMF3o0g+rEy zkc};#4$((x>Mbj<5-bM}uCMP>E02;1PGEO>)D(C-_o`f3Z&MO1EDyryrXq$(S<#?o z5>pX7B2}90UOBsN0Lf8Q8p+rgjjPM>+Q5>n(-^BM* z#!K%-wF}=r`nkK6yhVHpq8Q+%oq>J{vj`$eL4G}ev_Ua9C}7)GVj`2x$K0nU6}S`H zKsdO`*#?OTZepD9KP-quJeOzfC`7Xfj$CFfe`Q5aFR>faiD`UuvX;0@%9@bdyiMM( zkJ=D=uJJ5A=BY^u@1-bCe~>f{PyYk=*p5z@-+kWyw4IXp>!qQ)uymqI2AdvJa_$Q2 z#oXRXgeZTUQ)cOox%&&{-2I%@;ZtG;9^umVxgR+Rxv!LeFOl5qh4Y8ZHFxp@53XF< z&ANzFI4jbcmQu^4FBuX&-XNJb?WJuM9 zo|Sqz1_4u$^0fwI2RDo^=wkx%HF*5|d>POcU*n;NE9-Wb@X0z!s(8wvBPmhQ=7TA< zy2i4eTN0u{58Ic_A~f`1gG$4LL8;O&PdP$BhlofZ{p+Jf#SQx?ooDzi@dCH*vUv0} z^p7#<7%y`Rnwuev7C|Yf%%os;^6fdA(1JtKpb5(zYJyg2I1E#U;5!VK*ha)0O{>c! z<@g~Vk4~P{(k}5T{99evr}E@TEFw+xk0EO<%H^?==@NhL)$?AUpJqr!uSGRPDdqsk z5id~hM+NNBh}RR#3d4bbn)+a^KYcjKnd~)^4X$E5^qSrtGax z!}(mcu9_EV7!_Gkgq$H5HGl%%tCEMu9Nx}a*w(cD163VEm~~FlCL8B^e3-)~6PQ=V z5GEeermh}^HQ+()agFih)!-`YUk+{x!HLUsu_Oq#t#|K4q?1?iQLV@RmUjOv>^Do0 zw^N)&d?vpMJZNo+jcJjq$p`P}d*Bdel$h0G&2Pf`T7tiVj4q3q0-HZu*5HhWOP!;9 zMGhwN^1CSxYaYe3L^2BE4`Q`i#mebK^Z1tWl0uLMF z&Dv1B8t{l{hB@?*N1$wpuG|e?5kYBNYq$!aAnsGxz|@kcYS#c&D=SD$+Kd~#;%cDj zIxTifakWWmmxXtzFq+sA7wAkj*IuaiOou~BADh9c!r1srcR1_d!lorz@pim#uW8n# z1aLN+Y0XHI>nV9C7iHY$@Z2+7bG8|+W$xvBNc=2p%!_fCUy|&ck=&3gF&2&Zr5;6E zy|(@R!TE&GH&afH-a^f8d&=4S4ZN<8lNBB<%!i)eB9>S%(RN}ZZ>(u-m_m{km{H%) zy$*}{RL(r*X_HMO4;$`k-j^jB?@04XXbz)`+RH6MW6np9V3j6Lv$aAZFI05PsN>MI z3nB!2K!PbEaZ}vL=Hv~e^7dqn!l`mZ#Oz6!=b#CWpdaB+xku|_qYg#z5m zjID-&y>c|Vr5rrHO}U;ieX+SsDLIzG+owcH|FiHCXQ;b%;?5JX{g`^3sO(Uavax|0bAc$a z=x64!xFc>7qF_b#X7dl)8w@0mcSt7igTL<&t{@l3m@a+Lcsx=9j#owdiZJ!fNrp@# zB&+*>QvlysRCx%dZwVi(C_i8JaiL~|pz2{Z{r!LT1D~Jd+^hd~gHCeZ$m(FPlHk+6 z*;*=vPGZJ4w{HsfbEZlw-@dIn>+751%~m6L$VkclBKr&8fihkBiqwA#ug2lskGFMTWB^jv)Qb5Xg zRbxuQizO&Lb5pH$mMfmi^9=UdoqE~y_H&Z=a|V@jPs~R$(nqEh!o)&@qAz>+B={Uh zNU)QK@thiTq=LxfW9KpHW|P{l_Q$Y?GSam0M2Qw$8&M)@dGV#FAq6IeZ9XQ+rrJuw zK9cUE8os4=uRr@h`o{ag2xNMinq?IB^v&p#1V)*&c$5z#l)s@3 zf{=(KEmjg1YLpzdH;=MuHy84UnenZ^x$FCGM>EoE8lQV&NmV$MX$W!k*23Mbc1M$E zURls!VaSjgGg|Q$j=tpY!%`{_lRZ!TeE5{SL-BU(;C%tHhN2`#=~Dr9<`2f#nKACn zsJ@&;H#avRN-1WU2<)T9&dgFWw8Qalo7GXCDZRTXZ#41*0?0iFc*O_EcKjmE_V6qJl>0>;nXoK|>?qg8e1^Hn3yE^UHhQAg{de{jWB3LL_+VG%8Juy}Sp2yh4 zc(axTT9B8|l)*WBM;>bbYZd}bLyqlfkSVIF8dUy%Bzi?IC;*0L(tKh+~J zWm~(L{KepUeK=b>s=Gtr?NkYcG_-xF5RjD|eDTYXPYHz&#;q`Udd5W)x6bs%d?3Q9 zeJ?{m=sKJl4Yj^5)4$zvi8FE$`~-WL0_Q5WExKq<+cq?QFuO#?6?JV2%ndJi0xpb$ zG3wboa%r7TI7||}D;9w{K?j-<YAQkfiUsCW`{L3lOcp{}NV-z8b&(pz{1auazHj zp+AcRKk@!0~+Xe-UJH!Ka@8^5PIuj4$ zq1Y)3?g!@^HphpC(O!7cQ@{<2|INfGZ4vo+ZO=RhwwzSz0$9qS51Ti)DH97$cs>$) ze3=Z>bS1=0vEpC~ws$VG3T%YYbZ&aS+DpY#w*2vjH;oN3fx+xqOgK*4OiuR9B5i6P zR(1OM+6%~N&zT}v>*bKEqc0$I-RYnlt`SKqNYYA&-{)HP%ZgE38i}+fR7n+wkHR1R zSMi_3KVyJArah{#gbY^rP@)W6jFyMW!I`Z?#p&+~JEhY-eY+CzPuY8wWf7&3* zm&@E#206&zTwn46h`KI0*kTASNP5j?QY9A)c5{TGE~BC?JK#!OkHi*hU=nbqLmqgv zm-*4}seL&bly<)AP>0dmdR*YuV3RLE73O=CO16V9cr!<8cY(VIrYWXu)10^h@-y2F zsWQS!pknN|>H9&2)#>H(gF(^UG2CU({X~{Q{dhhE>=E3ndt?Q>^X7GEk||7=!?`Xq zy%e>l&MeA*^9kydNFys6O46;B|Mle%B6A>bj$zSjj+uC*O7yfoW7OVX*?bQb8%)6| z7p83jhnrGe($U?^%Cm9J%(&z>k$nnMDxOY|OaNU)(+MN>stL96f2}1+ zWbvx?v#+$!p;XMHlIs1)gUxxHoxsjF!1qMEEy)ut}qQjA}04#n%8r-;d z3POe}Q|9>752~?$ub!CYO2cG=+gprr^O19LSMyARx>1+UfFsDpO67M!lvsOZk!>YN;3y(A`npP!{DM?-@(bW*8Qxko9YTuI;sB%bxDt z+Sl`C%Y^WSAnq(qFLlTW_J-(KoFkATZ8OH(tNJIsi+A+aEm#&g3+#q~X3t8Xl*c=r3qk zOT^9*$RLzUPyqAzXA~pjWnLbqP7rL%Y?}p??&u}?_8197={s70olF1nsENZ;e)S2E zY+eW9*Ipb~{o^GTh~kg0K7l+$`h1*X&rMcDE;(%*mcCQ!e6{ul5+ z4kt&t``(^n_`~6U){N(zv2x!0joJ|Ndq;fP&C#s%xqk0_4EQoT7J>wI-#Yr)p!U+4 z$Q6ajC?x#)&St;-T(4yP6)9F@{sPx3z8;H$n;`QZX=h&FAT;*bt8P_Q5R#=C_$7Ug z&Zenrpn~*>%D0wgizq`#Mgn9CXQvFT+N07+lL!v6&6l90fY51f3jN$nBn_%6D`IgT zsy8y)m;Jxb3cp#&+f5&?)d}m@hR8F}=ae&0hJbhyT-x0=apc56m`p9l!UoK4!evMqj8oJaeY%C-$)G&|NxvWZ(Q(eaBZxk1QOJy8l1;iY$^gX1Lngsf;g;+4 zIT-SeGl$?1^#IGM^S-SFvd zkjZf_n$g0BUi&~Zg##$WPE?RP%AU%9mgBW;it!a6QUW!Eg7;Fgxxa6@psDzS)qQ3L zmkzxvrj-*0g%CRr#v~;Igh^bCaq;mGZu-XxLh2TX zOo=qMFpiz@sso`C@@p1tjy~!V{s>(?6!Dki_#Fl4f5P7AD(3P2|LqXR?EdqfhY|H@ z0BcoQHdLhfpb>P+?tj0{zR9wn&1BSN=W-|uaUXK&A+Fqf=rUhF$xJw}-dL+5Uk zb%Z!cBUomOX}fkTpt8I@`w?g%V5CMI^}i3+cJEgRH6xc3u7rK+m+J=~&6vdc*24&y z1j?|L5UJ%bOf#4|ajVz5xxzV`H+CR#5N=fHu*j&oKvZax@(q4m4J}TTFaP&Bdgm=% zJIv5=h9|3eOg$n;#dr(zW|DGxG?OAu>rj)svE>HKdyDcRt*h!HV*e=cC}P|L4W+;9mVXj*n+b@1D2@Lff6U(kNKSCD=@_8-9$(N_M(|LAk0a&9 z8({P_UZ|+DbCtha32sNkR{KoJ345Cd^gjucCqr%5ljl=82R8a7W z#aLXY!85Xyh`c)7{J`Bn=P$RJz$`tw$!PDj_x0<{fL7; z%p@&}zNPx3rnK*u>|4z3F%K#3sM751BFIwxF&u|nP1@mIy&fO&Wg(Fe!pMh>Sq_^S zR2+1Z@T{K3^Na6R$dr3MBT8J5d7>}`ZJ?f(J1xivGF}8v8}ONN#Vnp{E$fblD`0G* ziz*VCq0CvZ2`Mhl;fOwGO4&EF=GU4PS##>7wCD%vj}lZ4#H+`UQsA;RD+G7(Mjhi* zBPC&K_fdzv9_{)4BUS<~CcdtC7_As;hoFtpQ7Bm`!DNN*DCF!5w#pu-h)vCB4=I8K-iA6rgnyfb#Tkt8O_aJvqvgZ>MJ17;>`!q5xJ9_7+kK* zg+7FiRT+C%M115Ek>})f^t+^rEt+a6mAiw%O^|(@e%R!evzEu@OU=P|;b`R5anqQn zzOfwF8Pd9npZ-7Fg6?bNce)K7bbE z0Saz zEUn{;Xf@5~Xcz_odu<;xZ75gwpjkjeX8*ETD#)$hbXX?3oJ={U{Iy#eJ}c&8Je63E z)KCCwHO$v?7vb=gaVdugw-v&G&?RtI~YR7X*y_9+2vtpg8speA=#BCcfcbL>s zo=HC^WQ$cE9>EYK+iy-o^AB~`OisX;rS;;Tw`1#QccUiOcvwx-69G_UId0 z4{BwQ{$UrGzwuUwkhrI5cKF$ZE!vsXpDB?O_UvF(R-)1#X5j#eYBK!sg_gIj){A?t z81}m)5eVA>s4UuSxN!=^nT`Go5D4=NC3#GB3FmDhqC`q57PmkK;q|0xuX;I^O-M1x z?QT3{iPnwcl6CQ2Vk}K>ZCqPEUh9oSb223+%;fY1% zY(>v%bkgSkdq?^A|EDJM-W5r49pC-39={o8XG&>H&zeY0)C4UP{_{+zQaoS_Xp6|Gvm= zY;q4KiP@Coo-0jCJ>F%-mshR_Fjo|nl6CC8&e#RWjDMt}hwV$n{I1iYxH1gRnE7B4 zNuLQ8&ENdgePC=Cax!J5mbn$cf<$t|t+qkvX2UdE#Yw93W-uT5x6T*3Nd&d0JpB6l zbNIPmsD&FSP_N{1B3|~SgsmnZS7^)n40>YaV;DEAEB0eW^dXm_Pp5G=r`bE5&wx9x4zyDZv(=tmTTMRk5K;3^D<^)(6@8x3NcuG?mSA zDi$l+kn4E^q9Yc*vR`nqi@Dbps=9;79CxkLvRx82)`sFEG7HVNBsIQX64E6mDBTyFturC1dIZW`o@BC&^yYCU;nCrAHr+uOk{eV(95{%Vh zj$yK0(SHy4OE7GI0#ntlMVo8W0HzsOw>-zWu4`F=N(GRnKdtB4m&ir)nJD(xiXSy7 zew1HziOt%lZ)O0kuTkiVE|m1RNoYWlBVIcQ=i~&u=lh@fWvK!6@gupg>T*y`VDSQ# z1c45t)KAfj_A>sp=*~QeO9#6tUCN74WyZk>Zw111ZgC(tYRIn8nzCfhec{n-YZi6O zyK(yKzt_~^<$pwG4$(Sqnvxx8hEGU~K0xQ+zC{wzty^@&kf2v_9$Icyv84+n?HKk& z`+Srk<2AM`!xec3yiW7XRa9o0%iZ`xxY3<~c3BiY@^})je>{9kNj>#t=& zRisU~!i*+No}H7Flo`{^6>943MX4!6Wbub+R>Vs4h3?C|x!|nqLHouWjN;HH?C(Ap zzE^wtEJLaH#vgS@&?DHN6TP#~8dQ<)&)qbG;;Sseqxn_!9FAG86M1mzC@M6DdDB@& z+S`nzTl=2M7SndBQ5LqLFYQ@e=ErcX?Sw~%zID9iAn$(ktZr*D!LJYU$=CFoMcmNF zDHS+iXrATe(J5i76vg}?u6@~oL9=;1ua1ko4G`6Z^9y=}_qTQO~A6e+3Mp0hC4`OlmtH{Wl5VYqWWngXF~NaufoYz}z=`k~F~)QKO` zM$HuexP|TfQRf#U)McC~_a>TjKK)9F4(!PgrA6nt$584=5b;Y;k7b^$w!M>?a0k^p z-|N!?Z-2nT)US*5WU=ll>Ds26tnU`TeLgfBM~aNb5n8zP6?y#T4WO0*^fG=>Qrs`h zdGQ_giJvg$>-OmNGeV~Vp3P)y-8XRl>EOtQ{dRMc)yFt&f;mFuIJ(>dXjyGDsu=!D zZPWD{+AQoBSQqDUUmZ+jN3#yg>Km)&lrsn5FEX!bPrWdRc?Jebnmm`6=K}Hd?#3VZ zS;reQ^uL*(G_IwNX*P}pWbOUHQ-e%C?OzUZS9(OJhdNDv#Qy8*j8jblxeR58FrWS% zEN+HcX_Fv@{p|3UuLuboD6IZ2D&feE*W>n@LR)NYUn}>@T0Ey-ugh5Jjmrnqzvhl`e*@ zaX>XG3NOMvdT6xtMJds!T+RG{@5vI}KKoD}3u+rmjW0{e(QsGBfX7BC5HVs_Y9#NI zi1X*E+VVt0Y3-b)isBDnl42kM(RBYhtGrOX%2MyTjSh)i>fwfgb4sBX6dse$6{z3x zNf3hd^Vkv8+n?o6g`_F6JJrSSi%V=|-#9I~G@1VWRR^G*48%?V7f!4#A!(Qfe}ki5 z^ac;@%3U@|M9&q_m9%(PQB~U!^K1Uycj4)(C%|ll=dqLi_4mKTs1_IJ-W@L~8>AjH zwg;|HcyK@6VNH~~ff5D@K*iq+*d0z#215hTDUcHovNYt|79i%`U4yqkT6B3P_tKXw zA`3WG+H=0>imm=PY4r_!(>QrwRs7nu|F0XjCe^aW@dLIC0?UHktW*0ep%*@uckm|+?`ko=tUxA9X%&pZ?B_*NGP(#XQ0up&oDZT zMFL2<*l>~8jQhjRR8tDsKlbI7#N#H>V$hKnHun{XF2d2BcQpl)(+d@gi{OV?RVF## z5^4;kA~tgTvx>V)B2^}h%^Uf+%!&J&+6>oIs3YaWQMZXd2b+#&5}aXveB{~2`V0X{ zp9LXX6_{@-OT(1ZsDo|8e8!R36{X=%K{%d;io5ecD*iEb^X`w~F|Nqruu#fy;c-~X zExo7-W*_SoIfGrcJuButp6p=^#H?yYyII7_p$4&;Hx1}{OTb*Lo&yuuRQxpOn;Ppc zhBrxYE#S{A(++tvaayZ~99FOpktU#TNdrvMF7Bj7uu#^nvvtnmKB$RbF56l6*Nu&P zNkPfr4a55e2@f zqa#OA9loSG+H+A+k0WH0!XGh-`yF0HTvw+R+2&9BTS2=Nph5Vq=cvbY^%yok1$L-I z5Up79AWzr>TpKb7`bH4>%GA_F)u@$<>UaGRKP1|R={`hC(QA6DtS3Gblg^ZWbw}vM4DKE+MDOkDG+I zK}l$%%HK>8ZCj>bqm&X(LRFxQgTanZiU=U{LzST`#i&$dhZg>(8c9CK0W`M9 zw|2oea*_6KGAJ7|Jw%?~&kVQ`I;1^lu%2|9Fk65t)J8W1)HPgHeOw&S9J_cNe zBSWkzV3gUe!*78K&Gi17jg6_E{o&PT(12hKw+^qSHaZb4yB;^%{Eues?fs_2zdcgw z(TmAamJajk` z3i`fZPj5t@N|MGY=NnT>vr!p0tl6gL`>xm={W3Px{75Kjn+;-xZdgT6JpLZi4(Z-? ze3KUG10mXFmHrkolf=Ym$snX2wDvs4)41GbB%3g5B`63of8TEw@p;%M0iU)*pDISA z`UI6qR3ZJq2)78IaFW9i;RE4^&rvg|ZLmFD5H$xxKEi;p2;>d}T|Sp-<50k;S0k%J zs0@YI`cJWRZ1-0{`kt%yJN_J7`2Ma`m*nEf)T%_jalvzL^d2v|>RfQQ zNFu{k@x5{*Cx-R$k4@v>?`hZW&L;a%)th>^+#Ue$EbXhm3z5mt`~J)!MVvOv-1ejt zqF`IW`NLnvB6gwIf)yZ(1#Q!Bz}cDx!ij(H2Nq+9gIJFfLZUv048*wlfX<|PTi;Vh zp%8BCr~`^XEcA%`K|~!k~Lb-4=FN)EX2525xW}ug;)p^5>rK^ zQ?FxqLIx!p#nR5Lfs?eJ=N{mH>KNOLms=hdS&EFM{(Beh2IoNp)@6gX^mDqmcUMfx z$J>gnSYlZa(>SU#z#qD6GNd>wk)Up+2xb5=OFacsWQJsl{)lfZ=x0De0Wszki^n;V zD+nB7&c&U>61ZZ}gE@eun}HAutw{OdxC=sE@0t1YR~1HviZOIo;|M?8YYOtNzG>UX z2usNB?yP)BV=W5F6j8BY`JD4>CF#7>169FV@N5D&qEh(`xR*u#+#dr;v&oWkj@ z>GTi?MUnO=xOG`^o&%f{dlvDVRz1o%goFFqNyl^zvnq7wt_#XIa0GEj|0U;A3kOHp z0)4FEJ{J|`{>X|@Bc0Ky%A{{F+t0GEJ>%4i&YtK_G=_gs9S-O(`Us|T$ zAU}=}VmTtM`6xLc=(#C`O{t>HNAS<2oLUtfyLb!4|1+#M35GyFX2L6KP5f6u(?R9B6%g*IOVxSI-~RjQ!im*xr$gX1@f>H_jx6OnP&I z(p0;QW-b{hz*dKwcPr3vk4p|6AZ1yK)>_AjdVUGqn2INhE|Bm{WEn~PuPQAX!4Ns! zy{uXhL6|cuOm6X?!H64C_O3PkJCqFOZZy@QHlSf!Hn#_@S3Cx25Dt!xM&;)=DYFi- zpHiEjna?d<8lB$Yiy7aw~gqK3p}d zab^u}wEInKss3$tYoB(-tPX?TTdk;$&O0&c50@Xo-i1X-4vKKGH6(ozil8>phq`8{Ey`2G#kudYgJzZ5doplj9{i>M)EG^h7-CWW|4jp z*NPulxCn_a7qC zf!2t*rmUZ27y$2fh3(3s- z7KDnJT=jcWLRq+Bmjb#L3*rZOf`l=z#vSb7Xoj@JQB*(dVD*zDu^NfnLzA0kL=W1i zGX?R3|2_gF?gVM3&k4Jf|J$(f*1D0CX-*beTwe!UTN7z`B51ar11NBykv0f(;JK80 zTk+%tuc;<`$`|ibO|$h;=T*BIFU`-OL7S+6k?9b6Jk3g*OA(b@&_VO?Z4N|W3Jw4l z>95xB6HO!XeLA0AQP>6&E9-Bww724VaqR{ybsoPn*i;V7*>7`&RGvB06nV1kAE_9e z=zM`%s-neae>ikth}F>qc@y*7j-Lvqkn6vrjAVWN`SHab;9PI6+=bzD70RT300bu7 zFf3Q=fvAm%hrzG*ROli_Z8syJ0%wwr)CWdiy|ZYW9X?W!km zULS77@Qtr3>FIhY%WC8;11gF56hT9e2@-+mN|e5JfISUY^p*idwg(9G1?ScPJ7oa? zXp8mBr12l@rrRdj3R7GYM7-K9kelTQQi3Gh>G(cA6|-sIzO^ z{}H)P1`wM|H`2~Rw5(r8O$F;@!g;>`*I_Y$Cr`pw!0B+j0Q<3V z&4tgU_sRV-#HQi9e2nX={oW`(TO%I7TNz_hdE+nf*sM%m7Yhq34E0U`UezNC_-8|m zc(G`RHmCf&+?ofGe8#b-oc4Pe;EmQ9%z}PBFx%O&?hK`sMu&=QbC%X5`x%dPb>pAZn_OinyFeAV~$`Ny#vI|wERTO1XUstiWeQf)Ibw{i{OWWM1p^2s4F zwEo;Bmz-}#GIL^lQnqbBAABQpzhSBkfZHRdluOB>K@OC>me2jpECvCeOL<%S(u)#r zPDiPNl$H*l6qGE(nMBIUA0XAVJ9}fl0AO+Cnol88%-_Z1fhNg;ALBXEw%&)Dw2W@~ z1x*0t`sMM|7rV9t6tXg)TQ5e3 z?nz7d(zk5r>%Y?5!cf-ZS#yx5qd*4~53&#!K{|o#l|M=p!l7C9jso$8zlfLU^@;-! z;S=yU&0E?rm5P?aEux7L&Iz6e7UZ=97YR<6|JtW@fTwt zsRdMt3fKTVMPR+#Ymxn-2bQ$Fs>-!Q9EI56Fh4r_iN?)NNc^o~|DvuNcJYJ$CUhSb z{|=$jj{!kfA>HVr9(L*B?Vcj+z*rRoKPk)t0wQ&GY5AmzNvLhAz~Z z2y^X@r&9h*a1Bt~E=q208EDZ=uH0t~m@5%E?u9{i_;$QpV>l@(!j<3VdZ3}Lj_s=Q zm&Ns6_(XcAFO5loH6+zV{9D}m-VD^L&t1Dwzg1p0UQ2`urDGIIhGHrdNDdjzHi2lW z=4Xd3htrP75Wx^NPz|O5S#%S4Rc&=nwR|yU$3Y7=gR@eMOHUEP?!*QjfC@1#Kgu6p z6$tE*)NE{?W|V_SE_>2ZL;T1B^Y0$Ge0!eMtl(Ht#HH7O%Y;lmJQC^P za@`im54dIM8*C<( ztLnTdEy$S~S-@J2ULO2sw1X`Dmgnj7&>?KE|IzP{JB4&gR6W@$;+3 z)WcsEFo>zds-%Huyjy~Ut16hD5w;fBWm0|P!*x>F&^djlp0_?CM#E1Ni zK^#dQY?+F!!Vu8z{>jL*ss+Ql~PxzvYtdDm`_N0K| z?tn7ognz)ZFM#7BC|`!e_aixiat25^bGC}MS7=R;wEl<@1yis8VF7fbxbcDr*2y-7 z?+m)p%dLe|aT-}>iU%|ZReSstM1#V1B<;JuD31W(FG>|V5Gx+Sr%9+dtiNVxlmG`kF z&I}o$KLmY-l$DYt1WGhDiKJN07+}O?W=~4q*iN*B-OkvVzf=L#01>(@ox?yF4xO1fPQ=3FTN>gN6lT4Cm0yMy^>r zZNCT&8*VVcpx_k^#6v}?Pb$_Z{KNHIQ4$SAKu(J~TV6rIkNa;N)i~@5P6YvT7d)%H z;CwF3=!sn!138EtY~lzC_zg`D+L+p!_^A%NvvpzVy2MkZHr{gm9ug+rZ!tK?TDqS& zIhav!Ss>$}Nf1QWc{ealcx+$zs{^#l$Z?ZWtNGt8y~z7M{HCvJ?;YRc(w`#D@!M64 z_|zUECO}R+yKbd6Pxe7fdLU&zJUv=D7o>U;6zdkFitBOHV){Kei#7(EHOgd}{*9NE z65I;H%%E(CA_MouQz#(GQ3JlY7tQut&7MM}v~g1Cek^VsvOXpsTsgl7*nGBOfKd|S zRi?v)=nlsH+-!a(M4m1cTo$BB=7+PB`NSPX_m z_{tsl(JaJJTF1!AyJNUz_3dG4D1hiH8uVq8Pn6jrZ#-v%xY4PMphg+GNdN6sXZ7pb z+!F#G6>^r#8j43>NuDGkRDBlvc!+9X^(7#T-xC>SEiqYbP)>ppvpD1pE}5$t&se1+ z?hgO;?aPCh`egHDk-T`MZaFt4+=Ha@98Dgp1Jyh~Ep8M0W02)REDSQDfjU~#5M`OO z!F@KL>)Hrc^&ECL1=TuCr zrOQm0FXpFd-jC8lQa)Eb^N>N*enR`z4HINe-8q7T={ zO_xKNMF5{DCmJPE=C&!Tm=d8?`4^ZKh7{8S_AYN|IQ*YGBG6^^<84n&gsmwF>zQUs zT7sk39#J3B--AsfgDplUC@C)0QwEVuV%;NMH@Ee&(Q5ms&Df))7zX!$K(rIq(B4=< zCetIV?;Oamb1K#`=x7?S{&UHZ%9ERcqfJ zqMF>SJ8a90iCJ1i-n~V;xMSYA0iL6pK9MD^^g;@q2%T$>dXCvI=d6doo{63~ZBhO( z8hqojfjyn)iJCb#-@7Ji@)*w|o$z0Gl4=tIwO#85lO4yBa(|9lq0ypTRED7H%Rubg zXvq|J>1w8o7Dn!AwP}LIaZXYBZL{#q~n^knHDv^PX-L zcA{;)v4I;@U2bXg7}= zJtAN}@VXvBuS^=>i8qi4sCFpQIg~%R|KX_$N|46o?&B^=j2MDaAYhHC>_`Z>SN%uO z3Y16r=H6=A_fU&)18fDH*|RKgkbR(ObcIj)@R2rQCT#=xw?ExNU_{>!iBT;o$@+(r z!C`h(&o9wYe5AS6Pn8fwa@5wIHvc;T((g#_HB#+0`eSR(P@){cm<_l0Jvq9WkbUY0 zniaKJ@wX(ed`2UaiS{yBpkziF`b-lYtHBS+A?^(G7k%lZ6}y%^4n={IR^(Xup|V2r zv&dT}-8sj<7n{N^T6NFC2S1Y`L@}{3)25Ng+_BDQrbE+p%EG}3vx6pDlF|5bZ(LJn zW;WxiPZP&ZX;JbXJ`cERHqx&>Fshrk7J`%4_Rc1#Z;p@l()hn-pgZI(FtSpcunbJb zQAWQDo_M(-gRA55zLAF$`H+jh9nWL^P|q^%{-rLC64QUAx^-z9W>ZMW>S1Vm*LMoX zcstYiLC6#}ea4&IZ)+L}-RTHXecH=repFb!6m(f(qxXorKSjbr35_YAD`hov`QM%i zZ*x%dI$W5(qKF9g_BaM%2C)=WJc`*-Em>^Vj%13S`J)AjOpVusMY#41Hb>{7dqYZ9 zP>Su>_1LFsc1H2QzBFpZtzB3)3g-)bwx8kpY8LKh01$Sklu~!HidAgKTY{E^~;of zYz#h|`1=dPBTGiSAB-D61s{g4QrVV~Sre$Rhwpyyt`&<^7RQ9J*5BsKu)xj)cHCZ! zFw18P3gAn6Dc$WdSkE9bcciF&|3IDeiZ~8%6skMfK`O}K{6QEMuTQ*%V(#ghK_%*! z;;kXSMT}Jl^yz-_EhaZOn$nVxQg?h1Cjb6@gR92jG+ZUuT$-?Agh^NWu+7>&>T5ei-YP}Hvj+#r_a;fo0lPQKQ#*adD~}Zl%MIX z!F~^R?0yf40}ly;b!=sf&bit<0pPAhdKUwh(Ccxx1L}U(aLOszG-s$aio@I4NXF^=`20_VC7l@D-N~5rQkIX+%nt;Br01err%) z&~Pvc&>dSIQ5x20gyV083(-#AQ4p(P?1X9{;8BwxLxO&%+jfSh*erPJuYXQ__v^Sq6hh*zGPJC>}#-yc3y5;LQ3c<9akx(u$>K zT2^%TTg^_yo@tRJ6-M1MO+|)MGplyJD*|3Xx$SCa9wS{-%i^o~Yl+Hs-0=Ui-4=mg zCQ46_zw|Tw8O(=pv2Chc0g@mB4%xb$WjRwSPd(30bUi!@&sR55fm zVmyI7|9$`K%jxSwZ!2)KweEVp5o}w%y?xXpr4s<~XCAjF$aeR~w!VBoA{c0tJO(u3 zNRLJ}$&KMEMDtT6Uy2Uc3SY0QdBRDZg7a!JCLljux74GmNr&=h_aah-$QM<^-ZF0;Y<9F_**G0)S}6BIR>o zumPB2OF+`GiKO*f;C2 zKyg+pYg)7@^S)icWp#up&UJ=UmSBl4xPPM?Wb{)}<_?xZj#4?Ucl$euIiLZ~XUlmM zFb#@%^|x^%D5)&=y?_j$bgi zH)Qo>1=9P~y-Mx2ixt0Q)usF90%Ju($}Xxn9cO1*%K7?I2VwJ{mUjG2`ZznvPMWUoRR?mO6;h>QA433r|l z>VOaW4v_>ns;HDOf%@oy^Cd2GebpOIv($h^HG^I4BzI#_M04{^-Ag zpj++7$zmSKy=VHrg~xxDzi0`DNQel3B`!*CvmbNbo6OhU*tR`4!jic8k@vu5b6Tgt zw{p<@nw2-3greB0YSJ*|p zn~#9#H!1`8X&(S{+E6o)VEqZ8%v=L}`Em(~lt|pS;{nURK1NzUmtlXhZkU{Rb$g?# z4Iz|*8$p;J*MFVQ2XJlc#yF|&fy_NRTrXfdRBs04#D#~CDe9XROw#Qaa^kdIR*g?P zZfGt6AJF_%qqh=`5d0|BFZgc~n8gnQX4ZZ+KF58-Xt6o-&>RX6eiCm1>QJm9Ek3mSeda)|f|0K0E2P>Pz;I6+d)IiQ zSyBw`%R=WB1*4+Zyj0m{&P4?y*Hdb$>_|~P3Tq4b?agXapY-qFr6%Unz#J#J5LYqk zT@-`v_jerga{6}O&okz~|F*iQm>0FSK8r`E!Nio5{#|Hm>VkqrBD$Ouse%NpdL@48 zBed<{_^DC){k!X$=c!9y=xs1B5*~}!PvSC5-kgK!igawG>@05kNOBR6>yxd7P?*tA zhPl`vEFARDCgW+tk_~s zbKEddxcvytMv_Dtm0^@2!+uw2a-qV2uJ#RM&0~^0TI1+k7Dv7my5)#8E?P{k_ZS`i zJ|(T&8#kV_?il0L(AL(0nDIL`LqvHp<8O$|I0GOYYHb8z)SMcZ4CLsX$~NT{Co?UT z(s>-lI85wl2i!VCl`Fp^SLSQ+!t_4o-bW*cSR86bO}CN@Iii<78D6kyHjm8 zW;~QI?s*;IvVpqct1gn<`vTUYl#LScH=4X5mzPIHRT7S^fUFVL8{Z zs5FLnmq|m9&)SE=+#I;h3@}EP(OKfK7d9l_2hAwcsDcZ`B7f7uKA>qUjd2=@AL$4E$q+2tNJAg&9N1Hz@MRIFE^CPqZw-7kJnxx;hxxkTIm zt$QQM3t3SN4hjqIms&2=s(;b$&`f<%mQTc7xF$mDw-T~l==Htc_aX%>h@nA5Qd>Nm z%LPn5@>pf5C~HBvgb|Ljlk9Z8&{)Cm^v%HY^*{v!6JACnl!P=ZytW13LDYwc76O)C zibwkLVp3<7)-|J%5aeXWhT)un_#ZtD{67j%P_j(V7q!8;yIP$G({&`@GtksUCr|3iGhrJ zN4^=CnJ+-{h%6z=Bo&bmcg#HH5ztM<%6b_ns$-JI6=kKKO~Ag~Hu9a~ecXWWbt*o9 zQ^LQ!yK8%~pMWwX^*RdwX)UMuMVoKudXB`~>#02C9{W4-F8gTq-4WYw(}}dXYQ2lP z3I2d%{vIV!R zkl3^zh$mGO;c!FY8Lf~0#aSf7+DWsl(r2NRwnrWtuD{9sehVv|B~S$?$Xa9?O}`IE znAL$SB-}mkQhig^aiTF9*eV(pwxSnNSC)E(fk#sncTsOdbB?!RFN8CLCj>RFhaLyv zkqS3|sYPYeajY8s2|fqH0;I64!VC)==kLsV()!3WZLto7M&J;%1#%-W=59y2kpia> ze)Xqr>d9;XQ>y@(;>WMCjdlzPt4Mho9tI0h3pWps7qHED(!BLnp!IXm6M_XCU2!z6 zgiREAf__G?!EPQ_b!7#?Pnz4%V5e5dK^o_{H%B4cKo`AvAa5!#ESACrvt_euIV+2< zLqLH+!Yn~i?RT4znD68pvBJFA@iZg{Fvzo#B@CTWoj=)VAPkpG-P!tLb46|0BJpBL zcl9DU=L|la(RAIVl03y9pTeY6LSYyq3&&DiCO*EPlo8vXgq_QOEa5v;@CceZ_>%qb zjl}4lFzZWe?2Ca6+RcEu<#J-IuKjWLM~82c&3U@n53^#pueg40YaO>Q*&{ELZJwz5 zmfC!C2VYuAq8f;(z62;oB>le~=Y=``ziho9+hubzTcS_3q5O$cgxI1C3ADe?wQQqR z6SR-DE3$>i?t5Qyc{c&sL!4^?j~kZQuff9t4BZe|>(`(VA@dd48y-T!Zipj2R7VT6 zQ@=mm!cZ_yLJ(N`l7-~T^Jrg;!g|8UMQtz<$YXzB`gFMkEl%5Y0dQgnY5GOu1|wo%MvNJpJN{dE6ppcG z+kRC)l$c#T3^`IPQjYf^e-Wi&m?O{Am9xuOv}xHwx=}!FyBgI8&EMn#0zysg43d6| zojVaTu~NJBq~?+2lUNGtEJCpNouCZM-%XNFCOX&#pR0ec&cl+si(9c-5lTWVPFzDROfjE)ZKrR#Cg4+)@7e z<hx1?Zar^7}hBnw*zcpXAwI)VanF{mYrna50d zkcj`Bir5Y|R*Dz>Rn9#kA@3g-Cg!rc@h;!n)V(b05~kDNUAB(y>at?ahK^s1#Z<)H zcQSpu+8VzU8Om|nY}>R&aMyj<0wa_7P+x2t}w%kD>`EXY| z^2*|~YC?X!a zOX24STNj{wd*GBOPW)EQfe3-b3CdE|s53k_i2QC*GJC%1)}@km|L>6BYM+2bnq7~V zkf(v#hlWm-#fOPdajNB`=M7OJ&d1pT-6m?ebDxU{T>MBQFR!%897MG6Mn8 z;c-)YM{D`ik12t2%<*1lGFy7+rh6s z5Y*R5vMbNqe^v%1fX@p8dJ{hBjxb#_lDq?17dGg*jF zeZnxiZ|8SGNfaqbj_*Ij^pMHvHiQ{pgupibl3r24X8jYC8NuP2bl>E-x8P~WVq4>m zn`{>+gOZAWyqY{up>c1&tKjSvCL=2qIl^HHE*=LelHK@C0I(WF0CejFRKYfK54}Tj zu1WjW%h*F0>ZLb3>!qYk6{=3VT;L~OgD`v`7K$4!%_W2K$HUY;V-YV`s9p41p9l^*Z!@o zY!8fXK#24c`QYOu_hhwOuI8t$pa^9b$*_Y%+YTPP$R5nBRIg{}Ip=+~$D6BzuIBxZ zzGtUv*}UG1b%``0`zNh?B!?qbT`MlT4G#|PE!JNcB72PA2UpJH4U`f&Yqy0N`K$8Z zor%n8xiaqGY!zi96f_)uxy=%A!K>Mlqm*!=J!CQ1mUGdS;+x@QQZjnTP@j9fE<}wI zY!3MsW5@@d^gh4A?LsDz6_*&_W&s^Jf=<*a}dcety9d3=q?l z-7J4}baMSqz^(f4u)?7Hp;i?5*TLTdkXV$_Fio2%08;(dFY0yOp0JatjAG&@A)Rjg z9@T$Z9(26f?uK@Irq)?(qJVbxi&;Ue$#@hTA4$j9pc5z-Ah?X!}~2M1#BmZ{SvkR$Q-b5-qmE zdpmD@yTZ^%o^ibS`ohsXTPXs@k&c^nDsRA$aCTRJ6^258WE&J_zL|HF|Bi4V#m>Ru zVs0--3O*jLHPctoV5F*G(D*y2f|lx>*R3V}kMwc(>%?lNkfy4#Yj@XWhpmqQmm?Qs z1QLo+oG?C-0v7rn70tMT>eC1FT2<96>CR%-w3HOHA13B923P~=>?l!S;S7#2S_(%f zf$3+Ru7mNlD!C5VM`5n{Xm+Qr%Dye972YPU;^s871s1J+>#vzlv-#Rp-Ew*+&Z(tZsC;0I8YAgy?bLdW#3EV zKl@TYE|QwpMwo{4we)E03d9@RZ2itlO{}#d7kY;~K?je-79ZiL5+ofHhaYqW&sD~2 zTb9HSugTAyaGA_{L}`(d%Pthth1-9n*x+5H-L0k2k}pregdWpfwuO!INO# z7vXB%XNXcg4z9@Y@pa*~KNCd}MDh8nTCli#K1SIWY0@YsCojjOQx9ikzPAhY^#nDf z+8*A+Z{Q^|sdIbza`m?J*14={hSrT+}e)u}Oo)i^IX0Ov1d3?6f`e~fi<3o-~IR7Lxe`Eg4! zwVG5FLX2~Xq(r&TP;VnP0_^7#LJ_&J$*PjA!QNh+iI@&S+-h-6ulr0Vz0D9)wj<@0 ztg*6tHHyTZU!|d0V|3uY*SVfB!t^|i%S@o&4#!`!JG+#8+Elw_5o^2p!J&UEnOU1g zbYFeK3kNs$^?o{;(OQ%J1Mi;iJGHG z`rn1fgvm@g4x<|quY>3Bp6)_FK6G5J;q}pF+x5ar<1n7=ZT~qznthOSU*&OKYuN?l zuO;#_$PN&eO{eYGja@!-uV1sXcwWNgJ%-(x8N!>P*pNUwc|TT^&8LO_F}m{#{h{sn zElPEZv47%U-;kE7V=b97DO2aWP$N?zANdooAPjV&6`5vvsRql8%S43PzufOd=GgC- z_NBF$00*;tQ+MPK1*RKpIsOwja?jvft%veDpYzLX+_wAQ^1RL?A+i*(sNd**5_=yh zh7v2D>}I{Ee7{#`w8Eh zg^|$Yj-z(m=o{2Ul~UW{CqCxKvAS_y`fSVB`}EhDSvr1U24|j~Ak6HW`l1RVjaDn8 zDf4%kN)~(K2vEN`X$nymPC*=5cl}%4)Ylb>)Z|>PEe@5F86|VI1@1V>W0uBJG{ATL zzro;zyj@h-m-gz!po|=5c}6Ci?(6KMf&S5xhgDy(=?QJ`6JD4V>Njlqq~uETeGh`rL+ehanH~auo)?`*ai5x|4j57^|s%@O9Ntp*VK}D)Y$?SLo12rb2#M896cSzHakgjh;kMPF> zNrJcGhK7vS3L}ciJxXR}B#y6(=`yicIn#LRH0Wg8$YFWHso<$j2pG3TUg@}ZG-W{> zEnkRabnx{`7pc`Be0TeM?%bt~{hktdaM$%Gg)Y|J@V=#}9jQSr>@$~ss^P`MB0_!ykk3rSM97MsmgFxe zqXuSrqS&nbc3~xoOcU&%_zh#oSJw@SlA(F?;>Q5%XBD~DWlh?GomwD86D^87A+j@_JK!t9LAD9 z4}8i^Iu3@eEB;OoLZpqr!`Gl%(Ji|VfVC^0kQsq*qjBcdV#JbQD0(kwrrQ-A*G<&; z1wOsiD4lD>cf}M8L$O`^B#xYbJqGw*ae_5fC7V;$%(uvR5^&x2Ynn=oDo^pz zdC=QGl<0n1$Ld4xXyMP3Y#J&??d~bHgBU4+YmB`!I5rfOKW zpqwZ917}XH{=@vo$zvz*!-EELCs{N@q1n7!n-(&k3g1?CQn9E?k>fwN&dxkw>pbGS z^@uey@8!A)TZ#*E3*xZTb$mdt?9bN*+V7loW&)xqVS!imjx#$FG>l6bZ?KxzTU`es2Hss&+;o3A7P*4aB-Z z?rfqg2#q?m|DA&>NiKr-^7`C;)i(Bd}a;PihLJ`xu@gSmx)-m>> z3CyqlbPAgD&_&+|#Qb_6!9j@A67*4@3$9#T5`jis8CtmaUN5eNwQ zumAg`oq-78=pT{RH&%$`gea5}P&pwD6-MBuyGuIO~%gMwa>@ejUP3v_W2cK}D{>43>2(r0ys%^u} zAVw0MAz{y6L8w#X;Z!+RAy%!rI#J?`GA>%Z_M^FSKoehdi@9$*l?e+|yMhig5DSAo zo1zT6ziF10_@7nQ9cU)BO=%mnf11=m)VeySgM+F>r7Z<)v-5o%alB_FK7lua=N@bp zq!sEY1Zc}#7r_R@FQ9^jgZtIFaw_}j?n*Piu4yQuj{7fQkDzK42a2b25Vg`xUm=90 zz$YUFi9Gf43p#q7x+NA;!!*(?N;msaG0~)X66WeJ>ra%QkS-lvzC8F`4{8`3EAFQ3 z?#9RD`~Q2uPWk-_Snbt%Kc*qP`V^B(sDt9@b`gjro16en0N*GeQ~4R9cCdQ3sWmDF znPW*CU;6s89n)a;BIa?nF>YBswkzMuf_&)pDT%SdN7IJVzNEU{Of3vBnTrogBj0SgCul+eg;r$+8??kNAf#@+cnxn^dHKjmy+dX| zL+-EISBSYQQsEWu=b%_cpU{g*Q6n2$4NQkXMAAmeqg=@%WbUEwPk|kQes3bc{lOo2*^QmJgpob?&-BVbZA4FEP`vjFs#BmQ z`ONheqk1-gF}iEMu5}8?x&1c({lHyfo8L8+vY(k{{%2eDR?t5(;LztBqUUz@V-;rk1~J&e$K5J!6$5odt$PS@$0innr!xw zC}`l&AB2*gd4XU?3}&VS$6uFYf!;JV z+)I7fzEqp7HvpXBSf-2q6#_m!fyttKCU?LTZsEbknd7OsRsy^E`d2eD!KHXJpNDGW z$EB{kuC9+@mdowDRQWUdyTXyKEbvh@#iZr-)T0dU$tTo~A+kjs>f3PrbD>1-dmBUk zTd9*Q(W`a1PQp70e!~|YDZB}|-WbOJiCBP`g$4QOj8JoTGJdxJwXn&F(Oge{_H7r~ zZmUZk=JYMhJPw>+;BLGJqy={`sJ?F+1(I5i>nRD+j=$@Hsg7|mB;C33NKr;x$HrWI z;cb`%XL>&=1-Hi!Pu2MNiC6^jBv5BAF&E^{q^Y_p!9l!(6wt!xU}~gK`Y!}muR>8x zU6X;R9%8$wUVxWXQc9-%M3u5fsKc*ioy8RzHG_pLdbjXzUdC9cZ_P*}V zw44w)JTlBa3o4*bYBK$xG{fJwN3)}kA()I3H671h4VXywpiH>1e_$i^@A*UjuBedH zrup*hPw4E$cezRxMpezR!W98X`=<2?COk+6xM{*&wYK6=n@XOqYgSWg?it0bM{UF? zNCT5APpR#HTxtSHUQeJRlVTHl(QILz@OQ#NayO1&Exi;T4$yYrAxgv_ZXde;VnZ^{ zm1DPaQGll-Q(EE4COw0yhcJltqO4~p)$5Sgn|ge5Q}|30AGy>Ye(QX4BB-#__4fhl zyY&6PFK~|$U=Le=gRtn2j~4S^39=Vc*{g*(&bkw4U>4VB$|Yo=y4o+30ZIevT$Qfx zG-hv&+i=3c!GV;Ii}w~Kjd&@ox!%MSNM!L>n0O60C#Nc*_O2niA^!t9zsx7`#G98d z>@^=Rf~(OObcbdcMg8(XejpJtlh@N3_sVLG#gRPASk~B$ZIak?Gat8>f8{Ez}^|Zz`_dDBQB%gp7SOyu+aJG~aAQ?1M zKoaG^AX4+9que=*jhnt8UAh||$j!q!<4Bn;_40HRG;$)?J7}#HbcLC5ZzWe~b!HFg zH%Pc}j4*${@_1i~c@|umJ&m7(Iqc%L3gf;=T;^GAwJUvWpi_3&z0K&B$hEYre!kAz z^O$>EV8hAxocO)eYTeQv$Y5#YY>4vOZ9~Y+An(x0{p$biSBZw5OPBxm{ju2>vJR{v-(ByMHpyU6n%(rS)+&n zmonq{A*Mf%LKura8ho`Y(vZs-Xi@6wKin2#7rso6dPQ-_=^INKrHpuOetX-T-p2ep zb~GI&$Luu&gA-G)>?2Gm$!Hk@HNCg51KF1ADdo6MpxI=D%va=eIg-Rk-_SayI#1&w z|Nrszj=_Qw*e>R+i! zz3+p2t#z#==BXr(TOgzPsA5yD4D3E-UU8T%O=)d$H&QycHWKoTOkZK~Fsn=dD0{(; z-1y*ZVUCmk%Aib#vq9aO`ezG*I3&M-8GU;jr7?pzH`sb2auRPL{v4SW(4qP1 zaTe0nb%#qC0c6`9S+7vO&D3Q>;FvsE_dXF+; zVwf|)hqTn4m6@#3-4x53;p9Z@pQQxy6~{C^eXrrE<9B-YEEp7k85SwJ?1NBGvrwzv zsoXb(EfSbm+F)0i(*jp=C&XE71DKB3a7fXr36!Ie`oi3z?jdr#kZ||lU<#XCngFU6ZPWmE0 z*zpME{K#VUD8>IwllGDpgFJ()dm(+KUtSyg%89BhOMSi$Jtto`w};fEWaI*pqzkrf)yK)d_N_WT8pW(yZbgr5 z!expKkS-)1hk91O2f8fH4s;%`e!o~1C34GBo|vmat%>#W^#i+k`xZfa_;SKHoxzN4 z!$X!I5w2EsME&SCkv8YZ+H)AQb!xV*U018q^$3_Ca39@|Bx)3}*E3|=3iL#h?<-Kj zg`Y(7KHJ?uwd&YnSLXfiB~%vtEd;6;(3eX1OJxrEC1MlXJ!v!ZYe)FHx4Gay_ezaE zhiOC7i)G8A@4L`z>0r2;A%KOzuk72kH^#(UyCNVUtecyCemoBVodl?{@$tn&aAs)6 z0%ABOAy$6Ww8su%Q3@HUhOO49_*B`N@>tAWZ}~lu5fQf&piO=PVFTJ^`qgQHlob;456#NzT)1?f-I zI)j$Hs5%9U>q&%9&hU=E6d_2Ua+%pvnl)WHPSYO~6T*D~OX-L?TuynpApBhX8{J8H z4b_Qj{O**7QelLBYJ8p6$2}{y1^Hxk%I8S;s&JG(Kl?mw3;lS+oX^pM$S-nGwdVaB z)dmXg;Z3uqmg6`ZoN{%MiBI)HR2;6{JEvjuN&~#SA$=55vX9 zCDqBE{*#)9_CLE-Aylt_FRB9k#Kgoba^JuoQOZ&(;JFg`=5E@%lC}x79jh*Y#DWB% zxfA21&nkSQ*Ru$|E8pPaAgx-Ytj$v#{x_}D1O0~%ri=+LgZZHGblWhO^t(C~rZ9Ije`9z)y&W8Im{@Gbx1)9w zsM3;KQR~+LbEIK4N0n<*!N+UkaVXDoS{0>cY8!h65yqk$N~u{mS5UmmnM|AhXqs+4 z`7`m9LJv=bZ19RyfAp~8YP{>-(&h2-xSpN`{F95j-me>Pb(w~l$)Ey)LEu(t$KO3n z;DQ!Wa}!&TJ?HrM@|(Y2(60|xH&ibwff2M3TzS%>5xS5;S;w&0z(bWkuyGl7PiNB8 z6WLzBVx>Nv{@AQ)#k$_OXRbrtRGPb1f56Kf^}_sOohPfy#M#c6gYEaXmXmn?F7rWb z$F5^bfRu5Y$IZB+HC2Za!XM<+;rNW$;_Kzn(mphl7dV4E@2+W4K_{zdxvJXYc0vQZ z*|-aC=ZV`gFAEbdFK3wz6~hYt{%;7MMZfn9m+a=(=)lNRr>csJf`_8+>h_W?`%s0t z)@%>a(NPeiW^=g3#R=+dA!5yump#yIj8}pxSpUr)K&ImaenNK`y3Ho^g!gOpn>8dE zbn#3zRO1ZCU%#7rYU`(m)fu-y2Uv~|uv>wOgq$XAmB^ zGBwH={I*2B?9F73#vALe;n!T>FLJ%#PeUmO>H3acz{>D|KP?4>&V!)9j@hq@lps6< zcBX;%`Y**loZbN|R zipNd6hCZNFcGG!?#G&jpj1Gio5?B~1I+j7%May*6i*S$L2srb1oT&*;9BK^j_Gu{9&@f4Jk&Y)#|(S`@eH59%5a^N3?Ms^ z_~T4k12#nT574WczN1w1%ld@>)v`Y4 zsuIrtzc~|g;P1BWj0o~ooCa+qNL3+{P2#tntt#c8FA!P{;CPl1(2+R~txsZYOII`t z4xF2>V$*OKJ#CwJr8#T+gGfJK?Xj%!u6*L*Wd`v)M2Q68^2j1%<=WI}H7?MfE&}db zD)RkC4;J1o$ll`Iw)O@;;H0Xy#)C>Ithd;>3IDSbUB*_LL&&HvJUqn^8_V9qbJeg7DfO~X!&0g&iKjG zuEFku%!63OZ|f6#7=tjWEEryL%+0_a*=YKD5DNmJKi3R8aUbaW9+|yIS4agL8dM2l zuy_I5>E5H11Aow?{0l(_bB1N*a@eG>YM2j1a}Bl&Vhg`J7x~#P(l`?62t+j6p&KDHEj-n=_`?UNoaLtzHW` zm!~uWm*rE@;>;Js6QV z?cM{-fjj&GQcwu*5&U1yd%@5lT>oy7KT*z{H*G3Fss0@>|2z01+U>s2?uwATL)d=R zIegwTf4TzG5@3q|&I|sX%PRXU0y(v>KqG$|UZ)qJ^4YMh$%!V-}_YObewvJ{CSJ~F3RJ+ZVonn2ke9WcMc4^ZvFbhWrTk=_ZYmLSmA1+44YC`$(|~oTUb7WmZ9QM_sZw!3W?LhCStQG3a(x{;JIw+hRV8tHNMlq{g_>2$v!lG@*Sn3?s>!$GOlKkr)&(S^i!CCoYSrqrJMKUg@%~=YhpfQG z!^1tJ$A;fgvV+1PV{-0rAdDWP8yla2sH!!i#h6Y{-q0M6Y;oibTiB45EuMLD+`-~V z3%2cFsdUOi-8BE$j5B?jX|Jjx9xFt-a-i{ z7Y2j??O1KYmsIrE+a`PBX3y={u_@eB`S}cMh;tAZ6&vLcop11YsAu#qYGlnjZU1xM zjVyu3x@meM2;REVFK!l?AU=uE-N=`cU*ZA7(gbLkI?-UmDD)UX!z&>_Ay467CK0)} zofjmr{jc2$MuL3-K_$_Npvxh`K_fAZU<#?ncqVmzdikXiE#QYR^n9-{vlW9Et1fsByjvt#6KCF5;br~^#fT#IYnAY>~ zc7-E^hK_LU<>a@=C8-Rh_3JHEu)V^~Da0HN6-ab0GE{EO$)bI8^mzDoCZj1lhs_TZ zXDsHrQyeDV-Dyw{~L?|)Bf zZ~kjiJNMSUCWi>Wmp8;a9CL(T@B*PD>Wnytnw~B~a}-lTx;gf=X6$4WrEnHO76hdN zqfP-d$Hn3-tMu0tMt)V8bMN}G*9J#XdO!st;(?i(z{I{RX7odddq33}J4{V|0U2-Q z!o-&45iHQYx^XZym}|o}&^x4qD_~rrjU?%Tf&GcVcj+3NIi5p=ej;pRzossnP@tvuoFW6&Pt|<-zu3+!pRc^;0!vyJ-j41y?fW_5)&G}17S}_KbwgZ z1G!y}zJEi5omieV4eu5hT4?%T766V8xH!C~hiJAzyrEL~=e^R3{J$+Z0e1;EpQkG|+9{S1h|7+GcQ1$a?<3X;7dwt^%xjKw8uBT}MV998tF8}#k@ODt-x&i(=R?RPd2dt9 z8G(;LpW_a89uwHyt%~DLcc{?Q`A_%zGVR{?(xHXzh`ViUroXF#7dQ41ZFHJF6IkFJ zP4LoPJ0Q`^a^PGgbr{jJXzOM^-Ff&^$Js+JWhtyjSDZZ(WizU!TWthXYv;~Hp-$1H z!&#$I!t##_?Iz_LwsJXpe`}#fYqhHNsoRkdk$CYbLwaPajgXkYgBda95w|+m1G^gr zR{l8EXw_v=N}pMj3x!5Cge4HjX=F;#Q_*5l~^PGGB`ms;&1 z;%83~1a78acE@P0FC{HiB4#oa3Lc6xoYBU#D#jwrDshuMexOdP&B4+d^J&B0L$YSvobLK4}%*fd2w1^k0_7}W<(q_9l&Q+4>i=F2j8FW)X!1G zI(spOMQkIPJ~#C>ap;OtK;fkRv{@B6yO?juGgZ}>2;o?EZEvu~$cbT{rNiC;_P@;;eKR2#?3Ohq zw}ERtzbOAkoOj9)OV*9mv`#r}#Y^h=aT&twHX2t8e=RqUjp^j_H9{zuuqz`^9C` zuEMVyt3Qq2+b*0sy)WE-oxQ5YsFu{fLwzz$nSYDR(-kPoYZob*(>wblv^fxc&{>Fp z$Kpgc%;07Ur*&#iV)V_isjFB*i6w82I_W5InT7ZLMa%%s1agCePt4x9*X})S83cyM z)m!jG%BL+ci>>788Z88%TZw&!vVhnrBEcO30v;N@W>r4IIC&gIJ2xgL1J2+alL)a- z$)bu?2H`$3D|J$iF15mjiA#i+9wo##fop=9`y-o#_#M=b1V_`lmZNpdKLK$K&JW?l zg3Gd7B7oc!1OF373WSPA5uX-LoRdycbskYuLI5Txgz8R?aec<_HTg8$lwioWz0@wU>LoiflA6HD+tk;Is@7Zj`gIU(d>)G(N~h_PPW zGZN4}7DKLAkAOq`T^i#}${+w4Rt1Qt2Z*}#GT-RumGQi5)Fm}HRBM1_l8up>+3QqC1 zA)UM*P=76kvRptc6U@IubI25t7I6yH`<8C3l=H(KX62n}C1~ z9Vv~+j_Es>UIP}PRsS)EEG3;z6nH=jO{~*@nQi=j`?jm!?C$KfviI4tOPmm=2y9Lf zoKC+M=F9^=EKeQVe)@Hr!b{c)j(NW^riy ztdGEn?d`Sr$hRx+8$SOwd{JVq7#&0agu=0^T>|2Up}csFQ^8V=8^QydHd4xj5i`67i4H9sSd>));5tiHVf{%AAGi2QI!a)*~TUKG7 z65^rGoW930=3`GN0~Rpp%#(5B?aDY1B)~&U{u9IEudb6hCnLAn-zzn+%w8?khMH}p zNP9J8XnF`QmsZ01Bos4k+O(mhS;5%0r1+PiI3ZXzoU%$nuNE8~+deV#bG=@*BC&E@ zY$@}}BB9ia>WE$zsEm^z?l$c6;NUvn8*59R$lilOV^aMZ-WXM*ie^(RIFs z#-bVSsMDg~F8UJfa7fvH0oVgRQ@Xv8D>T!~Pbe_^GMl+@NV5C$>(uYJQe#AUT9^h+ zD2#)%+#ZP6g%mA&OVczUPfyC?eVIcvm;6ev$qy28$hvf;GhpQJ=i9(1`(iSvoa>Sz zw@ng?WQ4J(8baxdh*9e>4fGBPW0G?@qIQwSV)c@a?^&Xv`LRrASb`5N3K-ZJ%Pkn& z(L-8_6ggO{>5?V@igX3+AIs5?=OEZ|3DrUD-^cybS{yTw?PdU~SbY$! zRlui0%_D7PvwGyg%hzgA+4c59bnP1zn#Tz3BPd7Y`AP^2&X01S`4udJu}`*7+AMF; z-f2s9@tCqQN`{6EbdvyPBE$+GsMApoCIlA4(npo>xIXQmRIEewEM=DL_UpiEI<#g8 z85s(8uQCHO*v!=&Q}RIxT?iV*3DiVW&vW`aMLaJUydb{q=Ol=svG|Cr3C>VzxGRqe z6a!w5{mG0@=?&d3P9d&^+Khn5kqfOlpG|LO9$OzO?sneis~f|$-&zq;TGxT|as})3 z;9c_lE^BSOuT#+<+CV4aq0t@x&rsy|-6!s!%Q1flsx_dcr83t3Ms_ddwfkG;=mJ)4ZE^@8q!TvWk21IbJLr2&V4(#2w*e;qw40w8;5xH;p-L2;CA;rVK3Nc zHRWKD0|eS9P>VphuaKA&>h#&RQDR0wY8O2Bp3<6ShP2>V#cH@%tasXwcLqnw#8R5F zG^xbrNEyToU1D3V@bO#rl93?m!0v(2Ga;;f9PyFQ7<%qL%{m37(BlpuGhs^QC+(wx z9scwuC&9+Gof!g66xApMkD%ACZB+qIpbY00(Mrq=PQg(2K}{jPGFv3rdzd=l0|?~% zaojr=og*mMK`rTU^)qpjNQGfCEHHKIkdEn>!A>H`(KsfsP6lOsB?q+B1!8fH$zNgo zO!N4rW@KpX9YVZu&~0$F{dt#}g^8f=5VpLBvFvBTmNN1IBFKn09j?OKAEUc!qSf=Z zR@*1L{r{22zBWM_yt6NvLr}AHl)MNO-K7%rELe6Apqc%YJyyTdx;pwX_<@vbGnXln z(<7}B5@%}3;Gh<-Cd392fb@*)wB5X*u*0!qzdpLTF|$RG4QYml2t+7EEAYOc48E`L ztBo>GqR_iq`tC76Lu*r-i7FT%o=CLe)eM3L6Zn;yi(~!D8unbLLEJSB_~G}+xi@$8 z#PG=iW_2~F6eKV#7Vi-WFU9XRv=^#+c_dD;m?!K+STGOy7rHtIo4KX`c#*!L`($ga zUZ=_L{9qx+@m;cJ$C_LJ(|;eE`SZjxomqDduK*#5u-f?VZ|;8==mmlYfDy-@*Yv2V zJIv{4->K={u{zV~b&WEoyHW=;w=vsUE@ttotUJSGY7zWgbysgu+~M+ou0~Kt>&wfc z*P`PrG0Vf)Im7Os1JM^_41wk`Oh1#?juF*wwJtb~9*ePYu^0?Zo4|!GVGcXr@27c5 zaJ#_|DAs)tveKq*6KDcl5k_hPPlCaaFcNTQ1YmJ)6dt&4VuO?svNeJ_6pc10O(Fp2 zml%7O28bw6sSFOX=(q`zb%?1JV=u!niebGql9mKprI~y_5TUxeJ5eEo6rqyX9a7Kd zz-CVNQA#Zog@b}yQrTRcUe(9pd~_K9$U<@$SkzaDo_q+-v9B>Ktc0n-D7^u|QxB-@ zUMlw{VjaxTjI8~=!~WXmF86;IC4Y#E!hovj<8cbz}TwqN$vR-wH%R9}LhK zu;h~nN=xK8#-H<`r2_&en_?3Dawi>GXX1z2RR$d%39!&*0xtcH&f)o zP6%B~15k?(xkOCOG@;)$O?IeeB<^b-#NM7P2e4-~X|5JAJqBERj0u`Rp39$rS6dSI zCF(xvZgmu?g!-quYwG=(00Cz~dI$;vQPtf5g>TxQP|C+LeWeh?s%j-ExHxXDqC)pUPo!@UYS% z0a<{ zE@A?}WgCxSLyXE)@JF)2Vaz61)+=%2Bt`IVVR%W8teB)Fv!i08W5Zl4Cnu{I3vn|5 zc)C&MwhAX7qG%S2?%!5mC2^H7NrNOtr2)SI;;irCi2-JkIMrH7D}2RSI9cDi$?3+} z|1+BY?-BKu9f_{=)&<4!r4(W&XpUMAAHRa8x#CHKkT74)vKZ5h*{t1c(X78>{BaIq z&RaJ3#LtL17=;YOXlN}GwA_VE5&ldpm?LtP4DT*7A*de`Q0;>%LNz4+V%_|`phZR> zvvX~uGHxY^=`|s&LZ(>1Wr&nS?^HIA^4aVa*^$KF*8bX0+TIiCYOn>5))HEq^vn*= z9V6s3f$na4IGvi>V=IhY{R{17wCEBz0Qx{_&ojZwLyo=(rQ$H(t<}3 z8<%E5bw{Lh#!kSRU}%Ya1%4jlv(iztf1RUE_X1P;ngcZu)v4L4k1#Q%Cri{kSz>jCmbp|`7FJj7C5;;vl57)kU*Y= zy^m80hhG8qWe|;lc#i|1WVtE)u_WBaGU{aw5o70|ff%ToxCJ>cDwiDfY^*_dxM2^M;yFJzS``!e*0Ah!J8`jXF z?KJ}}vI9sqML$KO*<^oM2!hPJ9KoI+>i}aa#oC2Q*0qFg;B~VzSk@#xc2Qw77&d}! z1Pkg(Q6%oAYM$~8_5_aZTM@sU4KG?|4c-Gw@SH)<2SYD0Jax~(?6%$RO=Vwe^4*k+WKrE);qq>C23mS}RB zyt)27J*F!b^G>4;_;Fzr!nbOf7>k4Rik5=tN~RNb_R4Ha4)i8E4$}MBIx6tsHnLv~ z9E;UbQG=Rw<65X_wj?&Ha-;8)EUQHNr^yics=+J_sW{^yM|ZS1eR?d?vEWllvXjeL zR>HEyh3*vb%47WjbGcY-lrte~|3J-o3OqJtu?_ujnZuIyCG!m6t))AE zKVqHEFfL|29eIJ!ES6we%te5~BDajF|Au`om7P!sz{PS00A6=)0y19fkoBm|x*!yP zi)yK@`$^n@OP#d~pdL^nb4Bgpu|hz>?`C5Vp#bagKu@80#(?)ZM0lsbi7iCbfZx(s z!a zQC+INkyS?H*B{!>9-VaRD|p3y8mMozt@YI8Yo&tWE5QOV4fdl z@h#>1PAYAT(adqsy? z>AcyXy1tI=-L+P~Mm`6RWb?cih8aAZi&fyHnVR|a7kA9g`#}GLV42p7!d5e1KWZaF zic?BJIjuYn_k-7iHm_fcD1Jb8TTXcoU4fue@|AocE(M#N;uW5LjqYakKSZ;`e4z7R=m%h=m}couzLZHEp(>|C!aufz@d*M%wFu` z;|}GLOLkP7L?Fs5U2+3PmBM2aS*cs@oqVFo#k#z8qgkT;uV!7o_ISE8igr|&R>9(< zLNwtGffx3ybuj>=rsK)tMquJT#w(dKfOHLP;szpwDtSu9!D@JrynHYb3>U9ebyun%-sy=%QNFz@7DgHB$f)vK2i3YJ zf?^yc63`21l2(Vy6Cv>Ww0gKatCVO}l8G^*?HG`V{A?SwK6zb$(_wM6o+OuM!AL#? zSs+Ou!?g&b@Vq(krG;(;8(MG>tn4oJw=f_R*$!G|VtF*znXf82;yD{0WtW)LrjP^E zds4SksYb$WA0Gt%6RiYggg-Q-Y%sw5{WO*W_= zc~XTw8>bS3M!@j_ie3@GgJ7QKX(UN2SN?LExw`s%ejqRN{WU*DK!U23w%0OME14?d zY0nmksO0<3Dg(2J=8a=-Tl4@!S-DmOIA~%>x?Lk+)SUn6r72zt8;VJV!Bj_vN79HN z9a~5*=uFj&o|;h5np|CS zKKYXz#^sFE-%99e)YAOKSNH|?rIfSJTWThzzlb+k=7oOF(%nsN4kR9BmV=)xexYZb z9NgX_3>9fAK(aWKbz)`!w*~?F6_d>ZF}o})b5oD$$nN<4tazWA=#2+a;7BBibEFqt z(nI2h?myMc4f=BkK%O)5}=iEi&Id=yN{s``Yo%3L?`uRlH~O~jUqrVE^AIBm<{0&H$W81p%n2#g)A;t zg}I0wEaPa}eNtOHLG%CbhP0%p$=GN4D`zx^l|7A@qD7T)hRdN1{_tyZ+1^wz51L-b z@zcU1ywJxWyUS}5`&WXu(=Yo?hwFIEobA63>29M)wd_E&-xj7-lRjKMPXfsM$Y|dJ zi#%1($_^abRLCn3�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 B["Go HTTP server"] + B --> C["Session parser"] + B --> D["Memory reader"] + B --> E["Diagnostics reader"] + C --> F["session_index.jsonl"] + C --> G["sessions/YYYY/MM/DD/rollout-*.jsonl"] + C --> N["tool-owned summary cache.sqlite"] + D --> H["memories/MEMORY.md"] + D --> I["memories/memory_summary.md"] + D --> J["memories/rollout_summaries/*.md"] + E --> K["state_5.sqlite schema"] + E --> L["goals_1.sqlite schema"] + E --> M["memories_1.sqlite schema"] +``` + +渲染校验状态:当前机器未安装 `mmdc` 或 `mermaid` 命令;通过 `npx` 临时运行 `@mermaid-js/mermaid-cli` 需要下载并执行外部包,未被当前安全策略允许。因此该 Mermaid 图已按语法约束编写,但未完成本机实际渲染校验。 + +## 隐私边界 + +- 默认监听 `127.0.0.1`,只服务当前用户。 +- 不实现登录、账号或权限系统,不适合暴露到局域网或公网。 +- 不写入 `~/.codex`,不修改 session、memory、SQLite 或配置文件。 +- 不读取 `auth.json` 内容。 +- 历史 summary cache 写在用户 cache 目录或 `-cache-path` 指定位置,文件权限固定为 `0600`;缓存不包含 raw JSONL,但可能包含脱敏后的标题、cwd、preview 和 token 聚合值。 +- JSON 和文本展示层会脱敏常见 `auth`、`token`、`cookie`、`password`、`secret`、`api_key`、`access_key` 字段。 +- raw JSONL 展开能力展示的是脱敏后的 JSONL,方便排查格式和事件顺序,不用于导出完整敏感内容。 +- token usage 只读取 Codex JSONL 中的结构化 `token_count` 元数据,不读取或推断账单、账号或认证信息。 + +## 脱敏截图 + +以下截图来自脱敏 fixture,不包含真实对话、真实 token 或内部信息。 + +### Overview + +![Overview](../assets/codex_inspector/overview-1440.png) + +### Sessions + +![Sessions](../assets/codex_inspector/sessions-1440.png) + +### Memory + +![Memory](../assets/codex_inspector/memory-768.png) + +### Mobile + +![Mobile](../assets/codex_inspector/overview-390.png) + +## 故障排查 + +| 现象 | 原因 | 处理 | +|---|---|---| +| 页面显示没有 session | `session_index.jsonl` 或 `sessions/` 不存在,或时间筛选太窄 | 查看 Diagnostics,清空时间筛选后刷新 | +| 某个 session 没有详情 | 索引里有 session,但 rollout JSONL 不存在或无法匹配 | 查看 session 列表里的路径和 Diagnostics 数据源 | +| 点击 session 后一直 loading | 冷启动正在建立 session 索引,或目标 JSONL 文件过大 | 等待首次索引完成;详情接口会优先使用缓存中的 `id -> path`,避免每次点击全量扫描 | +| token 统计为 0 | 该历史 JSONL 没有 `event_msg.type=token_count`,或格式不同 | 这是兼容性缺失,不影响对话查看;Diagnostics 和 raw JSONL 可用于确认格式 | +| CPU 占用高 | 首次历史范围加载需要解析该范围内尚未缓存的历史 rollout;今天的数据实时解析 | 等待首次缓存写入;后续历史请求会复用 SQLite summary cache,详情只解析目标文件 | +| cache 文件权限不符合预期 | 旧版本或手动创建的 cache 文件权限过宽 | 删除 cache 文件后重启,或执行 `chmod 600 ` | +| raw JSONL 缺少部分内容 | 单行过大时后端会限制返回长度 | 到本机文件系统只读查看原文件 | +| SQLite schema 没有展示 | 系统没有 `sqlite3` 命令,或数据库不存在 | 安装 `sqlite3` 或忽略 schema 诊断 | +| 浏览器访问不到服务 | 服务未启动或地址不是 `127.0.0.1:8787` | 检查启动命令和终端输出 | + +## 验证 + +推荐验证命令: + +```bash +go test ./cli/codex_inspector +go build -o output/codex_inspector ./cli/codex_inspector/... +``` + +页面验证需要启动服务后用 Chrome 检查: + +- Overview、Sessions、Memory、Diagnostics 四个页面能正常渲染。 +- Chrome console 没有相关 error。 +- `390x844`、`768x1024`、`1440x900` 三类视口没有文字重叠、按钮溢出、菜单遮挡或横向滚动失控。 diff --git a/docs/install.md b/docs/install.md index 162125b..315ccb7 100644 --- a/docs/install.md +++ b/docs/install.md @@ -24,6 +24,7 @@ | `codex_hook_notify` | `codex_hook_notify` | Go | 是 | `/etc/life_tools/codex_hook_notify.json` | | `video_subtitle` | `video_subtitle` | Python | 是 | `/etc/life_tools/video_subtitle.json` | | `file_share` | `file_share` | Go | 是 | `/etc/life_tools/file_share.json` | +| `codex_inspector` | `codex_inspector` | Go | 否 | 无配置文件,默认只读 `~/.codex` | | `InterviewTimer` | `InterviewTimer.app` | SwiftPM macOS App | 否 | `~/Library/Application Support/InterviewTimer/` | ## 快速安装 @@ -82,6 +83,38 @@ file_share -config /etc/life_tools/file_share.json `file_share` 默认无认证,用于个人临时分享。不要把含敏感文件、隐藏文件或符号链接的目录暴露到不可信网络。 +## codex_inspector + +`codex_inspector` 是实验工具,用来在本机浏览器里只读查看 Codex 会话、活跃度统计和记忆内容。它不在 `install.sh` 默认稳定安装清单中,也不会写入 `~/.codex`。 + +构建和启动: + +```bash +go build -o output/codex_inspector ./cli/codex_inspector/... +./output/codex_inspector -addr 127.0.0.1:8787 +``` + +可指定脱敏 fixture 或其他 Codex home: + +```bash +./output/codex_inspector -codex-home /tmp/codex-fixture -addr 127.0.0.1:8787 +``` + +历史会话 summary 默认缓存到本机 SQLite 文件,用于加速重复浏览。可指定或禁用: + +```bash +./output/codex_inspector -cache-path /tmp/codex_inspector_cache.sqlite +./output/codex_inspector -no-cache +``` + +安全边界: + +- 默认监听 `127.0.0.1`,不要绑定到公网地址。 +- 只读取 `session_index.jsonl`、`sessions/`、`memories/` 和 SQLite schema。 +- 不写入 `~/.codex`;SQLite cache 只写到用户 cache 目录或 `-cache-path` 指定位置,文件权限为 `0600`。 +- 不读取 `auth.json` 内容,不展示 token、cookie、secret 类字段。 +- 详细说明见 [cli/codex_inspector.md](cli/codex_inspector.md)。 + ## InterviewTimer `InterviewTimer` 是 macOS 面试悬浮计时 App,源码位于: diff --git a/go.mod b/go.mod index 1e8c792..08cbc72 100644 --- a/go.mod +++ b/go.mod @@ -10,14 +10,26 @@ require ( github.com/stretchr/testify v1.8.1 golang.org/x/sync v0.1.0 golang.org/x/term v0.7.0 + modernc.org/sqlite v1.29.10 ) require ( github.com/davecgh/go-spew v1.1.1 // indirect + github.com/dustin/go-humanize v1.0.1 // indirect + github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 // indirect github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/ncruces/go-strftime v0.1.9 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - golang.org/x/sys v0.7.0 // indirect + github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect + golang.org/x/sys v0.19.0 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect + modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6 // indirect + modernc.org/libc v1.49.3 // indirect + modernc.org/mathutil v1.6.0 // indirect + modernc.org/memory v1.8.0 // indirect + modernc.org/strutil v1.2.0 // indirect + modernc.org/token v1.1.0 // indirect ) diff --git a/go.sum b/go.sum index 48ab916..05fb6a0 100644 --- a/go.sum +++ b/go.sum @@ -1,19 +1,31 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY= +github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/pprof v0.0.0-20240409012703-83162a5b38cd h1:gbpYu9NMq8jhDVbvlGkMFWCjLFlqqEZjEmObmhUy6Vo= +github.com/google/pprof v0.0.0-20240409012703-83162a5b38cd/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/hashicorp/golang-lru/v2 v2.0.7 h1:a+bsQ5rvGLjzHuww6tVxozPZFVghXaHOwFs4luLUK2k= +github.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mcoder2014/go_utils v0.0.6 h1:g7wdZXd3rREpTs4VHG9gOZhrLmP3yqIAVO0cuGlF8g8= github.com/mcoder2014/go_utils v0.0.6/go.mod h1:gRAhCQnSyHkjsGe524HSL2x8QmQqCZlngcF0sXRFSlU= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 h1:ZqeYNhU3OHLH3mGKHDcjJRFFRrJa6eAM5H+CtDdOsPc= github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/ncruces/go-strftime v0.1.9 h1:bY0MQC28UADQmHmaF5dgpLmImcShSi2kHU9XLdhx/f4= +github.com/ncruces/go-strftime v0.1.9/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= +github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= @@ -25,13 +37,18 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +golang.org/x/mod v0.16.0 h1:QX4fJ0Rr5cPQCF7O9lh9Se4pmwfwskqZfq5moyldzic= +golang.org/x/mod v0.16.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.7.0 h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU= -golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.19.0 h1:q5f1RH2jigJ1MoAWp2KTp3gm5zAGFUTarQZ5U386+4o= +golang.org/x/sys v0.19.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.7.0 h1:BEvjmm5fURWqcfbSKTdpkDXYBrUS1c0m8agp14W48vQ= golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= +golang.org/x/tools v0.19.0 h1:tfGCXNR1OsFG+sVdLAitlpjAvD/I6dHDKnYrpEZUHkw= +golang.org/x/tools v0.19.0/go.mod h1:qoJWxmGSIBmAeriMx19ogtrEPrGtDbPK634QFIcLAhc= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/natefinch/lumberjack.v2 v2.2.1 h1:bBRl1b0OH9s/DuPhuXpNl+VtCaJXFZ5/uEFST95x9zc= @@ -39,3 +56,29 @@ gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYs gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +modernc.org/cc/v4 v4.20.0 h1:45Or8mQfbUqJOG9WaxvlFYOAQO0lQ5RvqBcFCXngjxk= +modernc.org/cc/v4 v4.20.0/go.mod h1:HM7VJTZbUCR3rV8EYBi9wxnJ0ZBRiGE5OeGXNA0IsLQ= +modernc.org/ccgo/v4 v4.16.0 h1:ofwORa6vx2FMm0916/CkZjpFPSR70VwTjUCe2Eg5BnA= +modernc.org/ccgo/v4 v4.16.0/go.mod h1:dkNyWIjFrVIZ68DTo36vHK+6/ShBn4ysU61So6PIqCI= +modernc.org/fileutil v1.3.0 h1:gQ5SIzK3H9kdfai/5x41oQiKValumqNTDXMvKo62HvE= +modernc.org/fileutil v1.3.0/go.mod h1:XatxS8fZi3pS8/hKG2GH/ArUogfxjpEKs3Ku3aK4JyQ= +modernc.org/gc/v2 v2.4.1 h1:9cNzOqPyMJBvrUipmynX0ZohMhcxPtMccYgGOJdOiBw= +modernc.org/gc/v2 v2.4.1/go.mod h1:wzN5dK1AzVGoH6XOzc3YZ+ey/jPgYHLuVckd62P0GYU= +modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6 h1:5D53IMaUuA5InSeMu9eJtlQXS2NxAhyWQvkKEgXZhHI= +modernc.org/gc/v3 v3.0.0-20240107210532-573471604cb6/go.mod h1:Qz0X07sNOR1jWYCrJMEnbW/X55x206Q7Vt4mz6/wHp4= +modernc.org/libc v1.49.3 h1:j2MRCRdwJI2ls/sGbeSk0t2bypOG/uvPZUsGQFDulqg= +modernc.org/libc v1.49.3/go.mod h1:yMZuGkn7pXbKfoT/M35gFJOAEdSKdxL0q64sF7KqCDo= +modernc.org/mathutil v1.6.0 h1:fRe9+AmYlaej+64JsEEhoWuAYBkOtQiMEU7n/XgfYi4= +modernc.org/mathutil v1.6.0/go.mod h1:Ui5Q9q1TR2gFm0AQRqQUaBWFLAhQpCwNcuhBOSedWPo= +modernc.org/memory v1.8.0 h1:IqGTL6eFMaDZZhEWwcREgeMXYwmW83LYW8cROZYkg+E= +modernc.org/memory v1.8.0/go.mod h1:XPZ936zp5OMKGWPqbD3JShgd/ZoQ7899TUuQqxY+peU= +modernc.org/opt v0.1.3 h1:3XOZf2yznlhC+ibLltsDGzABUGVx8J6pnFMS3E4dcq4= +modernc.org/opt v0.1.3/go.mod h1:WdSiB5evDcignE70guQKxYUl14mgWtbClRi5wmkkTX0= +modernc.org/sortutil v1.2.0 h1:jQiD3PfS2REGJNzNCMMaLSp/wdMNieTbKX920Cqdgqc= +modernc.org/sortutil v1.2.0/go.mod h1:TKU2s7kJMf1AE84OoiGppNHJwvB753OYfNl2WRb++Ss= +modernc.org/sqlite v1.29.10 h1:3u93dz83myFnMilBGCOLbr+HjklS6+5rJLx4q86RDAg= +modernc.org/sqlite v1.29.10/go.mod h1:ItX2a1OVGgNsFh6Dv60JQvGfJfTPHPVpV6DF59akYOA= +modernc.org/strutil v1.2.0 h1:agBi9dp1I+eOnxXeiZawM8F4LawKv4NzGWSaLfyeNZA= +modernc.org/strutil v1.2.0/go.mod h1:/mdcBmfOibveCTBxUl5B5l6W+TTH1FXPLHZE6bTosX0= +modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y= +modernc.org/token v1.1.0/go.mod h1:UGzOrNV1mAFSEB63lOFHIpNRUVMvYTc6yu1SMY/XTDM= From c27537b9a193afc0ca2cef9623527cd0ca99b1ee Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 12:10:24 +0800 Subject: [PATCH 2/8] feat: add codex inspector installer --- README.MD | 16 ++- cli/codex_inspector/install.sh | 200 +++++++++++++++++++++++++++++++++ docs/cli/codex_inspector.md | 33 +++++- docs/install.md | 43 ++++++- 4 files changed, 285 insertions(+), 7 deletions(-) create mode 100755 cli/codex_inspector/install.sh diff --git a/README.MD b/README.MD index 893a2d5..6667ca0 100644 --- a/README.MD +++ b/README.MD @@ -61,7 +61,21 @@ | `build.sh` | 构建 Go CLI 工具到 `output/`。 | | `install.sh` | 安装 CLI 工具、示例配置和可选 hook。 | -`codex_inspector` 当前是实验工具,不在 `install.sh` 默认稳定安装清单中。需要试用时单独构建: +`codex_inspector` 当前是实验工具,不在根目录 `install.sh` 默认稳定安装清单中。需要快速试用时使用专用安装脚本,默认安装到用户级目录 `$HOME/.local/bin`,不会写 `/usr/local`、`/etc`,也不会主动 sudo: + +```bash +./cli/codex_inspector/install.sh +codex_inspector -addr 127.0.0.1:8787 +``` + +macOS 和 Linux 都支持自定义前缀;只有显式传 `--system` 或 `--allow-sudo` 时才会尝试写系统目录: + +```bash +./cli/codex_inspector/install.sh --prefix "$HOME/.local" +./cli/codex_inspector/install.sh --system +``` + +也可以不安装,直接单独构建: ```bash go build -o output/codex_inspector ./cli/codex_inspector/... diff --git a/cli/codex_inspector/install.sh b/cli/codex_inspector/install.sh new file mode 100755 index 0000000..4008a18 --- /dev/null +++ b/cli/codex_inspector/install.sh @@ -0,0 +1,200 @@ +#!/usr/bin/env bash +set -euo pipefail + +ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" +OUTPUT_DIR="$ROOT_DIR/output" +PREFIX="${CODEX_INSPECTOR_PREFIX:-$HOME/.local}" +ALLOW_SUDO=0 +OS_NAME="$(uname -s)" + +usage() { + cat <<'EOF' +Usage: + ./cli/codex_inspector/install.sh [options] + +Options: + --prefix DIR Install under DIR/bin. Default: $HOME/.local. + --system Install under /usr/local and allow sudo if needed. + --allow-sudo Allow sudo when the selected prefix is not writable. + -h, --help Show this help. + +Examples: + ./cli/codex_inspector/install.sh + ./cli/codex_inspector/install.sh --prefix "$HOME/.local" + ./cli/codex_inspector/install.sh --system +EOF +} + +die() { + echo "codex_inspector install: $*" >&2 + exit 1 +} + +require_command() { + if ! command -v "$1" >/dev/null 2>&1; then + die "$1 command not found" + fi +} + +run_privileged() { + if [ "$ALLOW_SUDO" -ne 1 ]; then + die "cannot write target path; choose --prefix \"\$HOME/.local\" or pass --allow-sudo/--system explicitly" + fi + if [ "$(id -u)" -eq 0 ]; then + "$@" + return + fi + require_command sudo + sudo "$@" +} + +ensure_supported_os() { + case "$OS_NAME" in + Darwin|Linux) + ;; + *) + die "unsupported OS: $OS_NAME; supported systems are macOS and Linux" + ;; + esac +} + +ensure_bin_dir() { + local bin_dir="$1" + + if [ -d "$bin_dir" ]; then + if [ -w "$bin_dir" ]; then + return + fi + run_privileged mkdir -p "$bin_dir" + return + fi + + if mkdir -p "$bin_dir" 2>/dev/null; then + return + fi + run_privileged mkdir -p "$bin_dir" +} + +install_binary() { + local src="$1" + local dest="$2" + + if install -m 0755 "$src" "$dest" 2>/dev/null; then + return + fi + run_privileged install -m 0755 "$src" "$dest" +} + +print_path_hint() { + local bin_dir="$1" + + case ":$PATH:" in + *":$bin_dir:"*) + return + ;; + esac + + cat </dev/null 2>&1; then + echo " xdg-open http://127.0.0.1:8787" + else + echo " visit http://127.0.0.1:8787 in your browser" + fi + ;; + esac +} + +parse_args() { + while [ "$#" -gt 0 ]; do + case "$1" in + --prefix) + if [ "$#" -lt 2 ]; then + die "--prefix requires a directory" + fi + PREFIX="${2%/}" + shift 2 + ;; + --prefix=*) + PREFIX="${1#--prefix=}" + PREFIX="${PREFIX%/}" + shift + ;; + --system) + PREFIX="/usr/local" + ALLOW_SUDO=1 + shift + ;; + --allow-sudo) + ALLOW_SUDO=1 + shift + ;; + -h|--help) + usage + exit 0 + ;; + *) + die "unknown argument: $1" + ;; + esac + done +} + +main() { + local bin_dir + local output_bin + local install_path + + parse_args "$@" + ensure_supported_os + require_command go + + bin_dir="$PREFIX/bin" + output_bin="$OUTPUT_DIR/codex_inspector" + install_path="$bin_dir/codex_inspector" + + mkdir -p "$OUTPUT_DIR" + echo "building codex_inspector" + (cd "$ROOT_DIR" && go build -v -o "$output_bin" ./cli/codex_inspector/...) + + ensure_bin_dir "$bin_dir" + install_binary "$output_bin" "$install_path" + + echo "installed codex_inspector: $install_path" + print_cache_hint + print_path_hint "$bin_dir" + print_start_hint "$install_path" +} + +main "$@" diff --git a/docs/cli/codex_inspector.md b/docs/cli/codex_inspector.md index 2e6d3f7..a75ceb4 100644 --- a/docs/cli/codex_inspector.md +++ b/docs/cli/codex_inspector.md @@ -16,6 +16,27 @@ ## 启动方式 +快速安装到用户级目录: + +```bash +./cli/codex_inspector/install.sh +codex_inspector -addr 127.0.0.1:8787 +``` + +默认安装到 `$HOME/.local/bin/codex_inspector`。脚本支持 macOS 和 Linux,默认只写当前用户目录;只有显式传 `--system` 或 `--allow-sudo` 时,才会尝试使用 `sudo` 写系统目录。 + +自定义安装目录: + +```bash +./cli/codex_inspector/install.sh --prefix "$HOME/.local" +``` + +系统级安装: + +```bash +./cli/codex_inspector/install.sh --system +``` + 从仓库根目录构建: ```bash @@ -34,11 +55,12 @@ go build -o output/codex_inspector ./cli/codex_inspector/... ./output/codex_inspector -codex-home /tmp/codex-inspector-fixture -addr 127.0.0.1:8787 ``` -历史 session summary 会缓存到本机 SQLite 文件,用于减少重复解析历史 rollout。默认路径是: +历史 session summary 会缓存到本机 SQLite 文件,用于减少重复解析历史 rollout。默认路径由 Go 的 `os.UserCacheDir()` 决定: -```text -~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite -``` +| 系统 | 默认 cache | +|---|---| +| macOS | `~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite` | +| Linux | `${XDG_CACHE_HOME:-~/.cache}/life_tools/codex_inspector/session_summary_cache.sqlite` | 可以显式指定或禁用: @@ -66,7 +88,7 @@ http://127.0.0.1:8787 | `~/.codex/goals_1.sqlite` | schema | Diagnostics 页面只读探测 | 否 | | `~/.codex/memories_1.sqlite` | schema | Diagnostics 页面只读探测 | 否 | | `~/.codex/auth.json` | 不读取内容 | Diagnostics 只标记为排除项 | 否 | -| `~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL,不写 `~/.codex` | 是 | +| 用户 cache 目录下的 `life_tools/codex_inspector/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL,不写 `~/.codex` | 是 | ## 页面说明 @@ -108,6 +130,7 @@ flowchart TD - 默认监听 `127.0.0.1`,只服务当前用户。 - 不实现登录、账号或权限系统,不适合暴露到局域网或公网。 +- 安装脚本默认写 `$HOME/.local/bin`,不写 `/usr/local`、`/etc` 或 `/var`;系统级安装必须显式传 `--system` 或 `--allow-sudo`。 - 不写入 `~/.codex`,不修改 session、memory、SQLite 或配置文件。 - 不读取 `auth.json` 内容。 - 历史 summary cache 写在用户 cache 目录或 `-cache-path` 指定位置,文件权限固定为 `0600`;缓存不包含 raw JSONL,但可能包含脱敏后的标题、cwd、preview 和 token 聚合值。 diff --git a/docs/install.md b/docs/install.md index 315ccb7..b59f931 100644 --- a/docs/install.md +++ b/docs/install.md @@ -11,6 +11,7 @@ - `InterviewTimer`:macOS 图形应用,需要 macOS 13+ 和 Swift/Apple 开发工具链,不由根目录 `install.sh` 默认安装。 - 默认安装路径:可执行文件放到 `/usr/local/bin`,Python 工具文件放到 `/usr/local/lib/life_tools`。 - 默认配置路径:`/etc/life_tools`,可用 `--config-dir` 改变安装脚本写入位置。 +- `codex_inspector` 是实验工具,使用 `cli/codex_inspector/install.sh` 单独安装;默认安装到 `$HOME/.local/bin`,不写系统目录。 写入 `/usr/local`、`/etc/life_tools` 和 Linux 的 `/var/log` 时可能需要 `sudo`。脚本会在需要时调用 `sudo`,不会覆盖已经存在的配置文件。 @@ -87,7 +88,40 @@ file_share -config /etc/life_tools/file_share.json `codex_inspector` 是实验工具,用来在本机浏览器里只读查看 Codex 会话、活跃度统计和记忆内容。它不在 `install.sh` 默认稳定安装清单中,也不会写入 `~/.codex`。 -构建和启动: +快速安装: + +```bash +./cli/codex_inspector/install.sh +codex_inspector -addr 127.0.0.1:8787 +``` + +默认安装路径是: + +```text +$HOME/.local/bin/codex_inspector +``` + +macOS 和 Linux 权限策略一致:默认只写当前用户目录,不调用 `sudo`。如果目标目录不在 `PATH` 中,脚本会打印需要加入 shell profile 的提示。 + +安装到自定义用户目录: + +```bash +./cli/codex_inspector/install.sh --prefix "$HOME/.local" +``` + +系统级安装必须显式确认: + +```bash +./cli/codex_inspector/install.sh --system +``` + +`--system` 会安装到 `/usr/local/bin/codex_inspector`,并在目录不可写时使用 `sudo`。如果使用其他系统目录,可以组合 `--prefix` 和 `--allow-sudo`: + +```bash +./cli/codex_inspector/install.sh --prefix /opt/life_tools --allow-sudo +``` + +也可以不安装,直接构建和启动: ```bash go build -o output/codex_inspector ./cli/codex_inspector/... @@ -107,6 +141,13 @@ go build -o output/codex_inspector ./cli/codex_inspector/... ./output/codex_inspector -no-cache ``` +默认 cache 路径按系统走用户缓存目录: + +| 系统 | 默认 cache | +|---|---| +| macOS | `~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite` | +| Linux | `${XDG_CACHE_HOME:-~/.cache}/life_tools/codex_inspector/session_summary_cache.sqlite` | + 安全边界: - 默认监听 `127.0.0.1`,不要绑定到公网地址。 From f9336fbb5f944aac68b7be0f8db1ec21ca3e8f05 Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 12:27:56 +0800 Subject: [PATCH 3/8] docs: add codex inspector regression guide --- cli/codex_inspector/AGENTS.md | 56 +++++++ docs/cli/codex_inspector.md | 2 + docs/cli/codex_inspector_regression.md | 204 +++++++++++++++++++++++++ 3 files changed, 262 insertions(+) create mode 100644 cli/codex_inspector/AGENTS.md create mode 100644 docs/cli/codex_inspector_regression.md diff --git a/cli/codex_inspector/AGENTS.md b/cli/codex_inspector/AGENTS.md new file mode 100644 index 0000000..66f1450 --- /dev/null +++ b/cli/codex_inspector/AGENTS.md @@ -0,0 +1,56 @@ +# codex_inspector 维护规则 + +`codex_inspector` 是实验 CLI,用浏览器只读查看本机 Codex session、活跃度、token 统计、memory 和 diagnostics。改动时优先保持实现简单,不引入复杂前端构建链、任务队列或配置系统。 + +## 回归样例维护 + +功能回归样例统一维护在: + +```text +docs/cli/codex_inspector_regression.md +``` + +每次修改 `cli/codex_inspector/` 下的代码或静态资源时,必须检查是否需要同步更新该文档。以下改动必须新增或更新回归样例: + +- 新增或调整 Overview、Sessions、Memory、Diagnostics 页面内容。 +- 新增或调整按钮、菜单、时间范围、搜索、raw JSONL 展开、token usage 展示。 +- 修改 `/api/overview`、`/api/sessions`、`/api/memory`、`/api/diagnostics` 或 cache API。 +- 修改 JSONL parser、SessionSummary、token 聚合、memory 读取、redaction 规则。 +- 修改 SQLite summary cache 的状态、后台补齐、重建、损坏识别、降级或 CLI 参数。 +- 修改响应式布局、移动端断点、heatmap 行列规则或数字格式化规则。 + +如果改动不需要更新回归样例,提交说明或 PR 描述中必须写清原因,例如: + +```text +Regression docs unchanged: only internal variable rename; no behavior, API, UI, parser, cache, or privacy boundary changed. +``` + +## 样例质量要求 + +新增样例必须包含: + +- 前置数据或 fixture。 +- 操作步骤。 +- 期望结果。 +- 可由 AI 工具自动检查的断言点,例如 API 字段、selector、文本、console error、network error、viewport overflow。 + +样例不得包含真实 `~/.codex` 内容、真实 session 文本、真实路径、auth、token、cookie、secret、API key 或内部信息。需要敏感字段时只能使用假值,并明确期望展示为脱敏值。 + +## 验证要求 + +涉及 Go 行为时优先运行: + +```bash +go test ./cli/codex_inspector +go build -o output/codex_inspector ./cli/codex_inspector/... +``` + +涉及前端交互或布局时,启动服务后用 Chrome 检查 Overview、Sessions、Memory、Diagnostics,并至少覆盖: + +```text +390x844 +768x1024 +1440x900 +``` + +纯文档改动不需要运行 Go 测试,但必须检查 diff,确认文档链接、命令、页面名称和 API 名称与当前实现一致。 diff --git a/docs/cli/codex_inspector.md b/docs/cli/codex_inspector.md index a75ceb4..0d261af 100644 --- a/docs/cli/codex_inspector.md +++ b/docs/cli/codex_inspector.md @@ -186,3 +186,5 @@ go build -o output/codex_inspector ./cli/codex_inspector/... - Overview、Sessions、Memory、Diagnostics 四个页面能正常渲染。 - Chrome console 没有相关 error。 - `390x844`、`768x1024`、`1440x900` 三类视口没有文字重叠、按钮溢出、菜单遮挡或横向滚动失控。 + +功能回归样例见 [codex_inspector_regression.md](codex_inspector_regression.md)。修改页面、API、parser、redaction、SQLite summary cache 或响应式布局时,必须同步更新对应回归样例。 diff --git a/docs/cli/codex_inspector_regression.md b/docs/cli/codex_inspector_regression.md new file mode 100644 index 0000000..81b7522 --- /dev/null +++ b/docs/cli/codex_inspector_regression.md @@ -0,0 +1,204 @@ +# codex_inspector 功能回归测试样例 + +本文档记录 `codex_inspector` 的功能回归样例,供人工和 AI 工具在改动后执行。样例重点覆盖页面行为、API 合约、隐私边界、响应式布局和 SQLite summary cache 生命周期。 + +`codex_inspector` 只读展示本机 Codex 数据。回归测试默认使用脱敏 fixture,不直接依赖真实 `~/.codex`;需要真实数据验证时,只允许只读访问,不能把真实会话、token、auth、cookie、secret 或内部路径写入截图、日志和文档。 + +## 基本原则 + +| 原则 | 要求 | +|---|---| +| 数据安全 | 测试 fixture 必须脱敏;`auth.json`、token、cookie、secret、真实 API key 不得进入仓库。 | +| 只读边界 | 测试不得写入 `~/.codex`;cache 只能写到 `-cache-path` 指定的临时文件或用户 cache 目录。 | +| 可重复 | 每个样例必须说明前置数据、启动参数、操作步骤和断言点。 | +| 可自动化 | 页面样例需要给出可由 Chrome/Playwright 检查的 selector、网络请求或文本断言。 | +| 跨端 | 涉及 UI 的改动至少检查 `390x844`、`768x1024`、`1440x900` 三类视口。 | +| 降级可用 | cache 缺失、损坏、禁用或不可用时,页面仍应能通过实时 JSONL 解析展示核心数据。 | + +## 推荐验证命令 + +从仓库根目录执行: + +```bash +GOMODCACHE=/tmp/codex_inspector_mod_cache GOCACHE=/tmp/codex_inspector_go_cache go test ./cli/codex_inspector +GOMODCACHE=/tmp/codex_inspector_mod_cache GOCACHE=/tmp/codex_inspector_go_cache go build -o output/codex_inspector ./cli/codex_inspector/... +node --check cli/codex_inspector/static/app.js +``` + +启动服务时使用脱敏 fixture: + +```bash +./output/codex_inspector \ + -codex-home /tmp/codex-inspector-fixture \ + -cache-path /tmp/codex-inspector-cache/session_summary_cache.sqlite \ + -addr 127.0.0.1:8787 +``` + +禁用 cache 的启动方式: + +```bash +./output/codex_inspector \ + -codex-home /tmp/codex-inspector-fixture \ + -no-cache \ + -addr 127.0.0.1:8787 +``` + +## Fixture 要求 + +| Fixture | 目的 | 最小内容 | +|---|---|---| +| `base` | 正常功能回归 | `session_index.jsonl`、跨 3 天的 `sessions/YYYY/MM/DD/rollout-*.jsonl`、`memories/MEMORY.md`、`memory_summary.md`、`rollout_summaries/*.md`。 | +| `bad_jsonl` | 容错回归 | 至少一个 rollout 文件包含坏 JSONL 行、未知字段、缺少 `timestamp` 的事件。 | +| `missing_sources` | 缺文件回归 | 缺少 `session_index.jsonl` 或 `memories/`,但服务可启动。 | +| `token_usage` | token 聚合回归 | 至少两个 session 含 `event_msg.payload.type=token_count`,覆盖 input、cached input、output、reasoning、context window、rate limit。 | +| `privacy` | 脱敏回归 | JSONL 和 memory 中包含假 `token`、`cookie`、`secret`、`api_key` 字段,期望页面只显示脱敏值。 | +| `cache_missing` | cache 创建回归 | 指定一个不存在的 `-cache-path`。 | +| `cache_corrupt` | cache 损坏回归 | 指定一个内容为普通文本的 `.sqlite` 文件。 | +| `cache_disabled` | cache 禁用回归 | 使用 `-no-cache`。 | + +fixture 中的路径可使用 `/tmp/codex-demo/project`、`/tmp/demo-home/.codex` 等假路径,不得使用真实工作路径。 + +## API 回归样例 + +| 编号 | API | 前置条件 | 操作 | 断言 | +|---|---|---|---|---| +| API-001 | `GET /api/overview` | `base` fixture | 请求默认范围 | HTTP 200;包含 `stats.totalSessions`、`stats.byDay`、`stats.byWeek`、`stats.byMonth`、`stats.heatmap`、`recentSessions`。 | +| API-002 | `GET /api/overview?from=YYYY-MM-DD&to=YYYY-MM-DD` | `base` fixture | 请求一个只覆盖部分 session 的范围 | `stats.totalSessions` 只统计范围内 session;`stats.heatmap` 仍固定最近 183 天,不随范围缩短。 | +| API-003 | `GET /api/sessions?limit=300` | `base` fixture | 请求 session 列表 | HTTP 200;session 按更新时间倒序;每项包含 `id`、`title`、`updatedAt`、`eventCount`、`tokenStats`。 | +| API-004 | `GET /api/sessions?q=demo` | `base` fixture | 搜索标题、cwd 或 model | 只返回匹配项;大小写不应导致明显误判。 | +| API-005 | `GET /api/sessions/{id}` | `base` fixture | 请求一条存在的 session | HTTP 200;包含 `summary`、`events`、`rawLines`;events 顺序与 JSONL 行序一致。 | +| API-006 | `GET /api/sessions/not-found` | `base` fixture | 请求不存在的 id | HTTP 404;返回结构化 `error`,服务不 panic。 | +| API-007 | `GET /api/memory` | `base` fixture | 请求 memory 列表 | HTTP 200;包含 `MEMORY.md`、`memory_summary.md`、rollout summary 条目。 | +| API-008 | `GET /api/memory?q=keyword` | `base` fixture | 搜索关键词 | 只展示匹配文件或匹配计数;不返回 auth/token 原文。 | +| API-009 | `GET /api/memory/file?path=...` | `base` fixture | 请求存在文件详情 | HTTP 200;返回 `file` 和 `content`;内容已脱敏。 | +| API-010 | `GET /api/diagnostics` | `base` fixture | 请求诊断 | HTTP 200;包含 `sources`、`schemas`;`auth.json` 只标记排除,不读取内容。 | +| API-011 | 所有 API | `bad_jsonl` fixture | 请求 Overview、Sessions、Session detail | HTTP 200 或目标 session 的可解释错误;坏行进入 warnings;服务不 panic。 | + +## Cache API 回归样例 + +当实现 cache lifecycle API 后,必须覆盖以下样例。cache 是派生数据,不是用户原始数据;失败时必须降级实时解析 JSONL。 + +| 编号 | API | 前置条件 | 操作 | 断言 | +|---|---|---|---|---| +| C-001 | `GET /api/cache/status` | `-no-cache` | 请求 cache 状态 | `status=disabled`;展示禁用原因;`canBuild=false`;页面不展示误导性重建按钮。 | +| C-002 | `GET /api/cache/status` | `cache_missing` | 请求 cache 状态 | `status=missing`;展示 cache 路径;允许 `Create cache`。 | +| C-003 | `POST /api/cache/build` | `cache_missing` | 点击或请求创建 cache | 返回当前 job;服务后台补齐今天以前的 rollout;今天的 rollout 不写入 cache。 | +| C-004 | `POST /api/cache/build` | job 正在运行 | 连续请求两次 build | 第二次不启动新 job;返回同一个 job 的进度状态。 | +| C-005 | `GET /api/cache/status` | build 运行中 | 轮询状态 | `status=rebuilding` 或等价运行态;`job.total`、`job.done`、`job.cached`、`job.skipped` 单调推进。 | +| C-006 | `GET /api/cache/status` | 健康 cache | 请求状态 | `status=healthy`;允许 `Fill missing cache`;不显示 rebuild 警告。 | +| C-007 | `POST /api/cache/build` | 健康 cache 且有历史缺口 | 请求补齐 | 只补齐缺失或过期历史 summary;SQLite 写入保持串行或低并发。 | +| C-008 | `GET /api/cache/status` | `cache_corrupt` | 请求状态 | `status=corrupt`;错误只在明确 `malformed`、`file is not a database`、`schema is corrupt` 时判定为损坏。 | +| C-009 | `POST /api/cache/rebuild` | `cache_corrupt`,用户已二次确认 | 请求重建 | 原 cache rename 为 `.corrupt..bak`;新建 cache;不直接删除损坏文件。 | +| C-010 | `POST /api/cache/rebuild` | 普通权限失败或 busy timeout | 请求重建 | 不 rename;状态为 `unavailable`;展示原因;页面仍通过 JSONL 实时解析可用。 | +| C-011 | Overview/Sessions | cache 损坏或不可用 | 打开页面 | 页面仍可展示统计和列表;warnings 可见;无未捕获 JS error。 | + +## Overview 页面回归样例 + +| 编号 | 前置条件 | 操作 | 断言 | +|---|---|---|---| +| O-001 | `base` fixture | 打开首页 | 顶部显示数据源状态;统计卡片展示 sessions、events、messages、tools、tokens、output。 | +| O-002 | `token_usage` fixture | 打开首页 | token 数字使用 `k`、`m`、`b` 简写;hover/title 或详情中保留可读精确值。 | +| O-003 | `base` fixture | 默认加载 | 时间范围默认为最近 7 天;From/To 有默认值,不为空。 | +| O-004 | `base` fixture | 切换 Last 24 hours、Last 7 days、Last 30 days、自定义日期 | 统计卡片、月度趋势、最近 session 跟随范围刷新。 | +| O-005 | `base` fixture | 连续设置 11 个自定义范围 | 下拉历史最多保留 10 条;重复范围去重。 | +| O-006 | `base` fixture | 查看 Activity heatmap | 固定展示最近 183 天;行数固定 7 行;宽窄视口下不改变行数。 | +| O-007 | `base` fixture | hover heatmap 单元格 | tooltip/title 或 aria label 包含日期和当日对话次数。 | +| O-008 | `missing_sources` fixture | 打开首页 | 页面展示空态或 warnings;不出现未捕获异常;菜单仍可切换。 | + +## Sessions 页面回归样例 + +| 编号 | 前置条件 | 操作 | 断言 | +|---|---|---|---| +| S-001 | `base` fixture | 打开 Sessions | 左侧列表展示 session title、时间、事件数、model、token 简写和 preview。 | +| S-002 | `base` fixture | 点击第一条 session | 右侧展示详情,不停留在 `Select a session to inspect.`。 | +| S-003 | `base` fixture | 查看详情事件流 | user、assistant、tool call、tool result、system event 按 JSONL 原始顺序展示。 | +| S-004 | `base` fixture | 展开 Raw JSONL | raw 内容已脱敏;能看到行号;不能出现假 token/cookie/secret 原文。 | +| S-005 | `token_usage` fixture | 点击含 token_count 的 session | token usage 摘要展示 total、input、cached、output、reasoning、last turn、context、rate limit。 | +| S-006 | `base` fixture | 搜索 title、cwd、model | 列表过滤;清空搜索后恢复。 | +| S-007 | `bad_jsonl` fixture | 点击含坏行 session | 可展示有效事件;坏行进入 warnings 或 raw 脱敏内容;服务不 panic。 | +| S-008 | 大 session fixture | 点击事件数较多的 session | 详情只解析目标文件,不触发全量扫描导致长时间卡死。 | + +## Memory 页面回归样例 + +| 编号 | 前置条件 | 操作 | 断言 | +|---|---|---|---| +| M-001 | `base` fixture | 打开 Memory | 列表展示 summary、index、rollout summary 等分类。 | +| M-002 | `base` fixture | 点击 `MEMORY.md` | 右侧展示标题、路径、大小、更新时间和内容预览。 | +| M-003 | `base` fixture | 搜索关键词 | 匹配项保留;无匹配时展示清晰空态。 | +| M-004 | `privacy` fixture | 打开包含敏感假字段的 memory | token、cookie、secret、api_key 被脱敏;不展示原文。 | +| M-005 | `missing_sources` fixture | 缺少 `memories/` | 页面展示 warnings 或空态;不影响 Overview/Sessions。 | + +## Diagnostics 页面回归样例 + +| 编号 | 前置条件 | 操作 | 断言 | +|---|---|---|---| +| D-001 | `base` fixture | 打开 Diagnostics | Data sources 表展示 session index、sessions、memory、sqlite schema 等来源状态。 | +| D-002 | `base` fixture | 查看 SQLite schema | 只读展示 schema;不打开或展示 `auth.json` 内容。 | +| D-003 | 系统无 `sqlite3` 命令 | 打开 Diagnostics | schema 区域显示不可用原因;页面仍可使用。 | +| D-004 | cache missing | 打开 Diagnostics | cache 区域展示 `missing` 和 `Create cache` 按钮。 | +| D-005 | cache healthy | 打开 Diagnostics | cache 区域展示 `healthy` 和 `Fill missing cache` 按钮。 | +| D-006 | cache corrupt | 打开 Diagnostics | cache 区域展示 `corrupt`;`Backup and rebuild cache` 必须有二次确认。 | +| D-007 | cache rebuilding | 触发 build/rebuild 后轮询 | 展示 total、done、cached、skipped、failed、startedAt、lastError 或 finishedAt。 | +| D-008 | cache disabled/unavailable | 使用 `-no-cache` 或不可写 cache path | 展示明确原因;不展示可执行但必然失败的按钮。 | + +## 响应式 UI 回归样例 + +每个页面至少检查以下视口: + +| 编号 | 视口 | 页面 | 断言 | +|---|---|---|---| +| R-001 | `390x844` | Overview | 顶部范围控件不溢出;统计卡片可读;heatmap 不横向失控。 | +| R-002 | `390x844` | Sessions | 左侧列表和右侧详情可上下浏览;按钮和 raw 展开不遮挡内容。 | +| R-003 | `390x844` | Memory | 文件列表与详情不重叠;长路径换行或截断合理。 | +| R-004 | `390x844` | Diagnostics | 表格转换为移动端可读布局;cache 操作按钮不溢出。 | +| R-005 | `768x1024` | Overview/Sessions | iPad 尺寸下主内容列宽稳定;heatmap 仍为 7 行。 | +| R-006 | `1440x900` | 全页面 | 页面无大面积错位;顶部菜单与左侧菜单职责清楚,不重复堆砌。 | + +通用断言: + +- `document.documentElement.scrollWidth <= window.innerWidth + 1`。 +- Chrome console 无应用自身 error。 +- Network 面板没有 API 404/500,除非样例明确测试错误路径。 +- 文本不重叠,按钮文字不溢出,菜单不遮挡内容。 + +## 隐私与安全回归样例 + +| 编号 | 前置条件 | 操作 | 断言 | +|---|---|---|---| +| P-001 | `privacy` fixture | 打开所有页面 | 不出现原始 `token`、`cookie`、`secret`、`api_key` 值。 | +| P-002 | `privacy` fixture | 展开 raw JSONL | raw 行仍脱敏;只保留排查格式所需结构。 | +| P-003 | `base` fixture | 打开 Diagnostics | `auth.json` 只显示 excluded 或不读取说明,不显示内容。 | +| P-004 | 任意 fixture | 检查 cache 文件 | cache 不包含 raw JSONL 和完整对话内容,只包含脱敏 summary 和 token 聚合。 | +| P-005 | 任意 fixture | 服务启动参数 | 默认监听 `127.0.0.1`;文档和 UI 不鼓励绑定公网地址。 | + +## AI 回归执行清单 + +AI 工具执行回归时按以下顺序记录结果: + +1. 记录分支、commit、启动命令、fixture 路径和 cache path。 +2. 运行 Go 单测、构建和 `node --check`。 +3. 启动服务并用 API 检查 Overview、Sessions、Memory、Diagnostics。 +4. 用 Chrome 打开页面,检查四个页面和三类视口。 +5. 如果本次改动涉及 cache,执行 Cache API 和 Diagnostics cache 操作样例。 +6. 如果本次改动涉及 parser、redaction、memory 或 raw JSONL,执行隐私与坏 JSONL 样例。 +7. 输出 `通过 / 失败 / 未执行` 表格;未执行必须说明原因,不能写成已通过。 + +推荐结果表: + +| 样例编号 | 结果 | 证据 | 备注 | +|---|---|---|---| +| O-001 | 通过 | 截图或 API 摘要 | | +| S-002 | 失败 | 错误文本或 console error | | +| C-009 | 未执行 | cache rebuild 尚未实现 | | + +## 维护要求 + +新增或修改以下内容时,必须同步更新本文档: + +- 新增页面、页面区块、按钮、菜单或响应式布局。 +- 修改 `/api/overview`、`/api/sessions`、`/api/memory`、`/api/diagnostics` 或 cache API。 +- 修改 JSONL parser、session summary、token 统计、memory 读取、redaction 规则。 +- 修改 SQLite summary cache 的状态、补齐、重建、损坏识别或降级逻辑。 +- 修改默认时间范围、range history、heatmap、数字格式化、raw JSONL 展示。 + +如果一个改动不需要新增样例,提交说明或 PR 描述中必须说明原因,例如“只改文案,不改变行为;现有 O-001 覆盖”。 From 46d1e228c025ece8d7dfc48eaa2f18fbdb96e82b Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 12:38:31 +0800 Subject: [PATCH 4/8] feat: manage codex inspector cache lifecycle --- README.MD | 9 + cli/codex_inspector/cache_manager.go | 291 ++++++++++++++++++++++ cli/codex_inspector/cache_manager_test.go | 161 ++++++++++++ cli/codex_inspector/diagnostics.go | 1 + cli/codex_inspector/main.go | 11 +- cli/codex_inspector/parser_test.go | 5 +- cli/codex_inspector/server.go | 21 ++ cli/codex_inspector/sqlite_cache.go | 57 ++++- cli/codex_inspector/static/app.js | 92 ++++++- cli/codex_inspector/static/index.html | 10 + cli/codex_inspector/static/styles.css | 61 +++++ cli/codex_inspector/store.go | 201 +++++++++++++-- cli/codex_inspector/types.go | 26 ++ docs/cli/codex_inspector.md | 32 ++- docs/install.md | 16 ++ 15 files changed, 965 insertions(+), 29 deletions(-) create mode 100644 cli/codex_inspector/cache_manager.go create mode 100644 cli/codex_inspector/cache_manager_test.go diff --git a/README.MD b/README.MD index 6667ca0..e479714 100644 --- a/README.MD +++ b/README.MD @@ -84,6 +84,15 @@ go build -o output/codex_inspector ./cli/codex_inspector/... 历史 session summary 会写入本机 SQLite cache,加速重复浏览;可通过 `-cache-path` 指定位置,或用 `-no-cache` 禁用。 +cache 是派生数据,不写入 `~/.codex`。服务启动时只打开已有 cache;cache 缺失时页面仍会实时解析 JSONL,Diagnostics 页面可以手动创建。已有健康 cache 会按 `-cache-workers` 后台补齐历史 session,默认 2 个 worker,`0` 表示关闭自动补齐: + +```bash +codex_inspector -cache-workers 2 +codex_inspector -cache-workers 0 +``` + +Diagnostics 支持查看 cache 状态并执行 `Create cache`、`Fill missing cache`、`Backup and rebuild cache`。损坏 cache 会先重命名为 `.corrupt..bak`,再新建 cache。 + ## 构建与验证 构建 Go CLI: diff --git a/cli/codex_inspector/cache_manager.go b/cli/codex_inspector/cache_manager.go new file mode 100644 index 0000000..4d1bdf2 --- /dev/null +++ b/cli/codex_inspector/cache_manager.go @@ -0,0 +1,291 @@ +package main + +import ( + "fmt" + "os" + "path/filepath" + "sync" + "time" +) + +const ( + cacheStatusDisabled = "disabled" + cacheStatusMissing = "missing" + cacheStatusHealthy = "healthy" + cacheStatusCorrupt = "corrupt" + cacheStatusRebuilding = "rebuilding" + cacheStatusUnavailable = "unavailable" +) + +type summaryCacheManager struct { + mu sync.Mutex + path string + workers int + status string + reason string + backupPath string + disk *summaryDiskCache + job CacheJobState + jobSeq int +} + +type cacheBuildTask struct { + Path string + Meta fileMeta + Summary SessionSummary +} + +type cacheBuildResult struct { + Path string + Meta fileMeta + Summary SessionSummary + Error string +} + +func newSummaryCacheManager(path string, workers int) *summaryCacheManager { + manager := &summaryCacheManager{path: path, workers: workers} + manager.refreshLocked() + return manager +} + +func (m *summaryCacheManager) refreshLocked() { + if m.path == "" { + m.status = cacheStatusDisabled + m.reason = "cache disabled by -no-cache" + return + } + if _, err := os.Stat(m.path); err != nil { + if os.IsNotExist(err) { + m.status = cacheStatusMissing + m.reason = "cache file does not exist" + return + } + m.status = cacheStatusUnavailable + m.reason = err.Error() + return + } + cache, err := openExistingSummaryDiskCache(m.path) + if err != nil { + if isSQLiteCorruptError(err) { + m.status = cacheStatusCorrupt + m.reason = err.Error() + return + } + m.status = cacheStatusUnavailable + m.reason = err.Error() + return + } + m.disk = cache + m.status = cacheStatusHealthy + m.reason = "" +} + +func (m *summaryCacheManager) Close() { + m.mu.Lock() + defer m.mu.Unlock() + if m.disk != nil { + _ = m.disk.Close() + m.disk = nil + } +} + +func (m *summaryCacheManager) DiskCache() *summaryDiskCache { + if m == nil { + return nil + } + m.mu.Lock() + defer m.mu.Unlock() + return m.disk +} + +func (m *summaryCacheManager) Status() CacheStatus { + if m == nil { + return CacheStatus{Status: cacheStatusDisabled, Reason: "cache manager unavailable", GeneratedAt: time.Now().Format(time.RFC3339)} + } + m.mu.Lock() + defer m.mu.Unlock() + return m.statusLocked() +} + +func (m *summaryCacheManager) statusLocked() CacheStatus { + status := m.status + if m.job.Running { + status = cacheStatusRebuilding + } + canBuild := !m.job.Running && (m.status == cacheStatusMissing || m.status == cacheStatusHealthy) + canRebuild := !m.job.Running && m.status == cacheStatusCorrupt + return CacheStatus{ + Status: status, + Path: m.path, + Workers: m.workers, + Reason: m.reason, + BackupPath: m.backupPath, + CanBuild: canBuild, + CanRebuild: canRebuild, + AutoFill: m.workers > 0 && m.status == cacheStatusHealthy, + GeneratedAt: time.Now().Format(time.RFC3339), + Job: m.job, + } +} + +func (m *summaryCacheManager) StartAutoBuild(store *Store) CacheStatus { + if m == nil || m.workers <= 0 { + return m.Status() + } + m.mu.Lock() + if m.status != cacheStatusHealthy || m.job.Running { + status := m.statusLocked() + m.mu.Unlock() + return status + } + m.mu.Unlock() + return m.StartBuild(store, false) +} + +func (m *summaryCacheManager) StartBuild(store *Store, rebuild bool) CacheStatus { + if m == nil { + return CacheStatus{Status: cacheStatusDisabled, Reason: "cache manager unavailable", GeneratedAt: time.Now().Format(time.RFC3339)} + } + m.mu.Lock() + if m.job.Running { + status := m.statusLocked() + m.mu.Unlock() + return status + } + if rebuild { + if m.status != cacheStatusCorrupt { + status := m.statusLocked() + m.mu.Unlock() + return status + } + if err := m.backupCorruptAndCreateLocked(); err != nil { + m.status = cacheStatusUnavailable + m.reason = err.Error() + status := m.statusLocked() + m.mu.Unlock() + return status + } + } else { + switch m.status { + case cacheStatusMissing: + if err := m.createLocked(); err != nil { + m.status = cacheStatusUnavailable + m.reason = err.Error() + status := m.statusLocked() + m.mu.Unlock() + return status + } + case cacheStatusHealthy: + default: + status := m.statusLocked() + m.mu.Unlock() + return status + } + } + + m.jobSeq++ + seq := m.jobSeq + now := time.Now().Format(time.RFC3339) + m.job = CacheJobState{Running: true, StartedAt: now} + m.status = cacheStatusRebuilding + m.reason = "" + workers := m.workers + if workers <= 0 { + workers = 1 + } + status := m.statusLocked() + m.mu.Unlock() + + go store.runCacheBuild(seq, workers) + return status +} + +func (m *summaryCacheManager) createLocked() error { + cache, err := openSummaryDiskCache(m.path) + if err != nil { + return err + } + m.disk = cache + m.status = cacheStatusHealthy + m.reason = "" + return nil +} + +func (m *summaryCacheManager) backupCorruptAndCreateLocked() error { + if m.disk != nil { + _ = m.disk.Close() + m.disk = nil + } + backupPath := fmt.Sprintf("%s.corrupt.%s.bak", m.path, time.Now().Format("20060102T150405")) + if err := os.MkdirAll(filepath.Dir(m.path), 0755); err != nil { + return err + } + if err := os.Rename(m.path, backupPath); err != nil { + return err + } + m.backupPath = backupPath + return m.createLocked() +} + +func (m *summaryCacheManager) setJobTotal(seq int, total int) { + m.mu.Lock() + defer m.mu.Unlock() + if seq == m.jobSeq && m.job.Running { + m.job.Total = total + } +} + +func (m *summaryCacheManager) addJobProgress(seq int, cached int, skipped int, failed int, lastError string) { + m.mu.Lock() + defer m.mu.Unlock() + if seq != m.jobSeq || !m.job.Running { + return + } + m.job.Done++ + m.job.Cached += cached + m.job.Skipped += skipped + m.job.Failed += failed + if lastError != "" { + m.job.LastError = lastError + } +} + +func (m *summaryCacheManager) finishJob(seq int, lastError string) { + m.mu.Lock() + defer m.mu.Unlock() + if seq != m.jobSeq || !m.job.Running { + return + } + m.job.Running = false + m.job.FinishedAt = time.Now().Format(time.RFC3339) + if lastError != "" { + m.job.LastError = lastError + } + if m.disk == nil { + m.status = cacheStatusUnavailable + if m.reason == "" { + m.reason = "cache unavailable after build" + } + return + } + m.status = cacheStatusHealthy + m.reason = "" +} + +func (m *summaryCacheManager) ReportRuntimeError(err error) { + if m == nil || err == nil { + return + } + m.mu.Lock() + defer m.mu.Unlock() + if m.disk != nil { + _ = m.disk.Close() + m.disk = nil + } + if isSQLiteCorruptError(err) { + m.status = cacheStatusCorrupt + } else { + m.status = cacheStatusUnavailable + } + m.reason = err.Error() +} diff --git a/cli/codex_inspector/cache_manager_test.go b/cli/codex_inspector/cache_manager_test.go new file mode 100644 index 0000000..dbff237 --- /dev/null +++ b/cli/codex_inspector/cache_manager_test.go @@ -0,0 +1,161 @@ +package main + +import ( + "encoding/json" + "net/http" + "net/http/httptest" + "os" + "path/filepath" + "testing" + "time" + + "github.com/stretchr/testify/require" +) + +func TestCacheMissingCanCreateAndFill(t *testing.T) { + codexHome, rolloutPath := writeCacheTestRollout(t, "2000", "01", "02", "missing-cache-session") + cachePath := filepath.Join(t.TempDir(), "summary.sqlite") + store := NewStoreWithCacheWorkers(codexHome, cachePath, 0) + defer store.Close() + + require.Equal(t, cacheStatusMissing, store.CacheStatus().Status) + status := store.StartCacheBuild() + require.Equal(t, cacheStatusRebuilding, status.Status) + status = waitCacheJob(t, store) + require.Equal(t, cacheStatusHealthy, status.Status) + require.Equal(t, 1, status.Job.Cached) + + cache, err := openExistingSummaryDiskCache(cachePath) + require.NoError(t, err) + defer cache.Close() + meta, ok := statFile(rolloutPath) + require.True(t, ok) + summary, ok, err := cache.Lookup(rolloutPath, meta) + require.NoError(t, err) + require.True(t, ok) + require.Equal(t, "missing-cache-session", summary.ID) +} + +func TestCacheCorruptBackupAndRebuild(t *testing.T) { + codexHome, rolloutPath := writeCacheTestRollout(t, "2000", "01", "03", "corrupt-cache-session") + cachePath := filepath.Join(t.TempDir(), "summary.sqlite") + require.NoError(t, os.WriteFile(cachePath, []byte("not a sqlite database"), 0600)) + store := NewStoreWithCacheWorkers(codexHome, cachePath, 0) + defer store.Close() + + require.Equal(t, cacheStatusCorrupt, store.CacheStatus().Status) + status := store.StartCacheRebuild() + require.Equal(t, cacheStatusRebuilding, status.Status) + status = waitCacheJob(t, store) + require.Equal(t, cacheStatusHealthy, status.Status) + require.NotEmpty(t, status.BackupPath) + require.FileExists(t, status.BackupPath) + + cache, err := openExistingSummaryDiskCache(cachePath) + require.NoError(t, err) + defer cache.Close() + meta, ok := statFile(rolloutPath) + require.True(t, ok) + summary, ok, err := cache.Lookup(rolloutPath, meta) + require.NoError(t, err) + require.True(t, ok) + require.Equal(t, "corrupt-cache-session", summary.ID) +} + +func TestCacheDisabledAPIStatus(t *testing.T) { + store := NewStoreWithCacheWorkers(t.TempDir(), "", 2) + defer store.Close() + server := httptest.NewServer(NewServer(store)) + defer server.Close() + + resp, err := http.Get(server.URL + "/api/cache/status") + require.NoError(t, err) + defer resp.Body.Close() + require.Equal(t, http.StatusOK, resp.StatusCode) + var status CacheStatus + require.NoError(t, json.NewDecoder(resp.Body).Decode(&status)) + require.Equal(t, cacheStatusDisabled, status.Status) + require.Contains(t, status.Reason, "-no-cache") +} + +func TestCacheBuildSkipsTodayRollout(t *testing.T) { + codexHome, oldPath := writeCacheTestRollout(t, "2000", "01", "04", "old-session") + today := time.Now() + todayDir := filepath.Join(codexHome, "sessions", today.Format("2006"), today.Format("01"), today.Format("02")) + require.NoError(t, os.MkdirAll(todayDir, 0755)) + todayPath := filepath.Join(todayDir, "rollout-"+today.Format("2006-01-02T15-04-05")+"-today.jsonl") + require.NoError(t, os.WriteFile(todayPath, []byte(`{"type":"session_meta","timestamp":"`+today.Format(time.RFC3339)+`","payload":{"id":"today-session"}} +{"type":"response_item","timestamp":"`+today.Format(time.RFC3339)+`","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"today"}]}} +`), 0644)) + + cachePath := filepath.Join(t.TempDir(), "summary.sqlite") + store := NewStoreWithCacheWorkers(codexHome, cachePath, 0) + defer store.Close() + store.StartCacheBuild() + status := waitCacheJob(t, store) + require.Equal(t, cacheStatusHealthy, status.Status) + require.Equal(t, 1, status.Job.Cached) + + cache, err := openExistingSummaryDiskCache(cachePath) + require.NoError(t, err) + defer cache.Close() + oldMeta, ok := statFile(oldPath) + require.True(t, ok) + _, ok, err = cache.Lookup(oldPath, oldMeta) + require.NoError(t, err) + require.True(t, ok) + todayMeta, ok := statFile(todayPath) + require.True(t, ok) + _, ok, err = cache.Lookup(todayPath, todayMeta) + require.NoError(t, err) + require.False(t, ok) +} + +func TestRepeatedBuildRequestReturnsRunningJob(t *testing.T) { + codexHome, _ := writeCacheTestRollout(t, "2000", "01", "05", "repeat-session") + cachePath := filepath.Join(t.TempDir(), "summary.sqlite") + store := NewStoreWithCacheWorkers(codexHome, cachePath, 0) + defer store.Close() + require.Equal(t, cacheStatusMissing, store.CacheStatus().Status) + require.Equal(t, cacheStatusRebuilding, store.StartCacheBuild().Status) + + store.cacheManager.mu.Lock() + firstSeq := store.cacheManager.jobSeq + store.cacheManager.mu.Unlock() + + second := store.StartCacheBuild() + require.Equal(t, cacheStatusRebuilding, second.Status) + store.cacheManager.mu.Lock() + require.Equal(t, firstSeq, store.cacheManager.jobSeq) + store.cacheManager.mu.Unlock() + _ = waitCacheJob(t, store) +} + +func writeCacheTestRollout(t *testing.T, year string, month string, day string, id string) (string, string) { + t.Helper() + codexHome := t.TempDir() + sessionDir := filepath.Join(codexHome, "sessions", year, month, day) + require.NoError(t, os.MkdirAll(sessionDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(codexHome, "session_index.jsonl"), nil, 0644)) + path := filepath.Join(sessionDir, "rollout-"+year+"-"+month+"-"+day+"T10-00-00-"+id+".jsonl") + require.NoError(t, os.WriteFile(path, []byte(`{"type":"session_meta","timestamp":"`+year+`-`+month+`-`+day+`T10:00:00Z","payload":{"id":"`+id+`","cwd":"/tmp/demo","model":"gpt-test"}} +{"type":"response_item","timestamp":"`+year+`-`+month+`-`+day+`T10:00:01Z","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"hello"}]}} +`), 0644)) + oldTime := time.Date(2000, 1, 2, 10, 0, 0, 0, time.Local) + require.NoError(t, os.Chtimes(path, oldTime, oldTime)) + return codexHome, path +} + +func waitCacheJob(t *testing.T, store *Store) CacheStatus { + t.Helper() + deadline := time.Now().Add(5 * time.Second) + for time.Now().Before(deadline) { + status := store.CacheStatus() + if !status.Job.Running { + return status + } + time.Sleep(20 * time.Millisecond) + } + t.Fatalf("cache job did not finish: %+v", store.CacheStatus()) + return CacheStatus{} +} diff --git a/cli/codex_inspector/diagnostics.go b/cli/codex_inspector/diagnostics.go index 55d7e28..118a7df 100644 --- a/cli/codex_inspector/diagnostics.go +++ b/cli/codex_inspector/diagnostics.go @@ -13,6 +13,7 @@ func (s *Store) Diagnostics() DiagnosticsResponse { response := DiagnosticsResponse{ CodexHome: s.CodexHome, Sources: s.Sources(), + Cache: s.CacheStatus(), } dbs := []struct { name string diff --git a/cli/codex_inspector/main.go b/cli/codex_inspector/main.go index 88fd733..2cbbd38 100644 --- a/cli/codex_inspector/main.go +++ b/cli/codex_inspector/main.go @@ -14,17 +14,26 @@ func main() { addr := flag.String("addr", defaultAddr, "HTTP listen address") codexHome := flag.String("codex-home", defaultCodexHome(), "Codex home directory") cachePath := flag.String("cache-path", defaultCachePath(), "SQLite cache path for historical session summaries") + cacheWorkers := flag.Int("cache-workers", 2, "background workers for filling historical summary cache; 0 disables automatic fill") noCache := flag.Bool("no-cache", false, "disable SQLite summary cache") flag.Parse() if *noCache { *cachePath = "" } - store := NewStoreWithCache(*codexHome, *cachePath) + if *cacheWorkers < 0 { + *cacheWorkers = 0 + } + store := NewStoreWithCacheWorkers(*codexHome, *cachePath, *cacheWorkers) defer store.Close() fmt.Printf("codex_inspector reading data from %s\n", store.CodexHome) if store.CachePath != "" { fmt.Printf("codex_inspector caching historical summaries in %s\n", store.CachePath) + if *cacheWorkers == 0 { + fmt.Println("codex_inspector automatic cache fill disabled") + } else { + fmt.Printf("codex_inspector automatic cache fill workers: %d\n", *cacheWorkers) + } } fmt.Printf("codex_inspector listening on http://%s\n", *addr) fmt.Println("privacy: this tool is read-only and should be bound to 127.0.0.1 unless you understand the data exposure risk") diff --git a/cli/codex_inspector/parser_test.go b/cli/codex_inspector/parser_test.go index ae91f6a..3e337a8 100644 --- a/cli/codex_inspector/parser_test.go +++ b/cli/codex_inspector/parser_test.go @@ -90,13 +90,16 @@ func TestHistoricalSessionSummaryIsCachedInSQLite(t *testing.T) { cachePath := filepath.Join(t.TempDir(), "summary.sqlite") store := NewStoreWithCache(codexHome, cachePath) sessions, warnings := store.LoadSessions(parseFilter("2000-01-01", "2000-01-02", "", 0)) + store.StartCacheBuild() + status := waitCacheJob(t, store) store.Close() require.Empty(t, warnings) require.Len(t, sessions, 1) require.Equal(t, 1, sessions[0].UserMessages) + require.Equal(t, cacheStatusHealthy, status.Status) - cache, err := openSummaryDiskCache(cachePath) + cache, err := openExistingSummaryDiskCache(cachePath) require.NoError(t, err) defer cache.Close() meta, ok := statFile(path) diff --git a/cli/codex_inspector/server.go b/cli/codex_inspector/server.go index bf8740a..f50392a 100644 --- a/cli/codex_inspector/server.go +++ b/cli/codex_inspector/server.go @@ -57,6 +57,27 @@ func NewServer(store *Store) http.Handler { mux.HandleFunc("/api/diagnostics", func(w http.ResponseWriter, r *http.Request) { writeJSON(w, http.StatusOK, store.Diagnostics()) }) + mux.HandleFunc("/api/cache/status", func(w http.ResponseWriter, r *http.Request) { + if r.Method != http.MethodGet { + http.Error(w, "method not allowed", http.StatusMethodNotAllowed) + return + } + writeJSON(w, http.StatusOK, store.CacheStatus()) + }) + mux.HandleFunc("/api/cache/build", func(w http.ResponseWriter, r *http.Request) { + if r.Method != http.MethodPost { + http.Error(w, "method not allowed", http.StatusMethodNotAllowed) + return + } + writeJSON(w, http.StatusOK, store.StartCacheBuild()) + }) + mux.HandleFunc("/api/cache/rebuild", func(w http.ResponseWriter, r *http.Request) { + if r.Method != http.MethodPost { + http.Error(w, "method not allowed", http.StatusMethodNotAllowed) + return + } + writeJSON(w, http.StatusOK, store.StartCacheRebuild()) + }) sub, err := fs.Sub(staticFiles, "static") if err != nil { diff --git a/cli/codex_inspector/sqlite_cache.go b/cli/codex_inspector/sqlite_cache.go index 3f7990b..84dc86c 100644 --- a/cli/codex_inspector/sqlite_cache.go +++ b/cli/codex_inspector/sqlite_cache.go @@ -5,6 +5,8 @@ import ( "encoding/json" "os" "path/filepath" + "strings" + "sync" "time" _ "modernc.org/sqlite" @@ -15,6 +17,7 @@ const summaryCacheVersion = 1 type summaryDiskCache struct { path string db *sql.DB + mu sync.Mutex } type fileMeta struct { @@ -32,18 +35,34 @@ func defaultCachePath() string { } func openSummaryDiskCache(path string) (*summaryDiskCache, error) { + return openSummaryDiskCacheAt(path, true) +} + +func openExistingSummaryDiskCache(path string) (*summaryDiskCache, error) { + return openSummaryDiskCacheAt(path, false) +} + +func openSummaryDiskCacheAt(path string, create bool) (*summaryDiskCache, error) { if path == "" { return nil, nil } - if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil { - return nil, err - } - if _, err := os.Stat(path); os.IsNotExist(err) { + if create { + if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil { + return nil, err + } file, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE, 0600) if err != nil { return nil, err } _ = file.Close() + } else { + info, err := os.Stat(path) + if err != nil { + return nil, err + } + if info.IsDir() { + return nil, os.ErrInvalid + } } db, err := sql.Open("sqlite", path) if err != nil { @@ -60,9 +79,14 @@ func openSummaryDiskCache(path string) (*summaryDiskCache, error) { } func (c *summaryDiskCache) init() error { - _, err := c.db.Exec(` -PRAGMA busy_timeout = 5000; -CREATE TABLE IF NOT EXISTS session_summaries ( + if _, err := c.db.Exec(`PRAGMA busy_timeout = 5000;`); err != nil { + return err + } + var check string + if err := c.db.QueryRow(`PRAGMA quick_check;`).Scan(&check); err != nil { + return err + } + _, err := c.db.Exec(`CREATE TABLE IF NOT EXISTS session_summaries ( path TEXT PRIMARY KEY, size INTEGER NOT NULL, modified_at_ns INTEGER NOT NULL, @@ -81,6 +105,8 @@ func (c *summaryDiskCache) Close() error { if c == nil || c.db == nil { return nil } + c.mu.Lock() + defer c.mu.Unlock() return c.db.Close() } @@ -88,6 +114,8 @@ func (c *summaryDiskCache) Lookup(path string, meta fileMeta) (SessionSummary, b if c == nil || c.db == nil { return SessionSummary{}, false, nil } + c.mu.Lock() + defer c.mu.Unlock() var raw string err := c.db.QueryRow( `SELECT summary_json FROM session_summaries @@ -112,6 +140,8 @@ func (c *summaryDiskCache) Upsert(path string, meta fileMeta, summary SessionSum if c == nil || c.db == nil || path == "" { return nil } + c.mu.Lock() + defer c.mu.Unlock() summary.Enriched = true raw, err := json.Marshal(summary) if err != nil { @@ -158,3 +188,16 @@ func cacheableSummary(summary SessionSummary, now time.Time) bool { t, ok := parseTime(value) return ok && startOfDay(t).Before(startOfDay(now)) } + +func isSQLiteCorruptError(err error) bool { + if err == nil { + return false + } + message := strings.ToLower(err.Error()) + for _, marker := range []string{"malformed", "file is not a database", "schema is corrupt"} { + if strings.Contains(message, marker) { + return true + } + } + return false +} diff --git a/cli/codex_inspector/static/app.js b/cli/codex_inspector/static/app.js index 695c92f..9c54313 100644 --- a/cli/codex_inspector/static/app.js +++ b/cli/codex_inspector/static/app.js @@ -5,6 +5,7 @@ const state = { detailRequest: 0, memoryFiles: [], selectedMemory: "", + cachePollTimer: 0, }; const RANGE_HISTORY_KEY = "codexInspectorRangeHistory"; @@ -31,8 +32,8 @@ function params(extra = {}) { return text ? `?${text}` : ""; } -async function api(path) { - const response = await fetch(path, { cache: "no-store" }); +async function api(path, options = {}) { + const response = await fetch(path, { cache: "no-store", ...options }); if (!response.ok) { const text = await response.text(); throw new Error(text || `${response.status} ${response.statusText}`); @@ -506,10 +507,97 @@ async function loadMemoryDetail(path) { async function loadDiagnostics() { const data = await api("/api/diagnostics"); $("#sourceStatus").textContent = sourceStatusText(data.sources); + renderCacheStatus(data.cache); renderSourceTable(data.sources); renderSchemas(data.schemas); } +async function loadCacheStatus() { + const data = await api("/api/cache/status"); + renderCacheStatus(data); +} + +async function startCacheBuild(rebuild = false) { + if (rebuild && !window.confirm("Backup the corrupt cache and rebuild a new cache?")) { + return; + } + const path = rebuild ? "/api/cache/rebuild" : "/api/cache/build"; + const data = await api(path, { method: "POST" }); + renderCacheStatus(data); + showToast(rebuild ? "Cache rebuild started" : "Cache build started"); +} + +function renderCacheStatus(cache) { + const actions = $("#cacheActions"); + const root = $("#cacheStatus"); + const meta = $("#cacheMeta"); + clearTimeout(state.cachePollTimer); + actions.textContent = ""; + root.textContent = ""; + + if (!cache) { + meta.textContent = "cache status unavailable"; + root.append(el("div", "item-preview", "Cache status was not returned by the server.")); + return; + } + + const statusClass = cache.status === "healthy" || cache.status === "rebuilding" ? "status-ok" : "status-miss"; + const status = el("span", `status-pill ${statusClass}`, cache.status); + meta.textContent = cache.path || "no cache path"; + const summary = el("div", "cache-summary"); + summary.append(status); + summary.append(el("span", "item-meta", cache.reason || (cache.autoFill ? `auto fill workers: ${cache.workers}` : `workers: ${cache.workers}`))); + root.append(summary); + + if (cache.backupPath) { + root.append(el("div", "item-preview", `Backup: ${cache.backupPath}`)); + } + + renderCacheJob(root, cache.job || {}); + + if (cache.canBuild) { + const button = el("button", "primary-button", cache.status === "missing" ? "Create cache" : "Fill missing cache"); + button.type = "button"; + button.addEventListener("click", () => startCacheBuild(false).catch((error) => showToast(error.message))); + actions.append(button); + } + if (cache.canRebuild) { + const button = el("button", "primary-button danger-button", "Backup and rebuild cache"); + button.type = "button"; + button.addEventListener("click", () => startCacheBuild(true).catch((error) => showToast(error.message))); + actions.append(button); + } + if (cache.job?.running) { + const button = el("button", "primary-button", "Refreshing"); + button.type = "button"; + button.disabled = true; + actions.append(button); + state.cachePollTimer = setTimeout(() => { + if (state.page === "diagnostics") loadCacheStatus().catch((error) => showToast(error.message)); + }, 1200); + } +} + +function renderCacheJob(root, job) { + const grid = el("div", "cache-job-grid"); + [ + ["Total", job.total || 0], + ["Done", job.done || 0], + ["Cached", job.cached || 0], + ["Skipped", job.skipped || 0], + ["Failed", job.failed || 0], + ].forEach(([label, value]) => { + const item = el("div", "cache-job-item"); + item.append(el("span", "metric-label", label)); + item.append(el("strong", "", formatNumber(value))); + grid.append(item); + }); + root.append(grid); + const times = [job.startedAt ? `Started ${shortDate(job.startedAt)}` : "", job.finishedAt ? `Finished ${shortDate(job.finishedAt)}` : ""].filter(Boolean).join(" · "); + if (times) root.append(el("div", "item-meta", times)); + if (job.lastError) root.append(el("div", "item-preview danger-text", job.lastError)); +} + function renderSourceTable(sources) { const root = $("#sourceTable"); root.textContent = ""; diff --git a/cli/codex_inspector/static/index.html b/cli/codex_inspector/static/index.html index 63b61b0..36eb330 100644 --- a/cli/codex_inspector/static/index.html +++ b/cli/codex_inspector/static/index.html @@ -148,6 +148,16 @@

Diagnostics

数据源状态、SQLite schema 探测和只读边界。

+
+
+
+

Summary cache

+ +
+
+
+
+

Data sources

diff --git a/cli/codex_inspector/static/styles.css b/cli/codex_inspector/static/styles.css index 960ae00..e16e67f 100644 --- a/cli/codex_inspector/static/styles.css +++ b/cli/codex_inspector/static/styles.css @@ -157,6 +157,14 @@ select { opacity: 0.72; } +.danger-button { + background: var(--danger); +} + +.danger-button:hover { + background: #963333; +} + .privacy-strip { padding: 9px 24px; border-bottom: 1px solid var(--border); @@ -684,6 +692,51 @@ th { color: var(--danger); } +.cache-actions { + display: flex; + flex-wrap: wrap; + gap: 8px; + justify-content: flex-end; +} + +.cache-status { + display: grid; + gap: 12px; + padding: 12px; +} + +.cache-summary { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 10px; + min-width: 0; +} + +.cache-job-grid { + display: grid; + grid-template-columns: repeat(5, minmax(0, 1fr)); + gap: 8px; +} + +.cache-job-item { + min-width: 0; + border: 1px solid var(--border); + border-radius: 8px; + padding: 10px; + background: #fbfcfb; +} + +.cache-job-item strong { + display: block; + margin-top: 3px; + font-size: 18px; +} + +.danger-text { + color: var(--danger); +} + .schema-card { border: 1px solid var(--border); border-radius: 8px; @@ -763,6 +816,10 @@ th { grid-template-columns: repeat(3, minmax(0, 1fr)); } + .cache-job-grid { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } + .split-grid, .session-layout, .memory-layout { @@ -843,6 +900,10 @@ th { grid-template-columns: repeat(2, minmax(0, 1fr)); } + .cache-job-grid { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + .stat-card { min-height: 96px; padding: 14px; diff --git a/cli/codex_inspector/store.go b/cli/codex_inspector/store.go index e33a791..c5d073b 100644 --- a/cli/codex_inspector/store.go +++ b/cli/codex_inspector/store.go @@ -20,8 +20,7 @@ type Store struct { cond *sync.Cond loading bool sessionCache *sessionCache - diskCache *summaryDiskCache - cacheWarning string + cacheManager *summaryCacheManager } type sessionCache struct { @@ -42,17 +41,17 @@ func NewStore(codexHome string) *Store { } func NewStoreWithCache(codexHome string, cachePath string) *Store { + return NewStoreWithCacheWorkers(codexHome, cachePath, 0) +} + +func NewStoreWithCacheWorkers(codexHome string, cachePath string, cacheWorkers int) *Store { if codexHome == "" { codexHome = defaultCodexHome() } store := &Store{CodexHome: filepath.Clean(codexHome), CachePath: cachePath} store.cond = sync.NewCond(&store.mu) - cache, err := openSummaryDiskCache(cachePath) - if err != nil { - store.cacheWarning = fmt.Sprintf("summary cache unavailable: %v", err) - } else { - store.diskCache = cache - } + store.cacheManager = newSummaryCacheManager(cachePath, cacheWorkers) + store.cacheManager.StartAutoBuild(store) return store } @@ -84,8 +83,8 @@ func (s *Store) Sources() []SourceStatus { } func (s *Store) Close() { - if s.diskCache != nil { - _ = s.diskCache.Close() + if s.cacheManager != nil { + s.cacheManager.Close() } } @@ -151,8 +150,8 @@ func (s *Store) loadAllSessions() ([]SessionSummary, []string) { s.mu.Unlock() sessions, byID, warnings := s.buildSessionCache() - if s.cacheWarning != "" { - warnings = append(warnings, s.cacheWarning) + if warning := s.cacheWarning(); warning != "" { + warnings = append(warnings, warning) } s.mu.Lock() @@ -214,10 +213,11 @@ func (s *Store) enrichSummaries(sessions []SessionSummary) ([]SessionSummary, [] if cached, ok := s.cachedSummary(summary.ID); ok && cached.Enriched && historicalFile && cacheableSummary(cached, now) { enriched = cached } else if summary.Path != "" { - if historicalFile && s.diskCache != nil { - cached, ok, err := s.diskCache.Lookup(summary.Path, meta) + if cache := s.diskCache(); historicalFile && cache != nil { + cached, ok, err := cache.Lookup(summary.Path, meta) if err != nil { warnings = append(warnings, fmt.Sprintf("cache lookup %s: %v", summary.Path, err)) + s.reportCacheError(err) } if ok && cacheableSummary(cached, now) { detail := SessionDetail{Summary: cached} @@ -237,9 +237,10 @@ func (s *Store) enrichSummaries(sessions []SessionSummary) ([]SessionSummary, [] enriched = detail.Summary enriched.Enriched = true s.updateCachedSummary(enriched) - if historicalFile && cacheableSummary(enriched, now) && s.diskCache != nil { - if err := s.diskCache.Upsert(summary.Path, meta, enriched); err != nil { + if cache := s.diskCache(); historicalFile && cacheableSummary(enriched, now) && cache != nil { + if err := cache.Upsert(summary.Path, meta, enriched); err != nil { warnings = append(warnings, fmt.Sprintf("cache write %s: %v", summary.Path, err)) + s.reportCacheError(err) } } } @@ -249,6 +250,174 @@ func (s *Store) enrichSummaries(sessions []SessionSummary) ([]SessionSummary, [] return out, warnings } +func (s *Store) diskCache() *summaryDiskCache { + if s.cacheManager == nil { + return nil + } + return s.cacheManager.DiskCache() +} + +func (s *Store) reportCacheError(err error) { + if s.cacheManager != nil { + s.cacheManager.ReportRuntimeError(err) + } +} + +func (s *Store) cacheWarning() string { + if s.cacheManager == nil { + return "" + } + status := s.cacheManager.Status() + switch status.Status { + case cacheStatusCorrupt, cacheStatusUnavailable: + if status.Reason != "" { + return fmt.Sprintf("summary cache %s: %s", status.Status, status.Reason) + } + return fmt.Sprintf("summary cache %s", status.Status) + default: + return "" + } +} + +func (s *Store) CacheStatus() CacheStatus { + if s.cacheManager == nil { + return CacheStatus{Status: cacheStatusDisabled, Reason: "cache manager unavailable", GeneratedAt: time.Now().Format(time.RFC3339)} + } + return s.cacheManager.Status() +} + +func (s *Store) StartCacheBuild() CacheStatus { + if s.cacheManager == nil { + return s.CacheStatus() + } + return s.cacheManager.StartBuild(s, false) +} + +func (s *Store) StartCacheRebuild() CacheStatus { + if s.cacheManager == nil { + return s.CacheStatus() + } + return s.cacheManager.StartBuild(s, true) +} + +func (s *Store) runCacheBuild(seq int, workers int) { + tasks, skipped, failed, lastError := s.cacheBuildTasks() + if workers < 1 { + workers = 1 + } + if workers > 16 { + workers = 16 + } + s.cacheManager.setJobTotal(seq, len(tasks)+skipped+failed) + for i := 0; i < skipped; i++ { + s.cacheManager.addJobProgress(seq, 0, 1, 0, "") + } + for i := 0; i < failed; i++ { + s.cacheManager.addJobProgress(seq, 0, 0, 1, lastError) + } + if len(tasks) == 0 || s.diskCache() == nil { + s.cacheManager.finishJob(seq, lastError) + return + } + + taskCh := make(chan cacheBuildTask) + resultCh := make(chan cacheBuildResult) + var wg sync.WaitGroup + now := time.Now() + for i := 0; i < workers; i++ { + wg.Add(1) + go func() { + defer wg.Done() + for task := range taskCh { + detail, err := ParseRolloutFile(task.Path, false) + if err != nil { + resultCh <- cacheBuildResult{Path: task.Path, Meta: task.Meta, Error: err.Error()} + continue + } + mergeCachedSummary(&detail, task.Summary) + detail.Summary.Enriched = true + if !cacheableSummary(detail.Summary, now) { + resultCh <- cacheBuildResult{Path: task.Path, Meta: task.Meta, Error: "session is not historical"} + continue + } + resultCh <- cacheBuildResult{Path: task.Path, Meta: task.Meta, Summary: detail.Summary} + } + }() + } + + go func() { + for _, task := range tasks { + taskCh <- task + } + close(taskCh) + wg.Wait() + close(resultCh) + }() + + for result := range resultCh { + if result.Error != "" { + s.cacheManager.addJobProgress(seq, 0, 0, 1, result.Error) + lastError = result.Error + continue + } + cache := s.diskCache() + if cache == nil { + lastError = "cache unavailable" + s.cacheManager.addJobProgress(seq, 0, 0, 1, lastError) + continue + } + if err := cache.Upsert(result.Path, result.Meta, result.Summary); err != nil { + lastError = err.Error() + s.reportCacheError(err) + s.cacheManager.addJobProgress(seq, 0, 0, 1, lastError) + continue + } + s.updateCachedSummary(result.Summary) + s.cacheManager.addJobProgress(seq, 1, 0, 0, "") + } + s.cacheManager.finishJob(seq, lastError) +} + +func (s *Store) cacheBuildTasks() ([]cacheBuildTask, int, int, string) { + index, _ := s.readSessionIndex() + files, _ := s.rolloutFiles() + now := time.Now() + cache := s.diskCache() + if cache == nil { + return nil, 0, 1, "cache unavailable" + } + tasks := make([]cacheBuildTask, 0, len(files)) + skipped := 0 + failed := 0 + lastError := "" + for _, path := range files { + meta, ok := statFile(path) + if !ok || !cacheableFile(meta, now) { + continue + } + if cached, ok, err := cache.Lookup(path, meta); err != nil { + lastError = err.Error() + failed++ + s.reportCacheError(err) + break + } else if ok && cacheableSummary(cached, now) { + skipped++ + continue + } + + summary := summaryFromPath(path) + if summary.ID == "" { + summary.ID = strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) + } + summary.Path = path + if item, ok := index[summary.ID]; ok { + mergeIndex(&summary, item) + } + tasks = append(tasks, cacheBuildTask{Path: path, Meta: meta, Summary: summary}) + } + return tasks, skipped, failed, lastError +} + func (s *Store) cachedSummary(id string) (SessionSummary, bool) { s.mu.Lock() defer s.mu.Unlock() diff --git a/cli/codex_inspector/types.go b/cli/codex_inspector/types.go index bae0c62..13b3eef 100644 --- a/cli/codex_inspector/types.go +++ b/cli/codex_inspector/types.go @@ -151,6 +151,7 @@ type DiagnosticsResponse struct { CodexHome string `json:"codexHome"` Sources []SourceStatus `json:"sources"` Schemas []SQLiteSchema `json:"schemas"` + Cache CacheStatus `json:"cache"` Warnings []string `json:"warnings,omitempty"` } @@ -163,3 +164,28 @@ type SQLiteSchema struct { Error string `json:"error,omitempty"` ReadMode string `json:"readMode"` } + +type CacheStatus struct { + Status string `json:"status"` + Path string `json:"path,omitempty"` + Workers int `json:"workers"` + Reason string `json:"reason,omitempty"` + BackupPath string `json:"backupPath,omitempty"` + CanBuild bool `json:"canBuild"` + CanRebuild bool `json:"canRebuild"` + AutoFill bool `json:"autoFill"` + GeneratedAt string `json:"generatedAt"` + Job CacheJobState `json:"job"` +} + +type CacheJobState struct { + Running bool `json:"running"` + Total int `json:"total"` + Done int `json:"done"` + Cached int `json:"cached"` + Skipped int `json:"skipped"` + Failed int `json:"failed"` + StartedAt string `json:"startedAt,omitempty"` + FinishedAt string `json:"finishedAt,omitempty"` + LastError string `json:"lastError,omitempty"` +} diff --git a/docs/cli/codex_inspector.md b/docs/cli/codex_inspector.md index 0d261af..90335fa 100644 --- a/docs/cli/codex_inspector.md +++ b/docs/cli/codex_inspector.md @@ -67,8 +67,12 @@ go build -o output/codex_inspector ./cli/codex_inspector/... ```bash ./output/codex_inspector -cache-path /tmp/codex_inspector_cache.sqlite ./output/codex_inspector -no-cache +./output/codex_inspector -cache-workers 2 +./output/codex_inspector -cache-workers 0 ``` +`-cache-workers` 控制启动后的后台自动补齐,默认是 2。设为 0 时不会自动补齐;Diagnostics 页面上的手动 build/rebuild 仍可执行一次。 + 打开浏览器访问: ```text @@ -88,7 +92,7 @@ http://127.0.0.1:8787 | `~/.codex/goals_1.sqlite` | schema | Diagnostics 页面只读探测 | 否 | | `~/.codex/memories_1.sqlite` | schema | Diagnostics 页面只读探测 | 否 | | `~/.codex/auth.json` | 不读取内容 | Diagnostics 只标记为排除项 | 否 | -| 用户 cache 目录下的 `life_tools/codex_inspector/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL,不写 `~/.codex` | 是 | +| 用户 cache 目录下的 `life_tools/codex_inspector/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL 或完整对话,不写 `~/.codex` | 是 | ## 页面说明 @@ -105,6 +109,25 @@ http://127.0.0.1:8787 大数字使用 `k`、`m`、`b` 简写,分别代表千、百万、十亿。精确值保留在指标悬浮提示或 raw 数据中。 +Diagnostics 的 Summary cache 面板展示派生 cache 生命周期: + +| 状态 | 页面动作 | 后端行为 | +|---|---|---| +| `missing` | `Create cache` | 新建 SQLite cache 并后台补齐今天以前的 rollout | +| `healthy` | `Fill missing cache` | 只补齐缺失或过期的历史 summary | +| `corrupt` | `Backup and rebuild cache`,二次确认 | 将损坏文件改名为 `.corrupt..bak` 后新建 cache | +| `rebuilding` | 展示进度 | 返回当前 job,不重复启动 | +| `disabled` | 无操作按钮 | `-no-cache` 下只实时解析 JSONL | +| `unavailable` | 无操作按钮 | 展示权限、busy timeout 或其他非损坏错误 | + +后端 API: + +| API | 方法 | 用途 | +|---|---|---| +| `/api/cache/status` | GET | 返回 cache 状态和 job 进度 | +| `/api/cache/build` | POST | 创建或补齐 cache;job 运行中返回当前 job | +| `/api/cache/rebuild` | POST | 仅用于 corrupt cache 的备份重建;job 运行中返回当前 job | + ## 架构 ```mermaid @@ -133,7 +156,8 @@ flowchart TD - 安装脚本默认写 `$HOME/.local/bin`,不写 `/usr/local`、`/etc` 或 `/var`;系统级安装必须显式传 `--system` 或 `--allow-sudo`。 - 不写入 `~/.codex`,不修改 session、memory、SQLite 或配置文件。 - 不读取 `auth.json` 内容。 -- 历史 summary cache 写在用户 cache 目录或 `-cache-path` 指定位置,文件权限固定为 `0600`;缓存不包含 raw JSONL,但可能包含脱敏后的标题、cwd、preview 和 token 聚合值。 +- 历史 summary cache 写在用户 cache 目录或 `-cache-path` 指定位置,文件权限固定为 `0600`;缓存不包含 raw JSONL 或完整对话内容,只包含脱敏后的 `SessionSummary`、token 聚合、文件大小和修改时间。 +- 损坏 cache 不直接删除,只在用户触发 rebuild 时改名为 `.corrupt..bak` 后重建。 - JSON 和文本展示层会脱敏常见 `auth`、`token`、`cookie`、`password`、`secret`、`api_key`、`access_key` 字段。 - raw JSONL 展开能力展示的是脱敏后的 JSONL,方便排查格式和事件顺序,不用于导出完整敏感内容。 - token usage 只读取 Codex JSONL 中的结构化 `token_count` 元数据,不读取或推断账单、账号或认证信息。 @@ -167,6 +191,9 @@ flowchart TD | 点击 session 后一直 loading | 冷启动正在建立 session 索引,或目标 JSONL 文件过大 | 等待首次索引完成;详情接口会优先使用缓存中的 `id -> path`,避免每次点击全量扫描 | | token 统计为 0 | 该历史 JSONL 没有 `event_msg.type=token_count`,或格式不同 | 这是兼容性缺失,不影响对话查看;Diagnostics 和 raw JSONL 可用于确认格式 | | CPU 占用高 | 首次历史范围加载需要解析该范围内尚未缓存的历史 rollout;今天的数据实时解析 | 等待首次缓存写入;后续历史请求会复用 SQLite summary cache,详情只解析目标文件 | +| cache 状态是 missing | cache 文件尚未创建 | 在 Diagnostics 点击 `Create cache` | +| cache 状态是 corrupt | SQLite 返回明确损坏错误 | 在 Diagnostics 二次确认后点击 `Backup and rebuild cache` | +| cache 状态是 unavailable | 权限、busy timeout 或其他非损坏错误 | 处理错误原因;页面会降级实时解析 JSONL | | cache 文件权限不符合预期 | 旧版本或手动创建的 cache 文件权限过宽 | 删除 cache 文件后重启,或执行 `chmod 600 ` | | raw JSONL 缺少部分内容 | 单行过大时后端会限制返回长度 | 到本机文件系统只读查看原文件 | | SQLite schema 没有展示 | 系统没有 `sqlite3` 命令,或数据库不存在 | 安装 `sqlite3` 或忽略 schema 诊断 | @@ -179,6 +206,7 @@ flowchart TD ```bash go test ./cli/codex_inspector go build -o output/codex_inspector ./cli/codex_inspector/... +./output/codex_inspector -cache-workers 2 ``` 页面验证需要启动服务后用 Chrome 检查: diff --git a/docs/install.md b/docs/install.md index b59f931..9dda1e1 100644 --- a/docs/install.md +++ b/docs/install.md @@ -139,6 +139,8 @@ go build -o output/codex_inspector ./cli/codex_inspector/... ```bash ./output/codex_inspector -cache-path /tmp/codex_inspector_cache.sqlite ./output/codex_inspector -no-cache +./output/codex_inspector -cache-workers 2 +./output/codex_inspector -cache-workers 0 ``` 默认 cache 路径按系统走用户缓存目录: @@ -148,11 +150,25 @@ go build -o output/codex_inspector ./cli/codex_inspector/... | macOS | `~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite` | | Linux | `${XDG_CACHE_HOME:-~/.cache}/life_tools/codex_inspector/session_summary_cache.sqlite` | +cache 生命周期: + +| 状态 | 含义 | 操作 | +|---|---|---| +| `missing` | cache 文件不存在,页面实时解析 JSONL | Diagnostics 点击 `Create cache` | +| `healthy` | cache 可用,历史 summary 可复用 | Diagnostics 点击 `Fill missing cache` | +| `corrupt` | SQLite 明确报 `malformed`、`file is not a database` 或 `schema is corrupt` | Diagnostics 二次确认后点击 `Backup and rebuild cache` | +| `rebuilding` | 后台正在补齐或重建 | 查看 total/done/cached/skipped/failed | +| `disabled` | 使用 `-no-cache` 禁用 | 仅实时解析 JSONL | +| `unavailable` | 权限、busy timeout 或其他非损坏错误 | 页面实时解析 JSONL,先处理错误原因 | + +`-cache-workers` 只控制自动补齐。默认值是 2;设为 0 时不会在启动后自动补齐,但 Diagnostics 上的手动创建或重建仍可执行一次。 + 安全边界: - 默认监听 `127.0.0.1`,不要绑定到公网地址。 - 只读取 `session_index.jsonl`、`sessions/`、`memories/` 和 SQLite schema。 - 不写入 `~/.codex`;SQLite cache 只写到用户 cache 目录或 `-cache-path` 指定位置,文件权限为 `0600`。 +- cache 只保存脱敏后的 `SessionSummary`、token 聚合、文件大小和修改时间,不保存 raw JSONL 或完整对话内容。 - 不读取 `auth.json` 内容,不展示 token、cookie、secret 类字段。 - 详细说明见 [cli/codex_inspector.md](cli/codex_inspector.md)。 From 9b5d43a3eb8f60a455a8e1c4da4a0a20e4410b93 Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 13:13:15 +0800 Subject: [PATCH 5/8] chore: add codex inspector to ci release --- .github/workflows/go-test.yml | 28 +++++++--------------------- .github/workflows/release.yml | 1 + AGENTS.md | 6 ++++-- README.MD | 2 +- docs/cli/codex_inspector.md | 2 +- docs/release.md | 16 ++++++++++++---- 6 files changed, 26 insertions(+), 29 deletions(-) diff --git a/.github/workflows/go-test.yml b/.github/workflows/go-test.yml index 4d6f10d..d5f5e71 100644 --- a/.github/workflows/go-test.yml +++ b/.github/workflows/go-test.yml @@ -1,4 +1,4 @@ -name: Go Test Reminder +name: Go Test on: pull_request: @@ -6,6 +6,7 @@ on: - '.github/workflows/go-test.yml' - 'go.mod' - 'go.sum' + - 'cli/codex_inspector/**' - '**/*.go' push: branches: @@ -14,6 +15,7 @@ on: - '.github/workflows/go-test.yml' - 'go.mod' - 'go.sum' + - 'cli/codex_inspector/**' - '**/*.go' permissions: @@ -21,7 +23,7 @@ permissions: jobs: go-test: - name: Go test reminder + name: Go test runs-on: ubuntu-latest steps: - name: Checkout @@ -33,24 +35,8 @@ jobs: go-version: '1.21.x' cache: true - - name: Run Go tests as reminder - id: go_test + - name: Run Go tests shell: bash run: | - set +e - go test ./... 2>&1 | tee go-test.log - status="${PIPESTATUS[0]}" - if [ "$status" -ne 0 ]; then - echo "failed=true" >> "$GITHUB_OUTPUT" - echo "::warning::go test ./... failed with exit code $status. This workflow is advisory and does not block release packaging." - else - echo "failed=false" >> "$GITHUB_OUTPUT" - fi - exit 0 - - - name: Write reminder summary - if: steps.go_test.outputs.failed == 'true' - run: | - echo '## Go test reminder' >> "$GITHUB_STEP_SUMMARY" - echo '' >> "$GITHUB_STEP_SUMMARY" - echo '`go test ./...` failed. This workflow is advisory and does not block release packaging.' >> "$GITHUB_STEP_SUMMARY" + set -euo pipefail + go test ./... diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index b06eefc..aa602c6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -90,6 +90,7 @@ jobs: GOOS="$os" GOARCH="$arch" go build -trimpath -ldflags "-s -w" -o "$out/bin/retry_exec" ./cli/retry_exec/... GOOS="$os" GOARCH="$arch" go build -trimpath -ldflags "-s -w" -o "$out/bin/codex_hook_notify" ./cli/codex_hook_notify/... GOOS="$os" GOARCH="$arch" go build -trimpath -ldflags "-s -w" -o "$out/bin/file_share" ./cli/file_share/... + GOOS="$os" GOARCH="$arch" go build -trimpath -ldflags "-s -w" -o "$out/bin/codex_inspector" ./cli/codex_inspector/... cp README.MD install.sh "$out/" cp sample/life_tools/*.json "$out/sample/life_tools/" diff --git a/AGENTS.md b/AGENTS.md index 7c79d74..96d0898 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -162,11 +162,13 @@ emby_plugins/video_subtitle/install.sh --help `.github/workflows/swift-mac-app.yml` 负责 `gui/interview_timer` 的 Swift 单测、编译和未签名 `.app` 发布。 - tag 触发规则保持 `v*`,避免普通分支 push 意外创建 Release;`pull_request` 只能做 dry-run,不能创建 Release。 -- Go 测试放在 `.github/workflows/go-test.yml`,Python 单元测试放在 `.github/workflows/python-test.yml`,测试失败只能写 GitHub warning 和 summary,不能让 reminder workflow 或 release workflow 失败。 -- Go 二进制包只放稳定 CLI 工具:`renameV1`、`check_keywords`、`retry_exec`、`codex_hook_notify`、`file_share`。 +- Go 测试放在 `.github/workflows/go-test.yml`,PR 时必须真实运行 `go test ./...`,不能做成只提醒不阻塞的 reminder。 +- Python 单元测试放在 `.github/workflows/python-test.yml`,失败只写 GitHub warning 和 summary,不能阻塞 release workflow。 +- Go 二进制包包含稳定 CLI 工具:`renameV1`、`check_keywords`、`retry_exec`、`codex_hook_notify`、`file_share`;`codex_inspector` 作为实验工具参与 release 二进制产物,但仍不进入根目录 `install.sh` 默认安装清单。 - `video_subtitle` 只能按源码包发布,不能宣传成免依赖二进制;它仍依赖 Python、ffmpeg、TOS、ASR 和 LLM 配置。 - Emby 插件包只放 `LifeTools.Emby.VideoSubtitle.Emby.dll` 和文档,不要把 `MediaBrowser.*`、`Emby.*` 或核心库 DLL 打进插件发布包。 - `InterviewTimer` macOS App 只在 macOS runner 上构建,tag 发布包为未签名的 `InterviewTimer.app` zip,不要把它塞进根目录 `install.sh` 或 Go 二进制发布包。 +- 新增 CLI、构建入口、release 产物或测试要求时,必须检查 `.github/workflows/*` 是否需要同步,避免代码合入后没有 CI 或 tag 发布产物缺失。 - 修改发布包内容时同步更新 `docs/release.md` 和 README 的发布入口。 - 发布 workflow 需要 `permissions: contents: write`,不要扩大到无关权限。 diff --git a/README.MD b/README.MD index e479714..cf06b11 100644 --- a/README.MD +++ b/README.MD @@ -130,4 +130,4 @@ swift build --product InterviewTimerApp ## 发布 -推送 `v*` tag 会通过 GitHub Actions 构建 GitHub Release 资产,包括 Linux/macOS Go 二进制包、`video_subtitle` 源码包、Emby 插件包和未签名的 `InterviewTimer.app` 包。发布流程见 [docs/release.md](docs/release.md)。 +推送 `v*` tag 会通过 GitHub Actions 构建 GitHub Release 资产,包括 Linux/macOS Go 二进制包、`video_subtitle` 源码包、Emby 插件包和未签名的 `InterviewTimer.app` 包。Go 二进制包包含 `codex_inspector`,但它仍是实验工具,不进入默认安装清单。发布流程见 [docs/release.md](docs/release.md)。 diff --git a/docs/cli/codex_inspector.md b/docs/cli/codex_inspector.md index 90335fa..b157a55 100644 --- a/docs/cli/codex_inspector.md +++ b/docs/cli/codex_inspector.md @@ -2,7 +2,7 @@ `codex_inspector` 是本机 Codex Inspector。它启动一个只绑定本机地址的 HTTP 服务,用浏览器查看 `~/.codex` 里的历史 session、活跃度统计和记忆内容。 -当前状态:实验工具。它不在 `install.sh` 默认稳定安装清单中,也不参与 release 稳定二进制包。 +当前状态:实验工具。它会进入 tag Release 的 Go 二进制包,但不在根目录 `install.sh` 默认稳定安装清单中。 ## 用途 diff --git a/docs/release.md b/docs/release.md index 69522c7..1a0f28f 100644 --- a/docs/release.md +++ b/docs/release.md @@ -1,6 +1,6 @@ # 发布说明 -本仓库通过 GitHub Actions 在推送 `v*` tag 时自动构建发布包,并把 zip 上传到 GitHub Release。PR 会执行发布包打包 dry-run,但不会创建 Release。Go 和 Python 单元测试在单独 workflow 里运行,失败只作为提醒,不阻塞发布包流程。Swift macOS App 使用独立 workflow 验证和上传未签名 `.app` 产物。 +本仓库通过 GitHub Actions 在推送 `v*` tag 时自动构建发布包,并把 zip 上传到 GitHub Release。PR 会执行 Go 单测和发布包打包 dry-run,但不会创建 Release。Python 单元测试在单独 workflow 里运行,失败只作为提醒,不阻塞发布包流程。Swift macOS App 使用独立 workflow 验证和上传未签名 `.app` 产物。 ## 触发方式 @@ -43,7 +43,7 @@ on: - 'v*' ``` -`pull_request` 在 release workflow 中只做 Python 编译检查、Emby 插件测试和打包 dry-run;只有 tag push 才执行 `gh release create` 或 `gh release upload`。Go 测试由 `.github/workflows/go-test.yml` 单独执行,Python 单元测试由 `.github/workflows/python-test.yml` 单独执行。测试失败时 reminder workflow 只写 GitHub warning 和 summary,本身仍返回成功,不阻塞发布包流程。 +`pull_request` 在 release workflow 中只做 Python 编译检查、Emby 插件测试和打包 dry-run;只有 tag push 才执行 `gh release create` 或 `gh release upload`。Go 测试由 `.github/workflows/go-test.yml` 单独执行,失败会阻塞 PR。Python 单元测试由 `.github/workflows/python-test.yml` 单独执行,失败时只写 GitHub warning 和 summary,本身仍返回成功,不阻塞发布包流程。 `swift-mac-app.yml` 使用 `macos-latest` runner。PR 和 `master` 推送会验证 `gui/interview_timer` 的 Swift 单测、可执行产物构建和 `.app` 打包;`v*` tag 会额外上传未签名的 `InterviewTimer.app` zip。 @@ -90,11 +90,14 @@ bin/check_keywords bin/retry_exec bin/codex_hook_notify bin/file_share +bin/codex_inspector install.sh sample/life_tools/*.json docs/** ``` +`codex_inspector` 虽然进入 Go 二进制发布包,但仍是实验工具,不进入根目录 `install.sh` 默认稳定安装清单。需要安装时优先使用 `cli/codex_inspector/install.sh` 或直接从 release zip 取 `bin/codex_inspector`。 + `video_subtitle` 发布包包含 Python 源码、prompts、`requirements.txt`、示例配置和文档。它不是纯二进制工具,使用前仍需要 Python 依赖、ffmpeg、TOS、ASR、LLM 配置。 Emby 插件发布包只包含部署需要的插件 DLL 和文档。安装到 Emby 插件目录时只复制: @@ -132,14 +135,19 @@ swift build --product InterviewTimerApp ./scripts/build_app.sh ``` -测试提示 workflow 会运行: +Go 测试 workflow 会运行: ```bash go test ./... +``` + +Python 测试提示 workflow 会运行: + +```bash python3 -m unittest cli/video_subtitle/video_subtitle_test.py ``` -这些 workflow 失败时只写 GitHub warning 和 summary,不阻塞 release workflow,也不阻止 tag 发布资产。 +Go 测试失败会阻塞 PR;Python 测试失败时只写 GitHub warning 和 summary,不阻塞 release workflow,也不阻止 tag 发布资产。 ## 权限 From 898d3feb4652f26377da2648209cd37395a7fce4 Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 15:23:07 +0800 Subject: [PATCH 6/8] fix(codex_inspector): page large session details --- cli/codex_inspector/parser.go | 98 ++++++++++++++++-- cli/codex_inspector/parser_test.go | 21 ++++ cli/codex_inspector/server.go | 54 +++++++++- cli/codex_inspector/server_test.go | 53 ++++++++++ cli/codex_inspector/static/app.js | 133 +++++++++++++++++++++---- cli/codex_inspector/static/index.html | 15 +++ cli/codex_inspector/static/styles.css | 105 +++++++++++++++++++ cli/codex_inspector/store.go | 62 +++++++++--- cli/codex_inspector/types.go | 25 ++++- docs/cli/codex_inspector.md | 12 ++- docs/cli/codex_inspector_regression.md | 11 +- 11 files changed, 532 insertions(+), 57 deletions(-) create mode 100644 cli/codex_inspector/server_test.go diff --git a/cli/codex_inspector/parser.go b/cli/codex_inspector/parser.go index bbe7b60..fb8aff8 100644 --- a/cli/codex_inspector/parser.go +++ b/cli/codex_inspector/parser.go @@ -21,6 +21,13 @@ type responseItemHeader struct { } func ParseRolloutFile(path string, includeEvents bool) (SessionDetail, error) { + return ParseRolloutFileWithOptions(path, SessionDetailOptions{ + IncludeEvents: includeEvents, + IncludeRawLines: includeEvents, + }) +} + +func ParseRolloutFileWithOptions(path string, options SessionDetailOptions) (SessionDetail, error) { file, err := os.Open(path) if err != nil { return SessionDetail{}, err @@ -37,6 +44,7 @@ func ParseRolloutFile(path string, includeEvents bool) (SessionDetail, error) { scanner.Buffer(make([]byte, 1024), 8*1024*1024) lineNo := 0 + displayIndex := 0 for scanner.Scan() { lineNo++ line := scanner.Bytes() @@ -46,30 +54,58 @@ func ParseRolloutFile(path string, includeEvents bool) (SessionDetail, error) { } detail.Summary.EventCount++ - if includeEvents { - detail.RawLines = append(detail.RawLines, RawLine{Line: lineNo, Text: truncateText(sanitizedRawJSON(line), 60000)}) - } - var record rolloutLine if err := json.Unmarshal(line, &record); err != nil { warning := fmt.Sprintf("line %d invalid JSON: %v", lineNo, err) detail.Warnings = append(detail.Warnings, warning) - if includeEvents { - detail.Events = append(detail.Events, DisplayEvent{Line: lineNo, Kind: "system_event", Label: "Bad JSON", Text: warning}) + if options.IncludeEvents { + if eventInWindow(displayIndex, options) { + detail.Events = append(detail.Events, DisplayEvent{Line: lineNo, Kind: "system_event", Label: "Bad JSON", Text: warning}) + appendRawLine(&detail, lineNo, line, options) + } + displayIndex++ + if shouldStopAfterEventWindow(displayIndex, options) { + break + } } continue } - if !includeEvents { + if !options.IncludeEvents { updateSummaryFast(&detail.Summary, record) continue } event := parseDisplayEvent(record, lineNo) updateSummary(&detail.Summary, record, event) - detail.Events = append(detail.Events, event) + if eventInWindow(displayIndex, options) { + detail.Events = append(detail.Events, event) + appendRawLine(&detail, lineNo, line, options) + } + displayIndex++ + if shouldStopAfterEventWindow(displayIndex, options) { + break + } } if err := scanner.Err(); err != nil { detail.Warnings = append(detail.Warnings, fmt.Sprintf("scan %s: %v", path, err)) } + if options.IncludeEvents { + if detail.Events == nil { + detail.Events = []DisplayEvent{} + } + if detail.RawLines == nil { + detail.RawLines = []RawLine{} + } + detail.EventOffset = options.EventOffset + detail.EventLimit = options.EventLimit + detail.EventTotal = displayIndex + if options.EventTotalHint > detail.EventTotal { + detail.EventTotal = options.EventTotalHint + } + detail.HasMore = options.EventLimit > 0 && options.EventOffset+len(detail.Events) < displayIndex + if options.EventTotalHint > 0 { + detail.HasMore = options.EventLimit > 0 && options.EventOffset+len(detail.Events) < options.EventTotalHint + } + } if detail.Summary.ID == "" { detail.Summary.ID = strings.TrimSuffix(filepath.Base(path), filepath.Ext(path)) } @@ -79,6 +115,52 @@ func ParseRolloutFile(path string, includeEvents bool) (SessionDetail, error) { return detail, nil } +func eventInWindow(index int, options SessionDetailOptions) bool { + if index < options.EventOffset { + return false + } + return options.EventLimit <= 0 || index < options.EventOffset+options.EventLimit +} + +func shouldStopAfterEventWindow(displayIndex int, options SessionDetailOptions) bool { + if options.EventTotalHint <= 0 || options.EventLimit <= 0 || options.IncludeRawLines { + return false + } + return displayIndex >= options.EventOffset+options.EventLimit +} + +func appendRawLine(detail *SessionDetail, lineNo int, line []byte, options SessionDetailOptions) { + if !options.IncludeRawLines { + return + } + detail.RawLines = append(detail.RawLines, RawLine{Line: lineNo, Text: truncateText(sanitizedRawJSON(line), 60000)}) +} + +func ParseRolloutRawLine(path string, targetLine int) (RawLine, bool, error) { + if targetLine <= 0 { + return RawLine{}, false, nil + } + file, err := os.Open(path) + if err != nil { + return RawLine{}, false, err + } + defer file.Close() + + scanner := bufio.NewScanner(file) + scanner.Buffer(make([]byte, 1024), 8*1024*1024) + lineNo := 0 + for scanner.Scan() { + lineNo++ + if lineNo == targetLine { + return RawLine{Line: lineNo, Text: truncateText(sanitizedRawJSON(scanner.Bytes()), 60000)}, true, nil + } + } + if err := scanner.Err(); err != nil { + return RawLine{}, false, err + } + return RawLine{}, false, nil +} + func updateSummaryFast(summary *SessionSummary, record rolloutLine) { if summary.StartedAt == "" && record.Timestamp != "" { summary.StartedAt = record.Timestamp diff --git a/cli/codex_inspector/parser_test.go b/cli/codex_inspector/parser_test.go index 3e337a8..174ccac 100644 --- a/cli/codex_inspector/parser_test.go +++ b/cli/codex_inspector/parser_test.go @@ -51,6 +51,27 @@ not json require.Contains(t, combined, "[REDACTED]") } +func TestParseRolloutFileStopsAtEventWindowWithTotalHint(t *testing.T) { + dir := t.TempDir() + path := filepath.Join(dir, "rollout-2026-07-03T10-00-00-window.jsonl") + content := `{"type":"session_meta","timestamp":"2026-07-03T10:00:00Z","payload":{"id":"window-session","cwd":"/tmp/demo"}} +{"type":"response_item","timestamp":"2026-07-03T10:00:01Z","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"first"}]}} +not json after requested window +` + require.NoError(t, os.WriteFile(path, []byte(content), 0644)) + + detail, err := ParseRolloutFileWithOptions(path, SessionDetailOptions{ + IncludeEvents: true, + EventLimit: 2, + EventTotalHint: 3, + }) + require.NoError(t, err) + require.Empty(t, detail.Warnings) + require.Len(t, detail.Events, 2) + require.Equal(t, 3, detail.EventTotal) + require.True(t, detail.HasMore) +} + func TestStoreLoadsSessionIndexAndRolloutSummaries(t *testing.T) { codexHome := t.TempDir() sessionDir := filepath.Join(codexHome, "sessions", "2026", "07", "03") diff --git a/cli/codex_inspector/server.go b/cli/codex_inspector/server.go index f50392a..d4d2532 100644 --- a/cli/codex_inspector/server.go +++ b/cli/codex_inspector/server.go @@ -6,6 +6,7 @@ import ( "io/fs" "net/http" "net/url" + "strconv" "strings" ) @@ -27,12 +28,29 @@ func NewServer(store *Store) http.Handler { writeJSON(w, http.StatusOK, SessionsResponse{Sessions: sessions, Warnings: warnings}) }) mux.HandleFunc("/api/sessions/", func(w http.ResponseWriter, r *http.Request) { - id, err := url.PathUnescape(strings.TrimPrefix(r.URL.Path, "/api/sessions/")) + rest := strings.TrimPrefix(r.URL.Path, "/api/sessions/") + if strings.HasSuffix(rest, "/raw") { + id, err := url.PathUnescape(strings.TrimSuffix(rest, "/raw")) + if err != nil || strings.TrimSpace(id) == "" { + http.Error(w, "invalid session id", http.StatusBadRequest) + return + } + line := offsetFromString(r.URL.Query().Get("line")) + raw, ok, warnings := store.LoadSessionRawLine(id, line) + if !ok { + writeJSON(w, http.StatusNotFound, map[string]any{"error": "raw line not found", "warnings": warnings}) + return + } + writeJSON(w, http.StatusOK, RawLineResponse{Line: raw, Warnings: warnings}) + return + } + + id, err := url.PathUnescape(rest) if err != nil || strings.TrimSpace(id) == "" { http.Error(w, "invalid session id", http.StatusBadRequest) return } - detail, ok, warnings := store.LoadSessionDetail(id) + detail, ok, warnings := store.LoadSessionDetailWithOptions(id, sessionDetailOptions(r)) if !ok { writeJSON(w, http.StatusNotFound, map[string]any{"error": "session not found", "warnings": warnings}) return @@ -114,6 +132,38 @@ func requestFilter(r *http.Request, fallbackLimit int) QueryFilter { ) } +func sessionDetailOptions(r *http.Request) SessionDetailOptions { + query := r.URL.Query() + return SessionDetailOptions{ + IncludeEvents: true, + IncludeRawLines: boolQuery(query.Get("raw"), true), + EventOffset: offsetFromString(query.Get("event_offset")), + EventLimit: limitFromString(query.Get("event_limit"), 0), + } +} + +func boolQuery(value string, fallback bool) bool { + switch strings.ToLower(strings.TrimSpace(value)) { + case "": + return fallback + case "0", "false", "no", "off": + return false + default: + return true + } +} + +func offsetFromString(value string) int { + n, err := strconv.Atoi(strings.TrimSpace(value)) + if err != nil || n < 0 { + return 0 + } + if n > 100000 { + return 100000 + } + return n +} + func writeJSON(w http.ResponseWriter, status int, value any) { w.Header().Set("Content-Type", "application/json; charset=utf-8") w.Header().Set("Cache-Control", "no-store") diff --git a/cli/codex_inspector/server_test.go b/cli/codex_inspector/server_test.go new file mode 100644 index 0000000..afc9dd0 --- /dev/null +++ b/cli/codex_inspector/server_test.go @@ -0,0 +1,53 @@ +package main + +import ( + "encoding/json" + "net/http" + "net/http/httptest" + "os" + "path/filepath" + "testing" + + "github.com/stretchr/testify/require" +) + +func TestSessionDetailAPIUsesLightweightOptions(t *testing.T) { + codexHome := t.TempDir() + sessionDir := filepath.Join(codexHome, "sessions", "2026", "07", "03") + require.NoError(t, os.MkdirAll(sessionDir, 0755)) + require.NoError(t, os.WriteFile(filepath.Join(codexHome, "session_index.jsonl"), nil, 0644)) + require.NoError(t, os.WriteFile(filepath.Join(sessionDir, "rollout-2026-07-03T10-00-00-demo.jsonl"), []byte(`{"type":"session_meta","timestamp":"2026-07-03T10:00:00Z","payload":{"id":"demo-session","cwd":"/tmp/demo"}} +{"type":"response_item","timestamp":"2026-07-03T10:00:01Z","payload":{"type":"message","role":"user","content":[{"type":"input_text","text":"hello token=abc123456789"}]}} +{"type":"response_item","timestamp":"2026-07-03T10:00:02Z","payload":{"type":"message","role":"assistant","content":[{"type":"output_text","text":"done"}]}} +`), 0644)) + + store := NewStoreWithCache(codexHome, "") + defer store.Close() + server := httptest.NewServer(NewServer(store)) + defer server.Close() + + resp, err := http.Get(server.URL + "/api/sessions/demo-session?event_limit=1&raw=0") + require.NoError(t, err) + defer resp.Body.Close() + require.Equal(t, http.StatusOK, resp.StatusCode) + + var detail SessionDetail + require.NoError(t, json.NewDecoder(resp.Body).Decode(&detail)) + require.Len(t, detail.Events, 1) + require.Empty(t, detail.RawLines) + require.Equal(t, 0, detail.EventOffset) + require.Equal(t, 1, detail.EventLimit) + require.Equal(t, 3, detail.EventTotal) + require.True(t, detail.HasMore) + + rawResp, err := http.Get(server.URL + "/api/sessions/demo-session/raw?line=2") + require.NoError(t, err) + defer rawResp.Body.Close() + require.Equal(t, http.StatusOK, rawResp.StatusCode) + + var raw RawLineResponse + require.NoError(t, json.NewDecoder(rawResp.Body).Decode(&raw)) + require.Equal(t, 2, raw.Line.Line) + require.Contains(t, raw.Line.Text, "[REDACTED]") + require.NotContains(t, raw.Line.Text, "abc123456789") +} diff --git a/cli/codex_inspector/static/app.js b/cli/codex_inspector/static/app.js index 9c54313..a376aa2 100644 --- a/cli/codex_inspector/static/app.js +++ b/cli/codex_inspector/static/app.js @@ -6,6 +6,8 @@ const state = { memoryFiles: [], selectedMemory: "", cachePollTimer: 0, + cacheRebuildConfirmOpen: false, + cacheRebuildBusy: false, }; const RANGE_HISTORY_KEY = "codexInspectorRangeHistory"; @@ -14,6 +16,7 @@ const QUICK_RANGES = { "7d": { label: "Last 7 days", days: 7 }, "30d": { label: "Last 30 days", days: 30 }, }; +const SESSION_EVENT_PAGE_SIZE = 300; const $ = (selector) => document.querySelector(selector); @@ -374,12 +377,16 @@ function sessionCard(session, className) { return card; } -async function loadSessionDetail(id) { +async function loadSessionDetail(id, options = {}) { + const offset = options.offset || 0; + const append = !!options.append; const request = ++state.detailRequest; - setSessionDetailState("Loading session detail...", "Loading"); + if (!append) { + setSessionDetailState("Loading session detail...", "Loading"); + } let detail; try { - detail = await api(`/api/sessions/${encodeURIComponent(id)}`); + detail = await api(`/api/sessions/${encodeURIComponent(id)}?event_offset=${offset}&event_limit=${SESSION_EVENT_PAGE_SIZE}&raw=0`); } catch (error) { if (request === state.detailRequest) { setSessionDetailState(error.message || "Failed to load session detail.", "Load failed"); @@ -388,16 +395,18 @@ async function loadSessionDetail(id) { } if (request !== state.detailRequest) return; $("#sessionDetailTitle").textContent = detail.summary.title || detail.summary.id; - $("#sessionDetailMeta").textContent = `${detail.summary.updatedAt || ""} ${detail.summary.cwd || ""}`; - const rawByLine = new Map((detail.rawLines || []).map((line) => [line.line, line.text])); + $("#sessionDetailMeta").textContent = sessionDetailMeta(detail); const root = $("#sessionDetail"); root.classList.remove("empty-state"); - root.textContent = ""; - if (detail.summary.tokenStats && detail.summary.tokenStats.tokenEvents) { + root.querySelector(".load-more-row")?.remove(); + if (!append) { + root.textContent = ""; + } + if (!append && detail.summary.tokenStats && detail.summary.tokenStats.tokenEvents) { root.append(tokenSummaryPanel(detail.summary.tokenStats)); } if (!detail.events || !detail.events.length) { - root.append(el("div", "empty-state", "No displayable events.")); + if (!append) root.append(el("div", "empty-state", "No displayable events.")); return; } detail.events.forEach((event) => { @@ -406,16 +415,67 @@ async function loadSessionDetail(id) { const body = el("div", "event-body"); body.append(el("div", "event-meta", `line ${event.line}${event.timestamp ? ` · ${event.timestamp}` : ""}`)); body.append(el("div", "event-text", event.text || "(empty)")); - const raw = rawByLine.get(event.line); - if (raw) { - const details = el("details", "raw-details"); - details.append(el("summary", "", "Raw JSONL")); - details.append(el("pre", "raw-block", raw)); - body.append(details); - } + body.append(rawDetailsForEvent(id, event)); item.append(body); root.append(item); }); + appendLoadMore(root, detail, id); +} + +function sessionDetailMeta(detail) { + const total = detail.eventTotal || detail.summary.eventCount || 0; + const offset = detail.eventOffset || 0; + const shown = (detail.events || []).length; + const start = total && shown ? 1 : 0; + const end = total && shown ? Math.min(offset + shown, total) : 0; + const range = total ? `showing ${formatNumber(start)}-${formatNumber(end)} of ${formatNumber(total)} events` : ""; + return [detail.summary.updatedAt || "", detail.summary.cwd || "", range].filter(Boolean).join(" "); +} + +function rawDetailsForEvent(sessionID, event) { + const details = el("details", "raw-details"); + const summary = el("summary", "", "Raw JSONL"); + const raw = el("pre", "raw-block", "Open to load raw JSONL for this line."); + details.append(summary); + details.append(raw); + details.addEventListener("toggle", () => { + if (!details.open || details.dataset.loaded === "1" || details.dataset.loading === "1") return; + details.dataset.loading = "1"; + raw.textContent = "Loading raw JSONL..."; + loadRawLine(sessionID, event.line, raw, details).catch((error) => { + raw.textContent = error.message || "Failed to load raw JSONL."; + details.dataset.loading = "0"; + }); + }); + return details; +} + +async function loadRawLine(sessionID, line, raw, details) { + const data = await api(`/api/sessions/${encodeURIComponent(sessionID)}/raw?line=${line}`); + raw.textContent = data.line?.text || "(empty)"; + details.dataset.loaded = "1"; + details.dataset.loading = "0"; +} + +function appendLoadMore(root, detail, sessionID) { + if (!detail.hasMore) return; + const row = el("div", "load-more-row"); + const button = el("button", "secondary-button", "Load more events"); + button.type = "button"; + const nextOffset = (detail.eventOffset || 0) + (detail.events || []).length; + button.addEventListener("click", async () => { + button.disabled = true; + button.textContent = "Loading more"; + try { + await loadSessionDetail(sessionID, { append: true, offset: nextOffset }); + } catch (error) { + showToast(error.message); + button.disabled = false; + button.textContent = "Load more events"; + } + }); + row.append(button); + root.append(row); } function setSessionDetailState(message, title = "Session detail") { @@ -518,15 +578,40 @@ async function loadCacheStatus() { } async function startCacheBuild(rebuild = false) { - if (rebuild && !window.confirm("Backup the corrupt cache and rebuild a new cache?")) { - return; - } + if (rebuild) renderCacheRebuildModal(false); const path = rebuild ? "/api/cache/rebuild" : "/api/cache/build"; const data = await api(path, { method: "POST" }); renderCacheStatus(data); showToast(rebuild ? "Cache rebuild started" : "Cache build started"); } +function renderCacheRebuildModal(open) { + const modal = $("#cacheRebuildModal"); + if (!modal) return; + state.cacheRebuildConfirmOpen = open; + modal.hidden = !open; + if (open) { + $("#cancelCacheRebuild").focus(); + } +} + +async function confirmCacheRebuild() { + if (state.cacheRebuildBusy) return; + state.cacheRebuildBusy = true; + $("#confirmCacheRebuild").disabled = true; + $("#cancelCacheRebuild").disabled = true; + try { + await startCacheBuild(true); + } catch (error) { + renderCacheRebuildModal(true); + showToast(error.message); + } finally { + state.cacheRebuildBusy = false; + $("#confirmCacheRebuild").disabled = false; + $("#cancelCacheRebuild").disabled = false; + } +} + function renderCacheStatus(cache) { const actions = $("#cacheActions"); const root = $("#cacheStatus"); @@ -564,7 +649,7 @@ function renderCacheStatus(cache) { if (cache.canRebuild) { const button = el("button", "primary-button danger-button", "Backup and rebuild cache"); button.type = "button"; - button.addEventListener("click", () => startCacheBuild(true).catch((error) => showToast(error.message))); + button.addEventListener("click", () => renderCacheRebuildModal(true)); actions.append(button); } if (cache.job?.running) { @@ -690,6 +775,16 @@ $("#memorySearch").addEventListener("input", debounce(() => { state.selectedMemory = ""; if (state.page === "memory") refresh(); }, 220)); +$("#cancelCacheRebuild").addEventListener("click", () => renderCacheRebuildModal(false)); +$("#confirmCacheRebuild").addEventListener("click", () => confirmCacheRebuild()); +$("#cacheRebuildModal").addEventListener("click", (event) => { + if (event.target.id === "cacheRebuildModal") renderCacheRebuildModal(false); +}); +document.addEventListener("keydown", (event) => { + if (event.key === "Escape" && state.cacheRebuildConfirmOpen && !state.cacheRebuildBusy) { + renderCacheRebuildModal(false); + } +}); initializeRangeControls(); refresh(); diff --git a/cli/codex_inspector/static/index.html b/cli/codex_inspector/static/index.html index 36eb330..fa76157 100644 --- a/cli/codex_inspector/static/index.html +++ b/cli/codex_inspector/static/index.html @@ -174,6 +174,21 @@

SQLite schema

+
diff --git a/cli/codex_inspector/static/styles.css b/cli/codex_inspector/static/styles.css index e16e67f..6cdee14 100644 --- a/cli/codex_inspector/static/styles.css +++ b/cli/codex_inspector/static/styles.css @@ -157,6 +157,28 @@ select { opacity: 0.72; } +.secondary-button { + height: 38px; + padding: 0 15px; + border: 1px solid var(--border); + border-radius: 8px; + background: #fff; + color: var(--text); + cursor: pointer; + font-size: 13px; + font-weight: 800; +} + +.secondary-button:hover { + border-color: var(--accent); + color: var(--accent-strong); +} + +.secondary-button:disabled { + cursor: progress; + opacity: 0.72; +} + .danger-button { background: var(--danger); } @@ -619,6 +641,16 @@ details.raw-details summary { font-weight: 800; } +.load-more-row { + display: flex; + justify-content: center; + padding: 4px 0 2px; +} + +.load-more-row .secondary-button { + min-width: 180px; +} + .raw-block, .memory-detail, .schema-code { @@ -771,6 +803,57 @@ th { opacity: 1; } +.modal-backdrop { + position: fixed; + inset: 0; + z-index: 60; + display: grid; + place-items: center; + padding: 24px; + background: rgba(12, 24, 19, 0.54); +} + +.modal-backdrop[hidden] { + display: none; +} + +.confirm-modal { + width: min(520px, 100%); + border: 1px solid var(--border); + border-radius: 8px; + background: #fff; + box-shadow: 0 28px 80px rgba(13, 27, 23, 0.24); + padding: 22px; +} + +.confirm-modal h2 { + margin: 0; + font-size: 20px; + letter-spacing: 0; +} + +.confirm-modal p { + margin: 10px 0 0; + color: var(--muted); + line-height: 1.55; +} + +.confirm-modal code { + overflow-wrap: anywhere; +} + +.modal-actions { + display: flex; + justify-content: flex-end; + gap: 10px; + margin-top: 20px; +} + +.modal-actions .primary-button, +.modal-actions .secondary-button { + min-width: 128px; +} + @media (max-width: 980px) { .topbar { align-items: stretch; @@ -880,6 +963,10 @@ th { height: 34px; } + .secondary-button { + height: 34px; + } + .brand-subtitle { max-width: calc(100vw - 96px); } @@ -913,6 +1000,24 @@ th { font-size: 28px; } + .modal-backdrop { + align-items: end; + padding: 14px; + } + + .confirm-modal { + padding: 18px; + } + + .modal-actions { + flex-direction: column-reverse; + } + + .modal-actions .primary-button, + .modal-actions .secondary-button { + width: 100%; + } + .heatmap-wrap { padding: 12px; } diff --git a/cli/codex_inspector/store.go b/cli/codex_inspector/store.go index c5d073b..1ce6ada 100644 --- a/cli/codex_inspector/store.go +++ b/cli/codex_inspector/store.go @@ -503,17 +503,51 @@ func mergeCachedSummary(detail *SessionDetail, cached SessionSummary) { } func (s *Store) LoadSessionDetail(id string) (SessionDetail, bool, []string) { - summary, ok, warnings := s.cachedSession(id) - if ok && summary.Path != "" { - detail, err := ParseRolloutFile(summary.Path, true) - if err != nil { - warnings = append(warnings, fmt.Sprintf("parse %s: %v", summary.Path, err)) - return SessionDetail{}, false, warnings + return s.LoadSessionDetailWithOptions(id, SessionDetailOptions{IncludeEvents: true, IncludeRawLines: true}) +} + +func (s *Store) LoadSessionDetailWithOptions(id string, options SessionDetailOptions) (SessionDetail, bool, []string) { + summary, ok, warnings := s.rolloutSession(id) + if !ok { + return SessionDetail{}, false, warnings + } + useSummaryHint := false + if options.IncludeEvents && !options.IncludeRawLines && options.EventLimit > 0 && summary.Enriched && summary.EventCount > 0 { + if meta, metaOK := statFile(summary.Path); metaOK && cacheableFile(meta, time.Now()) { + options.EventTotalHint = summary.EventCount + useSummaryHint = true } - mergeCachedSummary(&detail, summary) - return detail, true, warnings } + detail, err := ParseRolloutFileWithOptions(summary.Path, options) + if err != nil { + warnings = append(warnings, fmt.Sprintf("parse %s: %v", summary.Path, err)) + return SessionDetail{}, false, warnings + } + mergeCachedSummary(&detail, summary) + if useSummaryHint { + detail.Summary = summary + } + return detail, true, warnings +} +func (s *Store) LoadSessionRawLine(id string, line int) (RawLine, bool, []string) { + summary, ok, warnings := s.rolloutSession(id) + if !ok { + return RawLine{}, false, warnings + } + raw, ok, err := ParseRolloutRawLine(summary.Path, line) + if err != nil { + warnings = append(warnings, fmt.Sprintf("raw line %s:%d: %v", summary.Path, line, err)) + return RawLine{}, false, warnings + } + return raw, ok, warnings +} + +func (s *Store) rolloutSession(id string) (SessionSummary, bool, []string) { + summary, ok, warnings := s.cachedSession(id) + if ok && summary.Path != "" { + return summary, true, warnings + } files, fileWarnings := s.rolloutFiles() warnings = append(warnings, fileWarnings...) for i := len(files) - 1; i >= 0; i-- { @@ -522,14 +556,14 @@ func (s *Store) LoadSessionDetail(id string) (SessionDetail, bool, []string) { if id != base && !strings.Contains(base, id) { continue } - detail, err := ParseRolloutFile(path, true) - if err != nil { - warnings = append(warnings, fmt.Sprintf("parse %s: %v", path, err)) - return SessionDetail{}, false, warnings + summary := summaryFromPath(path) + if summary.ID == "" { + summary.ID = base } - return detail, true, warnings + summary.Path = path + return summary, true, warnings } - return SessionDetail{}, false, warnings + return SessionSummary{}, false, warnings } func (s *Store) readSessionIndex() (map[string]sessionIndexLine, []string) { diff --git a/cli/codex_inspector/types.go b/cli/codex_inspector/types.go index 13b3eef..2eca9cc 100644 --- a/cli/codex_inspector/types.go +++ b/cli/codex_inspector/types.go @@ -76,10 +76,27 @@ type RawLine struct { } type SessionDetail struct { - Summary SessionSummary `json:"summary"` - Events []DisplayEvent `json:"events"` - RawLines []RawLine `json:"rawLines"` - Warnings []string `json:"warnings,omitempty"` + Summary SessionSummary `json:"summary"` + Events []DisplayEvent `json:"events"` + RawLines []RawLine `json:"rawLines"` + EventOffset int `json:"eventOffset"` + EventLimit int `json:"eventLimit,omitempty"` + EventTotal int `json:"eventTotal"` + HasMore bool `json:"hasMore"` + Warnings []string `json:"warnings,omitempty"` +} + +type SessionDetailOptions struct { + IncludeEvents bool + IncludeRawLines bool + EventOffset int + EventLimit int + EventTotalHint int +} + +type RawLineResponse struct { + Line RawLine `json:"line"` + Warnings []string `json:"warnings,omitempty"` } type CountPoint struct { diff --git a/docs/cli/codex_inspector.md b/docs/cli/codex_inspector.md index b157a55..ea0f650 100644 --- a/docs/cli/codex_inspector.md +++ b/docs/cli/codex_inspector.md @@ -94,12 +94,14 @@ http://127.0.0.1:8787 | `~/.codex/auth.json` | 不读取内容 | Diagnostics 只标记为排除项 | 否 | | 用户 cache 目录下的 `life_tools/codex_inspector/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL 或完整对话,不写 `~/.codex` | 是 | +历史 session 详情页使用分页读取。若列表或 SQLite cache 已经提供可信 `SessionSummary`,后端会用其中的事件总数作为 hint,读取到当前页事件窗口后停止;今天仍在变化的 rollout 不使用该 hint,继续实时解析。 + ## 页面说明 | 页面 | 内容 | |---|---| | Overview | 统计卡片、默认最近一周时间筛选、快捷时间范围、最近半年活跃度 heatmap、月度趋势和最近 session | -| Sessions | 左侧 session 列表,右侧按原生顺序展示消息、工具调用、工具结果、系统事件、token usage 摘要和 raw JSONL | +| Sessions | 左侧 session 列表,右侧按原生顺序分页展示消息、工具调用、工具结果、系统事件和 token usage 摘要;raw JSONL 按行展开时再加载 | | Memory | 左侧记忆文件列表,右侧详情预览;支持关键词搜索 | | Diagnostics | 数据源状态、SQLite schema 探测结果和只读边界 | @@ -107,7 +109,7 @@ http://127.0.0.1:8787 右上角时间范围影响统计卡片、月度趋势、最近 session 和 Sessions 列表。Activity heatmap 不跟随该筛选,固定展示最近 183 天;鼠标悬停单元格时显示日期和当日对话次数。 -大数字使用 `k`、`m`、`b` 简写,分别代表千、百万、十亿。精确值保留在指标悬浮提示或 raw 数据中。 +大数字使用 `k`、`m`、`b` 简写,分别代表千、百万、十亿。精确值保留在指标悬浮提示中。 Diagnostics 的 Summary cache 面板展示派生 cache 生命周期: @@ -159,7 +161,7 @@ flowchart TD - 历史 summary cache 写在用户 cache 目录或 `-cache-path` 指定位置,文件权限固定为 `0600`;缓存不包含 raw JSONL 或完整对话内容,只包含脱敏后的 `SessionSummary`、token 聚合、文件大小和修改时间。 - 损坏 cache 不直接删除,只在用户触发 rebuild 时改名为 `.corrupt..bak` 后重建。 - JSON 和文本展示层会脱敏常见 `auth`、`token`、`cookie`、`password`、`secret`、`api_key`、`access_key` 字段。 -- raw JSONL 展开能力展示的是脱敏后的 JSONL,方便排查格式和事件顺序,不用于导出完整敏感内容。 +- raw JSONL 展开能力按行读取并展示脱敏后的 JSONL,方便排查格式和事件顺序;页面不默认下载完整 raw JSONL,不用于导出完整敏感内容。 - token usage 只读取 Codex JSONL 中的结构化 `token_count` 元数据,不读取或推断账单、账号或认证信息。 ## 脱敏截图 @@ -188,9 +190,9 @@ flowchart TD |---|---|---| | 页面显示没有 session | `session_index.jsonl` 或 `sessions/` 不存在,或时间筛选太窄 | 查看 Diagnostics,清空时间筛选后刷新 | | 某个 session 没有详情 | 索引里有 session,但 rollout JSONL 不存在或无法匹配 | 查看 session 列表里的路径和 Diagnostics 数据源 | -| 点击 session 后一直 loading | 冷启动正在建立 session 索引,或目标 JSONL 文件过大 | 等待首次索引完成;详情接口会优先使用缓存中的 `id -> path`,避免每次点击全量扫描 | +| 点击 session 后一直 loading | 冷启动正在建立 session 索引,或目标 JSONL 文件很大 | 等待首次索引完成;详情接口会优先使用缓存中的 `id -> path`,首屏只返回有限事件,后续通过 `Load more events` 追加 | | token 统计为 0 | 该历史 JSONL 没有 `event_msg.type=token_count`,或格式不同 | 这是兼容性缺失,不影响对话查看;Diagnostics 和 raw JSONL 可用于确认格式 | -| CPU 占用高 | 首次历史范围加载需要解析该范围内尚未缓存的历史 rollout;今天的数据实时解析 | 等待首次缓存写入;后续历史请求会复用 SQLite summary cache,详情只解析目标文件 | +| CPU 占用高 | 首次历史范围加载需要解析该范围内尚未缓存的历史 rollout;今天的数据实时解析;直接打开未缓存的超大 session 仍可能扫描目标文件 | 等待首次缓存写入;后续历史请求会复用 SQLite summary cache;历史详情页在有 summary hint 时只扫描当前事件窗口,raw JSONL 按行加载,避免浏览器一次性渲染完整会话 | | cache 状态是 missing | cache 文件尚未创建 | 在 Diagnostics 点击 `Create cache` | | cache 状态是 corrupt | SQLite 返回明确损坏错误 | 在 Diagnostics 二次确认后点击 `Backup and rebuild cache` | | cache 状态是 unavailable | 权限、busy timeout 或其他非损坏错误 | 处理错误原因;页面会降级实时解析 JSONL | diff --git a/docs/cli/codex_inspector_regression.md b/docs/cli/codex_inspector_regression.md index 81b7522..ffdbbd7 100644 --- a/docs/cli/codex_inspector_regression.md +++ b/docs/cli/codex_inspector_regression.md @@ -66,7 +66,8 @@ fixture 中的路径可使用 `/tmp/codex-demo/project`、`/tmp/demo-home/.codex | API-002 | `GET /api/overview?from=YYYY-MM-DD&to=YYYY-MM-DD` | `base` fixture | 请求一个只覆盖部分 session 的范围 | `stats.totalSessions` 只统计范围内 session;`stats.heatmap` 仍固定最近 183 天,不随范围缩短。 | | API-003 | `GET /api/sessions?limit=300` | `base` fixture | 请求 session 列表 | HTTP 200;session 按更新时间倒序;每项包含 `id`、`title`、`updatedAt`、`eventCount`、`tokenStats`。 | | API-004 | `GET /api/sessions?q=demo` | `base` fixture | 搜索标题、cwd 或 model | 只返回匹配项;大小写不应导致明显误判。 | -| API-005 | `GET /api/sessions/{id}` | `base` fixture | 请求一条存在的 session | HTTP 200;包含 `summary`、`events`、`rawLines`;events 顺序与 JSONL 行序一致。 | +| API-005 | `GET /api/sessions/{id}?event_limit=300&raw=0` | `base` fixture | 请求一条存在的 session | HTTP 200;包含 `summary`、分页后的 `events`、`eventTotal`、`hasMore`;不默认返回 `rawLines`;events 顺序与 JSONL 行序一致。 | +| API-005A | `GET /api/sessions/{id}/raw?line=N` | `privacy` fixture | 请求单行 raw JSONL | HTTP 200;只返回目标行的脱敏 raw 内容;不存在的行返回结构化 404。 | | API-006 | `GET /api/sessions/not-found` | `base` fixture | 请求不存在的 id | HTTP 404;返回结构化 `error`,服务不 panic。 | | API-007 | `GET /api/memory` | `base` fixture | 请求 memory 列表 | HTTP 200;包含 `MEMORY.md`、`memory_summary.md`、rollout summary 条目。 | | API-008 | `GET /api/memory?q=keyword` | `base` fixture | 搜索关键词 | 只展示匹配文件或匹配计数;不返回 auth/token 原文。 | @@ -88,7 +89,7 @@ fixture 中的路径可使用 `/tmp/codex-demo/project`、`/tmp/demo-home/.codex | C-006 | `GET /api/cache/status` | 健康 cache | 请求状态 | `status=healthy`;允许 `Fill missing cache`;不显示 rebuild 警告。 | | C-007 | `POST /api/cache/build` | 健康 cache 且有历史缺口 | 请求补齐 | 只补齐缺失或过期历史 summary;SQLite 写入保持串行或低并发。 | | C-008 | `GET /api/cache/status` | `cache_corrupt` | 请求状态 | `status=corrupt`;错误只在明确 `malformed`、`file is not a database`、`schema is corrupt` 时判定为损坏。 | -| C-009 | `POST /api/cache/rebuild` | `cache_corrupt`,用户已二次确认 | 请求重建 | 原 cache rename 为 `.corrupt..bak`;新建 cache;不直接删除损坏文件。 | +| C-009 | `POST /api/cache/rebuild` | `cache_corrupt`,用户已在应用内确认弹窗二次确认 | 请求重建 | 原 cache rename 为 `.corrupt..bak`;新建 cache;不直接删除损坏文件。 | | C-010 | `POST /api/cache/rebuild` | 普通权限失败或 busy timeout | 请求重建 | 不 rename;状态为 `unavailable`;展示原因;页面仍通过 JSONL 实时解析可用。 | | C-011 | Overview/Sessions | cache 损坏或不可用 | 打开页面 | 页面仍可展示统计和列表;warnings 可见;无未捕获 JS error。 | @@ -112,11 +113,11 @@ fixture 中的路径可使用 `/tmp/codex-demo/project`、`/tmp/demo-home/.codex | S-001 | `base` fixture | 打开 Sessions | 左侧列表展示 session title、时间、事件数、model、token 简写和 preview。 | | S-002 | `base` fixture | 点击第一条 session | 右侧展示详情,不停留在 `Select a session to inspect.`。 | | S-003 | `base` fixture | 查看详情事件流 | user、assistant、tool call、tool result、system event 按 JSONL 原始顺序展示。 | -| S-004 | `base` fixture | 展开 Raw JSONL | raw 内容已脱敏;能看到行号;不能出现假 token/cookie/secret 原文。 | +| S-004 | `base` fixture | 展开 Raw JSONL | raw 内容按需加载且已脱敏;能看到行号;不能出现假 token/cookie/secret 原文。 | | S-005 | `token_usage` fixture | 点击含 token_count 的 session | token usage 摘要展示 total、input、cached、output、reasoning、last turn、context、rate limit。 | | S-006 | `base` fixture | 搜索 title、cwd、model | 列表过滤;清空搜索后恢复。 | | S-007 | `bad_jsonl` fixture | 点击含坏行 session | 可展示有效事件;坏行进入 warnings 或 raw 脱敏内容;服务不 panic。 | -| S-008 | 大 session fixture | 点击事件数较多的 session | 详情只解析目标文件,不触发全量扫描导致长时间卡死。 | +| S-008 | 大 session fixture | 点击事件数较多的历史 session | 首屏只渲染有限事件,展示总数和 `Load more events`;不默认下载全部 raw JSONL;有 summary hint 时后端只读取当前事件窗口,不触发浏览器慢标签提示。 | ## Memory 页面回归样例 @@ -137,7 +138,7 @@ fixture 中的路径可使用 `/tmp/codex-demo/project`、`/tmp/demo-home/.codex | D-003 | 系统无 `sqlite3` 命令 | 打开 Diagnostics | schema 区域显示不可用原因;页面仍可使用。 | | D-004 | cache missing | 打开 Diagnostics | cache 区域展示 `missing` 和 `Create cache` 按钮。 | | D-005 | cache healthy | 打开 Diagnostics | cache 区域展示 `healthy` 和 `Fill missing cache` 按钮。 | -| D-006 | cache corrupt | 打开 Diagnostics | cache 区域展示 `corrupt`;`Backup and rebuild cache` 必须有二次确认。 | +| D-006 | cache corrupt | 打开 Diagnostics 并点击 `Backup and rebuild cache` | cache 区域展示 `corrupt`;页面展示应用内二次确认 modal,不使用浏览器原生 confirm;取消关闭 modal,确认后才开始 rebuild。 | | D-007 | cache rebuilding | 触发 build/rebuild 后轮询 | 展示 total、done、cached、skipped、failed、startedAt、lastError 或 finishedAt。 | | D-008 | cache disabled/unavailable | 使用 `-no-cache` 或不可写 cache path | 展示明确原因;不展示可执行但必然失败的按钮。 | From 92907b6b98514021e215cce0ee7677b9227c7a6d Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 15:39:14 +0800 Subject: [PATCH 7/8] fix(codex_inspector): use temp cache path --- cli/codex_inspector/cache_manager_test.go | 21 +++++++++++++++++++++ cli/codex_inspector/install.sh | 11 +++-------- cli/codex_inspector/sqlite_cache.go | 9 +++------ docs/cli/codex_inspector.md | 10 +++++----- docs/cli/codex_inspector_regression.md | 2 +- docs/install.md | 8 ++++---- 6 files changed, 37 insertions(+), 24 deletions(-) diff --git a/cli/codex_inspector/cache_manager_test.go b/cli/codex_inspector/cache_manager_test.go index dbff237..7099aa9 100644 --- a/cli/codex_inspector/cache_manager_test.go +++ b/cli/codex_inspector/cache_manager_test.go @@ -6,12 +6,33 @@ import ( "net/http/httptest" "os" "path/filepath" + "strconv" "testing" "time" "github.com/stretchr/testify/require" ) +func TestDefaultCachePathUsesSystemTempDir(t *testing.T) { + path := defaultCachePath() + require.Equal(t, filepath.Join(os.TempDir(), "life_tools-codex-inspector-"+strconv.Itoa(os.Getuid()), "session_summary_cache.sqlite"), path) +} + +func TestCacheDirectoryIsPrivateWhenCreated(t *testing.T) { + cachePath := filepath.Join(t.TempDir(), "nested", "summary.sqlite") + cache, err := openSummaryDiskCache(cachePath) + require.NoError(t, err) + require.NoError(t, cache.Close()) + + dirInfo, err := os.Stat(filepath.Dir(cachePath)) + require.NoError(t, err) + require.Equal(t, os.FileMode(0700), dirInfo.Mode().Perm()) + + fileInfo, err := os.Stat(cachePath) + require.NoError(t, err) + require.Equal(t, os.FileMode(0600), fileInfo.Mode().Perm()) +} + func TestCacheMissingCanCreateAndFill(t *testing.T) { codexHome, rolloutPath := writeCacheTestRollout(t, "2000", "01", "02", "missing-cache-session") cachePath := filepath.Join(t.TempDir(), "summary.sqlite") diff --git a/cli/codex_inspector/install.sh b/cli/codex_inspector/install.sh index 4008a18..0e08c46 100755 --- a/cli/codex_inspector/install.sh +++ b/cli/codex_inspector/install.sh @@ -103,14 +103,9 @@ EOF } print_cache_hint() { - case "$OS_NAME" in - Darwin) - echo "Default cache: $HOME/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite" - ;; - Linux) - echo "Default cache: ${XDG_CACHE_HOME:-$HOME/.cache}/life_tools/codex_inspector/session_summary_cache.sqlite" - ;; - esac + local uid + uid="$(id -u 2>/dev/null || echo user)" + echo "Default cache: ${TMPDIR:-/tmp}/life_tools-codex-inspector-$uid/session_summary_cache.sqlite" } print_start_hint() { diff --git a/cli/codex_inspector/sqlite_cache.go b/cli/codex_inspector/sqlite_cache.go index 84dc86c..4755c53 100644 --- a/cli/codex_inspector/sqlite_cache.go +++ b/cli/codex_inspector/sqlite_cache.go @@ -5,6 +5,7 @@ import ( "encoding/json" "os" "path/filepath" + "strconv" "strings" "sync" "time" @@ -27,11 +28,7 @@ type fileMeta struct { } func defaultCachePath() string { - dir, err := os.UserCacheDir() - if err != nil || dir == "" { - dir = os.TempDir() - } - return filepath.Join(dir, "life_tools", "codex_inspector", "session_summary_cache.sqlite") + return filepath.Join(os.TempDir(), "life_tools-codex-inspector-"+strconv.Itoa(os.Getuid()), "session_summary_cache.sqlite") } func openSummaryDiskCache(path string) (*summaryDiskCache, error) { @@ -47,7 +44,7 @@ func openSummaryDiskCacheAt(path string, create bool) (*summaryDiskCache, error) return nil, nil } if create { - if err := os.MkdirAll(filepath.Dir(path), 0755); err != nil { + if err := os.MkdirAll(filepath.Dir(path), 0700); err != nil { return nil, err } file, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE, 0600) diff --git a/docs/cli/codex_inspector.md b/docs/cli/codex_inspector.md index ea0f650..ebb7dd8 100644 --- a/docs/cli/codex_inspector.md +++ b/docs/cli/codex_inspector.md @@ -55,12 +55,12 @@ go build -o output/codex_inspector ./cli/codex_inspector/... ./output/codex_inspector -codex-home /tmp/codex-inspector-fixture -addr 127.0.0.1:8787 ``` -历史 session summary 会缓存到本机 SQLite 文件,用于减少重复解析历史 rollout。默认路径由 Go 的 `os.UserCacheDir()` 决定: +历史 session summary 会缓存到本机 SQLite 文件,用于减少重复解析历史 rollout。默认路径放在系统临时目录下的用户隔离子目录,避免 macOS/Linux 上用户 cache 目录权限异常影响页面使用: | 系统 | 默认 cache | |---|---| -| macOS | `~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite` | -| Linux | `${XDG_CACHE_HOME:-~/.cache}/life_tools/codex_inspector/session_summary_cache.sqlite` | +| macOS | `${TMPDIR:-/tmp}/life_tools-codex-inspector-/session_summary_cache.sqlite` | +| Linux | `/tmp/life_tools-codex-inspector-/session_summary_cache.sqlite` | 可以显式指定或禁用: @@ -92,7 +92,7 @@ http://127.0.0.1:8787 | `~/.codex/goals_1.sqlite` | schema | Diagnostics 页面只读探测 | 否 | | `~/.codex/memories_1.sqlite` | schema | Diagnostics 页面只读探测 | 否 | | `~/.codex/auth.json` | 不读取内容 | Diagnostics 只标记为排除项 | 否 | -| 用户 cache 目录下的 `life_tools/codex_inspector/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL 或完整对话,不写 `~/.codex` | 是 | +| 系统 tmp 目录下的 `life_tools-codex-inspector-/session_summary_cache.sqlite` | 脱敏 session summary、token 统计、文件大小和修改时间 | 历史数据缓存,不存 raw JSONL 或完整对话,不写 `~/.codex` | 是 | 历史 session 详情页使用分页读取。若列表或 SQLite cache 已经提供可信 `SessionSummary`,后端会用其中的事件总数作为 hint,读取到当前页事件窗口后停止;今天仍在变化的 rollout 不使用该 hint,继续实时解析。 @@ -158,7 +158,7 @@ flowchart TD - 安装脚本默认写 `$HOME/.local/bin`,不写 `/usr/local`、`/etc` 或 `/var`;系统级安装必须显式传 `--system` 或 `--allow-sudo`。 - 不写入 `~/.codex`,不修改 session、memory、SQLite 或配置文件。 - 不读取 `auth.json` 内容。 -- 历史 summary cache 写在用户 cache 目录或 `-cache-path` 指定位置,文件权限固定为 `0600`;缓存不包含 raw JSONL 或完整对话内容,只包含脱敏后的 `SessionSummary`、token 聚合、文件大小和修改时间。 +- 历史 summary cache 默认写在系统 tmp 下的用户隔离目录,cache 目录权限为 `0700`,文件权限固定为 `0600`;也可以用 `-cache-path` 指定位置。缓存不包含 raw JSONL 或完整对话内容,只包含脱敏后的 `SessionSummary`、token 聚合、文件大小和修改时间。 - 损坏 cache 不直接删除,只在用户触发 rebuild 时改名为 `.corrupt..bak` 后重建。 - JSON 和文本展示层会脱敏常见 `auth`、`token`、`cookie`、`password`、`secret`、`api_key`、`access_key` 字段。 - raw JSONL 展开能力按行读取并展示脱敏后的 JSONL,方便排查格式和事件顺序;页面不默认下载完整 raw JSONL,不用于导出完整敏感内容。 diff --git a/docs/cli/codex_inspector_regression.md b/docs/cli/codex_inspector_regression.md index ffdbbd7..37d0825 100644 --- a/docs/cli/codex_inspector_regression.md +++ b/docs/cli/codex_inspector_regression.md @@ -9,7 +9,7 @@ | 原则 | 要求 | |---|---| | 数据安全 | 测试 fixture 必须脱敏;`auth.json`、token、cookie、secret、真实 API key 不得进入仓库。 | -| 只读边界 | 测试不得写入 `~/.codex`;cache 只能写到 `-cache-path` 指定的临时文件或用户 cache 目录。 | +| 只读边界 | 测试不得写入 `~/.codex`;cache 只能写到 `-cache-path` 指定的临时文件或系统 tmp 下的用户隔离目录。 | | 可重复 | 每个样例必须说明前置数据、启动参数、操作步骤和断言点。 | | 可自动化 | 页面样例需要给出可由 Chrome/Playwright 检查的 selector、网络请求或文本断言。 | | 跨端 | 涉及 UI 的改动至少检查 `390x844`、`768x1024`、`1440x900` 三类视口。 | diff --git a/docs/install.md b/docs/install.md index 9dda1e1..62ac636 100644 --- a/docs/install.md +++ b/docs/install.md @@ -143,12 +143,12 @@ go build -o output/codex_inspector ./cli/codex_inspector/... ./output/codex_inspector -cache-workers 0 ``` -默认 cache 路径按系统走用户缓存目录: +默认 cache 路径放在系统临时目录下的用户隔离子目录,避免 macOS/Linux 上用户 cache 目录权限异常影响页面使用: | 系统 | 默认 cache | |---|---| -| macOS | `~/Library/Caches/life_tools/codex_inspector/session_summary_cache.sqlite` | -| Linux | `${XDG_CACHE_HOME:-~/.cache}/life_tools/codex_inspector/session_summary_cache.sqlite` | +| macOS | `${TMPDIR:-/tmp}/life_tools-codex-inspector-/session_summary_cache.sqlite` | +| Linux | `/tmp/life_tools-codex-inspector-/session_summary_cache.sqlite` | cache 生命周期: @@ -167,7 +167,7 @@ cache 生命周期: - 默认监听 `127.0.0.1`,不要绑定到公网地址。 - 只读取 `session_index.jsonl`、`sessions/`、`memories/` 和 SQLite schema。 -- 不写入 `~/.codex`;SQLite cache 只写到用户 cache 目录或 `-cache-path` 指定位置,文件权限为 `0600`。 +- 不写入 `~/.codex`;SQLite cache 默认写到系统 tmp 下的用户隔离目录,目录权限为 `0700`,文件权限为 `0600`;也可以用 `-cache-path` 指定位置。 - cache 只保存脱敏后的 `SessionSummary`、token 聚合、文件大小和修改时间,不保存 raw JSONL 或完整对话内容。 - 不读取 `auth.json` 内容,不展示 token、cookie、secret 类字段。 - 详细说明见 [cli/codex_inspector.md](cli/codex_inspector.md)。 From 61a8f13b321d74d9501fd6fd619d6493fcc03cba Mon Sep 17 00:00:00 2001 From: Jiang Chaoqun Date: Sat, 4 Jul 2026 16:03:12 +0800 Subject: [PATCH 8/8] docs: add README UI previews --- README.MD | 14 ++++++++++++++ .../emby_video_subtitle/control-page-1440.png | Bin 0 -> 179093 bytes docs/assets/file_share/overview-1440.png | Bin 0 -> 118765 bytes docs/assets/interview_timer/panel.png | Bin 0 -> 103518 bytes 4 files changed, 14 insertions(+) create mode 100644 docs/assets/emby_video_subtitle/control-page-1440.png create mode 100644 docs/assets/file_share/overview-1440.png create mode 100644 docs/assets/interview_timer/panel.png diff --git a/README.MD b/README.MD index cf06b11..2dbb2ba 100644 --- a/README.MD +++ b/README.MD @@ -2,6 +2,20 @@ 个人日常使用的小工具集合,按应用类型组织源码:命令行程序放在 `cli/`,插件程序放在 `emby_plugins/`,图形界面程序放在 `gui/`。 +## 界面预览 + +下面这些工具带有浏览器或桌面界面,截图均使用脱敏演示数据。点击截图可进入对应文档。 + +| Codex Inspector:总览 | Codex Inspector:会话详情 | +|---|---| +| [Codex Inspector Overview](docs/cli/codex_inspector.md) | [Codex Inspector Sessions](docs/cli/codex_inspector.md) | +| 本机只读查看 Codex 会话数量、token 用量、活跃度热力图和最近 session。 | 按原生交互顺序查看 user、assistant、tool call、tool result 和 raw JSONL。 | + +| file_share | Emby 字幕插件 | InterviewTimer | +|---|---|---| +| [file_share browser UI](docs/cli/file_share.md) | [Emby video subtitle plugin](docs/plugins/emby_video_subtitle.md) | [InterviewTimer floating panel](docs/gui/interview_timer.md) | +| 临时启动本机只读 HTTP 文件分享服务,支持浏览、下载和目录打包。 | 在 Emby Web 中选择媒体、配置参数并提交字幕生成任务。 | macOS 悬浮面试计时器,按模板推进多环节流程。 | + ## 快速安装 支持 Linux 和 macOS。仓库根目录执行下面命令,默认安装稳定命令行工具:`renameV1`、`check_keywords`、`retry_exec`、`codex_hook_notify`、`video_subtitle`、`file_share`。 diff --git a/docs/assets/emby_video_subtitle/control-page-1440.png b/docs/assets/emby_video_subtitle/control-page-1440.png new file mode 100644 index 0000000000000000000000000000000000000000..74b94d9a6168ed6d921c723a3f6ce1bc4594a394 GIT binary patch literal 179093 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 LY)tPOlVbl1$s(H2 literal 0 HcmV?d00001 diff --git a/docs/assets/file_share/overview-1440.png b/docs/assets/file_share/overview-1440.png new file mode 100644 index 0000000000000000000000000000000000000000..3c01f90b056d69ed5ccc64f483184277641fa04e GIT binary patch literal 118765 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 Zy1Xvwxm3(-s^=becLFQ>`x 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 literal 0 HcmV?d00001