gemcode 0.3.113__tar.gz → 0.3.114__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.
- {gemcode-0.3.113/src/gemcode.egg-info → gemcode-0.3.114}/PKG-INFO +1 -1
- {gemcode-0.3.113 → gemcode-0.3.114}/pyproject.toml +1 -1
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tui/scrollback.py +48 -22
- {gemcode-0.3.113 → gemcode-0.3.114/src/gemcode.egg-info}/PKG-INFO +1 -1
- {gemcode-0.3.113 → gemcode-0.3.114}/LICENSE +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/MANIFEST.in +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/README.md +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/setup.cfg +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/__main__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/agent.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/audit.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/autocompact.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/automations.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/autotune.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/callbacks.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/capability_routing.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/checkpoints.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/cli.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/compaction.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/computer_use/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/computer_use/browser_computer.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/config.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/context_budget.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/context_warning.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/credentials.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/curated_memory.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/dynamic_policy.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/evals/harness.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/hitl_session.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/hooks.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/ide_protocol.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/ide_stdio.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/intent_classifier.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/interactions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/invoke.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/kaira_client.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/kaira_daemon.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/kaira_ipc.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/kaira_job_store.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/learning.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/limits.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/live_audio_engine.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/logging_config.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/mcp_loader.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/memory/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/memory/embedding_memory_service.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/memory/file_memory_service.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/modality_tools.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/model_errors.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/model_routing.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/multimodal_input.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/openapi_loader.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/org.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/output_styles.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/paths.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/permissions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/plugins/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/plugins/terminal_hooks_plugin.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/plugins/tool_recovery_plugin.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/policy_profile.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/pricing.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/prompt_suggestions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/config.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/deps.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/engine.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/stop_hooks.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/token_budget.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query/transitions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/query_sanitizer.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/refine.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/repl_commands.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/repl_slash.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/review_agent.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/rules.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/session_runtime.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/session_store.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/session_summariser.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/skills.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/slash_commands.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/thinking.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tool_prompt_manifest.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tool_registry.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tool_result_store.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/automations_tools.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/bash.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/browser.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/compress_memory.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/curated_memory.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/edit.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/filesystem.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/notebook.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/notes.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/org_tools.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/repo_map.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/search.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/shell.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/shell_gate.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/skills.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/subtask.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/tasks.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/think.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/todo.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/user_choice.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/veomem_tools.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/web.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools/web_search.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tools_inspector.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/trust.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tui/input_handler.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tui/spinner.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tui/welcome_banner.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/tui/welcome_rich.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/veomem_bridge.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/version.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/vertex.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/wal.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/web/__init__.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/web/sse_adapter.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/web/terminal_repl.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/web/web_sse_compat.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode/workspace_hints.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode.egg-info/SOURCES.txt +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode.egg-info/dependency_links.txt +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode.egg-info/entry_points.txt +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode.egg-info/requires.txt +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/src/gemcode.egg-info/top_level.txt +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_add_dir.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_agent_instruction.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_autocompact.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_automations.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_capability_routing.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_checkpoint_diff_command.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_cli_init.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_compress_memory_tool.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_computer_use_permissions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_context_budget.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_context_warning.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_credentials.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_eval_harness_layout.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_ide_stdio_attachments.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_interactive_permission_ask.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_kaira_scheduler.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_modality_tools.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_model_error_retry.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_model_errors.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_model_routing.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_multimodal_input.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_output_styles_and_rules.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_paths.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_permissions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_prompt_suggestions.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_repl_commands.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_repl_slash.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_session_runtime_cache.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_skills.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_slash_commands.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_slash_completion_registry.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_thinking_config.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_token_budget.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_tool_context_circulation.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_tools.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_tools_inspector.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_web_sse_adapter.py +0 -0
- {gemcode-0.3.113 → gemcode-0.3.114}/tests/test_workspace_hints.py +0 -0
|
@@ -359,30 +359,53 @@ async def run_gemcode_scrollback_tui(
|
|
|
359
359
|
return
|
|
360
360
|
try:
|
|
361
361
|
from gemcode.kaira_client import KairaIpcClient
|
|
362
|
+
from gemcode.org import resolve_fleet_root
|
|
363
|
+
|
|
364
|
+
# Fleet-wide default: even when running inside an agent workspace, connect
|
|
365
|
+
# to the shared parent project socket (fleet root) so org reports and jobs
|
|
366
|
+
# from all agents show up in the TUI by default.
|
|
367
|
+
fleet_root = resolve_fleet_root(cfg.project_root)
|
|
368
|
+
sock = os.environ.get("GEMCODE_KAIRA_SOCKET") or str(fleet_root / _KAIRA_SOCKET_DEFAULT)
|
|
369
|
+
# Always-on behavior: keep trying to connect so background jobs / bus
|
|
370
|
+
# messages appear even if the daemon starts AFTER the TUI.
|
|
371
|
+
backoff_s = 1.0
|
|
372
|
+
client: KairaIpcClient | None = None
|
|
373
|
+
while True:
|
|
374
|
+
# Only try connect if socket exists; avoids noisy startup.
|
|
375
|
+
try:
|
|
376
|
+
from pathlib import Path as _Path
|
|
362
377
|
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
pass
|
|
378
|
+
if not _Path(sock).exists():
|
|
379
|
+
await asyncio.sleep(min(8.0, backoff_s))
|
|
380
|
+
backoff_s = min(8.0, backoff_s * 1.5)
|
|
381
|
+
continue
|
|
382
|
+
except Exception:
|
|
383
|
+
await asyncio.sleep(min(8.0, backoff_s))
|
|
384
|
+
backoff_s = min(8.0, backoff_s * 1.5)
|
|
385
|
+
continue
|
|
372
386
|
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
387
|
+
try:
|
|
388
|
+
client = await KairaIpcClient.connect(socket_path=sock)
|
|
389
|
+
# Optional filters for bus messages.
|
|
390
|
+
# These filters apply ONLY to bus_message events; job_* events are still shown.
|
|
391
|
+
topics_env = (os.environ.get("GEMCODE_BUS_TOPICS") or "").strip()
|
|
392
|
+
to_env = (os.environ.get("GEMCODE_BUS_TO") or "").strip()
|
|
393
|
+
topics = [t.strip() for t in topics_env.split(",") if t.strip()] if topics_env else None
|
|
394
|
+
to = [t.strip() for t in to_env.split(",") if t.strip()] if to_env else None
|
|
395
|
+
await client.subscribe(topics=topics, to=to)
|
|
396
|
+
await _kaira_print(f"{ansi.dim}[kaira] connected ({sock}){ansi.reset}")
|
|
397
|
+
backoff_s = 1.0
|
|
398
|
+
break
|
|
399
|
+
except Exception:
|
|
400
|
+
try:
|
|
401
|
+
if client is not None:
|
|
402
|
+
await client.close()
|
|
403
|
+
except Exception:
|
|
404
|
+
pass
|
|
405
|
+
client = None
|
|
406
|
+
await asyncio.sleep(min(8.0, backoff_s))
|
|
407
|
+
backoff_s = min(8.0, backoff_s * 1.5)
|
|
408
|
+
continue
|
|
386
409
|
|
|
387
410
|
def _manager_enabled() -> bool:
|
|
388
411
|
return os.environ.get("GEMCODE_KAIRA_MANAGER", "1").strip().lower() in (
|
|
@@ -392,6 +415,9 @@ async def run_gemcode_scrollback_tui(
|
|
|
392
415
|
"on",
|
|
393
416
|
)
|
|
394
417
|
|
|
418
|
+
if client is None:
|
|
419
|
+
return
|
|
420
|
+
|
|
395
421
|
async for msg in client.iter_messages():
|
|
396
422
|
if msg.get("type") != "event":
|
|
397
423
|
continue
|
|
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
|
|
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
|
|
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
|