vis-agent 0.2.31__tar.gz → 0.2.32.dev7313__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.
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/PKG-INFO +1 -1
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/pyproject.toml +1 -1
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/_contracts.py +0 -1
- vis_agent-0.2.31/contracts/fixtures/plans.json +0 -117
- vis_agent-0.2.31/contracts/schema/plans.json +0 -79
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/.gitignore +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/LICENSE +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/README.md +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-arguments.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-cases.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-copy.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-execution.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-groups.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-read-session.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-reads.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-results.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity-tables.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/activity.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/diff.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/live-primitives.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/session-health.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/fixtures/view.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/activity.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/agents.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/automations.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/common.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/config.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/content.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/council.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/diff.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/gateway.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/improve.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/provider.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/rooms.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/symbol.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/toggle.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/contracts/schema/view.json +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/examples/greeter/tests/test_greeter.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/hatch_build.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/__init__.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/_outside.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/_wire.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/activity.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/__init__.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/_agent.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/_agents.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/_client.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/_council.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/_extensions.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/engine/_local.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/extension.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/extension_package.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/py.typed +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/rooms.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/src/blockether/vis/views.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/conftest.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_activity.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_agent.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_agent_extension_lifecycle.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_agent_extensions.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_agents.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_api_guides.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_authoring.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_catalog.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_catalog_recipe.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_ci_report_recipe.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_client.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_client_extensions_engine.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_code_quality_recipe.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_contracts.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_council.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_declarations.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_engine.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_engine_docstrings.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_extension_package.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_extension_reference.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_gateway_performance.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_goals.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_live_primitives.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_live_wait.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_local.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_method_typing.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_monitor_recipe.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_namespace.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_outside.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_providers.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_record_arguments.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_registration.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_repair_hooks.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_result_sequence.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_rooms.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_scoped_settings.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_sdk_bootstrap.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_sdk_guide.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_structured_live.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_symbol_contract.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_testing.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_tools.py +0 -0
- {vis_agent-0.2.31 → vis_agent-0.2.32.dev7313}/tests/test_views.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: vis-agent
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.32.dev7313
|
|
4
4
|
Summary: The Vis Python SDK — author extensions and control local or remote engines.
|
|
5
5
|
Project-URL: Homepage, https://vis.blockether.com
|
|
6
6
|
Project-URL: Documentation, https://vis.blockether.com
|
|
@@ -8,7 +8,7 @@ build-backend = "hatchling.build"
|
|
|
8
8
|
|
|
9
9
|
[project]
|
|
10
10
|
name = "vis-agent"
|
|
11
|
-
version = "0.2.
|
|
11
|
+
version = "0.2.32.dev7313"
|
|
12
12
|
description = "The Vis Python SDK — author extensions and control local or remote engines."
|
|
13
13
|
readme = "README.md"
|
|
14
14
|
requires-python = ">=3.11"
|
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"documents": [
|
|
3
|
-
{
|
|
4
|
-
"filename": "PLAN-search.md",
|
|
5
|
-
"text": "# Search\n\n**Feature:** search\n**Status:** ready\n\n## Spec\nFind sessions.\n",
|
|
6
|
-
"expected": {
|
|
7
|
-
"kind": "plan",
|
|
8
|
-
"feature": "search",
|
|
9
|
-
"status": "ready"
|
|
10
|
-
},
|
|
11
|
-
"actions": [
|
|
12
|
-
"approve"
|
|
13
|
-
]
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
"filename": "PLAN-search.md",
|
|
17
|
-
"text": "# Search\n**Feature:** search\n**Status:** accepted\n",
|
|
18
|
-
"expected": {
|
|
19
|
-
"kind": "plan",
|
|
20
|
-
"feature": "search",
|
|
21
|
-
"status": "accepted"
|
|
22
|
-
},
|
|
23
|
-
"actions": [
|
|
24
|
-
"approve"
|
|
25
|
-
]
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
"filename": "IMPLEMENTATION-search.md",
|
|
29
|
-
"text": "# Search\n**Feature:** search\n**Status:** implementing\n",
|
|
30
|
-
"expected": {
|
|
31
|
-
"kind": "implementation",
|
|
32
|
-
"feature": "search",
|
|
33
|
-
"status": "implementing"
|
|
34
|
-
},
|
|
35
|
-
"actions": []
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
"filename": "PLAN-search.md",
|
|
39
|
-
"text": "# Search\n**Feature:** search\n**Status:** in-review\n",
|
|
40
|
-
"expected": {
|
|
41
|
-
"kind": "plan",
|
|
42
|
-
"feature": "search",
|
|
43
|
-
"status": "in-review"
|
|
44
|
-
},
|
|
45
|
-
"actions": []
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
"filename": "notes.md",
|
|
49
|
-
"text": "# Search\n**Feature:** search\n**Status:** ready\n",
|
|
50
|
-
"expected": null,
|
|
51
|
-
"actions": []
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
"filename": "PLAN-search.md",
|
|
55
|
-
"text": "# Search\n**Feature:** other\n**Status:** ready\n",
|
|
56
|
-
"expected": null,
|
|
57
|
-
"actions": []
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
"filename": "PLAN-search.md",
|
|
61
|
-
"text": "# Search\n**Feature:** search\n**Status:** ready\n**Status:** accepted\n",
|
|
62
|
-
"expected": null,
|
|
63
|
-
"actions": []
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
"filename": "PLAN-search.md",
|
|
67
|
-
"text": "# Search\n## Spec\n**Feature:** search\n**Status:** ready\n",
|
|
68
|
-
"expected": null,
|
|
69
|
-
"actions": []
|
|
70
|
-
}
|
|
71
|
-
],
|
|
72
|
-
"annotations": [
|
|
73
|
-
{
|
|
74
|
-
"body": "# Plan\n\n## Resolved comments\n\n- **Whole document** — Earlier remark\n - Resolved in v2: Kept.",
|
|
75
|
-
"comments": [
|
|
76
|
-
{
|
|
77
|
-
"quote": "",
|
|
78
|
-
"body": "Keep the review separate."
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
"quote": "A “passage”\n here",
|
|
82
|
-
"body": "A\n decision."
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"rendered": "# Plan\n\n## Resolved comments\n\n- **Whole document** — Earlier remark\n - Resolved in v2: Kept.\n\n## Comments\n\n- **Whole document** — Keep the review separate.\n- **“A \"passage\" here”** — A decision.\n"
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"body": "# Plan\n\n",
|
|
89
|
-
"comments": [
|
|
90
|
-
{
|
|
91
|
-
"quote": "x",
|
|
92
|
-
"body": " "
|
|
93
|
-
}
|
|
94
|
-
],
|
|
95
|
-
"rendered": "# Plan\n"
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
"body": "# Plan",
|
|
99
|
-
"comments": [],
|
|
100
|
-
"rendered": "# Plan\n"
|
|
101
|
-
}
|
|
102
|
-
],
|
|
103
|
-
"unrecognized": [
|
|
104
|
-
"# Plan\n\n## Comments\n\nOrdinary prose.\n",
|
|
105
|
-
"# Plan\n\n## Resolved comments\n\nDecisions.\n"
|
|
106
|
-
],
|
|
107
|
-
"quotes": [
|
|
108
|
-
{
|
|
109
|
-
"input": " A “quote”\n with spaces ",
|
|
110
|
-
"expected": "A \"quote\" with spaces"
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
"input": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
|
|
114
|
-
"expected": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa…aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
|
115
|
-
}
|
|
116
|
-
]
|
|
117
|
-
}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://contract.blockether.com/vis/schema/plans.json",
|
|
4
|
-
"$ref": "#/$defs/document",
|
|
5
|
-
"$defs": {
|
|
6
|
-
"filename": {
|
|
7
|
-
"type": "string",
|
|
8
|
-
"pattern": "^(PLAN|IMPLEMENTATION)-([a-z0-9]+(?:-[a-z0-9]+)*)\\.md$"
|
|
9
|
-
},
|
|
10
|
-
"status": {
|
|
11
|
-
"type": "string",
|
|
12
|
-
"enum": [
|
|
13
|
-
"draft",
|
|
14
|
-
"in-review",
|
|
15
|
-
"ready",
|
|
16
|
-
"accepted",
|
|
17
|
-
"implementing",
|
|
18
|
-
"done"
|
|
19
|
-
]
|
|
20
|
-
},
|
|
21
|
-
"document": {
|
|
22
|
-
"type": "object",
|
|
23
|
-
"additionalProperties": false,
|
|
24
|
-
"required": [
|
|
25
|
-
"kind",
|
|
26
|
-
"feature",
|
|
27
|
-
"status"
|
|
28
|
-
],
|
|
29
|
-
"properties": {
|
|
30
|
-
"kind": {
|
|
31
|
-
"enum": [
|
|
32
|
-
"plan",
|
|
33
|
-
"implementation"
|
|
34
|
-
]
|
|
35
|
-
},
|
|
36
|
-
"feature": {
|
|
37
|
-
"type": "string",
|
|
38
|
-
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
|
|
39
|
-
},
|
|
40
|
-
"status": {
|
|
41
|
-
"$ref": "#/$defs/status"
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
"action": {
|
|
46
|
-
"oneOf": [
|
|
47
|
-
{
|
|
48
|
-
"const": "revise",
|
|
49
|
-
"x-vis-request": "Revise this document, resolve every human comment and attach the next version under the same filename. Do not implement or change project files."
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"const": "approve",
|
|
53
|
-
"x-vis-request": "I approve this specification and its implementation plan. Start implementation now. Check that this is the latest version, its status is ready or accepted, and no questions or comments remain before editing. If not, stop and explain what needs review. Otherwise start implementation of this exact reviewed scope, keep the versioned implementation record current and follow existing verification and permission rules."
|
|
54
|
-
}
|
|
55
|
-
]
|
|
56
|
-
},
|
|
57
|
-
"action_request": {
|
|
58
|
-
"type": "object",
|
|
59
|
-
"additionalProperties": false,
|
|
60
|
-
"required": [
|
|
61
|
-
"filename",
|
|
62
|
-
"version",
|
|
63
|
-
"action"
|
|
64
|
-
],
|
|
65
|
-
"properties": {
|
|
66
|
-
"filename": {
|
|
67
|
-
"$ref": "#/$defs/filename"
|
|
68
|
-
},
|
|
69
|
-
"version": {
|
|
70
|
-
"type": "integer",
|
|
71
|
-
"minimum": 1
|
|
72
|
-
},
|
|
73
|
-
"action": {
|
|
74
|
-
"$ref": "#/$defs/action"
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|