pygpt-net 2.5.0__py3-none-any.whl → 2.5.1__py3-none-any.whl
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.
- CHANGELOG.md +5 -0
- README.md +6 -1
- pygpt_net/CHANGELOG.txt +5 -0
- pygpt_net/__init__.py +4 -3
- pygpt_net/app.py +5 -0
- pygpt_net/controller/dialogs/info.py +4 -0
- pygpt_net/data/config/config.json +3 -3
- pygpt_net/data/config/models.json +3 -3
- pygpt_net/data/config/modes.json +3 -3
- pygpt_net/data/locale/locale.en.ini +1 -0
- pygpt_net/ui/menu/about.py +5 -0
- pygpt_net/utils.py +2 -1
- {pygpt_net-2.5.0.dist-info → pygpt_net-2.5.1.dist-info}/METADATA +10 -5
- {pygpt_net-2.5.0.dist-info → pygpt_net-2.5.1.dist-info}/RECORD +17 -17
- {pygpt_net-2.5.0.dist-info → pygpt_net-2.5.1.dist-info}/LICENSE +0 -0
- {pygpt_net-2.5.0.dist-info → pygpt_net-2.5.1.dist-info}/WHEEL +0 -0
- {pygpt_net-2.5.0.dist-info → pygpt_net-2.5.1.dist-info}/entry_points.txt +0 -0
CHANGELOG.md
CHANGED
README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
[](https://snapcraft.io/pygpt)
|
4
4
|
|
5
|
-
Release: **2.5.
|
5
|
+
Release: **2.5.1** | build: **2025.02.01** | Python: **>=3.10, <3.13**
|
6
6
|
|
7
7
|
> Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
|
8
8
|
>
|
@@ -3960,6 +3960,11 @@ may consume additional tokens that are not displayed in the main window.
|
|
3960
3960
|
|
3961
3961
|
## Recent changes:
|
3962
3962
|
|
3963
|
+
**2.5.1 (2025-02-01)**
|
3964
|
+
|
3965
|
+
- PySide6 upgraded to 6.6.2.
|
3966
|
+
- Disabled Transformers startup warnings.
|
3967
|
+
|
3963
3968
|
**2.5.0 (2025-01-31)**
|
3964
3969
|
|
3965
3970
|
- Added provider for DeepSeek (in Chat with Files mode, beta).
|
pygpt_net/CHANGELOG.txt
CHANGED
pygpt_net/__init__.py
CHANGED
@@ -6,15 +6,15 @@
|
|
6
6
|
# GitHub: https://github.com/szczyglis-dev/py-gpt #
|
7
7
|
# MIT License #
|
8
8
|
# Created By : Marcin Szczygliński #
|
9
|
-
# Updated Date: 2025.01
|
9
|
+
# Updated Date: 2025.02.01 02:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
12
|
__author__ = "Marcin Szczygliński"
|
13
13
|
__copyright__ = "Copyright 2025, Marcin Szczygliński"
|
14
14
|
__credits__ = ["Marcin Szczygliński"]
|
15
15
|
__license__ = "MIT"
|
16
|
-
__version__ = "2.5.
|
17
|
-
__build__ = "2025.01
|
16
|
+
__version__ = "2.5.1"
|
17
|
+
__build__ = "2025.02.01"
|
18
18
|
__maintainer__ = "Marcin Szczygliński"
|
19
19
|
__github__ = "https://github.com/szczyglis-dev/py-gpt"
|
20
20
|
__report__ = "https://github.com/szczyglis-dev/py-gpt/issues"
|
@@ -24,6 +24,7 @@ __snap__ = "https://snapcraft.io/pygpt"
|
|
24
24
|
__donate__ = "https://pygpt.net/#donate"
|
25
25
|
__documentation__ = "https://pygpt.readthedocs.io"
|
26
26
|
__discord__ = "https://pygpt.net/discord"
|
27
|
+
__ms_store__ = "https://apps.microsoft.com/detail/xp99r4mx3x65vq"
|
27
28
|
__email__ = "info@pygpt.net"
|
28
29
|
__donate_coffee__ = "https://pygpt.net/donate/buymeacoffee"
|
29
30
|
__donate_paypal__ = "https://pygpt.net/donate/paypal"
|
pygpt_net/app.py
CHANGED
@@ -9,6 +9,11 @@
|
|
9
9
|
# Updated Date: 2025.01.31 19:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
|
+
import os
|
13
|
+
|
14
|
+
# disable warnings
|
15
|
+
os.environ["TRANSFORMERS_NO_ADVISORY_WARNINGS"] = "1"
|
16
|
+
|
12
17
|
from pygpt_net.launcher import Launcher
|
13
18
|
|
14
19
|
# plugins
|
@@ -81,6 +81,10 @@ class Info:
|
|
81
81
|
"""Open Snapcraft page"""
|
82
82
|
webbrowser.open(self.window.meta['snap'])
|
83
83
|
|
84
|
+
def goto_ms_store(self):
|
85
|
+
"""Open MS Store page"""
|
86
|
+
webbrowser.open(self.window.meta['ms_store'])
|
87
|
+
|
84
88
|
def goto_update(self):
|
85
89
|
"""Open update URL"""
|
86
90
|
webbrowser.open(self.window.meta['website'])
|
@@ -1,8 +1,8 @@
|
|
1
1
|
{
|
2
2
|
"__meta__": {
|
3
|
-
"version": "2.5.
|
4
|
-
"app.version": "2.5.
|
5
|
-
"updated_at": "2025-
|
3
|
+
"version": "2.5.1",
|
4
|
+
"app.version": "2.5.1",
|
5
|
+
"updated_at": "2025-02-01T00:00:00"
|
6
6
|
},
|
7
7
|
"access.audio.event.speech": false,
|
8
8
|
"access.audio.event.speech.disabled": [],
|
pygpt_net/data/config/modes.json
CHANGED
@@ -734,6 +734,7 @@ menu.info.docs = Documentation
|
|
734
734
|
menu.info.donate = Donate PyGPT
|
735
735
|
menu.info.github = GitHub
|
736
736
|
menu.info.license = License
|
737
|
+
menu.info.ms_store = Microsoft Store
|
737
738
|
menu.info.pypi = PyPi
|
738
739
|
menu.info.report = Report a bug
|
739
740
|
menu.info.snap = Snap Store
|
pygpt_net/ui/menu/about.py
CHANGED
@@ -43,6 +43,8 @@ class About:
|
|
43
43
|
self.window)
|
44
44
|
self.window.ui.menu['info.snap'] = QAction(QIcon(":/icons/public_filled.svg"), trans("menu.info.snap"),
|
45
45
|
self.window)
|
46
|
+
self.window.ui.menu['info.ms_store'] = QAction(QIcon(":/icons/public_filled.svg"), trans("menu.info.ms_store"),
|
47
|
+
self.window)
|
46
48
|
self.window.ui.menu['info.github'] = QAction(QIcon(":/icons/public_filled.svg"), trans("menu.info.github"),
|
47
49
|
self.window)
|
48
50
|
|
@@ -68,6 +70,8 @@ class About:
|
|
68
70
|
lambda: self.window.controller.dialogs.info.goto_pypi())
|
69
71
|
self.window.ui.menu['info.snap'].triggered.connect(
|
70
72
|
lambda: self.window.controller.dialogs.info.goto_snap())
|
73
|
+
self.window.ui.menu['info.ms_store'].triggered.connect(
|
74
|
+
lambda: self.window.controller.dialogs.info.goto_ms_store())
|
71
75
|
self.window.ui.menu['info.github'].triggered.connect(
|
72
76
|
lambda: self.window.controller.dialogs.info.goto_github())
|
73
77
|
self.window.ui.menu['info.discord'].triggered.connect(
|
@@ -89,5 +93,6 @@ class About:
|
|
89
93
|
self.window.ui.menu['menu.about'].addAction(self.window.ui.menu['info.github'])
|
90
94
|
self.window.ui.menu['menu.about'].addAction(self.window.ui.menu['info.pypi'])
|
91
95
|
self.window.ui.menu['menu.about'].addAction(self.window.ui.menu['info.snap'])
|
96
|
+
self.window.ui.menu['menu.about'].addAction(self.window.ui.menu['info.ms_store'])
|
92
97
|
self.window.ui.menu['menu.about'].addAction(self.window.ui.menu['info.discord'])
|
93
98
|
self.window.ui.menu['menu.about'].addAction(self.window.ui.menu['info.license'])
|
pygpt_net/utils.py
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
# GitHub: https://github.com/szczyglis-dev/py-gpt #
|
7
7
|
# MIT License #
|
8
8
|
# Created By : Marcin Szczygliński #
|
9
|
-
# Updated Date: 2025.01
|
9
|
+
# Updated Date: 2025.02.01 02:00:00 #
|
10
10
|
# ================================================== #
|
11
11
|
|
12
12
|
import json
|
@@ -93,6 +93,7 @@ def get_app_meta() -> dict:
|
|
93
93
|
'docs': get_init_value("__documentation__"),
|
94
94
|
'pypi': get_init_value("__pypi__"),
|
95
95
|
'snap': get_init_value("__snap__"),
|
96
|
+
'ms_store': get_init_value("__ms_store__"),
|
96
97
|
'donate': get_init_value("__donate__"),
|
97
98
|
'discord': get_init_value("__discord__"),
|
98
99
|
'version': get_init_value("__version__"),
|
@@ -1,10 +1,10 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pygpt-net
|
3
|
-
Version: 2.5.
|
4
|
-
Summary: Desktop AI Assistant powered by models: OpenAI o1, GPT-4o, GPT-4, GPT-4 Vision, GPT-3.5, DALL-E 3, Llama 3, Mistral, Gemini, Claude, Bielik, and other models supported by Langchain, Llama Index, and Ollama. Features include chatbot, text completion, image generation, vision analysis, speech-to-text, internet access, file handling, command execution and more.
|
3
|
+
Version: 2.5.1
|
4
|
+
Summary: Desktop AI Assistant powered by models: OpenAI o1, GPT-4o, GPT-4, GPT-4 Vision, GPT-3.5, DALL-E 3, Llama 3, Mistral, Gemini, Claude, DeepSeek, Bielik, and other models supported by Langchain, Llama Index, and Ollama. Features include chatbot, text completion, image generation, vision analysis, speech-to-text, internet access, file handling, command execution and more.
|
5
5
|
Home-page: https://pygpt.net
|
6
6
|
License: MIT
|
7
|
-
Keywords: py_gpt,py-gpt,pygpt,desktop,app,o1,gpt,gpt4,gpt-4o,gpt-4v,gpt3.5,gpt-4,gpt-4-vision,gpt-3.5,llama3,mistral,gemini,bielik,claude,tts,whisper,vision,chatgpt,dall-e,chat,chatbot,assistant,text completion,image generation,ai,api,openai,api key,langchain,llama-index,ollama,presets,ui,qt,pyside
|
7
|
+
Keywords: py_gpt,py-gpt,pygpt,desktop,app,o1,gpt,gpt4,gpt-4o,gpt-4v,gpt3.5,gpt-4,gpt-4-vision,gpt-3.5,llama3,mistral,gemini,deepseek,bielik,claude,tts,whisper,vision,chatgpt,dall-e,chat,chatbot,assistant,text completion,image generation,ai,api,openai,api key,langchain,llama-index,ollama,presets,ui,qt,pyside
|
8
8
|
Author: Marcin Szczyglinski
|
9
9
|
Author-email: info@pygpt.net
|
10
10
|
Requires-Python: >=3.10,<3.13
|
@@ -19,7 +19,7 @@ Requires-Dist: EbookLib (>=0.18,<0.19)
|
|
19
19
|
Requires-Dist: Markdown (>=3.7,<4.0)
|
20
20
|
Requires-Dist: PyAudio (>=0.2.14,<0.3.0)
|
21
21
|
Requires-Dist: PyAutoGUI (>=0.9.54,<0.10.0)
|
22
|
-
Requires-Dist: PySide6 (==6.6.
|
22
|
+
Requires-Dist: PySide6 (==6.6.2)
|
23
23
|
Requires-Dist: Pygments (>=2.18.0,<3.0.0)
|
24
24
|
Requires-Dist: SQLAlchemy (>=2.0.27,<3.0.0)
|
25
25
|
Requires-Dist: SpeechRecognition (>=3.10.1,<4.0.0)
|
@@ -94,7 +94,7 @@ Description-Content-Type: text/markdown
|
|
94
94
|
|
95
95
|
[](https://snapcraft.io/pygpt)
|
96
96
|
|
97
|
-
Release: **2.5.
|
97
|
+
Release: **2.5.1** | build: **2025.02.01** | Python: **>=3.10, <3.13**
|
98
98
|
|
99
99
|
> Official website: https://pygpt.net | Documentation: https://pygpt.readthedocs.io
|
100
100
|
>
|
@@ -4052,6 +4052,11 @@ may consume additional tokens that are not displayed in the main window.
|
|
4052
4052
|
|
4053
4053
|
## Recent changes:
|
4054
4054
|
|
4055
|
+
**2.5.1 (2025-02-01)**
|
4056
|
+
|
4057
|
+
- PySide6 upgraded to 6.6.2.
|
4058
|
+
- Disabled Transformers startup warnings.
|
4059
|
+
|
4055
4060
|
**2.5.0 (2025-01-31)**
|
4056
4061
|
|
4057
4062
|
- Added provider for DeepSeek (in Chat with Files mode, beta).
|
@@ -1,10 +1,10 @@
|
|
1
|
-
CHANGELOG.md,sha256=
|
2
|
-
README.md,sha256=
|
1
|
+
CHANGELOG.md,sha256=eurwHEAK9C1O9PAxjweugKjSMeaVrEzj8_Nxb0-4Jg8,82509
|
2
|
+
README.md,sha256=tDIAV4vfDhVi4xLTfarAjqyK1wgN1MyjY_uQvhHReMg,163553
|
3
3
|
icon.png,sha256=CzcINJaU23a9hNjsDlDNbyuiEvKZ4Wg6DQVYF6SpuRg,13970
|
4
|
-
pygpt_net/CHANGELOG.txt,sha256=
|
4
|
+
pygpt_net/CHANGELOG.txt,sha256=RJGWmONx8abJxBC0S3KPz0IwmgiFNbuK4ig96ccqI7E,80996
|
5
5
|
pygpt_net/LICENSE,sha256=dz9sfFgYahvu2NZbx4C1xCsVn9GVer2wXcMkFRBvqzY,1146
|
6
|
-
pygpt_net/__init__.py,sha256=
|
7
|
-
pygpt_net/app.py,sha256=
|
6
|
+
pygpt_net/__init__.py,sha256=Ub5lJnXqEDiuzX7NV_exsBPRzLi86-RpfAduA7i-sfg,1372
|
7
|
+
pygpt_net/app.py,sha256=XXjn9XaKHGRcsHN8mMuqbRHAg8_Da0GLmACUU9ddjBc,16217
|
8
8
|
pygpt_net/config.py,sha256=Qc1FOBtTf3O6A6-6KoqUGtoJ0u8hXQeowvCVbZFwtik,16405
|
9
9
|
pygpt_net/container.py,sha256=BemiVZPpPNIzfB-ZvnZeeBPFu-AcX2c30OqYFylEjJc,4023
|
10
10
|
pygpt_net/controller/__init__.py,sha256=wtlkw4viFVuf2sP0iMSkK0jI1QMa3kcPfvQaqnC-1io,5917
|
@@ -60,7 +60,7 @@ pygpt_net/controller/debug/__init__.py,sha256=Dn12CfDYml_n4Xq3mWkafUrM-UVXFEU1mD
|
|
60
60
|
pygpt_net/controller/dialogs/__init__.py,sha256=sJHyZxkAn9QKTegUqx_xETesN2ecMBkrtf-VsCubr2w,1008
|
61
61
|
pygpt_net/controller/dialogs/confirm.py,sha256=EpLYx4cAyb3S723-ACU-nCvcx0lH9tj4upLnjPiekF8,15875
|
62
62
|
pygpt_net/controller/dialogs/debug.py,sha256=v6E85vyCwfaDG9XZysxhBjRwlrDkbYC-NxUnDamNRpk,5980
|
63
|
-
pygpt_net/controller/dialogs/info.py,sha256=
|
63
|
+
pygpt_net/controller/dialogs/info.py,sha256=CcVXRgYYqHJF9YpG3SzQQc_lFyQL5-m3Nbb-n0EnQQA,3527
|
64
64
|
pygpt_net/controller/files/__init__.py,sha256=1Zm9L8-rhLG-GjRQDaOCkAFocAAobTQj-D3ILxLUGn4,16135
|
65
65
|
pygpt_net/controller/finder/__init__.py,sha256=4jl8EzTVR1Wc0dJkVwacAdvBiuF1CyOSKB4Qewju0Jw,4955
|
66
66
|
pygpt_net/controller/idx/__init__.py,sha256=oY6clG2YANYB_wJumnOl78ugU3V5c_sG1WIwRyBCVOo,10161
|
@@ -247,9 +247,9 @@ pygpt_net/css_rc.py,sha256=i13kX7irhbYCWZ5yJbcMmnkFp_UfS4PYnvRFSPF7XXo,11349
|
|
247
247
|
pygpt_net/data/audio/click_off.mp3,sha256=aNiRDP1pt-Jy7ija4YKCNFBwvGWbzU460F4pZWZDS90,65201
|
248
248
|
pygpt_net/data/audio/click_on.mp3,sha256=qfdsSnthAEHVXzeyN4LlC0OvXuyW8p7stb7VXtlvZ1k,65201
|
249
249
|
pygpt_net/data/audio/ok.mp3,sha256=LTiV32pEBkpUGBkKkcOdOFB7Eyt_QoP2Nv6c5AaXftk,32256
|
250
|
-
pygpt_net/data/config/config.json,sha256=
|
251
|
-
pygpt_net/data/config/models.json,sha256=
|
252
|
-
pygpt_net/data/config/modes.json,sha256=
|
250
|
+
pygpt_net/data/config/config.json,sha256=Lyr9zdzpmqxJpNErVaQPRDTj7NJK-QySKP8gp6XDGLU,19884
|
251
|
+
pygpt_net/data/config/models.json,sha256=FQhmcmPwtq2oF2edRv-HOg0sAA65YEyYclvB_5_Sslo,79275
|
252
|
+
pygpt_net/data/config/modes.json,sha256=MAIrCVxMJcPqg7ma4tuR5iR-RA2MuL1JQR9cyRTD5T4,1921
|
253
253
|
pygpt_net/data/config/presets/agent_openai.json,sha256=vMTR-soRBiEZrpJJHuFLWyx8a3Ez_BqtqjyXgxCAM_Q,733
|
254
254
|
pygpt_net/data/config/presets/agent_openai_assistant.json,sha256=awJw9lNTGpKML6SJUShVn7lv8AXh0oic7wBeyoN7AYs,798
|
255
255
|
pygpt_net/data/config/presets/agent_planner.json,sha256=a6Rv58Bnm2STNWB0Rw_dGhnsz6Lb3J8_GwsUVZaTIXc,742
|
@@ -1486,7 +1486,7 @@ pygpt_net/data/js/katex/fonts/KaTeX_Typewriter-Regular.woff2,sha256=cdUX1ngneHz6
|
|
1486
1486
|
pygpt_net/data/js/katex/katex.min.css,sha256=lVaKnUaQNG4pI71WHffQZVALLQF4LMZEk4nOia8U9ow,23532
|
1487
1487
|
pygpt_net/data/js/katex/katex.min.js,sha256=KLASOtKS2x8pUxWVzCDmlWJ4jhuLb0vtrgakbD6gDDo,276757
|
1488
1488
|
pygpt_net/data/locale/locale.de.ini,sha256=ejI7RPX3FqvOcYcXvgPWNTeA9S58IVYI6L6u2WdXWjA,64162
|
1489
|
-
pygpt_net/data/locale/locale.en.ini,sha256=
|
1489
|
+
pygpt_net/data/locale/locale.en.ini,sha256=QkzSW21MfydS5xvioImqgmF2fUCYVA02c_Y1acMsguM,76807
|
1490
1490
|
pygpt_net/data/locale/locale.es.ini,sha256=5rKfjtkUwItP9FBpK-vnnPEpsg-5fbqATm_2e1Ot6U8,64391
|
1491
1491
|
pygpt_net/data/locale/locale.fr.ini,sha256=WuP5IGawZdAYl21H0ZZM0fPpmk7L0cnVyO8V_AjuahY,66403
|
1492
1492
|
pygpt_net/data/locale/locale.it.ini,sha256=7irOYJlOW2NDB9hr6DtXwhtBHpzxYtlakmGDxjOpHhE,63144
|
@@ -2058,7 +2058,7 @@ pygpt_net/ui/layout/toolbox/prompt.py,sha256=QC5CZx5TvO0-CZVXea4eIuAHFjoYcGxYrLB
|
|
2058
2058
|
pygpt_net/ui/layout/toolbox/vision.py,sha256=GZY-N2z8re1LN1ntsy-3Ius8OY4DujmJpyJ1qP2ZRxs,2447
|
2059
2059
|
pygpt_net/ui/main.py,sha256=_Y1FOX6WqM9erVtqpPXETLQpKRylgiZm-ClVk3fsSa0,12753
|
2060
2060
|
pygpt_net/ui/menu/__init__.py,sha256=hGxe2_tp3-hDGm2EjjMwBc69zmK3cr664LoV3cm2vGk,1877
|
2061
|
-
pygpt_net/ui/menu/about.py,sha256=
|
2061
|
+
pygpt_net/ui/menu/about.py,sha256=bs0iGge52THU72oyu98QBxvh5iKA9APQIStRKQT5IQc,5891
|
2062
2062
|
pygpt_net/ui/menu/audio.py,sha256=Sb8NTAyMnPj4johTvBKwocHzq67XypIdw7K7hjf2760,3494
|
2063
2063
|
pygpt_net/ui/menu/config.py,sha256=uQjHZtZok4dasIngzNZkV42pC54zesJ8nJhLLptPtPg,8159
|
2064
2064
|
pygpt_net/ui/menu/debug.py,sha256=umXmXVUyKvmIjZBMqD1luAykX62HSj7QCponycwHqIY,6779
|
@@ -2176,9 +2176,9 @@ pygpt_net/ui/widget/textarea/url.py,sha256=xbNQxoM5fYI1ZWbvybQkPmNPrIq3yhtNPBOSO
|
|
2176
2176
|
pygpt_net/ui/widget/textarea/web.py,sha256=2LebPHa_e5lvBqnIVzjwsLcFMoc11BonXgAUstOjWSY,11643
|
2177
2177
|
pygpt_net/ui/widget/vision/__init__.py,sha256=8HT4tQFqQogEEpGYTv2RplKBthlsFKcl5egnv4lzzEw,488
|
2178
2178
|
pygpt_net/ui/widget/vision/camera.py,sha256=T8b5cmK6uhf_WSSxzPt_Qod8JgMnst6q8sQqRvgQiSA,2584
|
2179
|
-
pygpt_net/utils.py,sha256=
|
2180
|
-
pygpt_net-2.5.
|
2181
|
-
pygpt_net-2.5.
|
2182
|
-
pygpt_net-2.5.
|
2183
|
-
pygpt_net-2.5.
|
2184
|
-
pygpt_net-2.5.
|
2179
|
+
pygpt_net/utils.py,sha256=WtrdagJ-BlCjxGEEVq2rhsyAZMcU6JqltCXzOs823po,6707
|
2180
|
+
pygpt_net-2.5.1.dist-info/LICENSE,sha256=rbPqNB_xxANH8hKayJyIcTwD4bj4Y2G-Mcm85r1OImM,1126
|
2181
|
+
pygpt_net-2.5.1.dist-info/METADATA,sha256=dBQnujW57dz2yGiqxm39321ZxOBVokAC5lplDAiadUU,168508
|
2182
|
+
pygpt_net-2.5.1.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
|
2183
|
+
pygpt_net-2.5.1.dist-info/entry_points.txt,sha256=qvpII6UHIt8XfokmQWnCYQrTgty8FeJ9hJvOuUFCN-8,43
|
2184
|
+
pygpt_net-2.5.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|