orbi-cli 0.6.2__tar.gz → 0.6.3__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.
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/PKG-INFO +1 -1
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/pyproject.toml +1 -1
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/__init__.py +1 -1
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pi_process.py +4 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi_cli.egg-info/PKG-INFO +1 -1
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_bootstrap_runner.py +34 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/LICENSE +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/README.md +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/docs/licenses/sustainable-use-license.md +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/setup.cfg +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/branch_reclaim.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/checks.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/claim.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/clarify.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/cli.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/cli_source.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/config.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/delivery_labels.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/delivery_scene.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/engine_source.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/example_config.toml +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/failure.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/failure_report.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/git_identity.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/git_transport.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/github.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/gitops.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/human_review.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/journal.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/launchd_deploy.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/merge_gate.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/merge_handoff.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/milestone.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/milestone_command.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pi_activity.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pi_command.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pi_recovery.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pi_session.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pilot_setup.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/pilot_slots.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/progress.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/release.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/release_git.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/release_notes.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/repo_config.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/runner.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/runner_health.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/scene.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/scheduler.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/scheduler_units.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/source_pool.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/systemd_deploy.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi/ticket_command.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi_cli.egg-info/SOURCES.txt +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi_cli.egg-info/dependency_links.txt +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi_cli.egg-info/entry_points.txt +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/src/orbi_cli.egg-info/top_level.txt +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_agents_md.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_apply_label_patch.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_branch_reclaim.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_ci_failure_issue_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_ci_failure_triage.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_ci_macos_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_ci_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_clarify.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_claude_plugin.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_cli_install.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_cli_milestone.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_cli_packaging.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_cli_source.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_comment_readers_contract.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_concurrency_e2e.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_constitution.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_coverage_gate.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_deliver_pr_fakes.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_delivery_branch_delete.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_delivery_labels.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_delivery_scene.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docker_docs.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docker_entrypoint.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docker_image_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_i18n.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_issue_shapes.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_labels.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_mermaid.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_releases.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_single_source.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_docs_site.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_engine_source.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_failure.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_failure_report.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_fix_needed_loop.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_gh_read_retry.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_git_base_smoke.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_git_merge_smoke.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_git_network_retry.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_git_transport.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_github.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_github_fakes.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_gitops.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_gitops_fakes.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_human_review.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_import_graph.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_install_sh.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_issue_1367.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_issue_461.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_issue_template_config.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_journal.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_journal_events.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_launchd_deploy.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_license.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_milestone_command.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_ops_e2e.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_orbi.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_orbi_dashboard.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_orbi_exporter.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_patch_ratchet.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pi_activity.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pi_command.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pi_extensions.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pi_provider_templates.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pi_recovery.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pi_session.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pilot_setup.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pilot_slots.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_pr_issue_link_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_prerequisite_check.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_progress.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_progress_wiring.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_prompt_contract.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_publish_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_release_docs_workflow.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_release_ticket_templates.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_repo_config.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_resume_continue_e2e.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_resume_e2e.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_resume_pr.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_review_merge.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_run_artifacts.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_run_id_e2e.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_runner_config.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_runner_health.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_runner_source_freshness.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_scene.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_scheduler.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_size_ratchet.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_src_layout.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_steering_review.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_suite_hygiene.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_systemd_deploy.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_systemd_timer.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_ticket_command.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_user_acceptance_contract.py +0 -0
- {orbi_cli-0.6.2 → orbi_cli-0.6.3}/tests/test_worktree_reclaim.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: orbi-cli
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.3
|
|
4
4
|
Summary: Orbi — local AI development worker: claims GitHub Issues, runs Pi in isolated worktrees, and delivers PRs (GitHub Issues + labels are the only state store).
|
|
5
5
|
Author: xqliu
|
|
6
6
|
License-Expression: AGPL-3.0-only OR LicenseRef-Sustainable-Use-1.0
|
|
@@ -44,7 +44,7 @@ build-backend = "setuptools.build_meta"
|
|
|
44
44
|
|
|
45
45
|
[project]
|
|
46
46
|
name = "orbi-cli"
|
|
47
|
-
version = "0.6.
|
|
47
|
+
version = "0.6.3"
|
|
48
48
|
description = "Orbi — local AI development worker: claims GitHub Issues, runs Pi in isolated worktrees, and delivers PRs (GitHub Issues + labels are the only state store)."
|
|
49
49
|
readme = "README.md"
|
|
50
50
|
requires-python = ">=3.14"
|
|
@@ -1258,6 +1258,10 @@ def _stream_pi_once(
|
|
|
1258
1258
|
# inherits the Runner's environment unchanged (pre-#157 shape).
|
|
1259
1259
|
process = subprocess.Popen(
|
|
1260
1260
|
command, cwd=cwd, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
|
|
1261
|
+
# Pi's print mode reads piped stdin until it closes and prepends
|
|
1262
|
+
# it to the prompt (Issue #1562): the child must get /dev/null,
|
|
1263
|
+
# never the Runner's possibly-open stdin pipe.
|
|
1264
|
+
stdin=subprocess.DEVNULL,
|
|
1261
1265
|
env=None if pi_env is None else {**os.environ, **pi_env},
|
|
1262
1266
|
)
|
|
1263
1267
|
# Track the live Pi child for the stop handler: a
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: orbi-cli
|
|
3
|
-
Version: 0.6.
|
|
3
|
+
Version: 0.6.3
|
|
4
4
|
Summary: Orbi — local AI development worker: claims GitHub Issues, runs Pi in isolated worktrees, and delivers PRs (GitHub Issues + labels are the only state store).
|
|
5
5
|
Author: xqliu
|
|
6
6
|
License-Expression: AGPL-3.0-only OR LicenseRef-Sustainable-Use-1.0
|
|
@@ -9752,6 +9752,40 @@ def test_stream_pi_drains_pipe_data_written_after_exit(
|
|
|
9752
9752
|
assert "stderr=late stderr data" in caplog.text
|
|
9753
9753
|
|
|
9754
9754
|
|
|
9755
|
+
def test_stream_pi_spawns_pi_with_stdin_devnull(
|
|
9756
|
+
monkeypatch, tmp_path,
|
|
9757
|
+
):
|
|
9758
|
+
"""Issue #1562: the Pi child must never inherit the Runner's stdin.
|
|
9759
|
+
|
|
9760
|
+
Pi's print/JSON mode reads piped stdin until it closes and prepends it
|
|
9761
|
+
to the prompt; started from an open pipe (ssh host orbi without -t,
|
|
9762
|
+
a shell pipeline into orbi, a wrapper that forgets stdin) an inherited
|
|
9763
|
+
stdin makes the session wait forever with no output, no error and no
|
|
9764
|
+
model request. The session Popen therefore has to pass
|
|
9765
|
+
stdin=subprocess.DEVNULL."""
|
|
9766
|
+
command = make_fake_pi(
|
|
9767
|
+
tmp_path, session_records=fake_session_records(),
|
|
9768
|
+
stdout="final answer",
|
|
9769
|
+
)
|
|
9770
|
+
captured: list[dict] = []
|
|
9771
|
+
real_popen = subprocess.Popen
|
|
9772
|
+
|
|
9773
|
+
def recording_popen(*args, **kwargs):
|
|
9774
|
+
captured.append(kwargs)
|
|
9775
|
+
return real_popen(*args, **kwargs)
|
|
9776
|
+
|
|
9777
|
+
monkeypatch.setattr(pi_process.subprocess, "Popen", recording_popen)
|
|
9778
|
+
result = pi_session.stream_pi(
|
|
9779
|
+
command,
|
|
9780
|
+
ctx=RunContext(run_id="deadbeef", issue=1562, branch="b",
|
|
9781
|
+
worktree=tmp_path, source_repo="xqliu/orbi"),
|
|
9782
|
+
watch=PiWatchOptions(poll_interval=0.1), cwd=tmp_path,
|
|
9783
|
+
)
|
|
9784
|
+
assert result == "final answer"
|
|
9785
|
+
assert captured, "stream_pi must start the Pi session through Popen"
|
|
9786
|
+
assert captured[0]["stdin"] is subprocess.DEVNULL
|
|
9787
|
+
|
|
9788
|
+
|
|
9755
9789
|
def test_stream_pi_hung_model_request_killed_when_upstream_gone(
|
|
9756
9790
|
tmp_path, caplog,
|
|
9757
9791
|
):
|
|
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
|