mbu-dev-shared-components 3.0.4__tar.gz → 4.0.1__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.
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/PKG-INFO +24 -11
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/database/connection.py +7 -1
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/database/utility.py +4 -2
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/utils/fernet_encryptor.py +2 -2
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components.egg-info/PKG-INFO +24 -11
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components.egg-info/requires.txt +31 -10
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/pyproject.toml +32 -10
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/LICENSE +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/README.md +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/database/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/database/constants.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/database/logging.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/getorganized/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/getorganized/auth.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/getorganized/cases.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/getorganized/contacts.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/getorganized/documents.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/getorganized/objects.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/google/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/google/api/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/google/api/auth.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/google/workspace/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/google/workspace/alerts.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/msoffice365/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/msoffice365/excel/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/msoffice365/excel/excel_reader.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/msoffice365/sharepoint_api/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/msoffice365/sharepoint_api/files.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/os2forms/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/os2forms/documents.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/os2forms/forms.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/romexis/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/romexis/db_handler.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/romexis/helper_functions.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/sap/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/sap/create_invoice.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/app_handler.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/appointment.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/base_ui.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/clinic.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/document.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/edi_portal.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/event.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/exceptions.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/handler_base.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/journal_note.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/application/patient.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/database/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/solteqtand/database/db_handler.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/utils/__init__.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/utils/db_stored_procedure_executor.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/utils/file_handler.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components/utils/json_handler.py +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components.egg-info/SOURCES.txt +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components.egg-info/dependency_links.txt +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/mbu_dev_shared_components.egg-info/top_level.txt +0 -0
- {mbu_dev_shared_components-3.0.4 → mbu_dev_shared_components-4.0.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mbu_dev_shared_components
|
|
3
|
-
Version:
|
|
3
|
+
Version: 4.0.1
|
|
4
4
|
Summary: Shared components to use in RPA projects
|
|
5
5
|
Author-email: MBU <rpa@mbu.aarhus.dk>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -9,18 +9,31 @@ Classifier: Operating System :: Microsoft :: Windows
|
|
|
9
9
|
Requires-Python: >=3.7
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
License-File: LICENSE
|
|
12
|
-
Requires-Dist:
|
|
12
|
+
Requires-Dist: cryptography>=43.0.0
|
|
13
13
|
Requires-Dist: pyodbc>=5.1.0
|
|
14
|
-
Requires-Dist: requests_ntlm>=1.2.0
|
|
15
14
|
Requires-Dist: python-dateutil==2.9.*
|
|
16
|
-
|
|
17
|
-
Requires-Dist:
|
|
18
|
-
|
|
19
|
-
Requires-Dist:
|
|
20
|
-
|
|
21
|
-
Requires-Dist:
|
|
22
|
-
Requires-Dist: pandas>=2.2.3
|
|
23
|
-
Requires-Dist:
|
|
15
|
+
Provides-Extra: getorganized
|
|
16
|
+
Requires-Dist: requests_ntlm>=1.2.0; extra == "getorganized"
|
|
17
|
+
Provides-Extra: google
|
|
18
|
+
Requires-Dist: requests; extra == "google"
|
|
19
|
+
Provides-Extra: msoffice
|
|
20
|
+
Requires-Dist: openpyxl>=3.1.2; extra == "msoffice"
|
|
21
|
+
Requires-Dist: pandas>=2.2.3; extra == "msoffice"
|
|
22
|
+
Requires-Dist: office365-rest-python-client; extra == "msoffice"
|
|
23
|
+
Provides-Extra: os2forms
|
|
24
|
+
Requires-Dist: requests; extra == "os2forms"
|
|
25
|
+
Provides-Extra: romexis
|
|
26
|
+
Requires-Dist: pyodbc>=5.1.0; extra == "romexis"
|
|
27
|
+
Requires-Dist: pillow; extra == "romexis"
|
|
28
|
+
Requires-Dist: rawpy; extra == "romexis"
|
|
29
|
+
Requires-Dist: numpy; extra == "romexis"
|
|
30
|
+
Provides-Extra: sap
|
|
31
|
+
Provides-Extra: solteqtand
|
|
32
|
+
Requires-Dist: uiautomation; extra == "solteqtand"
|
|
33
|
+
Requires-Dist: pyodbc>=5.1.0; extra == "solteqtand"
|
|
34
|
+
Provides-Extra: utils
|
|
35
|
+
Requires-Dist: python-dateutil==2.9.*; extra == "utils"
|
|
36
|
+
Requires-Dist: cryptography>=43.0.0; extra == "utils"
|
|
24
37
|
Provides-Extra: dev
|
|
25
38
|
Requires-Dist: pylint; extra == "dev"
|
|
26
39
|
Requires-Dist: flake8; extra == "dev"
|
|
@@ -10,7 +10,13 @@ class RPAConnection(
|
|
|
10
10
|
Utility,
|
|
11
11
|
Log,
|
|
12
12
|
):
|
|
13
|
-
"""Class for running database related
|
|
13
|
+
"""Class for running database related functions.
|
|
14
|
+
Needs to be used in with-statement like:
|
|
15
|
+
rpa_conn = RPAConnection(db_env="PROD", commit=True)
|
|
16
|
+
with rpa_conn:
|
|
17
|
+
rpa_conn.add_constant("Constant name", "Constant value")
|
|
18
|
+
Initializes database connection when entering with statement
|
|
19
|
+
Handles commit or rollback when exiting with statement"""
|
|
14
20
|
def __init__(self, db_env: str = "PROD", commit: bool | str = False):
|
|
15
21
|
Constants.__init__(self)
|
|
16
22
|
Utility.__init__(self)
|
|
@@ -5,6 +5,7 @@ import json
|
|
|
5
5
|
from typing import Dict, Union, Tuple, Any
|
|
6
6
|
from dateutil import parser
|
|
7
7
|
import pyodbc
|
|
8
|
+
from dotenv import load_dotenv
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
class Utility:
|
|
@@ -15,6 +16,7 @@ class Utility:
|
|
|
15
16
|
Returns:
|
|
16
17
|
rpa_conn (pyodbc.Connection): The connection object to the SQL database.
|
|
17
18
|
"""
|
|
19
|
+
load_dotenv()
|
|
18
20
|
connection_env = self.fetch_env(db_env)
|
|
19
21
|
rpa_conn_string = os.getenv(connection_env)
|
|
20
22
|
rpa_conn = pyodbc.connect(rpa_conn_string, autocommit=autocommit)
|
|
@@ -42,10 +44,10 @@ class Utility:
|
|
|
42
44
|
def fetch_env(self, db_env):
|
|
43
45
|
"""Get env variable based on context, PROD or TEST"""
|
|
44
46
|
if db_env.upper() == "PROD":
|
|
45
|
-
connection_env = "
|
|
47
|
+
connection_env = "DBCONNECTIONSTRINGPROD"
|
|
46
48
|
return connection_env
|
|
47
49
|
if db_env.upper() == "TEST":
|
|
48
|
-
connection_env = "
|
|
50
|
+
connection_env = "DBCONNECTIONSTRINGUDV"
|
|
49
51
|
return connection_env
|
|
50
52
|
|
|
51
53
|
raise ValueError(f"arg db_env is {db_env.upper()} but should be 'PROD' or 'TEST'")
|
|
@@ -15,9 +15,9 @@ class Encryptor:
|
|
|
15
15
|
"""
|
|
16
16
|
|
|
17
17
|
def __init__(self):
|
|
18
|
-
self.key = os.getenv("
|
|
18
|
+
self.key = os.getenv("OPENORCHESTRATORKEY")
|
|
19
19
|
if not self.key:
|
|
20
|
-
raise ValueError("Environment variable '
|
|
20
|
+
raise ValueError("Environment variable 'OPENORCHESTRATORKEY' is not set or is empty.")
|
|
21
21
|
self.cipher_suite = self.generate_cipher_suite()
|
|
22
22
|
|
|
23
23
|
def generate_cipher_suite(self) -> Fernet:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mbu_dev_shared_components
|
|
3
|
-
Version:
|
|
3
|
+
Version: 4.0.1
|
|
4
4
|
Summary: Shared components to use in RPA projects
|
|
5
5
|
Author-email: MBU <rpa@mbu.aarhus.dk>
|
|
6
6
|
License-Expression: MIT
|
|
@@ -9,18 +9,31 @@ Classifier: Operating System :: Microsoft :: Windows
|
|
|
9
9
|
Requires-Python: >=3.7
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
License-File: LICENSE
|
|
12
|
-
Requires-Dist:
|
|
12
|
+
Requires-Dist: cryptography>=43.0.0
|
|
13
13
|
Requires-Dist: pyodbc>=5.1.0
|
|
14
|
-
Requires-Dist: requests_ntlm>=1.2.0
|
|
15
14
|
Requires-Dist: python-dateutil==2.9.*
|
|
16
|
-
|
|
17
|
-
Requires-Dist:
|
|
18
|
-
|
|
19
|
-
Requires-Dist:
|
|
20
|
-
|
|
21
|
-
Requires-Dist:
|
|
22
|
-
Requires-Dist: pandas>=2.2.3
|
|
23
|
-
Requires-Dist:
|
|
15
|
+
Provides-Extra: getorganized
|
|
16
|
+
Requires-Dist: requests_ntlm>=1.2.0; extra == "getorganized"
|
|
17
|
+
Provides-Extra: google
|
|
18
|
+
Requires-Dist: requests; extra == "google"
|
|
19
|
+
Provides-Extra: msoffice
|
|
20
|
+
Requires-Dist: openpyxl>=3.1.2; extra == "msoffice"
|
|
21
|
+
Requires-Dist: pandas>=2.2.3; extra == "msoffice"
|
|
22
|
+
Requires-Dist: office365-rest-python-client; extra == "msoffice"
|
|
23
|
+
Provides-Extra: os2forms
|
|
24
|
+
Requires-Dist: requests; extra == "os2forms"
|
|
25
|
+
Provides-Extra: romexis
|
|
26
|
+
Requires-Dist: pyodbc>=5.1.0; extra == "romexis"
|
|
27
|
+
Requires-Dist: pillow; extra == "romexis"
|
|
28
|
+
Requires-Dist: rawpy; extra == "romexis"
|
|
29
|
+
Requires-Dist: numpy; extra == "romexis"
|
|
30
|
+
Provides-Extra: sap
|
|
31
|
+
Provides-Extra: solteqtand
|
|
32
|
+
Requires-Dist: uiautomation; extra == "solteqtand"
|
|
33
|
+
Requires-Dist: pyodbc>=5.1.0; extra == "solteqtand"
|
|
34
|
+
Provides-Extra: utils
|
|
35
|
+
Requires-Dist: python-dateutil==2.9.*; extra == "utils"
|
|
36
|
+
Requires-Dist: cryptography>=43.0.0; extra == "utils"
|
|
24
37
|
Provides-Extra: dev
|
|
25
38
|
Requires-Dist: pylint; extra == "dev"
|
|
26
39
|
Requires-Dist: flake8; extra == "dev"
|
|
@@ -1,15 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
cryptography>=43.0.0
|
|
2
2
|
pyodbc>=5.1.0
|
|
3
|
-
requests_ntlm>=1.2.0
|
|
4
3
|
python-dateutil==2.9.*
|
|
5
|
-
cryptography>=43.0.0
|
|
6
|
-
office365-rest-python-client
|
|
7
|
-
uiautomation
|
|
8
|
-
pillow
|
|
9
|
-
psutil
|
|
10
|
-
docx2pdf
|
|
11
|
-
pandas>=2.2.3
|
|
12
|
-
rawpy
|
|
13
4
|
|
|
14
5
|
[dev]
|
|
15
6
|
pylint
|
|
@@ -17,3 +8,33 @@ flake8
|
|
|
17
8
|
pytest-json-report
|
|
18
9
|
pytest>=7.0
|
|
19
10
|
pytest-dependency>=0.5.1
|
|
11
|
+
|
|
12
|
+
[getorganized]
|
|
13
|
+
requests_ntlm>=1.2.0
|
|
14
|
+
|
|
15
|
+
[google]
|
|
16
|
+
requests
|
|
17
|
+
|
|
18
|
+
[msoffice]
|
|
19
|
+
openpyxl>=3.1.2
|
|
20
|
+
pandas>=2.2.3
|
|
21
|
+
office365-rest-python-client
|
|
22
|
+
|
|
23
|
+
[os2forms]
|
|
24
|
+
requests
|
|
25
|
+
|
|
26
|
+
[romexis]
|
|
27
|
+
pyodbc>=5.1.0
|
|
28
|
+
pillow
|
|
29
|
+
rawpy
|
|
30
|
+
numpy
|
|
31
|
+
|
|
32
|
+
[sap]
|
|
33
|
+
|
|
34
|
+
[solteqtand]
|
|
35
|
+
uiautomation
|
|
36
|
+
pyodbc>=5.1.0
|
|
37
|
+
|
|
38
|
+
[utils]
|
|
39
|
+
python-dateutil==2.9.*
|
|
40
|
+
cryptography>=43.0.0
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "mbu_dev_shared_components"
|
|
7
|
-
version = "
|
|
7
|
+
version = "4.0.1"
|
|
8
8
|
authors = [
|
|
9
9
|
{ name="MBU", email="rpa@mbu.aarhus.dk" },
|
|
10
10
|
]
|
|
@@ -17,21 +17,43 @@ classifiers = [
|
|
|
17
17
|
]
|
|
18
18
|
license = "MIT"
|
|
19
19
|
dependencies = [
|
|
20
|
-
"
|
|
20
|
+
"cryptography >= 43.0.0",
|
|
21
21
|
"pyodbc >= 5.1.0",
|
|
22
|
-
"requests_ntlm >= 1.2.0",
|
|
23
22
|
"python-dateutil == 2.9.*",
|
|
24
|
-
|
|
23
|
+
]
|
|
24
|
+
|
|
25
|
+
[project.optional-dependencies]
|
|
26
|
+
getorganized = [
|
|
27
|
+
"requests_ntlm >= 1.2.0",
|
|
28
|
+
]
|
|
29
|
+
google = [
|
|
30
|
+
"requests",
|
|
31
|
+
]
|
|
32
|
+
msoffice = [
|
|
33
|
+
"openpyxl >= 3.1.2",
|
|
34
|
+
"pandas >= 2.2.3",
|
|
25
35
|
"office365-rest-python-client",
|
|
26
|
-
|
|
36
|
+
]
|
|
37
|
+
os2forms = [
|
|
38
|
+
"requests",
|
|
39
|
+
]
|
|
40
|
+
romexis = [
|
|
41
|
+
"pyodbc >= 5.1.0",
|
|
27
42
|
"pillow",
|
|
28
|
-
"psutil",
|
|
29
|
-
"docx2pdf",
|
|
30
|
-
"pandas >= 2.2.3",
|
|
31
43
|
"rawpy",
|
|
44
|
+
"numpy",
|
|
45
|
+
]
|
|
46
|
+
sap = [
|
|
47
|
+
# no dependencies
|
|
48
|
+
]
|
|
49
|
+
solteqtand = [
|
|
50
|
+
"uiautomation",
|
|
51
|
+
"pyodbc >= 5.1.0",
|
|
52
|
+
]
|
|
53
|
+
utils = [
|
|
54
|
+
"python-dateutil == 2.9.*",
|
|
55
|
+
"cryptography >= 43.0.0",
|
|
32
56
|
]
|
|
33
|
-
|
|
34
|
-
[project.optional-dependencies]
|
|
35
57
|
dev = [
|
|
36
58
|
"pylint",
|
|
37
59
|
"flake8",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|