PyOptik 1.10.1__tar.gz → 1.10.4__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.
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PKG-INFO +2 -2
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/_version.py +2 -2
- pyoptik-1.10.4/PyOptik/utils.py +45 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik.egg-info/PKG-INFO +2 -2
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik.egg-info/requires.txt +1 -1
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/conf.py +0 -1
- {pyoptik-1.10.1 → pyoptik-1.10.4}/meta.yaml +1 -1
- {pyoptik-1.10.1 → pyoptik-1.10.4}/pyproject.toml +1 -1
- {pyoptik-1.10.1 → pyoptik-1.10.4}/tests/test_utils.py +8 -10
- pyoptik-1.10.1/PyOptik/utils.py +0 -45
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.flake8 +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.github/dependabot.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.github/workflows/deploy_PyPi.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.github/workflows/deploy_anaconda.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.github/workflows/deploy_coverage.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.github/workflows/deploy_documentation.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.gitignore +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/.readthedocs.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/LICENSE +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/__init__.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/__main__.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/__init__.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/BAF10.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/BAK1.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/FK51A.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/LASF9.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/SF10.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/SF11.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/SF5.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/ZBLAN.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/acetone.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/acetylene.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/air.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/argon.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/cellulose.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/crown.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/ethane.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/ethanol.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/ethylene.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/flint.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/fused_silica.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/germanium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/glycerol.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/lithium_niobate.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/methane.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/methanol.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/polycarbonate.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/polystyren.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/polystyrene.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/propanol.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/pvc.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/soda_lime_glass.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/sellmeier/water.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/BK7.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/aluminium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/bismuth.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/calcium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/chromium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/copper.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/gold.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/iron.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/lead.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/magnesium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/nickel.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/paladium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/polyetylene.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/pva.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/rhodium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/silicon.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/silver.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/sodium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/tantalum.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/titanium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/tungsten.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/vanadium.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/data/tabulated/zinc.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/directories.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/__init__.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/classics.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/dielectrics.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/metals.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/minimal.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/organics.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/others.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/polymers.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/libraries/repertoire.yml +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/material/__init__.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/material/base_class.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/material/sellmeier_class.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/material/tabulated_class.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/material_bank.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/material_type.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik/units.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik.egg-info/SOURCES.txt +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik.egg-info/dependency_links.txt +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/PyOptik.egg-info/top_level.txt +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/README.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/development/dev_0.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/Makefile +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/README.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/sellmeier/README.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/sellmeier/plot_bk7.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/sellmeier/plot_silica.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/sellmeier/plot_water.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/tabulated/README.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/tabulated/plot_sf5.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/tabulated/plot_silver.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/utils/README.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/utils/__download_yml_file.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/utils/build_library.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/utils/create_sellmeier_file.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/examples/utils/create_tabulated_file.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/images/example_bk7.png +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/images/logo.png +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/make.bat +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/_static/default.css +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/_static/thumbnail.png +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/code.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/gallery/index.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/index.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/docs/source/references.rst +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/setup.cfg +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/tests/__init__.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/tests/test_sellmeier.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/tests/test_tabulated.py +0 -0
- {pyoptik-1.10.1 → pyoptik-1.10.4}/tests/test_usual_material.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyOptik
|
|
3
|
-
Version: 1.10.
|
|
3
|
+
Version: 1.10.4
|
|
4
4
|
Summary: A package for refractive index values.
|
|
5
5
|
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -43,7 +43,7 @@ Requires-Dist: numpy
|
|
|
43
43
|
Requires-Dist: matplotlib~=3.8
|
|
44
44
|
Requires-Dist: requests~=2.31
|
|
45
45
|
Requires-Dist: pyyaml~=6.0
|
|
46
|
-
Requires-Dist: MPSPlots
|
|
46
|
+
Requires-Dist: MPSPlots>=1.6
|
|
47
47
|
Requires-Dist: tabulate~=0.9
|
|
48
48
|
Provides-Extra: testing
|
|
49
49
|
Requires-Dist: pytest<9.0,>=7.4; extra == "testing"
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
from PyOptik.directories import sellmeier_data_path, tabulated_data_path
|
|
2
|
+
from PyOptik.material_type import MaterialType
|
|
3
|
+
import requests
|
|
4
|
+
import logging
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
logging.basicConfig(
|
|
8
|
+
level=logging.INFO,
|
|
9
|
+
format="%(asctime)s %(levelname)s %(message)s",
|
|
10
|
+
)
|
|
11
|
+
|
|
12
|
+
def download_yml_file(url: str, filename: str, location: MaterialType) -> None:
|
|
13
|
+
"""
|
|
14
|
+
Downloads a .yml file from a specified URL and saves it locally.
|
|
15
|
+
"""
|
|
16
|
+
match location:
|
|
17
|
+
case MaterialType.SELLMEIER:
|
|
18
|
+
file_path = sellmeier_data_path / f"{filename}.yml"
|
|
19
|
+
case MaterialType.TABULATED:
|
|
20
|
+
file_path = tabulated_data_path / f"{filename}.yml"
|
|
21
|
+
case _:
|
|
22
|
+
raise ValueError(f"Location [{location}] is invalid, it can be either MaterialType.SELLMEIER or MaterialType.TABULATED")
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
logging.info(f"Starting download of {url!r} → {file_path!s}")
|
|
26
|
+
try:
|
|
27
|
+
response = requests.get(url, timeout=10)
|
|
28
|
+
logging.info(f"Received response: HTTP {response.status_code}")
|
|
29
|
+
response.raise_for_status()
|
|
30
|
+
|
|
31
|
+
file_path.parent.mkdir(parents=True, exist_ok=True)
|
|
32
|
+
|
|
33
|
+
with open(file_path, "wb") as f:
|
|
34
|
+
f.write(response.content)
|
|
35
|
+
logging.info(f"File downloaded and saved to {file_path}")
|
|
36
|
+
|
|
37
|
+
except requests.exceptions.Timeout as e:
|
|
38
|
+
logging.error(f"Timeout after 10 s when fetching {url!r}: {e}")
|
|
39
|
+
raise
|
|
40
|
+
except requests.exceptions.HTTPError as e:
|
|
41
|
+
logging.error(f"HTTP error while fetching {url!r}: {e}")
|
|
42
|
+
raise
|
|
43
|
+
except Exception as e:
|
|
44
|
+
logging.error(f"Unexpected error: {e}")
|
|
45
|
+
raise
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyOptik
|
|
3
|
-
Version: 1.10.
|
|
3
|
+
Version: 1.10.4
|
|
4
4
|
Summary: A package for refractive index values.
|
|
5
5
|
Author-email: Martin Poinsinet de Sivry-Houle <martin.poinsinet.de.sivry@gmail.com>
|
|
6
6
|
License: MIT License
|
|
@@ -43,7 +43,7 @@ Requires-Dist: numpy
|
|
|
43
43
|
Requires-Dist: matplotlib~=3.8
|
|
44
44
|
Requires-Dist: requests~=2.31
|
|
45
45
|
Requires-Dist: pyyaml~=6.0
|
|
46
|
-
Requires-Dist: MPSPlots
|
|
46
|
+
Requires-Dist: MPSPlots>=1.6
|
|
47
47
|
Requires-Dist: tabulate~=0.9
|
|
48
48
|
Provides-Extra: testing
|
|
49
49
|
Requires-Dist: pytest<9.0,>=7.4; extra == "testing"
|
|
@@ -154,15 +154,13 @@ def test_create_custom_tabulated_file():
|
|
|
154
154
|
)
|
|
155
155
|
|
|
156
156
|
|
|
157
|
-
def
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
assert 'An error occurred' in caplog.text, "Warning was not raised: {caplog.text}"
|
|
165
|
-
|
|
157
|
+
def _test_download_yml_file_http_error_log(caplog):
|
|
158
|
+
with pytest.raises(ValueError):
|
|
159
|
+
download_yml_file(
|
|
160
|
+
filename='example_download',
|
|
161
|
+
url='__invalid_url__.com',
|
|
162
|
+
location=MaterialType.SELLMEIER
|
|
163
|
+
)
|
|
166
164
|
|
|
167
165
|
if __name__ == "__main__":
|
|
168
|
-
pytest.main(["-W error", __file__])
|
|
166
|
+
pytest.main(["-W error", "-s", __file__])
|
pyoptik-1.10.1/PyOptik/utils.py
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import requests
|
|
2
|
-
import logging
|
|
3
|
-
from PyOptik.directories import sellmeier_data_path, tabulated_data_path
|
|
4
|
-
from PyOptik.material_type import MaterialType
|
|
5
|
-
|
|
6
|
-
def download_yml_file(url: str, filename: str, location: MaterialType) -> None:
|
|
7
|
-
"""
|
|
8
|
-
Downloads a .yml file from a specified URL and saves it locally.
|
|
9
|
-
|
|
10
|
-
Parameters
|
|
11
|
-
----------
|
|
12
|
-
url : str
|
|
13
|
-
The URL of the .yml file to download.
|
|
14
|
-
save_path : str
|
|
15
|
-
The local path where the .yml file should be saved.
|
|
16
|
-
|
|
17
|
-
Raises
|
|
18
|
-
------
|
|
19
|
-
HTTPError: If the download fails due to an HTTP error.
|
|
20
|
-
"""
|
|
21
|
-
match location:
|
|
22
|
-
case MaterialType.SELLMEIER:
|
|
23
|
-
file_path = sellmeier_data_path / f"{filename}.yml"
|
|
24
|
-
case MaterialType.TABULATED:
|
|
25
|
-
file_path = tabulated_data_path / f"{filename}.yml"
|
|
26
|
-
case _:
|
|
27
|
-
raise ValueError(f"Location [{location}] is invalid, it can be either MaterialType.SELLMEIER or MaterialType.TABULATED")
|
|
28
|
-
|
|
29
|
-
try:
|
|
30
|
-
# Send a GET request to the URL
|
|
31
|
-
response = requests.get(url)
|
|
32
|
-
response.raise_for_status() # Raise an error for bad status codes
|
|
33
|
-
|
|
34
|
-
# Save the content of the response as a file
|
|
35
|
-
file_path.parent.mkdir(parents=True, exist_ok=True) # Create directories if they don't exist
|
|
36
|
-
|
|
37
|
-
with open(file_path, 'wb') as file:
|
|
38
|
-
file.write(response.content)
|
|
39
|
-
|
|
40
|
-
logging.info(f"File downloaded and saved to {file_path}")
|
|
41
|
-
|
|
42
|
-
except requests.exceptions.HTTPError as http_err:
|
|
43
|
-
logging.warning(f"HTTP error occurred: {http_err}")
|
|
44
|
-
except Exception as err:
|
|
45
|
-
logging.error(f"An error occurred: {err}")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|