soothe-cli 0.4.4__tar.gz → 0.4.6__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/.gitignore +1 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/PKG-INFO +1 -1
- soothe_cli-0.4.6/src/soothe_cli/__init__.py +10 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/file_ops.py +33 -1
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/messages.py +11 -3
- soothe_cli-0.4.4/src/soothe_cli/__init__.py +0 -5
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/README.md +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/pyproject.toml +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/commands/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/commands/autopilot_cmd.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/commands/loop_cmd.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/commands/run_cmd.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/commands/thread_cmd.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/execution/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/execution/daemon.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/execution/headless.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/execution/headless_renderer.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/execution/launcher.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/main.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/stream/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/stream/context.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/stream/display_line.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/stream/formatter.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/stream/pipeline.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/cli/stream/task_scope.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/config/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/config/cli_config.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/plan/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/plan/rich_tree.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/commands/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/commands/command_router.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/commands/slash_commands.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/commands/subagent_routing.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/config_loader.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/core/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/core/event_processor.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/core/presentation_engine.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/core/processor_state.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/core/renderer_protocol.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/events/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/events/display_policy.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/events/essential_events.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/events/explore_task_display.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/events/stream_accumulator.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/events/tui_trace_log.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/presentation_engine.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/renderer_base.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/rendering/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/rendering/async_renderer_protocol.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/rendering/renderer_base.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/stream_accumulator.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/subagent_routing.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/message_processing.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/rendering.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_call_resolution.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_card_payload.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_card_visibility.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/base.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/execution.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/fallback.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/goal_formatter.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/media.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/structured.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/subagent.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/web.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_message_format.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_output_formatter.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/_ask_user_types.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/_cli_context.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/_env_vars.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/_session_stats.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/_version.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/app.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/app.tcss +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/command_registry.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/config.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/daemon_session.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/file_ops.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/formatting.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/hooks.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/input.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/media_utils.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/message_display_filter.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/model_config.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/output.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/preview_limits.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/project_utils.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/sessions.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/skills/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/skills/invocation.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/skills/load.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/textual_adapter.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/theme.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/tool_display.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/unicode_security.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/update_check.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/__init__.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/_links.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/approval.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/ask_user.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/autocomplete.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/autopilot_dashboard.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/autopilot_screen.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/chat_input.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/clipboard.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/diff.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/editor.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/history.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/loading.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/loop_selector.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/mcp_viewer.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/message_store.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/model_selector.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/notification_settings.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/status.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/theme_selector.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/thread_selector.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/tool_renderers.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/tool_widgets.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/tools.py +0 -0
- {soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/tui/widgets/welcome.py +0 -0
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/file_ops.py
RENAMED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
import re
|
|
5
6
|
from typing import Any
|
|
6
7
|
|
|
7
8
|
from soothe_cli.shared.tools.tool_formatters.base import BaseFormatter
|
|
@@ -12,7 +13,7 @@ class FileOpsFormatter(BaseFormatter):
|
|
|
12
13
|
"""Formatter for file operation tools.
|
|
13
14
|
|
|
14
15
|
Handles: read_file, write_file, delete_file, list_files, search_files, glob,
|
|
15
|
-
grep, ls
|
|
16
|
+
grep, ls, file_info
|
|
16
17
|
|
|
17
18
|
Provides semantic summaries with size, line count, and item count metrics.
|
|
18
19
|
"""
|
|
@@ -54,9 +55,40 @@ class FileOpsFormatter(BaseFormatter):
|
|
|
54
55
|
return self._format_glob(result)
|
|
55
56
|
if normalized == "grep":
|
|
56
57
|
return self._format_search_files(result)
|
|
58
|
+
if normalized == "file_info":
|
|
59
|
+
return self._format_file_info(result)
|
|
57
60
|
msg = f"Unknown file operation tool: {tool_name}"
|
|
58
61
|
raise ValueError(msg)
|
|
59
62
|
|
|
63
|
+
_SIZE_BYTES_LINE = re.compile(r"Size:\s*(\d+)\s*bytes", re.IGNORECASE)
|
|
64
|
+
|
|
65
|
+
def _format_file_info(self, result: str) -> ToolBrief:
|
|
66
|
+
"""Format file_info metadata result (path, size, mtime, …)."""
|
|
67
|
+
if result.startswith("Error:"):
|
|
68
|
+
error_msg = result[6:].strip()
|
|
69
|
+
return ToolBrief(
|
|
70
|
+
icon="✗",
|
|
71
|
+
summary="File info failed",
|
|
72
|
+
detail=self._truncate_text(error_msg, 80),
|
|
73
|
+
metrics={"error": True},
|
|
74
|
+
)
|
|
75
|
+
m = self._SIZE_BYTES_LINE.search(result)
|
|
76
|
+
if m:
|
|
77
|
+
size_bytes = int(m.group(1))
|
|
78
|
+
size_str = self._format_size(size_bytes)
|
|
79
|
+
return ToolBrief(
|
|
80
|
+
icon="✓",
|
|
81
|
+
summary=f"Metadata {size_str}",
|
|
82
|
+
detail=None,
|
|
83
|
+
metrics={"size_bytes": size_bytes},
|
|
84
|
+
)
|
|
85
|
+
return ToolBrief(
|
|
86
|
+
icon="✓",
|
|
87
|
+
summary="File metadata",
|
|
88
|
+
detail=None,
|
|
89
|
+
metrics={},
|
|
90
|
+
)
|
|
91
|
+
|
|
60
92
|
def _format_read_file(self, result: str) -> ToolBrief:
|
|
61
93
|
r"""Format read_file result.
|
|
62
94
|
|
|
@@ -2392,13 +2392,21 @@ class CognitionGoalTreeMessage(_TimestampClickMixin, Vertical):
|
|
|
2392
2392
|
self,
|
|
2393
2393
|
*,
|
|
2394
2394
|
status: str,
|
|
2395
|
-
goal_progress: float
|
|
2395
|
+
goal_progress: str, # IG-399: descriptive level instead of float
|
|
2396
2396
|
completion_summary: str,
|
|
2397
2397
|
total_steps: int,
|
|
2398
2398
|
) -> None:
|
|
2399
2399
|
"""Show a compact footer when the agentic loop completes."""
|
|
2400
|
-
|
|
2401
|
-
|
|
2400
|
+
# IG-399: Map descriptive levels to percentage display
|
|
2401
|
+
progress_map = {
|
|
2402
|
+
"none": "0%",
|
|
2403
|
+
"low": "20%",
|
|
2404
|
+
"medium": "50%",
|
|
2405
|
+
"high": "80%",
|
|
2406
|
+
"complete": "100%",
|
|
2407
|
+
}
|
|
2408
|
+
pct_display = progress_map.get(goal_progress, "0%")
|
|
2409
|
+
parts: list[str] = [str(status or "done"), pct_display]
|
|
2402
2410
|
if total_steps:
|
|
2403
2411
|
parts.append(f"{total_steps} step(s)")
|
|
2404
2412
|
cs = (completion_summary or "").strip()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/rendering/async_renderer_protocol.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/execution.py
RENAMED
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/fallback.py
RENAMED
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/goal_formatter.py
RENAMED
|
File without changes
|
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/structured.py
RENAMED
|
File without changes
|
{soothe_cli-0.4.4 → soothe_cli-0.4.6}/src/soothe_cli/shared/tools/tool_formatters/subagent.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|