batchalign 0.7.6a30__tar.gz → 0.7.6a32__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.
- {batchalign-0.7.6a30/batchalign.egg-info → batchalign-0.7.6a32}/PKG-INFO +1 -1
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/fa/whisper_fa.py +1 -1
- batchalign-0.7.6a32/batchalign/pipelines/morphosyntax/fr/apm.py +15 -0
- batchalign-0.7.6a32/batchalign/pipelines/morphosyntax/fr/apmn.py +81 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/ud.py +7 -1
- batchalign-0.7.6a32/batchalign/version +3 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32/batchalign.egg-info}/PKG-INFO +1 -1
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign.egg-info/SOURCES.txt +2 -0
- batchalign-0.7.6a30/batchalign/version +0 -3
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/LICENSE +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/MANIFEST.in +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/README.md +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/__main__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/cli/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/cli/cli.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/cli/dispatch.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/constants.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/document.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/errors.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/base.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/chat/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/chat/file.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/chat/generator.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/chat/lexer.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/chat/parser.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/chat/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/textgrid/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/textgrid/file.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/textgrid/generator.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/formats/textgrid/parser.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/resolve.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/speaker/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/speaker/config.yaml +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/speaker/infer.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/speaker/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/training/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/training/run.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/training/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utterance/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utterance/dataset.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utterance/execute.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utterance/infer.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utterance/prep.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/utterance/train.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/whisper/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/whisper/infer_asr.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/models/whisper/infer_fa.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/analysis/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/analysis/eval.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/asr/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/asr/rev.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/asr/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/asr/whisper.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/asr/whisperx.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/base.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/cleanup.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/disfluencies.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/parse_support.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/retrace.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/support/filled_pauses.eng +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/support/replacements.eng +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/support/test.test +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/dispatch.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/fa/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/coref.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/en/irr.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/fr/case.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/ja/verbforms.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/pipeline.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/speaker/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/speaker/nemo_speaker.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/utr/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/utr/rev_utr.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/utr/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/utr/whisper_utr.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/utterance/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/utterance/ud_utterance.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/conftest.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_file.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_generator.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_lexer.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_parser.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/textgrid/test_textgrid.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/analysis/test_eval.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/asr/test_asr_pipeline.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/asr/test_asr_utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/cleanup/test_disfluency.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/cleanup/test_parse_support.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/fa/test_fa_pipeline.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/fixures.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/test_pipeline.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/test_pipeline_models.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/test_document.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/utils/__init__.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/utils/config.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/utils/dp.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/utils/utils.py +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign.egg-info/dependency_links.txt +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign.egg-info/entry_points.txt +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign.egg-info/requires.txt +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign.egg-info/top_level.txt +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/setup.cfg +0 -0
- {batchalign-0.7.6a30 → batchalign-0.7.6a32}/setup.py +0 -0
@@ -49,7 +49,7 @@ class WhisperFAEngine(BatchalignEngine):
|
|
49
49
|
if not isinstance(i, Utterance):
|
50
50
|
continue
|
51
51
|
if i.alignment == None:
|
52
|
-
warnings.warn("We found at least one utterance without utterance-level alignment; this is usually not an issue, but if the entire transcript is unaligned,
|
52
|
+
warnings.warn("We found at least one utterance without utterance-level alignment; this is usually not an issue, but if the entire transcript is unaligned, it means that utterance level timing recovery (which is fuzzy using ASR) failed due to the audio clarity. On this transcript, before running forced-alignment, please supply utterance-level links.")
|
53
53
|
continue
|
54
54
|
|
55
55
|
# pop the previous group onto the stack
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"""
|
2
|
+
auditory plural marking for french
|
3
|
+
"""
|
4
|
+
|
5
|
+
from .apmn import APMN
|
6
|
+
|
7
|
+
apmn_lits = [
|
8
|
+
j.strip()
|
9
|
+
for i in APMN.strip().split("\n") if i.strip() != ""
|
10
|
+
for j in i.strip().split("\t") if j.strip() != ""
|
11
|
+
]
|
12
|
+
|
13
|
+
def is_apm_noun(n):
|
14
|
+
return bool(n.strip().lower() in apmn_lits)
|
15
|
+
|
@@ -0,0 +1,81 @@
|
|
1
|
+
APMN = """
|
2
|
+
amiral amiraux
|
3
|
+
animal animaux
|
4
|
+
annal annaux
|
5
|
+
anormal anormaux
|
6
|
+
anticlérical anticléricaux
|
7
|
+
arsenal arsenaux
|
8
|
+
bocal bocaux
|
9
|
+
canal canaux
|
10
|
+
cantal cantaux
|
11
|
+
capital capitaux
|
12
|
+
caporal caporaux
|
13
|
+
cardinal cardinaux
|
14
|
+
central centraux
|
15
|
+
chenal chenaux
|
16
|
+
cheval chevaux
|
17
|
+
clérical cléricaux
|
18
|
+
collatéral collatéraux
|
19
|
+
colonial coloniaux
|
20
|
+
commensal commensaux
|
21
|
+
communal communaux
|
22
|
+
confessionnal confessionnaux
|
23
|
+
cordial cordiaux
|
24
|
+
corporal corporaux
|
25
|
+
cristal cristaux
|
26
|
+
cérébral cérébraux
|
27
|
+
fanal fanaux
|
28
|
+
frontal frontaux
|
29
|
+
fédéral fédéraux
|
30
|
+
féodal féodaux
|
31
|
+
gardénal gardénaux
|
32
|
+
général généraux
|
33
|
+
hôpital hôpitaux
|
34
|
+
idéal idéaux
|
35
|
+
international internationaux
|
36
|
+
journal journaux
|
37
|
+
libéral libéraux
|
38
|
+
local locaux
|
39
|
+
madrigal madrigaux
|
40
|
+
marsupial marsupiaux
|
41
|
+
maréchal maréchaux
|
42
|
+
mal maux
|
43
|
+
minéral minéraux
|
44
|
+
moral moraux
|
45
|
+
méridional méridionaux
|
46
|
+
métal métaux
|
47
|
+
nasal nasaux
|
48
|
+
national nationaux
|
49
|
+
normal normaux
|
50
|
+
numéral numéraux
|
51
|
+
occidental occidentaux
|
52
|
+
occipital occipitaux
|
53
|
+
oral oraux
|
54
|
+
ordinal ordinaux
|
55
|
+
oriental orientaux
|
56
|
+
original originaux
|
57
|
+
piédestal piédestaux
|
58
|
+
principal principaux
|
59
|
+
provincial provinciaux
|
60
|
+
quintal quintaux
|
61
|
+
radical radicaux
|
62
|
+
rival rivaux
|
63
|
+
rural ruraux
|
64
|
+
régional régionaux
|
65
|
+
sentimental sentimentaux
|
66
|
+
signal signaux
|
67
|
+
social sociaux
|
68
|
+
sénéchal sénéchaux
|
69
|
+
temporal temporaux
|
70
|
+
tergal tergaux
|
71
|
+
total totaux
|
72
|
+
tribunal tribunaux
|
73
|
+
urinal urinaux
|
74
|
+
vassal vassaux
|
75
|
+
val vaux
|
76
|
+
végétal végétaux
|
77
|
+
véronal véronals
|
78
|
+
éditorial éditoriaux
|
79
|
+
égal égaux
|
80
|
+
étal étau
|
81
|
+
"""
|
@@ -216,6 +216,12 @@ def handler__NOUN(word, lang=None):
|
|
216
216
|
case = feats.get("Case", "").replace(",", "")
|
217
217
|
type = feats.get("PronType", "")
|
218
218
|
|
219
|
+
apm = ""
|
220
|
+
if lang == "fr":
|
221
|
+
from batchalign.pipelines.morphosyntax.fr.apm import is_apm_noun
|
222
|
+
apm = "apm" if is_apm_noun(word.text) else ""
|
223
|
+
|
224
|
+
|
219
225
|
if word.deprel == "obj" and case.strip() == "":
|
220
226
|
case = "Acc"
|
221
227
|
|
@@ -227,7 +233,7 @@ def handler__NOUN(word, lang=None):
|
|
227
233
|
if gender_str == "-Com,Neut" or gender_str == "-Com" or gender_str == "-ComNeut": gender_str=""
|
228
234
|
if number_str == "-Sing": number_str=""
|
229
235
|
|
230
|
-
return handler(word, lang)+gender_str+number_str+stringify_feats(case, type)+ger
|
236
|
+
return handler(word, lang)+gender_str+number_str+stringify_feats(case, type)+ger+stringify_feats(apm)
|
231
237
|
|
232
238
|
def handler__PROPN(word, lang=None):
|
233
239
|
# code as noun
|
@@ -73,6 +73,8 @@ batchalign/pipelines/morphosyntax/__init__.py
|
|
73
73
|
batchalign/pipelines/morphosyntax/coref.py
|
74
74
|
batchalign/pipelines/morphosyntax/ud.py
|
75
75
|
batchalign/pipelines/morphosyntax/en/irr.py
|
76
|
+
batchalign/pipelines/morphosyntax/fr/apm.py
|
77
|
+
batchalign/pipelines/morphosyntax/fr/apmn.py
|
76
78
|
batchalign/pipelines/morphosyntax/fr/case.py
|
77
79
|
batchalign/pipelines/morphosyntax/ja/verbforms.py
|
78
80
|
batchalign/pipelines/speaker/__init__.py
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/support/filled_pauses.eng
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/cleanup/support/replacements.eng
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/pipelines/morphosyntax/ja/verbforms.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_generator.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_lexer.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_parser.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/chat/test_chat_utils.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/formats/textgrid/test_textgrid.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/analysis/test_eval.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/asr/test_asr_pipeline.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/asr/test_asr_utils.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/cleanup/test_disfluency.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/cleanup/test_parse_support.py
RENAMED
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/fa/test_fa_pipeline.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{batchalign-0.7.6a30 → batchalign-0.7.6a32}/batchalign/tests/pipelines/test_pipeline_models.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|