summaryrefslogtreecommitdiff
path: root/Build/source/texk/gregorio/gregorio-src/src
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-04-06 05:08:53 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-04-06 05:08:53 +0000
commit5fedb5d6169efecebd0dfbb1da555805573d14e5 (patch)
tree1f2654660ca658b3d06ee656be81e9735684bf5d /Build/source/texk/gregorio/gregorio-src/src
parent3c806bd4ccf248e9411683a41ef534d1a909bc99 (diff)
gregorio 5.0.0-rc1
git-svn-id: svn://tug.org/texlive/trunk@43706 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/gregorio/gregorio-src/src')
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/Makefile.am16
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/bool.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/characters.c119
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/characters.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/config.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/dump/dump.c54
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/encode_utf8strings.c2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/enum_generator.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-elements-determination.c4
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-glyphs-determination.c169
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination-l.c4424
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination.l213
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.c929
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.h6
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.c1298
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.h184
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.c474
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h14
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.l54
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.y454
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-write.c114
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gabc/gabc.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gregorio-utils.c6
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-position.c153
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-write.c587
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex.h12
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/messages.c8
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/messages.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/plugins.h6
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/sha1.c2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/sha1.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/struct.c328
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/struct.h125
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/struct_iter.h98
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/support.c2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/support.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/unicode.c2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/unicode.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/utf8strings.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/utf8strings.h.in2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-l.c2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-y.c2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.h2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.l2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.y2
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.c26
-rw-r--r--Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.h5
47 files changed, 5988 insertions, 3932 deletions
diff --git a/Build/source/texk/gregorio/gregorio-src/src/Makefile.am b/Build/source/texk/gregorio/gregorio-src/src/Makefile.am
index f0c275215b4..58e3f47617b 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/Makefile.am
+++ b/Build/source/texk/gregorio/gregorio-src/src/Makefile.am
@@ -1,4 +1,4 @@
-# Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+# Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
#
# This file is part of Gregorio.
#
@@ -35,9 +35,13 @@ gregorio___FILENAME_VERSION__SOURCES = \
@MK@else
@MK@ ifneq ($(wildcard ../.hg/git),)
@MK@ _gitnode_ = $(shell hg log --template='{gitnode}' -r .)
-@MK@ _tag_ = $(shell git --git-dir=../.hg/git describe --exact-match $(_gitnode_) 2>/dev/null)
-@MK@ ifeq ($(_tag_),)
-@MK@ DEFS += -DBRANCH_VERSION='"$(shell cat ../.hg/bookmarks.current)-$(shell git --git-dir=../.hg/git rev-parse --short '$(_gitnode_)')-$(shell git --git-dir=../.hg/git rev-list '$(_gitnode_)' --count)"'
+@MK@ ifeq ($(_gitnode_),)
+@MK@ DEFS += -DBRANCH_VERSION='"$(shell hg log --template='{activebookmark}-hg:{manifest}' -r .)"'
+@MK@ else
+@MK@ _tag_ = $(shell git --git-dir=../.hg/git describe --exact-match '$(_gitnode_)' 2>/dev/null)
+@MK@ ifeq ($(_tag_),)
+@MK@ DEFS += -DBRANCH_VERSION='"$(shell hg log --template='{activebookmark}' -r .)-$(shell git --git-dir=../.hg/git rev-parse --short '$(_gitnode_)')-$(shell git --git-dir=../.hg/git rev-list '$(_gitnode_)' --count)"'
+@MK@ endif
@MK@ endif
@MK@ endif
@MK@endif
@@ -73,7 +77,7 @@ LDADD += gregorio-resources.o
endif
gabc/gabc-score-determination-y.c: gabc/gabc-score-determination.y
- $(YACC) -d -p "gabc_score_determination_" -o $@ $<
+ $(YACC) -v -d -p "gabc_score_determination_" -o $@ $<
gabc/gabc-score-determination-y.h: gabc/gabc-score-determination-y.c
## Recover from the removal of gabc/gabc-score-determination-y.h, see
## https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html
@@ -96,7 +100,7 @@ gabc/gabc-notes-determination-l.c: gabc/gabc-notes-determination.l
$(LEX) -o $@ $<
vowel/vowel-rules-y.c: vowel/vowel-rules.y
- $(YACC) -d -o $@ $<
+ $(YACC) -v -d -o $@ $<
vowel/vowel-rules-y.h: vowel/vowel-rules-y.c
## Recover from the removal of vowel/vowel-rules-y.h, see
## https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html
diff --git a/Build/source/texk/gregorio/gregorio-src/src/bool.h b/Build/source/texk/gregorio/gregorio-src/src/bool.h
index d40d0b4412c..0d6070990fa 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/bool.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/bool.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header provides a minimum of C11-like bool functionality.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/characters.c b/Build/source/texk/gregorio/gregorio-src/src/characters.c
index b82e25e809f..1e530d6514d 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/characters.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/characters.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX.
* This file contains functions that deal with lyrics and styles.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -120,8 +120,8 @@ void gregorio_set_centering_language(char *const language)
}
}
-static __inline gregorio_character *skip_verbatim_or_special(
- gregorio_character *ch)
+static __inline const gregorio_character *skip_verbatim_or_special(
+ const gregorio_character *ch)
{
/* skip past verbatim and special characters */
if (ch->cos.s.type == ST_T_BEGIN && (ch->cos.s.style == ST_VERBATIM
@@ -160,43 +160,66 @@ static __inline bool handle_elision(const gregorio_character *const ch,
return true;
}
-static void determine_center(gregorio_character *character, int *start,
- int *end)
+static __inline int for_each_centerable_character(
+ const gregorio_character *const character,
+ void (*capture)(grewchar *, int, grewchar), grewchar *buffer)
{
int count;
- grewchar *subject;
- gregorio_character *ch;
- bool in_elision;
-
- *start = *end = -1;
+ const gregorio_character *ch;
+ bool in_elision = false;
- in_elision = false;
for (count = 0, ch = character; ch; ch = ch->next_character) {
if (ch->is_character) {
if (!in_elision) {
+ if (capture) {
+ capture(buffer, count, ch->cos.character);
+ }
+ ++count;
+ }
+ } else {
+ if (ch->cos.s.style == ST_PROTRUSION_FACTOR) {
+ /* if there is a protrusion, we will always encounter the
+ * protrusion factor first */
+ break;
+ }
+ if (ch->cos.s.type == ST_T_BEGIN && ch->cos.s.style == ST_ELISION) {
+ /* put in a special character at the beginning of an elision
+ * that represents the elision */
+ if (capture) {
+ capture(buffer, count, GREVOWEL_ELISION_MARK);
+ }
++count;
}
- } else if (!handle_elision(ch, &in_elision)) {
- ch = skip_verbatim_or_special(ch);
+ if (!handle_elision(ch, &in_elision)) {
+ ch = skip_verbatim_or_special(ch);
+ }
}
}
+ return count;
+}
+
+/* this function assumes subject is sized correctly */
+static void capture_subject(grewchar *const subject, const int count,
+ const grewchar character)
+{
+ subject[count] = character;
+}
+
+static void determine_center(gregorio_character *character, int *start,
+ int *end)
+{
+ const int count = for_each_centerable_character(character, NULL, NULL);
+ grewchar *subject;
+
if (count == 0) {
return;
}
- in_elision = false;
subject = (grewchar *)gregorio_malloc((count + 1) * sizeof(grewchar));
- for (count = 0, ch = character; ch; ch = ch->next_character) {
- if (ch->is_character) {
- if (!in_elision) {
- subject[count ++] = ch->cos.character;
- }
- } else if (!handle_elision(ch, &in_elision)) {
- ch = skip_verbatim_or_special(ch);
- }
- }
+ for_each_centerable_character(character, capture_subject, subject);
subject[count] = (grewchar)0;
+ *start = *end = -1;
gregorio_find_vowel_group(subject, start, end);
free(subject);
@@ -913,6 +936,12 @@ void gregorio_rebuild_characters(gregorio_character **const param_character,
}
}
+ if (style == ST_ELISION) {
+ /* skip over the elision marker in the vowel determination
+ * buffer */
+ ++index;
+ }
+
switch (style) {
case ST_VERBATIM:
case ST_SPECIAL_CHAR:
@@ -960,8 +989,15 @@ void gregorio_rebuild_characters(gregorio_character **const param_character,
/* just loop */
}
if (current_style) {
+ /* repeated styles should already have been filtered out
+ * during parsing, so if this is hit, it's a programming
+ * error */
+ /* LCOV_EXCL_START */
+ gregorio_fail(gregorio_rebuild_characters,
+ "encountered repeated style");
current_character = suppress_character(current_character);
continue;
+ /* LCOV_EXCL_STOP */
}
/* if it is something to add then we just push the style in the
* stack and continue. */
@@ -1126,9 +1162,13 @@ void gregorio_rebuild_first_syllable(gregorio_character **param_character,
/* now we are going to place the two INITIAL styles (begin and end) */
while (current_character) {
if (!current_character->is_character
- && current_character->cos.s.style == ST_FORCED_CENTER) {
+ && (current_character->cos.s.style == ST_FORCED_CENTER
+ || current_character->cos.s.style == ST_PROTRUSION_FACTOR)) {
/* we don't touch anything after a FORCED_CENTER, so we put an
- * empty INITIAL style just before */
+ * empty INITIAL style just before; we handle the weird case of
+ * a protrusion (manual or automatic) at the initial the same way
+ * (we need only check for PROTRUSION_FACTOR since that will come
+ * before PROTRUSION) */
current_character = first_character;
insert_style_before(ST_T_BEGIN, ST_INITIAL, current_character);
current_character = current_character->previous_character;
@@ -1219,13 +1259,26 @@ void gregorio_rebuild_first_syllable(gregorio_character **param_character,
insert_style_after(ST_T_END, ST_FIRST_SYLLABLE_INITIAL,
&current_character);
}
- if (!current_character->is_character
- && (current_character->cos.s.style == ST_CENTER
- || current_character->cos.s.style == ST_FORCED_CENTER)) {
- insert_style_before(ST_T_END, ST_FIRST_SYLLABLE,
- current_character);
- insert_style_after(ST_T_BEGIN, ST_FIRST_SYLLABLE,
- &current_character);
+ if (!current_character->is_character) {
+ switch (current_character->cos.s.style) {
+ case ST_CENTER:
+ case ST_FORCED_CENTER:
+ insert_style_before(ST_T_END, ST_FIRST_SYLLABLE,
+ current_character);
+ insert_style_after(ST_T_BEGIN, ST_FIRST_SYLLABLE,
+ &current_character);
+ break;
+
+ case ST_PROTRUSION_FACTOR:
+ /* protrusion is not allowed to be the syllable initial;
+ * we only need to check PROTRUSION_FACTOR since that will
+ * come before PROTRUSION */
+ marked_syllable_initial = true;
+ break;
+
+ default:
+ break;
+ }
}
if (!current_character->next_character) {
insert_style_after(ST_T_END, ST_FIRST_SYLLABLE,
@@ -1269,7 +1322,7 @@ void gregorio_set_first_word(gregorio_character **const character)
}
}
/* else there are no more characters here */
-
+
if (*character) {
gregorio_go_to_first_character_c(character);
}
diff --git a/Build/source/texk/gregorio/gregorio-src/src/characters.h b/Build/source/texk/gregorio/gregorio-src/src/characters.h
index 01fa80180ba..96bf292a309 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/characters.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/characters.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes the lyric handling data structures and entry points.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/config.h b/Build/source/texk/gregorio/gregorio-src/src/config.h
index 9519115cbb8..f394001613f 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/config.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/config.h
@@ -4,7 +4,7 @@
*
* Gregorio configuration headers.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/dump/dump.c b/Build/source/texk/gregorio/gregorio-src/src/dump/dump.c
index db7e5a5f0c0..9022bfdc13f 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/dump/dump.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/dump/dump.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX.
* This file provides functions to dump out Gregorio structures.
*
- * Copyright (C) 2007-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2007-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -215,6 +215,9 @@ void dump_write_score(FILE *f, gregorio_score *score)
fprintf(f, " euouae %s\n",
gregorio_euouae_to_string(syllable->euouae));
}
+ if (syllable->clear) {
+ fprintf(f, " clear true\n");
+ }
if (syllable->text) {
if (syllable->translation) {
fprintf(f, "\n Text\n");
@@ -256,6 +259,9 @@ void dump_write_score(FILE *f, gregorio_score *score)
fprintf(f, " force_pitch true\n");
}
break;
+ case GRE_SUPPRESS_CUSTOS:
+ /* not handling this would generate an error below */
+ break;
case GRE_SPACE:
if (element->u.misc.unpitched.info.space) {
char *factor = element->u.misc.unpitched.info.
@@ -269,7 +275,7 @@ void dump_write_score(FILE *f, gregorio_score *score)
break;
case GRE_TEXVERB_ELEMENT:
fprintf(f, " TeX string \"%s\"\n",
- element->texverb);
+ gregorio_texverb(element->texverb));
break;
case GRE_NLBA:
fprintf(f, " nlba %d (%s)\n",
@@ -279,7 +285,7 @@ void dump_write_score(FILE *f, gregorio_score *score)
break;
case GRE_ALT:
fprintf(f, " Above lines text \"%s\"\n",
- element->texverb);
+ gregorio_texverb(element->texverb));
break;
case GRE_BAR:
if (element->u.misc.unpitched.info.bar) {
@@ -338,7 +344,7 @@ void dump_write_score(FILE *f, gregorio_score *score)
switch (glyph->type) {
case GRE_TEXVERB_GLYPH:
fprintf(f, " TeX string \"%s\"\n",
- glyph->texverb);
+ gregorio_texverb(glyph->texverb));
break;
case GRE_SPACE:
@@ -353,6 +359,9 @@ void dump_write_score(FILE *f, gregorio_score *score)
glyph->u.notes.glyph_type,
gregorio_glyph_type_to_string(glyph->u.notes.
glyph_type));
+ if (glyph->u.notes.is_cavum) {
+ fprintf(f, " is_cavum true\n");
+ }
if (glyph->u.notes.liquescentia) {
fprintf(f, " liquescentia %d (%s)\n",
glyph->u.notes.liquescentia,
@@ -391,6 +400,9 @@ void dump_write_score(FILE *f, gregorio_score *score)
gregorio_shape_to_string(
note->u.note.shape));
}
+ if (note->u.note.is_cavum) {
+ fprintf(f, " is_cavum true\n");
+ }
if (note->u.note.liquescentia) {
fprintf(f, " liquescentia %d (%s)\n",
note->u.note.liquescentia,
@@ -409,7 +421,7 @@ void dump_write_score(FILE *f, gregorio_score *score)
}
if (note->texverb) {
fprintf(f, " TeX string \"%s\"\n",
- note->texverb);
+ gregorio_texverb(note->texverb));
}
if (note->choral_sign) {
fprintf(f, " Choral Sign \"%s\"\n",
@@ -471,13 +483,37 @@ void dump_write_score(FILE *f, gregorio_score *score)
dump_hepisema_adjustment(f, note, SO_OVER, "above");
dump_hepisema_adjustment(f, note, SO_UNDER,
"below");
- if (note->explicit_high_ledger_line) {
+ switch (note->high_ledger_specificity) {
+ case LEDGER_SUPPOSED:
+ break;
+ case LEDGER_EXPLICIT:
fprintf(f, " explicit high line %s\n",
- dump_bool(note->supposed_high_ledger_line));
+ dump_bool(note->high_ledger_line));
+ break;
+ case LEDGER_DRAWN:
+ fprintf(f, " drawn high line %s\n",
+ dump_bool(note->high_ledger_line));
+ break;
+ case LEDGER_EXPLICITLY_DRAWN:
+ fprintf(f, " forced drawn high line %s\n",
+ dump_bool(note->high_ledger_line));
+ break;
}
- if (note->explicit_low_ledger_line) {
+ switch (note->low_ledger_specificity) {
+ case LEDGER_SUPPOSED:
+ break;
+ case LEDGER_EXPLICIT:
fprintf(f, " explicit low line %s\n",
- dump_bool(note->supposed_low_ledger_line));
+ dump_bool(note->low_ledger_line));
+ break;
+ case LEDGER_DRAWN:
+ fprintf(f, " drawn low line %s\n",
+ dump_bool(note->low_ledger_line));
+ break;
+ case LEDGER_EXPLICITLY_DRAWN:
+ fprintf(f, " forced drawn low line %s\n",
+ dump_bool(note->low_ledger_line));
+ break;
}
}
}
diff --git a/Build/source/texk/gregorio/gregorio-src/src/encode_utf8strings.c b/Build/source/texk/gregorio/gregorio-src/src/encode_utf8strings.c
index d932a9aeb4a..c24db479715 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/encode_utf8strings.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/encode_utf8strings.c
@@ -1,7 +1,7 @@
/*
* Utility program to convert utf8strings.h.in into utf8strings.h
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/enum_generator.h b/Build/source/texk/gregorio/gregorio-src/src/enum_generator.h
index 7ea576e1cd8..96c362787ce 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/enum_generator.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/enum_generator.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-elements-determination.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-elements-determination.c
index b6e914e5546..277b2b39e42 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-elements-determination.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-elements-determination.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX.
* This file provides functions for determining elements from notes.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -175,7 +175,7 @@ static gregorio_element *gabc_det_elements_from_glyphs(
}
first_glyph = current_glyph->next;
previous_glyph = NULL;
- current_glyph->texverb = NULL;
+ current_glyph->texverb = 0;
gregorio_free_one_glyph(&current_glyph);
continue;
}
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-glyphs-determination.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-glyphs-determination.c
index 0569dec78e2..8fc80157700 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-glyphs-determination.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-glyphs-determination.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file provides functions for determining glyphs from notes.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -41,6 +41,12 @@ static __inline gregorio_scanner_location *copy_note_location(
return loc;
}
+static __inline bool is_normal_punctum(const gregorio_note *const note)
+{
+ return note->u.note.shape == S_PUNCTUM
+ && note->u.note.liquescentia != L_INITIO_DEBILIS;
+}
+
/****************************
*
* This function is the basis of all the determination of glyphs. The
@@ -88,6 +94,10 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
gabc_determination *end_of_glyph,
gregorio_shape *punctum_inclinatum_orientation)
{
+ #define this_note_starts_new_glyph { \
+ next_glyph_type = G_PUNCTUM; \
+ *end_of_glyph = DET_END_OF_PREVIOUS; \
+ }
/* next glyph type is the type of the glyph that will be returned (the
* new type of the glyph with the note added to it, or the type of the
@@ -106,9 +116,7 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
}
switch (shape) {
- case S_PUNCTUM_CAVUM:
case S_LINEA_PUNCTUM:
- case S_LINEA_PUNCTUM_CAVUM:
case S_LINEA:
next_glyph_type = G_PUNCTUM;
*end_of_glyph = DET_END_OF_BOTH;
@@ -124,8 +132,7 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
* we determine here the shape of the thing if it is made of puncta
*/
if (current_pitch == last_pitch) {
- next_glyph_type = G_PUNCTUM;
- *end_of_glyph = DET_END_OF_PREVIOUS;
+ this_note_starts_new_glyph;
break;
}
switch (current_glyph_type) {
@@ -138,14 +145,11 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
break;
case G_PODATUS:
if (current_pitch > last_pitch) {
- if (current_glyph_first_note->u.note.shape == S_PUNCTUM &&
- current_glyph_first_note->u.note.liquescentia !=
- L_INITIO_DEBILIS) {
+ if (is_normal_punctum(current_glyph_first_note)) {
next_glyph_type = G_SCANDICUS;
*end_of_glyph = DET_END_OF_CURRENT;
} else {
- next_glyph_type = G_PUNCTUM;
- *end_of_glyph = DET_END_OF_PREVIOUS;
+ this_note_starts_new_glyph;
}
} else {
next_glyph_type = G_TORCULUS;
@@ -164,16 +168,15 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
next_glyph_type = G_PES_QUADRATUM;
*end_of_glyph = DET_END_OF_CURRENT;
} else {
- next_glyph_type = G_PUNCTUM;
- *end_of_glyph = DET_END_OF_PREVIOUS;
+ this_note_starts_new_glyph;
}
break;
- case G_VIRGA_STRATA: /* really a pes stratus */
+ case G_PES_ASCENDENS_ORISCUS:
+ case G_PES_DESCENDENS_ORISCUS:
if (current_pitch > last_pitch) {
next_glyph_type = G_SALICUS;
} else {
- next_glyph_type = G_PUNCTUM;
- *end_of_glyph = DET_END_OF_PREVIOUS;
+ this_note_starts_new_glyph;
}
break;
case G_SALICUS:
@@ -181,20 +184,22 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
next_glyph_type = G_SALICUS_FLEXUS;
*end_of_glyph = DET_END_OF_CURRENT;
} else {
- next_glyph_type = G_PUNCTUM;
- *end_of_glyph = DET_END_OF_PREVIOUS;
+ this_note_starts_new_glyph;
}
break;
case G_FLEXA:
if (current_pitch > last_pitch) {
- next_glyph_type = G_PORRECTUS;
+ if (is_normal_punctum(current_glyph_first_note)) {
+ next_glyph_type = G_PORRECTUS;
+ } else {
+ this_note_starts_new_glyph;
+ }
} else {
if (liquescentia & L_DEMINUTUS) {
*end_of_glyph = DET_END_OF_CURRENT;
next_glyph_type = G_ANCUS;
} else {
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
}
}
break;
@@ -205,14 +210,12 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
*end_of_glyph = DET_END_OF_CURRENT;
next_glyph_type = G_TORCULUS_LIQUESCENS;
} else {
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
}
break;
case G_TORCULUS_RESUPINUS:
if (current_pitch > last_pitch) {
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
} else {
*end_of_glyph = DET_END_OF_CURRENT;
next_glyph_type = G_TORCULUS_RESUPINUS_FLEXUS;
@@ -220,16 +223,14 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
break;
case G_PORRECTUS:
if (current_pitch > last_pitch) {
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
} else {
*end_of_glyph = DET_END_OF_CURRENT;
next_glyph_type = G_PORRECTUS_FLEXUS;
}
break;
default:
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
break;
}
break;
@@ -237,13 +238,8 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
case S_ORISCUS_ASCENDENS:
case S_ORISCUS_DESCENDENS:
case S_ORISCUS_DEMINUTUS:
- case S_ORISCUS_CAVUM_UNDETERMINED:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
case S_QUILISMA:
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
break;
case S_VIRGA:
if (current_glyph_type == G_VIRGA && last_pitch == current_pitch) {
@@ -284,18 +280,25 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
break;
case S_ORISCUS_SCAPUS_UNDETERMINED:
case S_ORISCUS_SCAPUS_ASCENDENS:
+ if (current_glyph_type == G_PUNCTUM && last_pitch < current_pitch) {
+ next_glyph_type = G_PES_ASCENDENS_ORISCUS;
+ /* Therefore G_PES_ASCENDENS_ORISCUS might be fronting an
+ * undetermined oriscus scapus. This will be resolved during
+ * oriscus orientation determination */
+ } else {
+ this_note_starts_new_glyph;
+ }
+ break;
case S_ORISCUS_SCAPUS_DESCENDENS:
if (current_glyph_type == G_PUNCTUM && last_pitch < current_pitch) {
- next_glyph_type = G_VIRGA_STRATA;
+ next_glyph_type = G_PES_DESCENDENS_ORISCUS;
} else {
- *end_of_glyph = DET_END_OF_PREVIOUS;
- next_glyph_type = G_PUNCTUM;
+ this_note_starts_new_glyph;
}
break;
case S_PUNCTUM_INCLINATUM_UNDETERMINED:
case S_PUNCTUM_INCLINATUM_ASCENDENS:
case S_PUNCTUM_INCLINATUM_DESCENDENS:
- case S_PUNCTUM_CAVUM_INCLINATUM:
/*
* Warning : this part of the code is specific to the
* declarations of the header file
@@ -467,10 +470,6 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
}
switch (shape) {
- case S_PUNCTUM_CAVUM_INCLINATUM:
- /* treat this as descendens */
- *punctum_inclinatum_orientation = S_PUNCTUM_INCLINATUM_DESCENDENS;
- break;
case S_PUNCTUM_INCLINATUM_ASCENDENS:
case S_PUNCTUM_INCLINATUM_DESCENDENS:
*punctum_inclinatum_orientation = shape;
@@ -485,6 +484,21 @@ static char add_note_to_a_glyph(gregorio_glyph_type current_glyph_type,
return next_glyph_type;
}
+static bool is_cavum(gregorio_note *note, gregorio_note *last_note)
+{
+ bool is_cavum = false;
+ for (; note; note = note->next) {
+ if (note->type == GRE_NOTE) {
+ is_cavum = is_cavum || note->u.note.is_cavum;
+ }
+ /* don't look past the last note */
+ if (note == last_note) {
+ break;
+ }
+ }
+ return is_cavum;
+}
+
/****************************
*
* First see the comments of
@@ -513,7 +527,9 @@ static gregorio_note *close_normal_glyph(gregorio_glyph **last_glyph,
glyph_type = G_PUNCTUM;
}
- gregorio_add_glyph(last_glyph, glyph_type, *first_note, liquescentia);
+ gregorio_add_glyph(last_glyph, glyph_type, *first_note, liquescentia,
+ is_cavum(*first_note, current_note));
+
if (current_note->next) {
current_note->next->previous = NULL;
*first_note = current_note->next;
@@ -659,7 +675,7 @@ static void add_intervening_texverbs(gregorio_glyph **last_glyph,
gregorio_add_unpitched_element_as_glyph(last_glyph, first_note->type,
&(first_note->u.other), _NO_SIGN, first_note->texverb);
- first_note->texverb = NULL;
+ first_note->texverb = 0;
gregorio_free_one_note(&first_note);
if (on_last_note) {
@@ -698,7 +714,7 @@ static gregorio_note *close_fusion_glyph(gregorio_glyph **last_glyph,
gregorio_add_unpitched_element_as_glyph(last_glyph,
(*first_note)->type, &((*first_note)->u.other), _NO_SIGN,
(*first_note)->texverb);
- (*first_note)->texverb = NULL;
+ (*first_note)->texverb = 0;
gregorio_assert(*first_note != last_note,
close_fusion_glyph, "Unexpected texverb at end of fusion",
return last_note);
@@ -927,7 +943,8 @@ gregorio_glyph *gabc_det_glyphs_from_notes(gregorio_note *current_note,
bool force = false;
gregorio_sign sign = _NO_SIGN;
- if (current_glyph_type == G_FUSED && type == GRE_TEXVERB_GLYPH) {
+ if (current_glyph_type == G_FUSED
+ && (type == GRE_TEXVERB_GLYPH || type == GRE_TEXVERB_ELEMENT)) {
current_note = next_note;
continue;
}
@@ -1003,7 +1020,7 @@ gregorio_glyph *gabc_det_glyphs_from_notes(gregorio_note *current_note,
}
}
current_glyph_first_note = current_note->next;
- current_note->texverb = NULL;
+ current_note->texverb = 0;
gregorio_free_one_note(&current_note);
last_pitch = USELESS_VALUE;
continue;
@@ -1128,18 +1145,13 @@ gregorio_glyph *gabc_det_glyphs_from_notes(gregorio_note *current_note,
/* special cases of oriscus descendens, treated like normal
* oriscus in some cases. */
if (score->legacy_oriscus_orientation) {
- if ((current_note->u.note.shape == S_ORISCUS_DESCENDENS
- || current_note->u.note.shape
- == S_ORISCUS_CAVUM_DESCENDENS)
+ if (current_note->u.note.shape == S_ORISCUS_DESCENDENS
&& current_note->next
&& current_note->next->type == GRE_NOTE
&& current_note->next->u.note.pitch <
current_note->u.note.pitch) {
last_pitch = current_note->u.note.pitch;
- current_note->u.note.shape =
- current_note->u.note.shape
- == S_ORISCUS_DESCENDENS? S_ORISCUS_ASCENDENS
- : S_ORISCUS_CAVUM_ASCENDENS;
+ current_note->u.note.shape = S_ORISCUS_ASCENDENS;
current_note->u.note.liquescentia =
L_NO_LIQUESCENTIA;
current_note = next_note;
@@ -1181,31 +1193,6 @@ gregorio_glyph *gabc_det_glyphs_from_notes(gregorio_note *current_note,
continue;
}
}
- if (current_note->u.note.shape == S_PUNCTUM_CAVUM_INCLINATUM) {
- switch (current_note->u.note.liquescentia
- & TAIL_LIQUESCENTIA_MASK) {
- case L_AUCTUS_DESCENDENS:
- case L_AUCTUS_ASCENDENS:
- current_note->u.note.shape =
- S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS;
- break;
- }
-
- if (current_note->next
- && current_note->next->type == GRE_NOTE
- && (current_note->next->u.note.shape
- == S_PUNCTUM_INCLINATUM_ASCENDENS
- || current_note->next->u.note.shape
- == S_PUNCTUM_INCLINATUM_DESCENDENS
- || current_note->next->u.note.shape
- == S_PUNCTUM_INCLINATUM_UNDETERMINED)
- && current_note->next->u.note.liquescentia ==
- L_DEMINUTUS) {
- last_pitch = current_note->u.note.pitch;
- current_note = next_note;
- continue;
- }
- }
liquescentia |= current_note->u.note.liquescentia;
/* once again, only works with the good values in the header
* file */
@@ -1266,30 +1253,6 @@ gregorio_glyph *gabc_det_glyphs_from_notes(gregorio_note *current_note,
continue;
}
}
- if (current_note->u.note.shape == S_PUNCTUM_CAVUM_INCLINATUM) {
- switch (current_note->u.note.liquescentia
- & TAIL_LIQUESCENTIA_MASK) {
- case L_AUCTUS_DESCENDENS:
- case L_AUCTUS_ASCENDENS:
- current_note->u.note.shape =
- S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS;
- break;
- }
-
- if (current_note->next
- && current_note->next->type == GRE_NOTE
- && (current_note->next->u.note.shape
- == S_PUNCTUM_INCLINATUM_ASCENDENS
- || current_note->next->u.note.shape
- == S_PUNCTUM_INCLINATUM_DESCENDENS
- || current_note->next->u.note.shape
- == S_PUNCTUM_INCLINATUM_UNDETERMINED)
- && current_note->next->u.note.liquescentia ==
- L_DEMINUTUS) {
- current_note = next_note;
- continue;
- }
- }
current_note = close_glyph(&last_glyph, current_glyph_type,
&current_glyph_first_note,
current_note->u.note.liquescentia, current_note,
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination-l.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination-l.c
index 3c17f898dff..ed25c70fe30 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination-l.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination-l.c
@@ -2383,9 +2383,9 @@ static yyconst flex_int32_t yy_nxt[][256] =
-63, -63, -63, -63, -63, -63, -63, -63, -63, -63,
-63, -63, -63, -63, -63, -63, -63, -63, -63, -63,
-63, -63, -63, -63, -63, -63, -63, -63, -63, -63,
- -63, -63, -63, -63, -63, -63, -63, 135, -63, 136,
- -63, 137, -63, 138, 139, -63, -63, -63, 140, -63,
- 141, 142, -63, -63, -63, -63, -63, 143, -63, -63,
+ -63, 135, -63, -63, -63, -63, -63, 136, -63, 137,
+ -63, 138, -63, 139, 140, -63, -63, -63, 141, -63,
+ 142, 143, -63, -63, -63, -63, -63, 144, -63, -63,
-63, -63, -63, -63, -63, -63, -63, -63, -63, -63,
-63, -63, -63, -63, -63, -63, -63, -63, -63, -63,
@@ -2415,7 +2415,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
-64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
-64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
- -64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
+ -64, -64, -64, 145, -64, -64, -64, -64, -64, -64,
-64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
-64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
-64, -64, -64, -64, -64, -64, -64, -64, -64, -64,
@@ -2441,8 +2441,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
-65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
-65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
- -65, -65, -65, -65, -65, -65, -65, -65, 144, 144,
- 144, 144, 144, 144, -65, -65, -65, -65, -65, -65,
+ -65, -65, -65, -65, -65, -65, -65, -65, 146, 146,
+ 146, 146, 146, 146, -65, -65, -65, -65, -65, -65,
-65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
-65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
-65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
@@ -2504,7 +2504,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-67, -67, -67, -67, -67, -67, -67, -67, -67, -67,
-67, -67, -67, -67, -67, -67, -67, -67, -67, -67,
-67, -67, -67, -67, -67, -67, -67, -67, -67, -67,
- -67, -67, -67, 145, -67, -67, -67, -67, -67, -67,
+ -67, -67, -67, 147, -67, -67, -67, -67, -67, -67,
-67, -67, -67, -67, -67, -67, -67, -67, -67, -67,
-67, -67, -67, -67, -67, -67, -67, -67, -67, -67,
-67, -67, -67, -67, -67, -67, -67, -67, -67, -67,
@@ -2536,12 +2536,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-68, -68, -68, -68, -68, -68, -68, -68, -68, -68,
-68, -68, -68, -68, -68, -68, -68, -68, -68, -68,
- -68, -68, -68, 145, -68, -68, -68, -68, -68, 146,
- 146, 146, 146, 146, -68, -68, -68, -68, -68, -68,
+ -68, -68, -68, 147, -68, -68, -68, -68, -68, 148,
+ 148, 148, 148, 148, -68, -68, -68, -68, -68, -68,
-68, -68, -68, -68, -68, -68, -68, -68, -68, -68,
-68, -68, -68, -68, -68, -68, -68, -68, -68, -68,
-68, -68, -68, -68, -68, -68, 128, -68, -68, -68,
- -68, -68, -68, -68, -68, -68, -68, -68, 147, -68,
+ -68, -68, -68, -68, -68, -68, -68, -68, 149, -68,
-68, -68, -68, -68, -68, -68, -68, -68, -68, -68,
-68, -68, -68, -68, -68, 129, -68, -68, 130, -68,
@@ -2567,7 +2567,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-69, -69, -69, -69, -69, -69, -69, -69, -69, -69,
-69, -69, -69, -69, -69, -69, -69, -69, -69, -69,
-69, -69, -69, -69, -69, -69, -69, -69, -69, -69,
- -69, -69, -69, -69, -69, -69, -69, -69, 148, 149,
+ -69, -69, -69, -69, -69, -69, -69, -69, 150, 151,
-69, -69, -69, -69, -69, -69, -69, -69, -69, -69,
-69, -69, -69, -69, -69, -69, -69, -69, -69, -69,
@@ -2631,8 +2631,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-71, -71, -71, -71, -71, -71, -71, -71, -71, -71,
-71, -71, -71, -71, -71, -71, -71, -71, -71, -71,
- -71, -71, -71, -71, -71, -71, -71, -71, 150, 151,
- 152, 153, 154, 155, -71, -71, -71, -71, -71, -71,
+ -71, -71, -71, -71, -71, -71, -71, -71, 152, 153,
+ 154, 155, 156, 157, 158, 159, 160, -71, -71, -71,
-71, -71, -71, -71, -71, -71, -71, -71, -71, -71,
-71, -71, -71, -71, -71, -71, -71, -71, -71, -71,
-71, -71, -71, -71, -71, -71, -71, -71, -71, -71,
@@ -2820,7 +2820,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
-77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
-77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
- -77, -77, -77, 156, -77, 157, -77, -77, 158, -77,
+ -77, -77, -77, 161, -77, 162, -77, -77, 163, -77,
-77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
-77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
-77, -77, -77, -77, -77, -77, -77, -77, -77, -77,
@@ -2942,35 +2942,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
+ 39, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, -81, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, -81, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159
+ 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
+ 164, 164, 164, 164, 164, 164
},
{
@@ -3005,168 +3005,9 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
-
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, -83, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
-
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
-
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160
- },
-
- {
- 39, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
-
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, -84, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
-
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161
-
- },
-
- {
- 39, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, -85, 162, 162, 162, 162, 162, 162,
-
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
-
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162
- },
-
- {
- 39, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
-
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, -86, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
-
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
-
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163
- },
-
- {
- 39, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
-
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, -87, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
-
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
- 164, 164, 164, 164, 164, 164
- },
-
- {
39, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- -88, 165, 165, -88, 165, 165, 165, 165, 165, 165,
-
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
+
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
@@ -3174,6 +3015,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
+ 165, 165, 165, -83, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
@@ -3195,34 +3037,34 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- 166, -89, -89, 166, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ 39, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, -84, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
- -89, -89, -89, -89, -89, -89
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166
},
@@ -3236,7 +3078,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
- 167, 167, 167, -90, 167, 167, 167, 167, 167, 167,
+ 167, 167, 167, -85, 167, 167, 167, 167, 167, 167,
167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
167, 167, 167, 167, 167, 167, 167, 167, 167, 167,
@@ -3268,7 +3110,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
- 168, 168, 168, -91, 168, 168, 168, 168, 168, 168,
+ 168, 168, 168, -86, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
@@ -3300,7 +3142,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
- 169, 169, 169, -92, 169, 169, 169, 169, 169, 169,
+ 169, 169, 169, -87, 169, 169, 169, 169, 169, 169,
169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
169, 169, 169, 169, 169, 169, 169, 169, 169, 169,
@@ -3322,7 +3164,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
{
39, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
+ -88, 170, 170, -88, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
@@ -3331,7 +3173,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, -93, 170, 170, 170, 170, 170, 170,
+ 170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
@@ -3353,6 +3195,164 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
+ 39, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ 171, -89, -89, 171, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89, -89, -89, -89, -89,
+ -89, -89, -89, -89, -89, -89
+
+ },
+
+ {
+ 39, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, -90, 172, 172, 172, 172, 172, 172,
+
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172
+ },
+
+ {
+ 39, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, -91, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173
+ },
+
+ {
+ 39, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, -92, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174
+ },
+
+ {
+ 39, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, -93, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175
+ },
+
+ {
39, -94, -94, -94, -94, -94, -94, -94, -94, -94,
-94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
-94, -94, -94, -94, -94, -94, -94, -94, -94, -94,
@@ -3389,8 +3389,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-95, -95, -95, -95, -95, -95, -95, -95, -95, -95,
-95, -95, -95, -95, -95, -95, -95, -95, -95, -95,
-95, -95, -95, -95, -95, -95, -95, -95, -95, -95,
- -95, -95, -95, -95, -95, -95, 171, -95, 172, 172,
- 172, 172, 172, 172, 172, 172, 172, 172, -95, -95,
+ -95, -95, -95, -95, -95, -95, 176, -95, 177, 177,
+ 177, 177, 177, 177, 177, 177, 177, 177, -95, -95,
-95, -95, -95, -95, -95, -95, -95, -95, -95, -95,
-95, -95, -95, -95, -95, -95, -95, -95, -95, -95,
-95, -95, -95, -95, -95, -95, -95, -95, -95, -95,
@@ -3421,8 +3421,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-96, -96, -96, -96, -96, -96, -96, -96, -96, -96,
-96, -96, -96, -96, -96, -96, -96, -96, -96, -96,
- -96, -96, -96, -96, -96, -96, -96, -96, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, -96, -96,
+ -96, -96, -96, -96, -96, -96, -96, -96, 178, 178,
+ 178, 178, 178, 178, 178, 178, 178, 178, -96, -96,
-96, -96, -96, -96, -96, -96, -96, -96, -96, -96,
-96, -96, -96, -96, -96, -96, -96, -96, -96, -96,
-96, -96, -96, -96, -96, -96, -96, -96, -96, -96,
@@ -3452,13 +3452,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
- -97, -97, -97, -97, -97, -97, 174, -97, 172, 172,
- 172, 172, 172, 172, 172, 172, 172, 172, -97, -97,
+ -97, -97, -97, -97, -97, -97, 179, -97, 177, 177,
+ 177, 177, 177, 177, 177, 177, 177, 177, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
- -97, -97, -97, 175, -97, -97, -97, -97, -97, -97,
+ -97, -97, -97, 180, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
-97, -97, -97, -97, -97, -97, -97, -97, -97, -97,
@@ -3484,8 +3484,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-98, -98, -98, -98, -98, -98, -98, -98, -98, -98,
-98, -98, -98, -98, -98, -98, -98, -98, -98, -98,
- -98, -98, -98, -98, -98, -98, 176, -98, 177, 177,
- 177, 177, 177, 177, 177, 177, 177, 177, -98, -98,
+ -98, -98, -98, -98, -98, -98, 181, -98, 182, 182,
+ 182, 182, 182, 182, 182, 182, 182, 182, -98, -98,
-98, -98, -98, -98, -98, -98, -98, -98, -98, -98,
-98, -98, -98, -98, -98, -98, -98, -98, -98, -98,
-98, -98, -98, -98, -98, -98, -98, -98, -98, -98,
@@ -3515,8 +3515,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-99, -99, -99, -99, -99, -99, -99, -99, -99, -99,
-99, -99, -99, -99, -99, -99, -99, -99, -99, -99,
-99, -99, -99, -99, -99, -99, -99, -99, -99, -99,
- -99, -99, -99, -99, -99, -99, -99, -99, 178, 178,
- 178, 178, 178, 178, 178, 178, 178, 178, -99, -99,
+ -99, -99, -99, -99, -99, -99, -99, -99, 183, 183,
+ 183, 183, 183, 183, 183, 183, 183, 183, -99, -99,
-99, -99, -99, -99, -99, -99, -99, -99, -99, -99,
-99, -99, -99, -99, -99, -99, -99, -99, -99, -99,
@@ -3547,12 +3547,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
- -100, -100, -100, -100, -100, -100, 179, -100, 177, 177,
- 177, 177, 177, 177, 177, 177, 177, 177, -100, -100,
+ -100, -100, -100, -100, -100, -100, 184, -100, 182, 182,
+ 182, 182, 182, 182, 182, 182, 182, 182, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
- -100, -100, -100, 180, -100, -100, -100, -100, -100, -100,
+ -100, -100, -100, 185, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
-100, -100, -100, -100, -100, -100, -100, -100, -100, -100,
@@ -3574,178 +3574,20 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
-
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, -101,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, -101, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
-
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
-
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181
- },
-
- {
- 39, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
-
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, -102, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
-
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182
- },
-
- {
- 39, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
-
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, -103, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
-
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
-
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183
- },
-
- {
- 39, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, -104,
-
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, -104, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
-
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184
-
- },
-
- {
- 39, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, -105, 185, 185, 185, 185, 185, 185,
-
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
-
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185
- },
-
- {
39, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
+ 186, 186, 186, 186, 186, 186, 186, 186, 186, -101,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, -106, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
+ 186, 186, 186, -101, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
@@ -3764,6 +3606,164 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
+ 39, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, -102, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187
+ },
+
+ {
+ 39, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, -103, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188
+ },
+
+ {
+ 39, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, -104,
+
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, -104, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189
+
+ },
+
+ {
+ 39, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, -105, 190, 190, 190, 190, 190, 190,
+
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190
+ },
+
+ {
+ 39, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, -106, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191
+ },
+
+ {
39, -107, -107, -107, -107, -107, -107, -107, -107, 107,
107, -107, -107, 107, -107, -107, -107, -107, -107, -107,
-107, -107, -107, -107, -107, -107, -107, -107, -107, -107,
@@ -3863,12 +3863,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, 116, -110, -110, -110, -110, -110, -110,
- -110, -110, -110, -110, -110, -110, -110, 187, 118, -110,
+ -110, -110, -110, -110, -110, -110, -110, 192, 118, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
- -110, 188, -110, -110, -110, -110, -110, -110, -110, -110,
+ -110, 193, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
-110, -110, -110, -110, -110, -110, -110, -110, -110, -110,
@@ -3958,7 +3958,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
-113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
- -113, -113, -113, -113, -113, -113, -113, -113, 189, 189,
+ -113, -113, -113, -113, -113, -113, -113, -113, 194, 194,
-113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
-113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
-113, -113, -113, -113, -113, -113, -113, -113, -113, -113,
@@ -4090,7 +4090,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
-117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
- -117, 190, -117, -117, -117, -117, -117, -117, -117, -117,
+ -117, 195, -117, -117, -117, -117, -117, -117, -117, -117,
-117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
-117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
-117, -117, -117, -117, -117, -117, -117, -117, -117, -117,
@@ -4218,7 +4218,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
-121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
-121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
- 191, -121, -121, -121, -121, -121, -121, -121, -121, -121,
+ 196, -121, -121, -121, -121, -121, -121, -121, -121, -121,
-121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
-121, -121, -121, -121, -121, -121, -121, -121, -121, -121,
@@ -4249,7 +4249,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
-122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
- -122, -122, -122, -122, -122, -122, -122, -122, 192, -122,
+ -122, -122, -122, -122, -122, -122, -122, -122, 197, -122,
-122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
-122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
-122, -122, -122, -122, -122, -122, -122, -122, -122, -122,
@@ -4274,7 +4274,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
-123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
- -123, -123, -123, -123, -123, -123, -123, -123, 193, 193,
+ -123, -123, -123, -123, -123, -123, -123, -123, 198, 198,
-123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
-123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
-123, -123, -123, -123, -123, -123, -123, -123, -123, -123,
@@ -4369,12 +4369,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
- -126, -126, -126, -126, -126, -126, -126, -126, -126, 194,
- 194, 194, 194, 194, -126, -126, -126, -126, -126, -126,
+ -126, -126, -126, -126, -126, -126, -126, -126, -126, 199,
+ 199, 199, 199, 199, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
- -126, -126, -126, -126, -126, -126, -126, -126, 195, -126,
+ -126, -126, -126, -126, -126, -126, -126, -126, 200, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
-126, -126, -126, -126, -126, -126, -126, -126, -126, -126,
@@ -4436,7 +4436,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
-128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
-128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
- -128, -128, -128, -128, -128, -128, 196, -128, -128, -128,
+ -128, -128, -128, -128, -128, -128, 201, -128, -128, -128,
-128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
-128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
-128, -128, -128, -128, -128, -128, -128, -128, -128, -128,
@@ -4471,7 +4471,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
-129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
-129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
- -129, -129, -129, -129, -129, 197, -129, -129, -129, -129,
+ -129, -129, -129, -129, -129, 202, -129, -129, -129, -129,
-129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
-129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
-129, -129, -129, -129, -129, -129, -129, -129, -129, -129,
@@ -4503,7 +4503,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
-130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
- -130, -130, -130, -130, -130, -130, -130, -130, 198, -130,
+ -130, -130, -130, -130, -130, -130, -130, -130, 203, -130,
-130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
-130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
-130, -130, -130, -130, -130, -130, -130, -130, -130, -130,
@@ -4660,7 +4660,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
-135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
- -135, -135, -135, -135, -135, -135, -135, -135, 199, -135,
+ -135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
-135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
-135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
-135, -135, -135, -135, -135, -135, -135, -135, -135, -135,
@@ -4691,8 +4691,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
-136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
-136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
+ -136, -136, -136, -136, -136, -136, -136, -136, 204, -136,
-136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
- 200, -136, -136, -136, -136, 201, -136, -136, -136, -136,
-136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
-136, -136, -136, -136, -136, -136, -136, -136, -136, -136,
@@ -4723,8 +4723,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
-137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
- -137, -137, -137, -137, -137, -137, -137, -137, -137, 202,
- -137, -137, -137, -137, -137, -137, -137, -137, 203, -137,
+ -137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
+ 205, -137, -137, -137, -137, 206, -137, -137, -137, -137,
-137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
-137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
-137, -137, -137, -137, -137, -137, -137, -137, -137, -137,
@@ -4754,8 +4754,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
- -138, -138, -138, -138, -138, -138, -138, -138, -138, 204,
- -138, -138, -138, -138, -138, -138, -138, -138, 205, -138,
+ -138, -138, -138, -138, -138, -138, -138, -138, -138, 207,
+ -138, -138, -138, -138, -138, -138, -138, -138, 208, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
@@ -4786,8 +4786,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
- -139, -139, -139, -139, -139, -139, -139, -139, 206, -139,
- -139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
+ -139, -139, -139, -139, -139, -139, -139, -139, -139, 209,
+ -139, -139, -139, -139, -139, -139, -139, -139, 210, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
@@ -4818,7 +4818,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
-140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
- -140, -140, -140, -140, -140, -140, -140, -140, 207, -140,
+ -140, -140, -140, -140, -140, -140, -140, -140, 211, -140,
-140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
-140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
-140, -140, -140, -140, -140, -140, -140, -140, -140, -140,
@@ -4849,8 +4849,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
-141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
-141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
- -141, -141, -141, -141, -141, -141, -141, -141, -141, 208,
- -141, -141, -141, -141, -141, -141, -141, -141, 209, -141,
+ -141, -141, -141, -141, -141, -141, -141, -141, 212, -141,
+ -141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
-141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
-141, -141, -141, -141, -141, -141, -141, -141, -141, -141,
@@ -4880,9 +4880,9 @@ static yyconst flex_int32_t yy_nxt[][256] =
-142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
-142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
- -142, -142, -142, -142, -142, -142, -142, -142, 210, 211,
- -142, -142, -142, -142, 212, -142, -142, -142, 213, -142,
- -142, -142, -142, -142, -142, 214, -142, -142, -142, -142,
+ -142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
+ -142, -142, -142, -142, -142, -142, -142, -142, -142, 213,
+ -142, 214, -142, -142, -142, -142, -142, -142, 215, -142,
-142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
-142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
-142, -142, -142, -142, -142, -142, -142, -142, -142, -142,
@@ -4911,9 +4911,9 @@ static yyconst flex_int32_t yy_nxt[][256] =
-143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
-143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
-143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
- -143, -143, -143, -143, -143, -143, -143, -143, 215, -143,
- -143, -143, -143, -143, 212, -143, -143, -143, 216, -143,
- -143, -143, -143, -143, -143, 214, -143, -143, -143, -143,
+ -143, -143, -143, -143, -143, -143, -143, -143, 216, 217,
+ -143, -143, -143, -143, 218, -143, -143, -143, 219, -143,
+ -143, -143, -143, -143, -143, 220, -143, -143, -143, -143,
-143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
-143, -143, -143, -143, -143, -143, -143, -143, -143, -143,
@@ -4937,15 +4937,15 @@ static yyconst flex_int32_t yy_nxt[][256] =
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
- -144, -144, -144, -144, -144, -144, -144, -144, 144, 144,
- 144, 144, 144, 144, -144, -144, -144, -144, -144, -144,
-
- -144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
+
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
+ -144, -144, -144, -144, -144, -144, -144, -144, 221, -144,
+ -144, -144, -144, -144, 218, -144, -144, -144, 222, -144,
+ -144, -144, -144, -144, -144, 220, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
-144, -144, -144, -144, -144, -144, -144, -144, -144, -144,
@@ -5001,8 +5001,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
-146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
- -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
- -146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
+ -146, -146, -146, -146, -146, -146, -146, -146, 146, 146,
+ 146, 146, 146, 146, -146, -146, -146, -146, -146, -146,
-146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
-146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
-146, -146, -146, -146, -146, -146, -146, -146, -146, -146,
@@ -5032,8 +5032,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
-147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
-147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
- -147, -147, -147, -147, -147, -147, -147, -147, -147, 217,
- 217, 217, 217, 217, -147, -147, -147, -147, -147, -147,
+ -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
+ -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
-147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
-147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
@@ -5095,8 +5095,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
-149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
-149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
- -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
- -149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
+ -149, -149, -149, -149, -149, -149, -149, -149, -149, 223,
+ 223, 223, 223, 223, -149, -149, -149, -149, -149, -149,
-149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
-149, -149, -149, -149, -149, -149, -149, -149, -149, -149,
@@ -5407,161 +5407,161 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
-
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, -159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
-
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
- 159, 159, 159, 159, 159, 159
-
- },
-
- {
- 39, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, -160, 160, 160, 160, 160, 160, 160,
-
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
-
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
- 160, 160, 160, 160, 160, 160
- },
-
- {
- 39, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
-
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, -161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
-
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
-
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161
- },
-
- {
- 39, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
-
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, -162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
-
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
- 162, 162, 162, 162, 162, 162
- },
-
- {
- 39, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
-
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, -163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
-
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
-
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163, 163, 163, 163, 163,
- 163, 163, 163, 163, 163, 163
+ 39, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159, -159, -159, -159, -159,
+ -159, -159, -159, -159, -159, -159
+
+ },
+
+ {
+ 39, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160, -160, -160, -160, -160,
+ -160, -160, -160, -160, -160, -160
+ },
+
+ {
+ 39, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+
+ -161, -161, -161, -161, -161, -161, -161, -161, -161, -161,
+ -161, -161, -161, -161, -161, -161
+ },
+
+ {
+ 39, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162, -162, -162, -162, -162,
+ -162, -162, -162, -162, -162, -162
+ },
+
+ {
+ 39, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163, -163, -163, -163, -163,
+ -163, -163, -163, -163, -163, -163
},
{
@@ -5598,7 +5598,6 @@ static yyconst flex_int32_t yy_nxt[][256] =
{
39, 165, 165, 165, 165, 165, 165, 165, 165, 165,
- -165, 165, 165, -165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
@@ -5607,6 +5606,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
+ 165, 165, 165, -165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
165, 165, 165, 165, 165, 165, 165, 165, 165, 165,
@@ -5628,35 +5628,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- 166, -166, -166, 166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
+ 39, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, -166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
- -166, -166, -166, -166, -166, -166, -166, -166, -166, -166,
- -166, -166, -166, -166, -166, -166
+ 166, 166, 166, 166, 166, 166, 166, 166, 166, 166,
+ 166, 166, 166, 166, 166, 166
},
{
@@ -5756,6 +5756,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
{
39, 170, 170, 170, 170, 170, 170, 170, 170, 170,
+ -170, 170, 170, -170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
@@ -5764,7 +5765,6 @@ static yyconst flex_int32_t yy_nxt[][256] =
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
- 170, 170, 170, -170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
170, 170, 170, 170, 170, 170, 170, 170, 170, 170,
@@ -5787,12 +5787,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
{
39, -171, -171, -171, -171, -171, -171, -171, -171, -171,
- -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
+ 171, -171, -171, 171, -171, -171, -171, -171, -171, -171,
-171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
-171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
- -171, -171, -171, -171, -171, -171, -171, -171, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, -171, -171,
+ -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
+ -171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
-171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
-171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
-171, -171, -171, -171, -171, -171, -171, -171, -171, -171,
@@ -5818,129 +5818,129 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, 174, -172, 172, 172,
- 172, 172, 172, 172, 172, 172, 172, 172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
-
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, 175, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
-
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172, -172, -172, -172, -172,
- -172, -172, -172, -172, -172, -172
- },
-
- {
- 39, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
-
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, 175, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
-
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
-
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173, -173, -173, -173, -173,
- -173, -173, -173, -173, -173, -173
- },
-
- {
- 39, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, 218, 218,
- 218, 218, 218, 218, 218, 218, 218, 218, -174, -174,
-
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, 175, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
-
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174, -174, -174, -174, -174,
- -174, -174, -174, -174, -174, -174
-
- },
-
- {
- 39, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
-
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
-
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175, -175, -175, -175, -175,
- -175, -175, -175, -175, -175, -175
+ 39, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, -172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
+ 172, 172, 172, 172, 172, 172
+ },
+
+ {
+ 39, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, -173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
+ 173, 173, 173, 173, 173, 173
+ },
+
+ {
+ 39, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, -174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
+ 174, 174, 174, 174, 174, 174
+
+ },
+
+ {
+ 39, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, -175, 175, 175, 175, 175, 175, 175,
+
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
+ 175, 175, 175, 175, 175, 175
},
{
@@ -6043,8 +6043,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
-179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
-179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
- -179, -179, -179, -179, -179, -179, -179, -179, 219, 219,
- 219, 219, 219, 219, 219, 219, 219, 219, -179, -179,
+ -179, -179, -179, -179, -179, -179, -179, -179, 224, 224,
+ 224, 224, 224, 224, 224, 224, 224, 224, -179, -179,
-179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
-179, -179, -179, -179, -179, -179, -179, -179, -179, -179,
@@ -6102,161 +6102,161 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
-
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, -181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, -181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
-
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
-
- 181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
- 181, 181, 181, 181, 181, 181
- },
-
- {
- 39, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
-
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, -182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
-
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182, 182, 182, 182, 182,
- 182, 182, 182, 182, 182, 182
- },
-
- {
- 39, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
-
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, -183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
-
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
-
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
- 183, 183, 183, 183, 183, 183
- },
-
- {
- 39, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, -184,
-
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, -184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
-
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184
-
- },
-
- {
- 39, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, -185, 185, 185, 185, 185, 185, 185,
-
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
-
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
- 185, 185, 185, 185, 185, 185
+ 39, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+
+ -181, -181, -181, -181, -181, -181, -181, -181, 183, 183,
+ 183, 183, 183, 183, 183, 183, 183, 183, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+
+ -181, -181, -181, -181, -181, -181, -181, -181, -181, -181,
+ -181, -181, -181, -181, -181, -181
+ },
+
+ {
+ 39, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, 184, -182, 182, 182,
+ 182, 182, 182, 182, 182, 182, 182, 182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, 185, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182, -182, -182, -182, -182,
+ -182, -182, -182, -182, -182, -182
+ },
+
+ {
+ 39, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, 183, 183,
+ 183, 183, 183, 183, 183, 183, 183, 183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, 185, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183, -183, -183, -183, -183,
+ -183, -183, -183, -183, -183, -183
+ },
+
+ {
+ 39, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, 225, 225,
+ 225, 225, 225, 225, 225, 225, 225, 225, -184, -184,
+
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, 185, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184, -184, -184, -184, -184,
+ -184, -184, -184, -184, -184, -184
+
+ },
+
+ {
+ 39, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185, -185, -185, -185, -185,
+ -185, -185, -185, -185, -185, -185
},
{
@@ -6266,14 +6266,14 @@ static yyconst flex_int32_t yy_nxt[][256] =
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
+ 186, 186, 186, 186, 186, 186, 186, 186, 186, -186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, -186, 186, 186, 186, 186, 186, 186,
- 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
+ 186, 186, 186, -186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
@@ -6292,161 +6292,161 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
-
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, 220, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
-
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187, -187, -187, -187, -187,
- -187, -187, -187, -187, -187, -187
- },
-
- {
- 39, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
-
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
-
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
-
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
- -188, -188, -188, -188, -188, -188
- },
-
- {
- 39, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
-
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
-
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189, -189, -189, -189, -189,
- -189, -189, -189, -189, -189, -189
-
- },
-
- {
- 39, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
-
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
-
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190, -190, -190, -190, -190,
- -190, -190, -190, -190, -190, -190
- },
-
- {
- 39, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
-
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, 221, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
-
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
-
- -191, -191, -191, -191, -191, -191, -191, -191, -191, -191,
- -191, -191, -191, -191, -191, -191
+ 39, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, -187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
+ 187, 187, 187, 187, 187, 187
+ },
+
+ {
+ 39, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, -188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
+ 188, 188, 188, 188, 188, 188
+ },
+
+ {
+ 39, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, -189,
+
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, -189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
+ 189, 189, 189, 189, 189, 189
+
+ },
+
+ {
+ 39, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, -190, 190, 190, 190, 190, 190, 190,
+
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
+ 190, 190, 190, 190, 190, 190
+ },
+
+ {
+ 39, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, -191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+
+ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
+ 191, 191, 191, 191, 191, 191
},
{
@@ -6460,7 +6460,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
-192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
- -192, -192, -192, -192, -192, -192, -192, -192, 222, -192,
+ -192, 226, -192, -192, -192, -192, -192, -192, -192, -192,
-192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
-192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
-192, -192, -192, -192, -192, -192, -192, -192, -192, -192,
@@ -6549,8 +6549,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
-195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
-195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
- -195, -195, -195, -195, -195, -195, -195, -195, -195, 223,
- 223, 223, 223, 223, -195, -195, -195, -195, -195, -195,
+ -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
+ -195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
-195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
-195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
-195, -195, -195, -195, -195, -195, -195, -195, -195, -195,
@@ -6585,9 +6585,9 @@ static yyconst flex_int32_t yy_nxt[][256] =
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
- -196, -196, -196, -196, -196, -196, 224, -196, -196, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
+ -196, -196, -196, -196, -196, -196, -196, -196, 227, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
-196, -196, -196, -196, -196, -196, -196, -196, -196, -196,
@@ -6614,13 +6614,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
- 225, -197, 225, -197, -197, -197, -197, -197, -197, -197,
+ -197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
+ -197, -197, -197, -197, -197, -197, -197, -197, 228, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
- -197, -197, -197, -197, -197, 226, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
-197, -197, -197, -197, -197, -197, -197, -197, -197, -197,
@@ -6651,7 +6651,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
-198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
-198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
- -198, -198, -198, -198, -198, -198, -198, -198, 227, -198,
+ -198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
-198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
-198, -198, -198, -198, -198, -198, -198, -198, -198, -198,
@@ -6683,7 +6683,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
-199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
-199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
- -199, -199, -199, -199, -199, -199, 228, -199, -199, -199,
+ -199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
-199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
-199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
-199, -199, -199, -199, -199, -199, -199, -199, -199, -199,
@@ -6707,8 +6707,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
-200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
-200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
- -200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
- -200, -200, -200, -200, -200, -200, -200, -200, 229, -200,
+ -200, -200, -200, -200, -200, -200, -200, -200, -200, 229,
+ 229, 229, 229, 229, -200, -200, -200, -200, -200, -200,
-200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
-200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
-200, -200, -200, -200, -200, -200, -200, -200, -200, -200,
@@ -6740,10 +6740,10 @@ static yyconst flex_int32_t yy_nxt[][256] =
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
- -201, -201, -201, -201, -201, -201, -201, -201, 230, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
+ -201, -201, -201, -201, -201, -201, 230, -201, -201, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
-201, -201, -201, -201, -201, -201, -201, -201, -201, -201,
@@ -6770,15 +6770,15 @@ static yyconst flex_int32_t yy_nxt[][256] =
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
- -202, -202, -202, -202, -202, -202, -202, -202, -202, 231,
- 231, 231, 231, 231, 231, 231, 231, 231, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-
+ 231, -202, 231, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
+
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
+ -202, -202, -202, -202, -202, 232, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
-202, -202, -202, -202, -202, -202, -202, -202, -202, -202,
@@ -6803,13 +6803,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
- -203, -203, -203, -203, -203, -203, -203, -203, 232, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
+ -203, -203, -203, -203, -203, -203, -203, -203, 233, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
-203, -203, -203, -203, -203, -203, -203, -203, -203, -203,
@@ -6833,16 +6833,16 @@ static yyconst flex_int32_t yy_nxt[][256] =
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
- -204, -204, -204, -204, -204, -204, -204, -204, -204, 233,
- 233, 233, 233, 233, 233, 233, 233, 233, -204, -204,
-
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
+
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
+ -204, -204, -204, -204, -204, -204, 234, -204, -204, -204,
+ -204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
-204, -204, -204, -204, -204, -204, -204, -204, -204, -204,
@@ -6866,7 +6866,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
-205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
-205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
- -205, -205, -205, -205, -205, -205, -205, -205, 234, -205,
+ -205, -205, -205, -205, -205, -205, -205, -205, 235, -205,
-205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
-205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
-205, -205, -205, -205, -205, -205, -205, -205, -205, -205,
@@ -6898,7 +6898,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
-206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
- -206, -206, -206, -206, -206, -206, -206, -206, 235, -206,
+ -206, -206, -206, -206, -206, -206, -206, -206, 236, -206,
-206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
-206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
-206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
@@ -6928,8 +6928,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
-207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
-207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
- -207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
- -207, -207, -207, -207, -207, -207, -207, -207, 236, -207,
+ -207, -207, -207, -207, -207, -207, -207, -207, -207, 237,
+ 237, 237, 237, 237, 237, 237, 237, 237, -207, -207,
-207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
-207, -207, -207, -207, -207, -207, -207, -207, -207, -207,
@@ -6960,8 +6960,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
- -208, -208, -208, -208, -208, -208, -208, -208, -208, 237,
- 237, 237, 237, 237, 237, 237, 237, 237, -208, -208,
+ -208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
+ -208, -208, -208, -208, -208, -208, -208, -208, 238, -208,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
-208, -208, -208, -208, -208, -208, -208, -208, -208, -208,
@@ -6991,8 +6991,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
-209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
-209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
- -209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
- -209, -209, -209, -209, -209, -209, -209, -209, 238, -209,
+ -209, -209, -209, -209, -209, -209, -209, -209, -209, 239,
+ 239, 239, 239, 239, 239, 239, 239, 239, -209, -209,
-209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
-209, -209, -209, -209, -209, -209, -209, -209, -209, -209,
@@ -7024,7 +7024,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
-210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
-210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
- -210, -210, -210, -210, -210, -210, -210, -210, 239, -210,
+ -210, -210, -210, -210, -210, -210, -210, -210, 240, -210,
-210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
-210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
-210, -210, -210, -210, -210, -210, -210, -210, -210, -210,
@@ -7056,11 +7056,11 @@ static yyconst flex_int32_t yy_nxt[][256] =
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
+ -211, -211, -211, -211, -211, -211, -211, -211, 241, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
- -211, -211, -211, -211, -211, -211, -211, -211, 240, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
-211, -211, -211, -211, -211, -211, -211, -211, -211, -211,
@@ -7087,7 +7087,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
- -212, -212, -212, -212, -212, -212, -212, -212, 241, -212,
+ -212, -212, -212, -212, -212, -212, -212, -212, 242, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
@@ -7095,7 +7095,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
- -212, -212, -212, 242, -212, 243, -212, -212, -212, -212,
+ -212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
-212, -212, -212, -212, -212, -212, -212, -212, -212, -212,
@@ -7118,14 +7118,14 @@ static yyconst flex_int32_t yy_nxt[][256] =
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
+ -213, -213, -213, -213, -213, -213, -213, -213, -213, 243,
+ 243, 243, 243, 243, 243, 243, 243, 243, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
- -213, -213, -213, -213, -213, -213, -213, -213, 244, -213,
- -213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
-213, -213, -213, -213, -213, -213, -213, -213, -213, -213,
@@ -7155,8 +7155,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
+ -214, -214, -214, -214, -214, -214, -214, -214, -214, 244,
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
- -214, -214, -214, -214, -214, -214, -214, -214, 245, -214,
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
-214, -214, -214, -214, -214, -214, -214, -214, -214, -214,
@@ -7182,7 +7182,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
-215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
-215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
- -215, -215, -215, -215, -215, -215, -215, -215, 246, -215,
+ -215, -215, -215, -215, -215, -215, -215, -215, 245, -215,
-215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
-215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
-215, -215, -215, -215, -215, -215, -215, -215, -215, -215,
@@ -7214,12 +7214,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
+ -216, -216, -216, -216, -216, -216, -216, -216, 246, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
- -216, -216, -216, -216, -216, -216, -216, -216, 247, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
-216, -216, -216, -216, -216, -216, -216, -216, -216, -216,
@@ -7250,7 +7250,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
-217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
- -217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
+ -217, -217, -217, -217, -217, -217, -217, -217, 247, -217,
-217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
-217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
-217, -217, -217, -217, -217, -217, -217, -217, -217, -217,
@@ -7276,16 +7276,16 @@ static yyconst flex_int32_t yy_nxt[][256] =
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
- -218, -218, -218, -218, -218, -218, -218, -218, 218, 218,
- 218, 218, 218, 218, 218, 218, 218, 218, -218, -218,
+ -218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
+ -218, -218, -218, -218, -218, -218, -218, -218, 248, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
- -218, -218, -218, 175, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
+
+ -218, -218, -218, 249, -218, 250, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
-218, -218, -218, -218, -218, -218, -218, -218, -218, -218,
@@ -7307,14 +7307,14 @@ static yyconst flex_int32_t yy_nxt[][256] =
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
- -219, -219, -219, -219, -219, -219, -219, -219, 219, 219,
- 219, 219, 219, 219, 219, 219, 219, 219, -219, -219,
+ -219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
+ -219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
- -219, -219, -219, 180, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
+ -219, -219, -219, -219, -219, -219, -219, -219, 251, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
-219, -219, -219, -219, -219, -219, -219, -219, -219, -219,
@@ -7346,7 +7346,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-220, -220, -220, -220, -220, -220, -220, -220, -220, -220,
-220, -220, -220, -220, -220, -220, -220, -220, -220, -220,
- -220, -220, -220, -220, -220, -220, -220, -220, -220, -220,
+ -220, -220, -220, -220, -220, -220, -220, -220, 252, -220,
-220, -220, -220, -220, -220, -220, -220, -220, -220, -220,
-220, -220, -220, -220, -220, -220, -220, -220, -220, -220,
-220, -220, -220, -220, -220, -220, -220, -220, -220, -220,
@@ -7372,11 +7372,11 @@ static yyconst flex_int32_t yy_nxt[][256] =
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
+ -221, -221, -221, -221, -221, -221, -221, -221, 253, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
- -221, -221, -221, -221, -221, -221, -221, -221, 248, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
-221, -221, -221, -221, -221, -221, -221, -221, -221, -221,
@@ -7408,8 +7408,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-222, -222, -222, -222, -222, -222, -222, -222, -222, -222,
-222, -222, -222, -222, -222, -222, -222, -222, -222, -222,
- -222, -222, -222, -222, -222, -222, -222, 249, -222, -222,
-222, -222, -222, -222, -222, -222, -222, -222, -222, -222,
+ -222, -222, -222, -222, -222, -222, -222, -222, 254, -222,
-222, -222, -222, -222, -222, -222, -222, -222, -222, -222,
-222, -222, -222, -222, -222, -222, -222, -222, -222, -222,
-222, -222, -222, -222, -222, -222, -222, -222, -222, -222,
@@ -7465,13 +7465,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
- -224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
- -224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
+ -224, -224, -224, -224, -224, -224, -224, -224, 224, 224,
+ 224, 224, 224, 224, 224, 224, 224, 224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
- -224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
+ -224, -224, -224, 180, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
-224, -224, -224, -224, -224, -224, -224, -224, -224, -224,
@@ -7497,12 +7497,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
+ -225, -225, -225, -225, -225, -225, -225, -225, 225, 225,
+ 225, 225, 225, 225, 225, 225, 225, 225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
- -225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
- -225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
- -225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
+ -225, -225, -225, 185, -225, -225, -225, -225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
-225, -225, -225, -225, -225, -225, -225, -225, -225, -225,
@@ -7531,7 +7531,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-226, -226, -226, -226, -226, -226, -226, -226, -226, -226,
-226, -226, -226, -226, -226, -226, -226, -226, -226, -226,
- 250, -226, 250, -226, -226, -226, -226, -226, -226, -226,
+ -226, -226, -226, -226, -226, -226, -226, -226, -226, -226,
-226, -226, -226, -226, -226, -226, -226, -226, -226, -226,
-226, -226, -226, -226, -226, -226, -226, -226, -226, -226,
-226, -226, -226, -226, -226, -226, -226, -226, -226, -226,
@@ -7566,7 +7566,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-227, -227, -227, -227, -227, -227, -227, -227, -227, -227,
-227, -227, -227, -227, -227, -227, -227, -227, -227, -227,
- -227, -227, -227, -227, -227, -227, -227, -227, -227, -227,
+ -227, -227, -227, -227, -227, -227, -227, -227, 255, -227,
-227, -227, -227, -227, -227, -227, -227, -227, -227, -227,
-227, -227, -227, -227, -227, -227, -227, -227, -227, -227,
-227, -227, -227, -227, -227, -227, -227, -227, -227, -227,
@@ -7593,12 +7593,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
- -228, -228, -228, -228, -228, -228, -228, -228, 251, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
- -228, -228, -228, -228, -228, -228, -228, -228, -228, 252,
+ -228, -228, -228, -228, -228, -228, -228, 256, -228, -228,
+ -228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
-228, -228, -228, -228, -228, -228, -228, -228, -228, -228,
@@ -7692,7 +7692,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
-231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
-231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
- -231, -231, -231, 253, -231, -231, -231, -231, -231, -231,
+ -231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
-231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
-231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
-231, -231, -231, -231, -231, -231, -231, -231, -231, -231,
@@ -7720,7 +7720,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-232, -232, -232, -232, -232, -232, -232, -232, -232, -232,
-232, -232, -232, -232, -232, -232, -232, -232, -232, -232,
-232, -232, -232, -232, -232, -232, -232, -232, -232, -232,
- -232, -232, -232, -232, -232, -232, -232, -232, -232, -232,
+ 257, -232, 257, -232, -232, -232, -232, -232, -232, -232,
-232, -232, -232, -232, -232, -232, -232, -232, -232, -232,
-232, -232, -232, -232, -232, -232, -232, -232, -232, -232,
@@ -7755,7 +7755,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
-233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
-233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
- -233, -233, -233, 254, -233, -233, -233, -233, -233, -233,
+ -233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
-233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
-233, -233, -233, -233, -233, -233, -233, -233, -233, -233,
@@ -7782,13 +7782,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
- -234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
+ -234, -234, -234, -234, -234, -234, -234, -234, 258, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
- -234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
+ -234, -234, -234, -234, -234, -234, -234, -234, -234, 259,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
-234, -234, -234, -234, -234, -234, -234, -234, -234, -234,
@@ -7813,7 +7813,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
-235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
-235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
- -235, -235, -235, -235, -235, -235, -235, -235, 255, 256,
+ -235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
-235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
-235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
-235, -235, -235, -235, -235, -235, -235, -235, -235, -235,
@@ -7845,7 +7845,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-236, -236, -236, -236, -236, -236, -236, -236, -236, -236,
-236, -236, -236, -236, -236, -236, -236, -236, -236, -236,
- -236, -236, -236, -236, -236, -236, -236, -236, 257, 258,
+ -236, -236, -236, -236, -236, -236, -236, -236, -236, -236,
-236, -236, -236, -236, -236, -236, -236, -236, -236, -236,
-236, -236, -236, -236, -236, -236, -236, -236, -236, -236,
-236, -236, -236, -236, -236, -236, -236, -236, -236, -236,
@@ -7882,7 +7882,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-237, -237, -237, -237, -237, -237, -237, -237, -237, -237,
-237, -237, -237, -237, -237, -237, -237, -237, -237, -237,
- -237, -237, -237, 259, -237, -237, -237, -237, -237, -237,
+ -237, -237, -237, 260, -237, -237, -237, -237, -237, -237,
-237, -237, -237, -237, -237, -237, -237, -237, -237, -237,
-237, -237, -237, -237, -237, -237, -237, -237, -237, -237,
-237, -237, -237, -237, -237, -237, -237, -237, -237, -237,
@@ -7939,13 +7939,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
- -239, -239, -239, -239, -239, -239, -239, -239, 260, 260,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
+
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
+ -239, -239, -239, 261, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
-239, -239, -239, -239, -239, -239, -239, -239, -239, -239,
@@ -7972,11 +7972,11 @@ static yyconst flex_int32_t yy_nxt[][256] =
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
- -240, -240, -240, -240, -240, -240, -240, -240, 261, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
- -240, -240, -240, -240, -240, -240, -240, 262, -240, -240,
+ -240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
+ -240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
-240, -240, -240, -240, -240, -240, -240, -240, -240, -240,
@@ -8003,15 +8003,15 @@ static yyconst flex_int32_t yy_nxt[][256] =
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
- -241, -241, -241, 263, -241, 263, -241, -241, -241, -241,
+ -241, -241, -241, -241, -241, -241, -241, -241, 262, 263,
+ -241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
+ -241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
+ -241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
- -241, -241, -241, -241, 264, -241, -241, -241, 264, 264,
- -241, 265, -241, -241, -241, -241, -241, 265, -241, -241,
- -241, -241, -241, 242, -241, 243, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
-241, -241, -241, -241, -241, -241, -241, -241, -241, -241,
@@ -8034,13 +8034,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
+ -242, -242, -242, -242, -242, -242, -242, -242, 264, 265,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
- -242, -242, -242, 266, -242, -242, -242, -242, -242, -242,
+ -242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
-242, -242, -242, -242, -242, -242, -242, -242, -242, -242,
@@ -8071,7 +8071,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
-243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
-243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
- -243, -243, -243, 267, -243, -243, -243, -243, -243, -243,
+ -243, -243, -243, 266, -243, -243, -243, -243, -243, -243,
-243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
-243, -243, -243, -243, -243, -243, -243, -243, -243, -243,
@@ -8098,14 +8098,14 @@ static yyconst flex_int32_t yy_nxt[][256] =
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
- -244, -244, -244, -244, -244, -244, -244, -244, 268, -244,
-
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
+
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
+ -244, -244, -244, -244, -244, -244, -244, 267, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
-244, -244, -244, -244, -244, -244, -244, -244, -244, -244,
@@ -8137,7 +8137,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-245, -245, -245, -245, -245, -245, -245, -245, -245, -245,
-245, -245, -245, -245, -245, -245, -245, -245, -245, -245,
- -245, -245, -245, -245, -245, -245, -245, 269, -245, -245,
+ -245, -245, -245, -245, -245, -245, -245, -245, -245, -245,
-245, -245, -245, -245, -245, -245, -245, -245, -245, -245,
-245, -245, -245, -245, -245, -245, -245, -245, -245, -245,
-245, -245, -245, -245, -245, -245, -245, -245, -245, -245,
@@ -8161,7 +8161,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-246, -246, -246, -246, -246, -246, -246, -246, -246, -246,
-246, -246, -246, -246, -246, -246, -246, -246, -246, -246,
- -246, -246, -246, -246, -246, -246, -246, -246, 270, 270,
+ -246, -246, -246, -246, -246, -246, -246, -246, 268, 268,
-246, -246, -246, -246, -246, -246, -246, -246, -246, -246,
-246, -246, -246, -246, -246, -246, -246, -246, -246, -246,
-246, -246, -246, -246, -246, -246, -246, -246, -246, -246,
@@ -8193,12 +8193,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
- -247, -247, -247, -247, -247, -247, -247, -247, 271, -247,
+ -247, -247, -247, -247, -247, -247, -247, -247, 269, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
- -247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
+ -247, -247, -247, -247, -247, -247, -247, 270, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
-247, -247, -247, -247, -247, -247, -247, -247, -247, -247,
@@ -8224,16 +8224,16 @@ static yyconst flex_int32_t yy_nxt[][256] =
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
+ -248, -248, -248, 271, -248, 271, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
- -248, -248, -248, -248, -248, -248, -248, 272, -248, -248,
- -248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
- -248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
+ -248, -248, -248, -248, 272, -248, -248, -248, 272, 272,
+ -248, 273, -248, -248, -248, -248, -248, 273, -248, -248,
- -248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
+ -248, -248, -248, 249, -248, 250, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
-248, -248, -248, -248, -248, -248, -248, -248, -248, -248,
@@ -8258,10 +8258,10 @@ static yyconst flex_int32_t yy_nxt[][256] =
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
- -249, -249, 273, -249, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
+ -249, -249, -249, 274, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
-249, -249, -249, -249, -249, -249, -249, -249, -249, -249,
@@ -8292,7 +8292,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-250, -250, -250, -250, -250, -250, -250, -250, -250, -250,
-250, -250, -250, -250, -250, -250, -250, -250, -250, -250,
-250, -250, -250, -250, -250, -250, -250, -250, -250, -250,
- -250, -250, -250, -250, -250, -250, -250, -250, -250, -250,
+ -250, -250, -250, 275, -250, -250, -250, -250, -250, -250,
-250, -250, -250, -250, -250, -250, -250, -250, -250, -250,
-250, -250, -250, -250, -250, -250, -250, -250, -250, -250,
@@ -8320,7 +8320,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-251, -251, -251, -251, -251, -251, -251, -251, -251, -251,
-251, -251, -251, -251, -251, -251, -251, -251, -251, -251,
- -251, -251, -251, -251, -251, -251, -251, -251, -251, -251,
+ -251, -251, -251, -251, -251, -251, -251, -251, 276, -251,
-251, -251, -251, -251, -251, -251, -251, -251, -251, -251,
-251, -251, -251, -251, -251, -251, -251, -251, -251, -251,
-251, -251, -251, -251, -251, -251, -251, -251, -251, -251,
@@ -8350,15 +8350,15 @@ static yyconst flex_int32_t yy_nxt[][256] =
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
- -252, -252, -252, -252, -252, -252, -252, -252, -252, 274,
- 274, 274, 274, 274, 274, 274, 274, 274, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
+
+ -252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
+ -252, -252, -252, -252, -252, -252, -252, 277, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
-252, -252, -252, -252, -252, -252, -252, -252, -252, -252,
@@ -8382,7 +8382,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-253, -253, -253, -253, -253, -253, -253, -253, -253, -253,
-253, -253, -253, -253, -253, -253, -253, -253, -253, -253,
- -253, -253, -253, -253, -253, -253, -253, -253, -253, -253,
+ -253, -253, -253, -253, -253, -253, -253, -253, 278, 278,
-253, -253, -253, -253, -253, -253, -253, -253, -253, -253,
-253, -253, -253, -253, -253, -253, -253, -253, -253, -253,
-253, -253, -253, -253, -253, -253, -253, -253, -253, -253,
@@ -8414,7 +8414,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-254, -254, -254, -254, -254, -254, -254, -254, -254, -254,
-254, -254, -254, -254, -254, -254, -254, -254, -254, -254,
-254, -254, -254, -254, -254, -254, -254, -254, -254, -254,
- -254, -254, -254, -254, -254, -254, -254, -254, -254, -254,
+ -254, -254, -254, -254, -254, -254, -254, -254, 279, -254,
-254, -254, -254, -254, -254, -254, -254, -254, -254, -254,
-254, -254, -254, -254, -254, -254, -254, -254, -254, -254,
@@ -8450,7 +8450,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-255, -255, -255, -255, -255, -255, -255, -255, -255, -255,
-255, -255, -255, -255, -255, -255, -255, -255, -255, -255,
-255, -255, -255, -255, -255, -255, -255, -255, -255, -255,
- -255, -255, -255, 275, -255, -255, -255, -255, -255, -255,
+ -255, -255, -255, -255, -255, -255, -255, 280, -255, -255,
-255, -255, -255, -255, -255, -255, -255, -255, -255, -255,
-255, -255, -255, -255, -255, -255, -255, -255, -255, -255,
@@ -8479,10 +8479,10 @@ static yyconst flex_int32_t yy_nxt[][256] =
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
+ -256, -256, 281, -256, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
- -256, -256, -256, 276, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
-256, -256, -256, -256, -256, -256, -256, -256, -256, -256,
@@ -8514,7 +8514,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-257, -257, -257, -257, -257, -257, -257, -257, -257, -257,
-257, -257, -257, -257, -257, -257, -257, -257, -257, -257,
- -257, -257, -257, 277, -257, -257, -257, -257, -257, -257,
+ -257, -257, -257, -257, -257, -257, -257, -257, -257, -257,
-257, -257, -257, -257, -257, -257, -257, -257, -257, -257,
-257, -257, -257, -257, -257, -257, -257, -257, -257, -257,
-257, -257, -257, -257, -257, -257, -257, -257, -257, -257,
@@ -8545,7 +8545,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
-258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
-258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
- -258, -258, -258, 278, -258, -258, -258, -258, -258, -258,
+ -258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
-258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
-258, -258, -258, -258, -258, -258, -258, -258, -258, -258,
@@ -8571,8 +8571,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
- -259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
- -259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
+ -259, -259, -259, -259, -259, -259, -259, -259, -259, 282,
+ 282, 282, 282, 282, 282, 282, 282, 282, -259, -259,
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
-259, -259, -259, -259, -259, -259, -259, -259, -259, -259,
@@ -8604,7 +8604,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
- -260, -260, -260, -260, -260, -260, -260, -260, -260, 279,
+ -260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
@@ -8612,7 +8612,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
- -260, -260, -260, 280, -260, 281, -260, -260, -260, -260,
+ -260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
-260, -260, -260, -260, -260, -260, -260, -260, -260, -260,
@@ -8635,7 +8635,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-261, -261, -261, -261, -261, -261, -261, -261, -261, -261,
-261, -261, -261, -261, -261, -261, -261, -261, -261, -261,
- -261, -261, -261, -261, -261, -261, -261, -261, 282, 282,
+ -261, -261, -261, -261, -261, -261, -261, -261, -261, -261,
-261, -261, -261, -261, -261, -261, -261, -261, -261, -261,
-261, -261, -261, -261, -261, -261, -261, -261, -261, -261,
-261, -261, -261, -261, -261, -261, -261, -261, -261, -261,
@@ -8667,12 +8667,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
- -262, -262, -262, -262, -262, -262, -262, -262, 283, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
-
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
+
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
+ -262, -262, -262, 283, -262, -262, -262, -262, -262, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
-262, -262, -262, -262, -262, -262, -262, -262, -262, -262,
@@ -8693,35 +8693,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
+ 39, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, -263, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, 284, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
- 284, 284, 284, -263, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263, -263, -263, -263, -263,
+ -263, -263, -263, -263, -263, -263
},
{
@@ -8729,16 +8729,16 @@ static yyconst flex_int32_t yy_nxt[][256] =
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
- -264, -264, -264, 263, -264, 263, -264, -264, -264, -264,
+ -264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
- -264, -264, -264, 266, -264, -264, -264, -264, -264, -264,
+ -264, -264, -264, 285, -264, -264, -264, -264, -264, -264,
+ -264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
- -264, -264, -264, 242, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
-264, -264, -264, -264, -264, -264, -264, -264, -264, -264,
@@ -8766,9 +8766,9 @@ static yyconst flex_int32_t yy_nxt[][256] =
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
- -265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
+ -265, -265, -265, 286, -265, -265, -265, -265, -265, -265,
- -265, -265, -265, -265, 264, -265, -265, -265, 264, -265,
+ -265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
-265, -265, -265, -265, -265, -265, -265, -265, -265, -265,
@@ -8832,7 +8832,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
-267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
-267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
- -267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
+ -267, -267, -267, -267, -267, 287, -267, -267, -267, -267,
-267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
-267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
-267, -267, -267, -267, -267, -267, -267, -267, -267, -267,
@@ -8857,7 +8857,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
- -268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
+ -268, -268, -268, -268, -268, -268, -268, -268, -268, 288,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
@@ -8865,7 +8865,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
- -268, -268, -268, -268, -268, 285, -268, -268, -268, -268,
+ -268, -268, -268, 289, -268, 290, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
-268, -268, -268, -268, -268, -268, -268, -268, -268, -268,
@@ -8887,7 +8887,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
- -269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
+ -269, -269, -269, -269, -269, -269, -269, -269, 291, 291,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
@@ -8895,7 +8895,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
- -269, -269, -269, -269, 286, -269, -269, -269, -269, -269,
+ -269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
-269, -269, -269, -269, -269, -269, -269, -269, -269, -269,
@@ -8920,7 +8920,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
- -270, -270, -270, -270, -270, -270, -270, -270, -270, 287,
+ -270, -270, -270, -270, -270, -270, -270, -270, 292, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
@@ -8928,7 +8928,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
- -270, -270, -270, 288, -270, 289, -270, -270, -270, -270,
+ -270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
-270, -270, -270, -270, -270, -270, -270, -270, -270, -270,
@@ -8946,35 +8946,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
+ 39, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, 290, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, -271, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, -271, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
- -271, -271, -271, -271, -271, -271, -271, -271, -271, -271,
- -271, -271, -271, -271, -271, -271
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293
},
{
@@ -8982,16 +8982,16 @@ static yyconst flex_int32_t yy_nxt[][256] =
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
+ -272, -272, -272, 271, -272, 271, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
- -272, -272, 291, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
+ -272, -272, -272, 274, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
- -272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
- -272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
+ -272, -272, -272, 249, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
-272, -272, -272, -272, -272, -272, -272, -272, -272, -272,
@@ -9020,7 +9020,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
-273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
-273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
- -273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
+ -273, -273, -273, -273, 272, -273, -273, -273, 272, -273,
-273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
-273, -273, -273, -273, -273, -273, -273, -273, -273, -273,
@@ -9051,7 +9051,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
-274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
-274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
- -274, -274, -274, 292, -274, -274, -274, -274, -274, -274,
+ -274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
-274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
-274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
-274, -274, -274, -274, -274, -274, -274, -274, -274, -274,
@@ -9109,6 +9109,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
+ -276, -276, -276, -276, -276, -276, -276, -276, 294, 295,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
@@ -9116,8 +9117,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
- -276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
- -276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
+ -276, -276, -276, -276, -276, 296, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
-276, -276, -276, -276, -276, -276, -276, -276, -276, -276,
@@ -9148,7 +9148,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
-277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
-277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
- -277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
+ -277, -277, -277, -277, 297, -277, -277, -277, -277, -277,
-277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
-277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
-277, -277, -277, -277, -277, -277, -277, -277, -277, -277,
@@ -9173,7 +9173,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
- -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
+ -278, -278, -278, -278, -278, -278, -278, -278, -278, 298,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
@@ -9181,7 +9181,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
- -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
+ -278, -278, -278, 299, -278, 300, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
-278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
@@ -9203,7 +9203,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
- -279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
+ -279, -279, -279, -279, -279, -279, -279, -279, 301, 302,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
@@ -9212,7 +9212,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
- -279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
+ -279, -279, -279, -279, -279, 303, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
-279, -279, -279, -279, -279, -279, -279, -279, -279, -279,
@@ -9237,10 +9237,10 @@ static yyconst flex_int32_t yy_nxt[][256] =
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
+ -280, -280, 304, -280, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
- -280, -280, -280, 293, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
-280, -280, -280, -280, -280, -280, -280, -280, -280, -280,
@@ -9272,7 +9272,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
-281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
-281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
- -281, -281, -281, 294, -281, -281, -281, -281, -281, -281,
+ -281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
-281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
-281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
-281, -281, -281, -281, -281, -281, -281, -281, -281, -281,
@@ -9299,15 +9299,15 @@ static yyconst flex_int32_t yy_nxt[][256] =
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
- -282, -282, -282, -282, -282, -282, -282, -282, -282, 295,
+ -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
+ -282, -282, -282, 305, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
- -282, -282, -282, 296, -282, 297, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
-282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
@@ -9330,7 +9330,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
-283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
- -283, -283, -283, -283, -283, -283, -283, -283, 298, 298,
+ -283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
-283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
-283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
-283, -283, -283, -283, -283, -283, -283, -283, -283, -283,
@@ -9357,34 +9357,34 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
+ 39, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 266, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 299, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284, 284, 284, 284, 284,
- 284, 284, 284, 284, 284, 284
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284, -284, -284, -284, -284,
+ -284, -284, -284, -284, -284, -284
},
@@ -9398,7 +9398,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-285, -285, -285, -285, -285, -285, -285, -285, -285, -285,
-285, -285, -285, -285, -285, -285, -285, -285, -285, -285,
-285, -285, -285, -285, -285, -285, -285, -285, -285, -285,
- -285, -285, -285, 300, -285, -285, -285, -285, -285, -285,
+ -285, -285, -285, -285, -285, -285, -285, -285, -285, -285,
-285, -285, -285, -285, -285, -285, -285, -285, -285, -285,
-285, -285, -285, -285, -285, -285, -285, -285, -285, -285,
@@ -9426,7 +9426,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-286, -286, -286, -286, -286, -286, -286, -286, -286, -286,
-286, -286, -286, -286, -286, -286, -286, -286, -286, -286,
- -286, -286, -286, -286, -286, -286, -286, -286, 301, -286,
+ -286, -286, -286, -286, -286, -286, -286, -286, -286, -286,
-286, -286, -286, -286, -286, -286, -286, -286, -286, -286,
-286, -286, -286, -286, -286, -286, -286, -286, -286, -286,
-286, -286, -286, -286, -286, -286, -286, -286, -286, -286,
@@ -9464,7 +9464,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
-287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
-287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
- -287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
+ -287, -287, -287, -287, -287, -287, 306, -287, -287, -287,
-287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
-287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
-287, -287, -287, -287, -287, -287, -287, -287, -287, -287,
@@ -9493,7 +9493,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-288, -288, -288, -288, -288, -288, -288, -288, -288, -288,
-288, -288, -288, -288, -288, -288, -288, -288, -288, -288,
-288, -288, -288, -288, -288, -288, -288, -288, -288, -288,
- -288, -288, -288, 302, -288, -288, -288, -288, -288, -288,
+ -288, -288, -288, -288, -288, -288, -288, -288, -288, -288,
-288, -288, -288, -288, -288, -288, -288, -288, -288, -288,
-288, -288, -288, -288, -288, -288, -288, -288, -288, -288,
@@ -9525,7 +9525,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-289, -289, -289, -289, -289, -289, -289, -289, -289, -289,
-289, -289, -289, -289, -289, -289, -289, -289, -289, -289,
-289, -289, -289, -289, -289, -289, -289, -289, -289, -289,
- -289, -289, -289, 303, -289, -289, -289, -289, -289, -289,
+ -289, -289, -289, 307, -289, -289, -289, -289, -289, -289,
-289, -289, -289, -289, -289, -289, -289, -289, -289, -289,
-289, -289, -289, -289, -289, -289, -289, -289, -289, -289,
-289, -289, -289, -289, -289, -289, -289, -289, -289, -289,
@@ -9556,7 +9556,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-290, -290, -290, -290, -290, -290, -290, -290, -290, -290,
-290, -290, -290, -290, -290, -290, -290, -290, -290, -290,
-290, -290, -290, -290, -290, -290, -290, -290, -290, -290,
- -290, -290, -290, 304, -290, -290, -290, -290, -290, -290,
+ -290, -290, -290, 308, -290, -290, -290, -290, -290, -290,
-290, -290, -290, -290, -290, -290, -290, -290, -290, -290,
-290, -290, -290, -290, -290, -290, -290, -290, -290, -290,
@@ -9584,14 +9584,14 @@ static yyconst flex_int32_t yy_nxt[][256] =
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
+ -291, -291, -291, -291, -291, -291, -291, -291, -291, 309,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
- -291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
- -291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
+ -291, -291, -291, 310, -291, 311, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
-291, -291, -291, -291, -291, -291, -291, -291, -291, -291,
@@ -9614,7 +9614,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
-292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
-292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
- -292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
+ -292, -292, -292, -292, -292, -292, -292, -292, 312, 312,
-292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
-292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
-292, -292, -292, -292, -292, -292, -292, -292, -292, -292,
@@ -9641,35 +9641,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
+ 39, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 274, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
+ 293, 293, 293, 313, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293, -293, -293, -293, -293,
- -293, -293, -293, -293, -293, -293
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293, 293, 293, 293, 293,
+ 293, 293, 293, 293, 293, 293
},
{
@@ -9683,7 +9683,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
-294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
-294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
- -294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
+ -294, -294, -294, 314, -294, -294, -294, -294, -294, -294,
-294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
-294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
-294, -294, -294, -294, -294, -294, -294, -294, -294, -294,
@@ -9714,7 +9714,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-295, -295, -295, -295, -295, -295, -295, -295, -295, -295,
-295, -295, -295, -295, -295, -295, -295, -295, -295, -295,
-295, -295, -295, -295, -295, -295, -295, -295, -295, -295,
- -295, -295, -295, -295, -295, -295, -295, -295, -295, -295,
+ -295, -295, -295, 315, -295, -295, -295, -295, -295, -295,
-295, -295, -295, -295, -295, -295, -295, -295, -295, -295,
-295, -295, -295, -295, -295, -295, -295, -295, -295, -295,
@@ -9746,7 +9746,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-296, -296, -296, -296, -296, -296, -296, -296, -296, -296,
-296, -296, -296, -296, -296, -296, -296, -296, -296, -296,
-296, -296, -296, -296, -296, -296, -296, -296, -296, -296,
- -296, -296, -296, 305, -296, -296, -296, -296, -296, -296,
+ -296, -296, -296, 316, -296, -296, -296, -296, -296, -296,
-296, -296, -296, -296, -296, -296, -296, -296, -296, -296,
-296, -296, -296, -296, -296, -296, -296, -296, -296, -296,
-296, -296, -296, -296, -296, -296, -296, -296, -296, -296,
@@ -9773,12 +9773,12 @@ static yyconst flex_int32_t yy_nxt[][256] =
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
- -297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
+ -297, -297, -297, -297, -297, -297, -297, -297, 317, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
- -297, -297, -297, 306, -297, -297, -297, -297, -297, -297,
+ -297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
-297, -297, -297, -297, -297, -297, -297, -297, -297, -297,
@@ -9805,7 +9805,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
- -298, -298, -298, -298, -298, -298, -298, -298, -298, 307,
+ -298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
@@ -9813,7 +9813,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
- -298, -298, -298, 308, -298, 309, -298, -298, -298, -298,
+ -298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
-298, -298, -298, -298, -298, -298, -298, -298, -298, -298,
@@ -9841,7 +9841,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-299, -299, -299, -299, -299, -299, -299, -299, -299, -299,
-299, -299, -299, -299, -299, -299, -299, -299, -299, -299,
-299, -299, -299, -299, -299, -299, -299, -299, -299, -299,
- -299, -299, -299, 266, -299, -299, -299, -299, -299, -299,
+ -299, -299, -299, 318, -299, -299, -299, -299, -299, -299,
-299, -299, -299, -299, -299, -299, -299, -299, -299, -299,
-299, -299, -299, -299, -299, -299, -299, -299, -299, -299,
-299, -299, -299, -299, -299, -299, -299, -299, -299, -299,
@@ -9872,7 +9872,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-300, -300, -300, -300, -300, -300, -300, -300, -300, -300,
-300, -300, -300, -300, -300, -300, -300, -300, -300, -300,
-300, -300, -300, -300, -300, -300, -300, -300, -300, -300,
- -300, -300, -300, -300, -300, -300, -300, -300, -300, -300,
+ -300, -300, -300, 319, -300, -300, -300, -300, -300, -300,
-300, -300, -300, -300, -300, -300, -300, -300, -300, -300,
-300, -300, -300, -300, -300, -300, -300, -300, -300, -300,
@@ -9899,13 +9899,13 @@ static yyconst flex_int32_t yy_nxt[][256] =
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
- -301, -301, -301, -301, -301, -301, -301, -301, 310, 310,
- 310, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
+ -301, -301, -301, 320, -301, -301, -301, -301, -301, -301,
+ -301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
-301, -301, -301, -301, -301, -301, -301, -301, -301, -301,
@@ -9936,7 +9936,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-302, -302, -302, -302, -302, -302, -302, -302, -302, -302,
-302, -302, -302, -302, -302, -302, -302, -302, -302, -302,
- -302, -302, -302, -302, -302, -302, -302, -302, -302, -302,
+ -302, -302, -302, 321, -302, -302, -302, -302, -302, -302,
-302, -302, -302, -302, -302, -302, -302, -302, -302, -302,
-302, -302, -302, -302, -302, -302, -302, -302, -302, -302,
-302, -302, -302, -302, -302, -302, -302, -302, -302, -302,
@@ -9967,7 +9967,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
-303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
-303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
- -303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
+ -303, -303, -303, 322, -303, -303, -303, -303, -303, -303,
-303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
-303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
@@ -10064,7 +10064,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-306, -306, -306, -306, -306, -306, -306, -306, -306, -306,
-306, -306, -306, -306, -306, -306, -306, -306, -306, -306,
-306, -306, -306, -306, -306, -306, -306, -306, -306, -306,
- -306, -306, -306, -306, -306, -306, -306, -306, -306, -306,
+ -306, 323, -306, -306, -306, -306, -306, -306, -306, -306,
-306, -306, -306, -306, -306, -306, -306, -306, -306, -306,
-306, -306, -306, -306, -306, -306, -306, -306, -306, -306,
@@ -10125,7 +10125,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-308, -308, -308, -308, -308, -308, -308, -308, -308, -308,
-308, -308, -308, -308, -308, -308, -308, -308, -308, -308,
-308, -308, -308, -308, -308, -308, -308, -308, -308, -308,
- -308, -308, -308, 311, -308, -308, -308, -308, -308, -308,
+ -308, -308, -308, -308, -308, -308, -308, -308, -308, -308,
-308, -308, -308, -308, -308, -308, -308, -308, -308, -308,
-308, -308, -308, -308, -308, -308, -308, -308, -308, -308,
@@ -10157,7 +10157,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
-309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
-309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
- -309, -309, -309, 312, -309, -309, -309, -309, -309, -309,
+ -309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
-309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
-309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
-309, -309, -309, -309, -309, -309, -309, -309, -309, -309,
@@ -10184,15 +10184,15 @@ static yyconst flex_int32_t yy_nxt[][256] =
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
- -310, -310, -310, -310, -310, -310, -310, -310, -310, 313,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
+ -310, -310, -310, 324, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
- -310, -310, -310, 314, -310, 315, -310, -310, -310, -310,
+ -310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
-310, -310, -310, -310, -310, -310, -310, -310, -310, -310,
@@ -10220,7 +10220,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
-311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
-311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
- -311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
+ -311, -311, -311, 325, -311, -311, -311, -311, -311, -311,
-311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
-311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
-311, -311, -311, -311, -311, -311, -311, -311, -311, -311,
@@ -10247,7 +10247,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
- -312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
+ -312, -312, -312, -312, -312, -312, -312, -312, -312, 326,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
@@ -10255,7 +10255,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
- -312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
+ -312, -312, -312, 327, -312, 328, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
-312, -312, -312, -312, -312, -312, -312, -312, -312, -312,
@@ -10273,35 +10273,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
+ 39, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, -313, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, 274, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313, -313, -313, -313, -313,
+ -313, -313, -313, -313, -313, -313
},
{
@@ -10315,7 +10315,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
-314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
-314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
- -314, -314, -314, 317, -314, -314, -314, -314, -314, -314,
+ -314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
-314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
-314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
-314, -314, -314, -314, -314, -314, -314, -314, -314, -314,
@@ -10346,7 +10346,7 @@ static yyconst flex_int32_t yy_nxt[][256] =
-315, -315, -315, -315, -315, -315, -315, -315, -315, -315,
-315, -315, -315, -315, -315, -315, -315, -315, -315, -315,
-315, -315, -315, -315, -315, -315, -315, -315, -315, -315,
- -315, -315, -315, 318, -315, -315, -315, -315, -315, -315,
+ -315, -315, -315, -315, -315, -315, -315, -315, -315, -315,
-315, -315, -315, -315, -315, -315, -315, -315, -315, -315,
-315, -315, -315, -315, -315, -315, -315, -315, -315, -315,
@@ -10368,35 +10368,35 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
+ 39, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
- 316, 316, 316, 316, 319, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
- 316, 316, 316, 316, 316, 316, 316, 316, 316, 316,
- 316, 316, 316, 316, 316, 316
+ -316, -316, -316, -316, -316, -316, -316, -316, -316, -316,
+ -316, -316, -316, -316, -316, -316
},
{
@@ -10404,8 +10404,8 @@ static yyconst flex_int32_t yy_nxt[][256] =
-317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
-317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
-317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
- -317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
- -317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
+ -317, -317, -317, -317, -317, -317, -317, -317, 329, 329,
+ 329, -317, -317, -317, -317, -317, -317, -317, -317, -317,
-317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
-317, -317, -317, -317, -317, -317, -317, -317, -317, -317,
@@ -10463,66 +10463,66 @@ static yyconst flex_int32_t yy_nxt[][256] =
},
{
- 39, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
-
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, -319, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
-
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320
-
- },
-
- {
- 39, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 321, 320, 320, 320, 320, 320, 320,
-
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
-
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
- 320, 320, 320, 320, 320, 320
+ 39, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319, -319, -319, -319, -319,
+ -319, -319, -319, -319, -319, -319
+
+ },
+
+ {
+ 39, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320, -320, -320, -320, -320,
+ -320, -320, -320, -320, -320, -320
},
{
@@ -10557,6 +10557,669 @@ static yyconst flex_int32_t yy_nxt[][256] =
-321, -321, -321, -321, -321, -321
},
+ {
+ 39, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322, -322, -322, -322, -322,
+ -322, -322, -322, -322, -322, -322
+ },
+
+ {
+ 39, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, 330, -323, -323, -323, -323,
+
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323, -323, -323, -323, -323,
+ -323, -323, -323, -323, -323, -323
+ },
+
+ {
+ 39, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324, -324, -324, -324, -324,
+ -324, -324, -324, -324, -324, -324
+
+ },
+
+ {
+ 39, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325, -325, -325, -325, -325,
+ -325, -325, -325, -325, -325, -325
+ },
+
+ {
+ 39, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+
+ -326, -326, -326, -326, -326, -326, -326, -326, -326, -326,
+ -326, -326, -326, -326, -326, -326
+ },
+
+ {
+ 39, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, 331, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327, -327, -327, -327, -327,
+ -327, -327, -327, -327, -327, -327
+ },
+
+ {
+ 39, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, 332, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328, -328, -328, -328, -328,
+ -328, -328, -328, -328, -328, -328
+ },
+
+ {
+ 39, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, 333,
+
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, 334, -329, 335, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329, -329, -329, -329, -329,
+ -329, -329, -329, -329, -329, -329
+
+ },
+
+ {
+ 39, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, 336, -330, -330, -330, -330, -330, -330,
+
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330, -330, -330, -330, -330,
+ -330, -330, -330, -330, -330, -330
+ },
+
+ {
+ 39, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+
+ -331, -331, -331, -331, -331, -331, -331, -331, -331, -331,
+ -331, -331, -331, -331, -331, -331
+ },
+
+ {
+ 39, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332, -332, -332, -332, -332,
+ -332, -332, -332, -332, -332, -332
+ },
+
+ {
+ 39, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, -333, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337
+ },
+
+ {
+ 39, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, 338, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334, -334, -334, -334, -334,
+ -334, -334, -334, -334, -334, -334
+
+ },
+
+ {
+ 39, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, 339, -335, -335, -335, -335, -335, -335,
+
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335, -335, -335, -335, -335,
+ -335, -335, -335, -335, -335, -335
+ },
+
+ {
+ 39, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+
+ -336, -336, -336, -336, -336, -336, -336, -336, -336, -336,
+ -336, -336, -336, -336, -336, -336
+ },
+
+ {
+ 39, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 340, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
+ 337, 337, 337, 337, 337, 337
+ },
+
+ {
+ 39, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338, -338, -338, -338, -338,
+ -338, -338, -338, -338, -338, -338
+ },
+
+ {
+ 39, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339, -339, -339, -339, -339,
+ -339, -339, -339, -339, -339, -339
+
+ },
+
+ {
+ 39, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, -340, 341, 341, 341, 341, 341, 341,
+
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341
+ },
+
+ {
+ 39, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 342, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+
+ 341, 341, 341, 341, 341, 341, 341, 341, 341, 341,
+ 341, 341, 341, 341, 341, 341
+ },
+
+ {
+ 39, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342, -342, -342, -342, -342,
+ -342, -342, -342, -342, -342, -342
+ },
+
} ;
static yy_state_type yy_get_previous_state (void );
@@ -10577,8 +11240,8 @@ static void yy_fatal_error (yyconst char msg[] );
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
-#define YY_NUM_RULES 141
-#define YY_END_OF_BUFFER 142
+#define YY_NUM_RULES 151
+#define YY_END_OF_BUFFER 152
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@@ -10586,50 +11249,52 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int32_t yy_accept[322] =
+static yyconst flex_int32_t yy_accept[343] =
{ 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3, 3, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 142, 140,
- 63, 97, 140, 90, 1, 118, 76, 140, 120, 94,
- 79, 78, 123, 103, 122, 140, 115, 128, 82, 134,
- 132, 68, 140, 29, 119, 75, 112, 112, 125, 124,
- 81, 135, 133, 131, 89, 91, 65, 60, 61, 121,
- 36, 54, 37, 38, 34, 35, 39, 3, 2, 30,
- 31, 32, 33, 141, 141, 141, 141, 141, 141, 141,
-
- 46, 141, 141, 51, 141, 141, 63, 102, 101, 98,
- 118, 77, 116, 113, 120, 93, 96, 92, 40, 80,
- 0, 0, 117, 28, 114, 114, 115, 0, 0, 0,
- 129, 130, 69, 70, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 119, 62, 71, 0, 126, 127, 83,
- 84, 85, 86, 87, 88, 66, 67, 64, 36, 37,
- 38, 34, 35, 39, 3, 2, 30, 31, 32, 33,
- 0, 0, 0, 0, 41, 0, 0, 0, 0, 43,
- 46, 47, 48, 51, 52, 53, 100, 42, 116, 95,
- 0, 0, 117, 73, 0, 106, 108, 104, 0, 0,
-
+ 0, 0, 0, 0, 0, 0, 0, 0, 152, 150,
+ 69, 107, 150, 100, 1, 128, 83, 150, 130, 104,
+ 86, 85, 133, 113, 132, 150, 125, 138, 89, 144,
+ 142, 75, 150, 29, 129, 82, 122, 122, 135, 134,
+ 88, 145, 143, 141, 99, 101, 72, 66, 67, 131,
+ 36, 58, 37, 38, 34, 35, 39, 3, 2, 30,
+ 31, 32, 33, 151, 151, 151, 151, 151, 151, 151,
+
+ 48, 151, 151, 55, 151, 151, 69, 112, 111, 108,
+ 128, 84, 126, 123, 130, 103, 106, 102, 40, 87,
+ 0, 0, 127, 28, 124, 124, 125, 0, 0, 0,
+ 139, 140, 76, 77, 64, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 65, 129, 68, 78, 0, 136,
+ 137, 90, 91, 92, 93, 94, 95, 96, 97, 98,
+ 73, 74, 71, 36, 37, 38, 34, 35, 39, 3,
+ 2, 30, 31, 32, 33, 0, 0, 0, 0, 41,
+ 0, 0, 0, 0, 43, 48, 49, 50, 55, 56,
+ 57, 110, 42, 126, 105, 0, 0, 127, 80, 0,
+
+ 116, 118, 114, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 72, 0, 0, 99,
- 0, 0, 74, 107, 109, 110, 105, 0, 5, 4,
- 0, 24, 0, 23, 0, 0, 0, 22, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 111,
- 25, 0, 20, 19, 0, 0, 0, 0, 18, 0,
- 0, 0, 0, 0, 0, 58, 59, 45, 0, 0,
- 50, 0, 26, 0, 137, 136, 139, 138, 6, 0,
- 0, 0, 0, 0, 0, 0, 7, 0, 0, 0,
- 27, 21, 10, 14, 8, 0, 0, 0, 0, 44,
-
- 0, 11, 15, 49, 12, 16, 9, 0, 0, 0,
- 13, 17, 0, 0, 0, 0, 56, 57, 0, 0,
- 55
+ 0, 0, 79, 0, 0, 109, 0, 0, 81, 117,
+ 119, 120, 115, 0, 5, 4, 0, 24, 0, 23,
+ 0, 0, 0, 0, 22, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 121, 25, 0, 20,
+ 19, 0, 0, 0, 0, 18, 0, 0, 0, 0,
+ 0, 0, 0, 62, 63, 47, 0, 0, 54, 0,
+ 26, 0, 147, 146, 149, 148, 0, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 7, 0, 0,
+
+ 0, 0, 0, 27, 21, 0, 10, 14, 8, 0,
+ 0, 0, 0, 45, 44, 46, 0, 11, 15, 52,
+ 51, 53, 0, 12, 16, 9, 0, 0, 0, 0,
+ 13, 17, 0, 0, 0, 70, 0, 60, 61, 0,
+ 0, 59
} ;
static yy_state_type yy_last_accepting_state;
static char *yy_last_accepting_cpos;
-static yyconst yy_state_type yy_NUL_trans[322] =
+static yyconst yy_state_type yy_NUL_trans[343] =
{ 0,
40, 40, 81, 81, 83, 83, 84, 84, 85, 85,
86, 86, 87, 87, 88, 88, 90, 90, 91, 91,
@@ -10639,19 +11304,19 @@ static yyconst yy_state_type yy_NUL_trans[322] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 159, 0, 160, 161, 162, 163, 164, 165, 0, 167,
- 168, 169, 170, 0, 0, 0, 0, 0, 0, 0,
+ 164, 0, 165, 166, 167, 168, 169, 170, 0, 172,
+ 173, 174, 175, 0, 0, 0, 0, 0, 0, 0,
- 181, 182, 183, 184, 185, 186, 0, 0, 0, 0,
+ 186, 187, 188, 189, 190, 191, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 159, 160,
- 161, 162, 163, 164, 165, 0, 167, 168, 169, 170,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 181, 182, 183, 184, 185, 186, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 164, 165, 166, 167, 168, 169, 170,
+ 0, 172, 173, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 186, 187, 188, 189, 190,
+ 191, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -10659,14 +11324,16 @@ static yyconst yy_state_type yy_NUL_trans[322] =
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 284, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 284, 0, 0, 0, 0, 0, 0,
+ 293, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 293, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 316, 0, 0, 316, 0, 0, 320, 320,
- 0
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 337, 0, 0, 0, 337, 0, 0, 341,
+ 341, 0
} ;
extern int gabc_notes_determination__flex_debug;
@@ -10686,7 +11353,7 @@ char *gabc_notes_determination_text;
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the note parser.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -10732,8 +11399,17 @@ static char *before_ledger_length = NULL;
static unsigned short ledger_var[2] = { 0, 0 };
static unsigned char staff_lines;
static signed char highest_pitch;
+static signed char high_ledger_line_pitch;
static bool legacy_oriscus_orientation;
static unsigned short he_adjustment_index[2] = { 0, 0 };
+static signed char bracket_low_pitch, bracket_high_pitch;
+static unsigned short left_bracket_texverb = 0;
+
+#define LEDGER(WHICH, SPECIFICITY, VALUE) \
+ if (LEDGER_##SPECIFICITY > current_note->WHICH##_ledger_specificity) { \
+ current_note->WHICH##_ledger_line = VALUE; \
+ current_note->WHICH##_ledger_specificity = LEDGER_##SPECIFICITY; \
+ }
typedef struct slur_info {
unsigned short var;
@@ -10774,7 +11450,7 @@ static __inline int letter_to_pitch_adjustment(const char letter) {
/* LCOV_EXCL_STOP */
}
-static __inline char pitch_letter_to_height(const char pitch) {
+static __inline signed char pitch_letter_to_height(const char pitch) {
char result = pitch - 'a' + LOWEST_PITCH;
if (pitch == 'p') {
--result;
@@ -10784,6 +11460,14 @@ static __inline char pitch_letter_to_height(const char pitch) {
_("invalid pitch for %u lines: %c"), (unsigned int)staff_lines,
pitch);
}
+ if (left_bracket_texverb) {
+ if (result < bracket_low_pitch) {
+ bracket_low_pitch = result;
+ }
+ if (result > bracket_high_pitch) {
+ bracket_high_pitch = result;
+ }
+ }
return result;
}
@@ -10803,21 +11487,25 @@ static gregorio_shape punctum_inclinatum(const char orientation)
static __inline void lex_add_note(int i, gregorio_shape shape, char signs,
char liquescentia)
{
+ signed char height = pitch_letter_to_height(tolower(
+ (unsigned char)gabc_notes_determination_text[i]));
+
nbof_isolated_episema = 0;
- gregorio_add_note(&current_note, pitch_letter_to_height(
- tolower((unsigned char)gabc_notes_determination_text[i])),
- shape, signs, liquescentia, NULL, &notes_lloc);
+ gregorio_add_note(&current_note, height, shape, signs, liquescentia, NULL,
+ &notes_lloc);
current_note->he_adjustment_index[SO_OVER] = he_adjustment_index[SO_OVER];
current_note->he_adjustment_index[SO_UNDER] = he_adjustment_index[SO_UNDER];
- if (ledger_var[SO_OVER]) {
- current_note->supposed_high_ledger_line = true;
- current_note->explicit_high_ledger_line = true;
+ if (height >= high_ledger_line_pitch) {
+ LEDGER(high, DRAWN, true);
+ } else if (ledger_var[SO_OVER]) {
+ LEDGER(high, EXPLICIT, true);
}
- if (ledger_var[SO_UNDER]) {
- current_note->supposed_low_ledger_line = true;
- current_note->explicit_low_ledger_line = true;
+ if (height <= LOW_LEDGER_LINE_PITCH) {
+ LEDGER(low, DRAWN, true);
+ } else if (ledger_var[SO_UNDER]) {
+ LEDGER(low, EXPLICIT, true);
}
}
@@ -11174,15 +11862,88 @@ static void end_var_slur(void)
slur[index].start = NULL;
}
-void parse_hepisema_adjustment(void)
+static void left_bracket(void)
{
- /* [xh:yz{]
- * - x indicates l(ow) or h(igh) episema
- * - y (optional) for l(ow), m(iddle), or h(igh) vertical position in space
- * - z (optional) nudge dimension that starts with + or -
- * - { (optional) starts a group
- * - at least one of y, z, or w must be provided
- * - if y and z are omitted, : may be omitted
+ if (left_bracket_texverb) {
+ gregorio_message(
+ _("cannot add a left bracket before closing the previous one"),
+ "left_bracket", VERBOSITY_ERROR, 0);
+ return;
+ }
+
+ /* when setting the left bracket, temporarily store the point-and-click
+ * information in the texverb */
+ if (notes_lloc.generate_point_and_click) {
+ gregorio_snprintf(tempstr, sizeof tempstr, "%u:%u:%u",
+ notes_lloc.first_line, notes_lloc.first_offset,
+ notes_lloc.first_column + 1);
+ } else {
+ tempstr[0] = '\0';
+ }
+ left_bracket_texverb = gregorio_add_texverb_as_note(&current_note,
+ gregorio_strdup(tempstr), GRE_TEXVERB_GLYPH, &notes_lloc);
+ bracket_low_pitch = MAX_PITCH;
+ bracket_high_pitch = LOWEST_PITCH;
+}
+
+static void right_bracket(void)
+{
+ if (!left_bracket_texverb) {
+ gregorio_message(
+ _("cannot add a right bracket without a matching left bracket"),
+ "right_bracket", VERBOSITY_ERROR, 0);
+ return;
+ }
+
+ if (bracket_high_pitch < bracket_low_pitch) {
+ gregorio_message(
+ _("cannot add brackets without notes between them"),
+ "right_bracket", VERBOSITY_ERROR, 0);
+ return;
+ }
+
+ gregorio_snprintf(tempstr, sizeof tempstr, "\\GreBracket{0}{%d}{%d}{%s}",
+ bracket_low_pitch, bracket_high_pitch,
+ gregorio_texverb(left_bracket_texverb));
+ gregorio_change_texverb(left_bracket_texverb, gregorio_strdup(tempstr));
+
+ if (notes_lloc.generate_point_and_click) {
+ gregorio_snprintf(tempstr, sizeof tempstr,
+ "\\GreBracket{1}{%d}{%d}{%u:%u:%u}", bracket_low_pitch,
+ bracket_high_pitch, notes_lloc.first_line,
+ notes_lloc.first_offset, notes_lloc.first_column + 1);
+ } else {
+ gregorio_snprintf(tempstr, sizeof tempstr,
+ "\\GreBracket{1}{%d}{%d}{}", bracket_low_pitch,
+ bracket_high_pitch);
+ }
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(tempstr),
+ GRE_TEXVERB_GLYPH, &notes_lloc);
+
+ left_bracket_texverb = 0;
+}
+
+static void parse_hepisema_adjustment(void)
+{
+ /* See https://github.com/gregorio-project/gregorio/issues/872
+ *
+ * [xh:yzw]
+ *
+ * - x is o(ver) or u(under)
+ * - y is optional and is
+ * - l for low in the space (chooses ol or ul depending on x)
+ * - m for middle of the space
+ * - h for high in the space (chooses oh or uh depending on x)
+ * - ol for low in the space as if the episema were over the note
+ * - oh for high in the space as if the episema were over the note
+ * - ul for low in the space as if the episema were under the note
+ * - uh for high in the space as if the episema were under the note
+ * - z is an optional nudge and must start with + or -
+ * - w is optional and may be { to start a range or } to end a range.
+ *
+ * at least one of y, z, or w must be provided
+ * if y and z are omitted, the : may be omitted
+ * y and z are not permitted when w is }
*/
const gregorio_sign_orientation index = letter_to_sign_orientation(
@@ -11270,7 +12031,7 @@ void parse_hepisema_adjustment(void)
}
}
-void end_hepisema_adjustment(void)
+static void end_hepisema_adjustment(void)
{
/* [xh:}]
* - x indicates l(ow) or h(igh) episema
@@ -11324,6 +12085,11 @@ void gabc_det_notes_finish(void)
ledger_var[orientation] = 0;
}
}
+ if (left_bracket_texverb) {
+ gregorio_message(_("unclosed left bracket"),
+ "gabc_det_notes_finish", VERBOSITY_ERROR, 0);
+ left_bracket_texverb = 0;
+ }
}
@@ -11342,7 +12108,7 @@ void gabc_det_notes_finish(void)
-#line 11346 "gabc/gabc-notes-determination-l.c"
+#line 12112 "gabc/gabc-notes-determination-l.c"
#define INITIAL 0
#define texverbnote 1
@@ -11580,9 +12346,9 @@ YY_DECL
}
{
-#line 680 "gabc/gabc-notes-determination.l"
+#line 779 "gabc/gabc-notes-determination.l"
-#line 11586 "gabc/gabc-notes-determination-l.c"
+#line 12352 "gabc/gabc-notes-determination-l.c"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -11629,7 +12395,7 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
YY_RULE_SETUP
-#line 681 "gabc/gabc-notes-determination.l"
+#line 780 "gabc/gabc-notes-determination.l"
{
BEGIN(comments);
}
@@ -11637,35 +12403,35 @@ YY_RULE_SETUP
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 684 "gabc/gabc-notes-determination.l"
+#line 783 "gabc/gabc-notes-determination.l"
{
BEGIN(INITIAL);
}
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 687 "gabc/gabc-notes-determination.l"
+#line 786 "gabc/gabc-notes-determination.l"
{
/* ignored */
}
YY_BREAK
case 4:
YY_RULE_SETUP
-#line 690 "gabc/gabc-notes-determination.l"
+#line 789 "gabc/gabc-notes-determination.l"
{
BEGIN(choralsign);
}
YY_BREAK
case 5:
YY_RULE_SETUP
-#line 693 "gabc/gabc-notes-determination.l"
+#line 792 "gabc/gabc-notes-determination.l"
{
BEGIN(choralnabc);
}
YY_BREAK
case 6:
YY_RULE_SETUP
-#line 696 "gabc/gabc-notes-determination.l"
+#line 795 "gabc/gabc-notes-determination.l"
{
char_for_brace = gabc_notes_determination_text[4]-'0';
BEGIN(overbrace);
@@ -11673,7 +12439,7 @@ YY_RULE_SETUP
YY_BREAK
case 7:
YY_RULE_SETUP
-#line 700 "gabc/gabc-notes-determination.l"
+#line 799 "gabc/gabc-notes-determination.l"
{
char_for_brace = gabc_notes_determination_text[4]-'0';
BEGIN(underbrace);
@@ -11681,7 +12447,7 @@ YY_RULE_SETUP
YY_BREAK
case 8:
YY_RULE_SETUP
-#line 704 "gabc/gabc-notes-determination.l"
+#line 803 "gabc/gabc-notes-determination.l"
{
char_for_brace = gabc_notes_determination_text[5]-'0';
BEGIN(overcurlybrace);
@@ -11689,7 +12455,7 @@ YY_RULE_SETUP
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 708 "gabc/gabc-notes-determination.l"
+#line 807 "gabc/gabc-notes-determination.l"
{
char_for_brace = gabc_notes_determination_text[6]-'0';
BEGIN(overcurlyaccentusbrace);
@@ -11697,7 +12463,7 @@ YY_RULE_SETUP
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 712 "gabc/gabc-notes-determination.l"
+#line 811 "gabc/gabc-notes-determination.l"
{
if (overbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11717,7 +12483,7 @@ YY_RULE_SETUP
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 728 "gabc/gabc-notes-determination.l"
+#line 827 "gabc/gabc-notes-determination.l"
{
if (underbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11736,7 +12502,7 @@ YY_RULE_SETUP
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 743 "gabc/gabc-notes-determination.l"
+#line 842 "gabc/gabc-notes-determination.l"
{
if (overbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11756,7 +12522,7 @@ YY_RULE_SETUP
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 759 "gabc/gabc-notes-determination.l"
+#line 858 "gabc/gabc-notes-determination.l"
{
if (overbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11776,7 +12542,7 @@ YY_RULE_SETUP
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 775 "gabc/gabc-notes-determination.l"
+#line 874 "gabc/gabc-notes-determination.l"
{
if (!overbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11799,7 +12565,7 @@ YY_RULE_SETUP
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 794 "gabc/gabc-notes-determination.l"
+#line 893 "gabc/gabc-notes-determination.l"
{
if (!underbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11817,7 +12583,7 @@ YY_RULE_SETUP
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 808 "gabc/gabc-notes-determination.l"
+#line 907 "gabc/gabc-notes-determination.l"
{
if (!overbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11840,7 +12606,7 @@ YY_RULE_SETUP
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 827 "gabc/gabc-notes-determination.l"
+#line 926 "gabc/gabc-notes-determination.l"
{
if (!overbrace_var) {
gregorio_messagef("gabc_notes_determination", VERBOSITY_ERROR, 0,
@@ -11863,99 +12629,99 @@ YY_RULE_SETUP
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 846 "gabc/gabc-notes-determination.l"
+#line 945 "gabc/gabc-notes-determination.l"
{
if (notesmacros[gabc_notes_determination_text[3]-'0']) {
- gregorio_add_texverb_to_note(current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[3]-'0']));
+ gregorio_add_texverb_to_note(current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[3]-'0']));
} else error();
}
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 852 "gabc/gabc-notes-determination.l"
+#line 951 "gabc/gabc-notes-determination.l"
{
if (notesmacros[gabc_notes_determination_text[3]-'0']) {
- gregorio_add_texverb_as_note(&current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[3]-'0']),
- GRE_TEXVERB_GLYPH, &notes_lloc);
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[3]-'0']),
+ GRE_TEXVERB_GLYPH, &notes_lloc);
} else error();
}
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 859 "gabc/gabc-notes-determination.l"
+#line 958 "gabc/gabc-notes-determination.l"
{
if (notesmacros[gabc_notes_determination_text[3]-'0']) {
- gregorio_add_texverb_as_note(&current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[3]-'0']),
- GRE_TEXVERB_ELEMENT, &notes_lloc);
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[3]-'0']),
+ GRE_TEXVERB_ELEMENT, &notes_lloc);
} else error();
}
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 866 "gabc/gabc-notes-determination.l"
+#line 965 "gabc/gabc-notes-determination.l"
{
if (notesmacros[gabc_notes_determination_text[5]-'0']) {
- gregorio_add_texverb_as_note(&current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[5]-'0']),
- GRE_TEXVERB_ELEMENT, &notes_lloc);
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[5]-'0']),
+ GRE_TEXVERB_ELEMENT, &notes_lloc);
} else error();
}
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 873 "gabc/gabc-notes-determination.l"
+#line 972 "gabc/gabc-notes-determination.l"
{
BEGIN(texverbnote);
}
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 876 "gabc/gabc-notes-determination.l"
+#line 975 "gabc/gabc-notes-determination.l"
{
BEGIN(texverbglyph);
}
YY_BREAK
case 24:
YY_RULE_SETUP
-#line 879 "gabc/gabc-notes-determination.l"
+#line 978 "gabc/gabc-notes-determination.l"
{
BEGIN(texverbelement);
}
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 882 "gabc/gabc-notes-determination.l"
+#line 981 "gabc/gabc-notes-determination.l"
{
BEGIN(alt);
}
YY_BREAK
case 26:
YY_RULE_SETUP
-#line 885 "gabc/gabc-notes-determination.l"
+#line 984 "gabc/gabc-notes-determination.l"
{
gregorio_add_nlba_as_note(&current_note, NLBA_BEGINNING, &notes_lloc);
}
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 888 "gabc/gabc-notes-determination.l"
+#line 987 "gabc/gabc-notes-determination.l"
{
gregorio_add_nlba_as_note(&current_note, NLBA_END, &notes_lloc);
}
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 891 "gabc/gabc-notes-determination.l"
+#line 990 "gabc/gabc-notes-determination.l"
{
gregorio_start_autofuse(&current_note, &notes_lloc);
}
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 894 "gabc/gabc-notes-determination.l"
+#line 993 "gabc/gabc-notes-determination.l"
{
gregorio_end_autofuse(&current_note, &notes_lloc);
}
@@ -11963,7 +12729,7 @@ YY_RULE_SETUP
case 30:
/* rule 30 can match eol */
YY_RULE_SETUP
-#line 897 "gabc/gabc-notes-determination.l"
+#line 996 "gabc/gabc-notes-determination.l"
{
gregorio_snprintf(tempstr, sizeof tempstr,
"\\GreOverBrace{%s}{0pt}{0pt}{%d}",
@@ -11974,7 +12740,7 @@ YY_RULE_SETUP
case 31:
/* rule 31 can match eol */
YY_RULE_SETUP
-#line 903 "gabc/gabc-notes-determination.l"
+#line 1002 "gabc/gabc-notes-determination.l"
{
gregorio_snprintf(tempstr, sizeof tempstr,
"\\GreUnderBrace{%s}{0pt}{0pt}{%d}",
@@ -11985,7 +12751,7 @@ YY_RULE_SETUP
case 32:
/* rule 32 can match eol */
YY_RULE_SETUP
-#line 909 "gabc/gabc-notes-determination.l"
+#line 1008 "gabc/gabc-notes-determination.l"
{
gregorio_snprintf(tempstr, sizeof tempstr,
"\\GreOverCurlyBrace{%s}{0pt}{0pt}{%d}{0}",
@@ -11996,7 +12762,7 @@ YY_RULE_SETUP
case 33:
/* rule 33 can match eol */
YY_RULE_SETUP
-#line 915 "gabc/gabc-notes-determination.l"
+#line 1014 "gabc/gabc-notes-determination.l"
{
gregorio_snprintf(tempstr, sizeof tempstr,
"\\GreOverCurlyBrace{%s}{0pt}{0pt}{%d}{1}",
@@ -12007,7 +12773,7 @@ YY_RULE_SETUP
case 34:
/* rule 34 can match eol */
YY_RULE_SETUP
-#line 921 "gabc/gabc-notes-determination.l"
+#line 1020 "gabc/gabc-notes-determination.l"
{
gregorio_add_cs_to_note(&current_note,
gregorio_strdup(gabc_notes_determination_text), false);
@@ -12016,7 +12782,7 @@ YY_RULE_SETUP
case 35:
/* rule 35 can match eol */
YY_RULE_SETUP
-#line 925 "gabc/gabc-notes-determination.l"
+#line 1024 "gabc/gabc-notes-determination.l"
{
gregorio_add_cs_to_note(&current_note,
gregorio_strdup(gabc_notes_determination_text), true);
@@ -12025,7 +12791,7 @@ YY_RULE_SETUP
case 36:
/* rule 36 can match eol */
YY_RULE_SETUP
-#line 929 "gabc/gabc-notes-determination.l"
+#line 1028 "gabc/gabc-notes-determination.l"
{
gregorio_add_texverb_to_note(current_note,
gregorio_strdup(gabc_notes_determination_text));
@@ -12034,7 +12800,7 @@ YY_RULE_SETUP
case 37:
/* rule 37 can match eol */
YY_RULE_SETUP
-#line 933 "gabc/gabc-notes-determination.l"
+#line 1032 "gabc/gabc-notes-determination.l"
{
gregorio_add_texverb_as_note(&current_note,
gregorio_strdup(gabc_notes_determination_text),
@@ -12044,7 +12810,7 @@ YY_RULE_SETUP
case 38:
/* rule 38 can match eol */
YY_RULE_SETUP
-#line 938 "gabc/gabc-notes-determination.l"
+#line 1037 "gabc/gabc-notes-determination.l"
{
gregorio_add_texverb_as_note(&current_note,
gregorio_strdup(gabc_notes_determination_text),
@@ -12054,7 +12820,7 @@ YY_RULE_SETUP
case 39:
/* rule 39 can match eol */
YY_RULE_SETUP
-#line 943 "gabc/gabc-notes-determination.l"
+#line 1042 "gabc/gabc-notes-determination.l"
{
gregorio_add_texverb_as_note(&current_note,
gregorio_strdup(gabc_notes_determination_text), GRE_ALT,
@@ -12063,7 +12829,7 @@ YY_RULE_SETUP
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 948 "gabc/gabc-notes-determination.l"
+#line 1047 "gabc/gabc-notes-determination.l"
{
BEGIN(space);
}
@@ -12073,7 +12839,7 @@ case 41:
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up gabc_notes_determination_text again */
YY_RULE_SETUP
-#line 951 "gabc/gabc-notes-determination.l"
+#line 1050 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_AD_HOC_SPACE,
gregorio_strdup(gabc_notes_determination_text), &notes_lloc);
@@ -12081,7 +12847,7 @@ YY_RULE_SETUP
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 955 "gabc/gabc-notes-determination.l"
+#line 1054 "gabc/gabc-notes-determination.l"
{
BEGIN(nbspace);
}
@@ -12091,7 +12857,7 @@ case 43:
(yy_c_buf_p) = yy_cp -= 1;
YY_DO_BEFORE_ACTION; /* set up gabc_notes_determination_text again */
YY_RULE_SETUP
-#line 958 "gabc/gabc-notes-determination.l"
+#line 1057 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_AD_HOC_SPACE_NB,
gregorio_strdup(gabc_notes_determination_text), &notes_lloc);
@@ -12099,221 +12865,270 @@ YY_RULE_SETUP
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 962 "gabc/gabc-notes-determination.l"
+#line 1061 "gabc/gabc-notes-determination.l"
{
- end_variable_ledger(SO_OVER);
+ LEDGER(high, EXPLICITLY_DRAWN, true);
}
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 965 "gabc/gabc-notes-determination.l"
+#line 1064 "gabc/gabc-notes-determination.l"
{
- BEGIN(overledger);
+ LEDGER(high, EXPLICITLY_DRAWN, false);
}
YY_BREAK
case 46:
-/* rule 46 can match eol */
YY_RULE_SETUP
-#line 968 "gabc/gabc-notes-determination.l"
+#line 1067 "gabc/gabc-notes-determination.l"
+{
+ end_variable_ledger(SO_OVER);
+ }
+ YY_BREAK
+case 47:
+YY_RULE_SETUP
+#line 1070 "gabc/gabc-notes-determination.l"
+{
+ BEGIN(overledger);
+ }
+ YY_BREAK
+case 48:
+/* rule 48 can match eol */
+YY_RULE_SETUP
+#line 1073 "gabc/gabc-notes-determination.l"
{
save_before_ledger(gabc_notes_determination_text);
BEGIN(overledger2);
}
YY_BREAK
-case 47:
-/* rule 47 can match eol */
+case 49:
+/* rule 49 can match eol */
YY_RULE_SETUP
-#line 972 "gabc/gabc-notes-determination.l"
+#line 1077 "gabc/gabc-notes-determination.l"
{
add_static_ledger(SO_OVER, gabc_notes_determination_text);
BEGIN(endledger);
}
YY_BREAK
-case 48:
-/* rule 48 can match eol */
+case 50:
+/* rule 50 can match eol */
YY_RULE_SETUP
-#line 976 "gabc/gabc-notes-determination.l"
+#line 1081 "gabc/gabc-notes-determination.l"
{
add_variable_ledger(SO_OVER, gabc_notes_determination_text);
BEGIN(endledger);
}
YY_BREAK
-case 49:
+case 51:
+YY_RULE_SETUP
+#line 1085 "gabc/gabc-notes-determination.l"
+{
+ LEDGER(low, EXPLICITLY_DRAWN, true);
+ }
+ YY_BREAK
+case 52:
+YY_RULE_SETUP
+#line 1088 "gabc/gabc-notes-determination.l"
+{
+ LEDGER(low, EXPLICITLY_DRAWN, false);
+ }
+ YY_BREAK
+case 53:
YY_RULE_SETUP
-#line 980 "gabc/gabc-notes-determination.l"
+#line 1091 "gabc/gabc-notes-determination.l"
{
end_variable_ledger(SO_UNDER);
}
YY_BREAK
-case 50:
+case 54:
YY_RULE_SETUP
-#line 983 "gabc/gabc-notes-determination.l"
+#line 1094 "gabc/gabc-notes-determination.l"
{
BEGIN(underledger);
}
YY_BREAK
-case 51:
-/* rule 51 can match eol */
+case 55:
+/* rule 55 can match eol */
YY_RULE_SETUP
-#line 986 "gabc/gabc-notes-determination.l"
+#line 1097 "gabc/gabc-notes-determination.l"
{
save_before_ledger(gabc_notes_determination_text);
BEGIN(underledger2);
}
YY_BREAK
-case 52:
-/* rule 52 can match eol */
+case 56:
+/* rule 56 can match eol */
YY_RULE_SETUP
-#line 990 "gabc/gabc-notes-determination.l"
+#line 1101 "gabc/gabc-notes-determination.l"
{
add_static_ledger(SO_UNDER, gabc_notes_determination_text);
BEGIN(endledger);
}
YY_BREAK
-case 53:
-/* rule 53 can match eol */
+case 57:
+/* rule 57 can match eol */
YY_RULE_SETUP
-#line 994 "gabc/gabc-notes-determination.l"
+#line 1105 "gabc/gabc-notes-determination.l"
{
add_variable_ledger(SO_UNDER, gabc_notes_determination_text);
BEGIN(endledger);
}
YY_BREAK
-case 54:
+case 58:
YY_RULE_SETUP
-#line 998 "gabc/gabc-notes-determination.l"
+#line 1109 "gabc/gabc-notes-determination.l"
{
BEGIN(INITIAL);
}
YY_BREAK
-case 55:
-/* rule 55 can match eol */
+case 59:
+/* rule 59 can match eol */
YY_RULE_SETUP
-#line 1001 "gabc/gabc-notes-determination.l"
+#line 1112 "gabc/gabc-notes-determination.l"
{
parse_slur();
}
YY_BREAK
-case 56:
+case 60:
YY_RULE_SETUP
-#line 1004 "gabc/gabc-notes-determination.l"
+#line 1115 "gabc/gabc-notes-determination.l"
{
start_var_slur();
}
YY_BREAK
-case 57:
+case 61:
YY_RULE_SETUP
-#line 1007 "gabc/gabc-notes-determination.l"
+#line 1118 "gabc/gabc-notes-determination.l"
{
end_var_slur();
}
YY_BREAK
-case 58:
-/* rule 58 can match eol */
+case 62:
+/* rule 62 can match eol */
YY_RULE_SETUP
-#line 1014 "gabc/gabc-notes-determination.l"
+#line 1125 "gabc/gabc-notes-determination.l"
{
parse_hepisema_adjustment();
}
YY_BREAK
-case 59:
+case 63:
YY_RULE_SETUP
-#line 1017 "gabc/gabc-notes-determination.l"
+#line 1128 "gabc/gabc-notes-determination.l"
{
end_hepisema_adjustment();
}
YY_BREAK
-case 60:
+case 64:
YY_RULE_SETUP
-#line 1020 "gabc/gabc-notes-determination.l"
+#line 1131 "gabc/gabc-notes-determination.l"
+{
+ left_bracket();
+ }
+ YY_BREAK
+case 65:
+YY_RULE_SETUP
+#line 1134 "gabc/gabc-notes-determination.l"
+{
+ right_bracket();
+ }
+ YY_BREAK
+case 66:
+YY_RULE_SETUP
+#line 1137 "gabc/gabc-notes-determination.l"
{
gregorio_add_texverb_as_note(&current_note,
gregorio_strdup("\\hbox to 0pt{"), GRE_TEXVERB_ELEMENT,
&notes_lloc);
}
YY_BREAK
-case 61:
+case 67:
YY_RULE_SETUP
-#line 1025 "gabc/gabc-notes-determination.l"
+#line 1142 "gabc/gabc-notes-determination.l"
{
gregorio_add_texverb_as_note(&current_note,
gregorio_strdup("\\hss%\n}%\n\\GreNoBreak\\relax "),
GRE_TEXVERB_ELEMENT, &notes_lloc);
}
YY_BREAK
-case 62:
+case 68:
YY_RULE_SETUP
-#line 1030 "gabc/gabc-notes-determination.l"
+#line 1147 "gabc/gabc-notes-determination.l"
{
gregorio_add_manual_custos_as_note(&current_note,
pitch_letter_to_height(gabc_notes_determination_text[0]),
&notes_lloc);
}
YY_BREAK
-case 63:
-/* rule 63 can match eol */
+case 69:
+/* rule 69 can match eol */
YY_RULE_SETUP
-#line 1035 "gabc/gabc-notes-determination.l"
+#line 1152 "gabc/gabc-notes-determination.l"
/* ignore ends of line and tabs */;
YY_BREAK
-case 64:
+case 70:
YY_RULE_SETUP
-#line 1036 "gabc/gabc-notes-determination.l"
+#line 1153 "gabc/gabc-notes-determination.l"
{
- gregorio_add_custo_as_note(&current_note, &notes_lloc);
+ gregorio_add_suppress_custos_as_note(&current_note, &notes_lloc);
}
YY_BREAK
-case 65:
+case 71:
+YY_RULE_SETUP
+#line 1156 "gabc/gabc-notes-determination.l"
+{
+ gregorio_add_custos_as_note(&current_note, &notes_lloc);
+ }
+ YY_BREAK
+case 72:
YY_RULE_SETUP
-#line 1039 "gabc/gabc-notes-determination.l"
+#line 1159 "gabc/gabc-notes-determination.l"
{
gregorio_add_end_of_line_as_note(&current_note, false, false, false,
&notes_lloc);
}
YY_BREAK
-case 66:
+case 73:
YY_RULE_SETUP
-#line 1043 "gabc/gabc-notes-determination.l"
+#line 1163 "gabc/gabc-notes-determination.l"
{
gregorio_add_end_of_line_as_note(&current_note, false, true, true,
&notes_lloc);
}
YY_BREAK
-case 67:
+case 74:
YY_RULE_SETUP
-#line 1047 "gabc/gabc-notes-determination.l"
+#line 1167 "gabc/gabc-notes-determination.l"
{
gregorio_add_end_of_line_as_note(&current_note, false, true, false,
&notes_lloc);
}
YY_BREAK
-case 68:
+case 75:
YY_RULE_SETUP
-#line 1051 "gabc/gabc-notes-determination.l"
+#line 1171 "gabc/gabc-notes-determination.l"
{
gregorio_add_end_of_line_as_note(&current_note, true, false, false,
&notes_lloc);
}
YY_BREAK
-case 69:
+case 76:
YY_RULE_SETUP
-#line 1055 "gabc/gabc-notes-determination.l"
+#line 1175 "gabc/gabc-notes-determination.l"
{
gregorio_add_end_of_line_as_note(&current_note, true, true, true,
&notes_lloc);
}
YY_BREAK
-case 70:
+case 77:
YY_RULE_SETUP
-#line 1059 "gabc/gabc-notes-determination.l"
+#line 1179 "gabc/gabc-notes-determination.l"
{
gregorio_add_end_of_line_as_note(&current_note, true, true, false,
&notes_lloc);
}
YY_BREAK
-case 71:
+case 78:
YY_RULE_SETUP
-#line 1063 "gabc/gabc-notes-determination.l"
+#line 1183 "gabc/gabc-notes-determination.l"
{
gregorio_add_clef_as_note(&current_note,
letter_to_clef(gabc_notes_determination_text[0]),
@@ -12321,9 +13136,9 @@ YY_RULE_SETUP
&notes_lloc);
}
YY_BREAK
-case 72:
+case 79:
YY_RULE_SETUP
-#line 1069 "gabc/gabc-notes-determination.l"
+#line 1189 "gabc/gabc-notes-determination.l"
{
gregorio_add_clef_as_note(&current_note,
letter_to_clef(gabc_notes_determination_text[0]),
@@ -12331,545 +13146,562 @@ YY_RULE_SETUP
&notes_lloc);
}
YY_BREAK
-case 73:
+case 80:
YY_RULE_SETUP
-#line 1075 "gabc/gabc-notes-determination.l"
+#line 1195 "gabc/gabc-notes-determination.l"
{
gregorio_add_secondary_clef_to_note(current_note,
letter_to_clef(gabc_notes_determination_text[1]),
parse_clef_line(gabc_notes_determination_text[2]), false);
}
YY_BREAK
-case 74:
+case 81:
YY_RULE_SETUP
-#line 1080 "gabc/gabc-notes-determination.l"
+#line 1200 "gabc/gabc-notes-determination.l"
{
gregorio_add_secondary_clef_to_note(current_note,
letter_to_clef(gabc_notes_determination_text[1]),
parse_clef_line(gabc_notes_determination_text[3]), true);
}
YY_BREAK
-case 75:
+case 82:
YY_RULE_SETUP
-#line 1085 "gabc/gabc-notes-determination.l"
+#line 1205 "gabc/gabc-notes-determination.l"
{
add_bar_as_note(B_VIRGULA);
}
YY_BREAK
-case 76:
+case 83:
YY_RULE_SETUP
-#line 1088 "gabc/gabc-notes-determination.l"
+#line 1208 "gabc/gabc-notes-determination.l"
{
add_bar_as_note(B_DIVISIO_MINIMA);
}
YY_BREAK
-case 77:
+case 84:
YY_RULE_SETUP
-#line 1091 "gabc/gabc-notes-determination.l"
+#line 1211 "gabc/gabc-notes-determination.l"
{
add_bar_as_note(parse_dominican_bar(gabc_notes_determination_text[1]));
}
YY_BREAK
-case 78:
+case 85:
YY_RULE_SETUP
-#line 1094 "gabc/gabc-notes-determination.l"
+#line 1214 "gabc/gabc-notes-determination.l"
{
add_bar_as_note(B_DIVISIO_MINOR);
}
YY_BREAK
-case 79:
+case 86:
YY_RULE_SETUP
-#line 1097 "gabc/gabc-notes-determination.l"
+#line 1217 "gabc/gabc-notes-determination.l"
{
add_bar_as_note(B_DIVISIO_MAIOR);
}
YY_BREAK
-case 80:
+case 87:
YY_RULE_SETUP
-#line 1100 "gabc/gabc-notes-determination.l"
+#line 1220 "gabc/gabc-notes-determination.l"
{
add_bar_as_note(B_DIVISIO_FINALIS);
}
YY_BREAK
-case 81:
+case 88:
YY_RULE_SETUP
-#line 1103 "gabc/gabc-notes-determination.l"
+#line 1223 "gabc/gabc-notes-determination.l"
{
- gregorio_change_shape(current_note, S_PUNCTUM_CAVUM,
- legacy_oriscus_orientation);
+ gregorio_add_cavum(current_note);
}
YY_BREAK
-case 82:
+case 89:
YY_RULE_SETUP
-#line 1107 "gabc/gabc-notes-determination.l"
+#line 1226 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_LINEA_PUNCTUM,
legacy_oriscus_orientation);
}
YY_BREAK
-case 83:
+case 90:
YY_RULE_SETUP
-#line 1111 "gabc/gabc-notes-determination.l"
+#line 1230 "gabc/gabc-notes-determination.l"
{
- gregorio_change_shape(current_note, S_LINEA_PUNCTUM_CAVUM,
+ gregorio_change_shape(current_note, S_LINEA_PUNCTUM,
legacy_oriscus_orientation);
+ gregorio_add_cavum(current_note);
}
YY_BREAK
-case 84:
+case 91:
YY_RULE_SETUP
-#line 1115 "gabc/gabc-notes-determination.l"
+#line 1235 "gabc/gabc-notes-determination.l"
{
gregorio_add_special_sign(current_note, _ACCENTUS);
}
YY_BREAK
-case 85:
+case 92:
YY_RULE_SETUP
-#line 1118 "gabc/gabc-notes-determination.l"
+#line 1238 "gabc/gabc-notes-determination.l"
{
gregorio_add_special_sign(current_note, _ACCENTUS_REVERSUS);
}
YY_BREAK
-case 86:
+case 93:
YY_RULE_SETUP
-#line 1121 "gabc/gabc-notes-determination.l"
+#line 1241 "gabc/gabc-notes-determination.l"
{
gregorio_add_special_sign(current_note, _CIRCULUS);
}
YY_BREAK
-case 87:
+case 94:
YY_RULE_SETUP
-#line 1124 "gabc/gabc-notes-determination.l"
+#line 1244 "gabc/gabc-notes-determination.l"
{
gregorio_add_special_sign(current_note, _SEMI_CIRCULUS);
}
YY_BREAK
-case 88:
+case 95:
YY_RULE_SETUP
-#line 1127 "gabc/gabc-notes-determination.l"
+#line 1247 "gabc/gabc-notes-determination.l"
{
gregorio_add_special_sign(current_note, _SEMI_CIRCULUS_REVERSUS);
}
YY_BREAK
-case 89:
+case 96:
YY_RULE_SETUP
-#line 1130 "gabc/gabc-notes-determination.l"
+#line 1250 "gabc/gabc-notes-determination.l"
+{
+ gregorio_add_special_sign(current_note, _MUSICA_FICTA_FLAT);
+ }
+ YY_BREAK
+case 97:
+YY_RULE_SETUP
+#line 1253 "gabc/gabc-notes-determination.l"
+{
+ gregorio_add_special_sign(current_note, _MUSICA_FICTA_NATURAL);
+ }
+ YY_BREAK
+case 98:
+YY_RULE_SETUP
+#line 1256 "gabc/gabc-notes-determination.l"
+{
+ gregorio_add_special_sign(current_note, _MUSICA_FICTA_SHARP);
+ }
+ YY_BREAK
+case 99:
+YY_RULE_SETUP
+#line 1259 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_FLAT, legacy_oriscus_orientation);
}
YY_BREAK
-case 90:
+case 100:
YY_RULE_SETUP
-#line 1133 "gabc/gabc-notes-determination.l"
+#line 1262 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_SHARP,
legacy_oriscus_orientation);
}
YY_BREAK
-case 91:
+case 101:
YY_RULE_SETUP
-#line 1137 "gabc/gabc-notes-determination.l"
+#line 1266 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_NATURAL,
legacy_oriscus_orientation);
}
YY_BREAK
-case 92:
+case 102:
YY_RULE_SETUP
-#line 1141 "gabc/gabc-notes-determination.l"
+#line 1270 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_HALF_SPACE, NULL,
&notes_lloc);
}
YY_BREAK
-case 93:
+case 103:
YY_RULE_SETUP
-#line 1145 "gabc/gabc-notes-determination.l"
+#line 1274 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_INTERGLYPH_SPACE, NULL,
&notes_lloc);
}
YY_BREAK
-case 94:
+case 104:
YY_RULE_SETUP
-#line 1149 "gabc/gabc-notes-determination.l"
+#line 1278 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_NEUMATIC_CUT, NULL,
&notes_lloc);
}
YY_BREAK
-case 95:
+case 105:
*yy_cp = (yy_hold_char); /* undo effects of setting up gabc_notes_determination_text */
(yy_c_buf_p) = yy_cp = yy_bp + 1;
YY_DO_BEFORE_ACTION; /* set up gabc_notes_determination_text again */
YY_RULE_SETUP
-#line 1153 "gabc/gabc-notes-determination.l"
+#line 1282 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_NEUMATIC_CUT, NULL,
&notes_lloc);
}
YY_BREAK
-case 96:
+case 106:
YY_RULE_SETUP
-#line 1157 "gabc/gabc-notes-determination.l"
+#line 1286 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_LARGER_SPACE, NULL,
&notes_lloc);
}
YY_BREAK
-case 97:
+case 107:
YY_RULE_SETUP
-#line 1161 "gabc/gabc-notes-determination.l"
+#line 1290 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_GLYPH_SPACE, NULL,
&notes_lloc);
}
YY_BREAK
-case 98:
+case 108:
YY_RULE_SETUP
-#line 1165 "gabc/gabc-notes-determination.l"
+#line 1294 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_NEUMATIC_CUT_NB, NULL,
&notes_lloc);
}
YY_BREAK
-case 99:
+case 109:
*yy_cp = (yy_hold_char); /* undo effects of setting up gabc_notes_determination_text */
(yy_c_buf_p) = yy_cp = yy_bp + 2;
YY_DO_BEFORE_ACTION; /* set up gabc_notes_determination_text again */
YY_RULE_SETUP
-#line 1169 "gabc/gabc-notes-determination.l"
+#line 1298 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_NEUMATIC_CUT_NB, NULL,
&notes_lloc);
}
YY_BREAK
-case 100:
+case 110:
YY_RULE_SETUP
-#line 1173 "gabc/gabc-notes-determination.l"
+#line 1302 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_LARGER_SPACE_NB, NULL,
&notes_lloc);
}
YY_BREAK
-case 101:
+case 111:
YY_RULE_SETUP
-#line 1177 "gabc/gabc-notes-determination.l"
+#line 1306 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_GLYPH_SPACE_NB, NULL,
&notes_lloc);
}
YY_BREAK
-case 102:
-/* rule 102 can match eol */
+case 112:
+/* rule 112 can match eol */
*yy_cp = (yy_hold_char); /* undo effects of setting up gabc_notes_determination_text */
YY_LINENO_REWIND_TO(yy_bp + 1);
(yy_c_buf_p) = yy_cp = yy_bp + 1;
YY_DO_BEFORE_ACTION; /* set up gabc_notes_determination_text again */
YY_RULE_SETUP
-#line 1181 "gabc/gabc-notes-determination.l"
+#line 1310 "gabc/gabc-notes-determination.l"
{
gregorio_add_space_as_note(&current_note, SP_ZERO_WIDTH, NULL,
&notes_lloc);
}
YY_BREAK
-case 103:
+case 113:
YY_RULE_SETUP
-#line 1185 "gabc/gabc-notes-determination.l"
+#line 1314 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_LINEA,
legacy_oriscus_orientation);
}
YY_BREAK
-case 104:
+case 114:
YY_RULE_SETUP
-#line 1189 "gabc/gabc-notes-determination.l"
+#line 1318 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_BIVIRGA, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 105:
+case 115:
YY_RULE_SETUP
-#line 1192 "gabc/gabc-notes-determination.l"
+#line 1321 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_TRIVIRGA, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 106:
+case 116:
YY_RULE_SETUP
-#line 1195 "gabc/gabc-notes-determination.l"
+#line 1324 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_BIVIRGA, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 107:
+case 117:
YY_RULE_SETUP
-#line 1198 "gabc/gabc-notes-determination.l"
+#line 1327 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_TRIVIRGA, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 108:
+case 118:
YY_RULE_SETUP
-#line 1201 "gabc/gabc-notes-determination.l"
+#line 1330 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_DISTROPHA, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 109:
+case 119:
YY_RULE_SETUP
-#line 1204 "gabc/gabc-notes-determination.l"
+#line 1333 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_DISTROPHA, _NO_SIGN, L_AUCTUS_ASCENDENS);
}
YY_BREAK
-case 110:
+case 120:
YY_RULE_SETUP
-#line 1207 "gabc/gabc-notes-determination.l"
+#line 1336 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_TRISTROPHA, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 111:
+case 121:
YY_RULE_SETUP
-#line 1210 "gabc/gabc-notes-determination.l"
+#line 1339 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_TRISTROPHA, _NO_SIGN, L_AUCTUS_ASCENDENS);
}
YY_BREAK
-case 112:
+case 122:
YY_RULE_SETUP
-#line 1213 "gabc/gabc-notes-determination.l"
+#line 1342 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, S_PUNCTUM, _NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 113:
+case 123:
YY_RULE_SETUP
-#line 1216 "gabc/gabc-notes-determination.l"
+#line 1345 "gabc/gabc-notes-determination.l"
{
lex_add_note(1, S_PUNCTUM, _NO_SIGN, L_INITIO_DEBILIS);
}
YY_BREAK
-case 114:
+case 124:
YY_RULE_SETUP
-#line 1219 "gabc/gabc-notes-determination.l"
+#line 1348 "gabc/gabc-notes-determination.l"
{
lex_add_note(1, S_PUNCTUM, _NO_SIGN, L_FUSED);
}
YY_BREAK
-case 115:
+case 125:
YY_RULE_SETUP
-#line 1222 "gabc/gabc-notes-determination.l"
+#line 1351 "gabc/gabc-notes-determination.l"
{
lex_add_note(0, punctum_inclinatum(gabc_notes_determination_text[1]),
_NO_SIGN, L_NO_LIQUESCENTIA);
}
YY_BREAK
-case 116:
+case 126:
YY_RULE_SETUP
-#line 1226 "gabc/gabc-notes-determination.l"
+#line 1355 "gabc/gabc-notes-determination.l"
{
lex_add_note(1, punctum_inclinatum(gabc_notes_determination_text[2]),
_NO_SIGN, L_INITIO_DEBILIS);
}
YY_BREAK
-case 117:
+case 127:
YY_RULE_SETUP
-#line 1230 "gabc/gabc-notes-determination.l"
+#line 1359 "gabc/gabc-notes-determination.l"
{
lex_add_note(1, punctum_inclinatum(gabc_notes_determination_text[2]),
_NO_SIGN, L_FUSED);
}
YY_BREAK
-case 118:
+case 128:
YY_RULE_SETUP
-#line 1234 "gabc/gabc-notes-determination.l"
+#line 1363 "gabc/gabc-notes-determination.l"
{
add_sign(_V_EPISEMA);
}
YY_BREAK
-case 119:
+case 129:
YY_RULE_SETUP
-#line 1237 "gabc/gabc-notes-determination.l"
+#line 1366 "gabc/gabc-notes-determination.l"
{
add_h_episema();
}
YY_BREAK
-case 120:
+case 130:
YY_RULE_SETUP
-#line 1240 "gabc/gabc-notes-determination.l"
+#line 1369 "gabc/gabc-notes-determination.l"
{
add_sign(_PUNCTUM_MORA);
}
YY_BREAK
-case 121:
+case 131:
YY_RULE_SETUP
-#line 1243 "gabc/gabc-notes-determination.l"
+#line 1372 "gabc/gabc-notes-determination.l"
{
gregorio_add_tail_liquescentia(current_note, L_DEMINUTUS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 122:
+case 132:
YY_RULE_SETUP
-#line 1247 "gabc/gabc-notes-determination.l"
+#line 1376 "gabc/gabc-notes-determination.l"
{
gregorio_add_tail_liquescentia(current_note, L_AUCTUS_DESCENDENS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 123:
+case 133:
YY_RULE_SETUP
-#line 1251 "gabc/gabc-notes-determination.l"
+#line 1380 "gabc/gabc-notes-determination.l"
{
gregorio_add_tail_liquescentia(current_note, L_AUCTUS_ASCENDENS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 124:
+case 134:
YY_RULE_SETUP
-#line 1255 "gabc/gabc-notes-determination.l"
+#line 1384 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_QUADRATUM,
legacy_oriscus_orientation);
}
YY_BREAK
-case 125:
+case 135:
YY_RULE_SETUP
-#line 1259 "gabc/gabc-notes-determination.l"
+#line 1388 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_ORISCUS_UNDETERMINED,
legacy_oriscus_orientation);
}
YY_BREAK
-case 126:
+case 136:
YY_RULE_SETUP
-#line 1263 "gabc/gabc-notes-determination.l"
+#line 1392 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_ORISCUS_DESCENDENS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 127:
+case 137:
YY_RULE_SETUP
-#line 1267 "gabc/gabc-notes-determination.l"
+#line 1396 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_ORISCUS_ASCENDENS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 128:
+case 138:
YY_RULE_SETUP
-#line 1271 "gabc/gabc-notes-determination.l"
+#line 1400 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_ORISCUS_SCAPUS_UNDETERMINED,
legacy_oriscus_orientation);
}
YY_BREAK
-case 129:
+case 139:
YY_RULE_SETUP
-#line 1275 "gabc/gabc-notes-determination.l"
+#line 1404 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_ORISCUS_SCAPUS_DESCENDENS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 130:
+case 140:
YY_RULE_SETUP
-#line 1279 "gabc/gabc-notes-determination.l"
+#line 1408 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_ORISCUS_SCAPUS_ASCENDENS,
legacy_oriscus_orientation);
}
YY_BREAK
-case 131:
+case 141:
YY_RULE_SETUP
-#line 1283 "gabc/gabc-notes-determination.l"
+#line 1412 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_QUILISMA,
legacy_oriscus_orientation);
}
YY_BREAK
-case 132:
+case 142:
YY_RULE_SETUP
-#line 1287 "gabc/gabc-notes-determination.l"
+#line 1416 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_QUILISMA_QUADRATUM,
legacy_oriscus_orientation);
}
YY_BREAK
-case 133:
+case 143:
YY_RULE_SETUP
-#line 1291 "gabc/gabc-notes-determination.l"
+#line 1420 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_VIRGA,
legacy_oriscus_orientation);
}
YY_BREAK
-case 134:
+case 144:
YY_RULE_SETUP
-#line 1295 "gabc/gabc-notes-determination.l"
+#line 1424 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_VIRGA_REVERSA,
legacy_oriscus_orientation);
}
YY_BREAK
-case 135:
+case 145:
YY_RULE_SETUP
-#line 1299 "gabc/gabc-notes-determination.l"
+#line 1428 "gabc/gabc-notes-determination.l"
{
gregorio_change_shape(current_note, S_STROPHA,
legacy_oriscus_orientation);
}
YY_BREAK
-case 136:
+case 146:
YY_RULE_SETUP
-#line 1303 "gabc/gabc-notes-determination.l"
+#line 1432 "gabc/gabc-notes-determination.l"
{
- current_note->supposed_high_ledger_line = true;
- current_note->explicit_high_ledger_line = true;
+ LEDGER(high, EXPLICIT, true);
}
YY_BREAK
-case 137:
+case 147:
YY_RULE_SETUP
-#line 1307 "gabc/gabc-notes-determination.l"
+#line 1435 "gabc/gabc-notes-determination.l"
{
- current_note->supposed_high_ledger_line = false;
- current_note->explicit_high_ledger_line = true;
+ LEDGER(high, EXPLICIT, false);
}
YY_BREAK
-case 138:
+case 148:
YY_RULE_SETUP
-#line 1311 "gabc/gabc-notes-determination.l"
+#line 1438 "gabc/gabc-notes-determination.l"
{
- current_note->supposed_low_ledger_line = true;
- current_note->explicit_low_ledger_line = true;
+ LEDGER(low, EXPLICIT, true);
}
YY_BREAK
-case 139:
+case 149:
YY_RULE_SETUP
-#line 1315 "gabc/gabc-notes-determination.l"
+#line 1441 "gabc/gabc-notes-determination.l"
{
- current_note->supposed_low_ledger_line = false;
- current_note->explicit_low_ledger_line = true;
+ LEDGER(low, EXPLICIT, false);
}
YY_BREAK
-case 140:
-/* rule 140 can match eol */
+case 150:
+/* rule 150 can match eol */
YY_RULE_SETUP
-#line 1319 "gabc/gabc-notes-determination.l"
+#line 1444 "gabc/gabc-notes-determination.l"
{
gregorio_messagef("det_notes_from_string", VERBOSITY_ERROR, 0,
_("unrecognized character: \"%c\""),
gabc_notes_determination_text[0]);
}
YY_BREAK
-case 141:
+case 151:
YY_RULE_SETUP
-#line 1325 "gabc/gabc-notes-determination.l"
+#line 1450 "gabc/gabc-notes-determination.l"
ECHO;
YY_BREAK
-#line 12873 "gabc/gabc-notes-determination-l.c"
+#line 13705 "gabc/gabc-notes-determination-l.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(texverbnote):
case YY_STATE_EOF(texverbglyph):
@@ -13854,7 +14686,7 @@ void gabc_notes_determination_free (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 1325 "gabc/gabc-notes-determination.l"
+#line 1450 "gabc/gabc-notes-determination.l"
@@ -13871,9 +14703,11 @@ gregorio_note *gabc_det_notes_from_string(char *str, char *newmacros[10],
notes_lloc.last_line = loc->first_line;
notes_lloc.last_column = loc->first_column;
notes_lloc.last_offset = loc->first_offset;
+ notes_lloc.generate_point_and_click = loc->generate_point_and_click;
staff_lines = score->staff_lines;
highest_pitch = score->highest_pitch;
+ high_ledger_line_pitch = score->high_ledger_line_pitch;
legacy_oriscus_orientation = score->legacy_oriscus_orientation;
/* a small optimization could uccur here: we could do it only once at the
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination.l b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination.l
index b5a53d1f094..dd02ffe1a21 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination.l
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-notes-determination.l
@@ -3,7 +3,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the note parser.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -49,8 +49,17 @@ static char *before_ledger_length = NULL;
static unsigned short ledger_var[2] = { 0, 0 };
static unsigned char staff_lines;
static signed char highest_pitch;
+static signed char high_ledger_line_pitch;
static bool legacy_oriscus_orientation;
static unsigned short he_adjustment_index[2] = { 0, 0 };
+static signed char bracket_low_pitch, bracket_high_pitch;
+static unsigned short left_bracket_texverb = 0;
+
+#define LEDGER(WHICH, SPECIFICITY, VALUE) \
+ if (LEDGER_##SPECIFICITY > current_note->WHICH##_ledger_specificity) { \
+ current_note->WHICH##_ledger_line = VALUE; \
+ current_note->WHICH##_ledger_specificity = LEDGER_##SPECIFICITY; \
+ }
typedef struct slur_info {
unsigned short var;
@@ -91,7 +100,7 @@ static __inline int letter_to_pitch_adjustment(const char letter) {
/* LCOV_EXCL_STOP */
}
-static __inline char pitch_letter_to_height(const char pitch) {
+static __inline signed char pitch_letter_to_height(const char pitch) {
char result = pitch - 'a' + LOWEST_PITCH;
if (pitch == 'p') {
--result;
@@ -101,6 +110,14 @@ static __inline char pitch_letter_to_height(const char pitch) {
_("invalid pitch for %u lines: %c"), (unsigned int)staff_lines,
pitch);
}
+ if (left_bracket_texverb) {
+ if (result < bracket_low_pitch) {
+ bracket_low_pitch = result;
+ }
+ if (result > bracket_high_pitch) {
+ bracket_high_pitch = result;
+ }
+ }
return result;
}
@@ -120,21 +137,25 @@ static gregorio_shape punctum_inclinatum(const char orientation)
static __inline void lex_add_note(int i, gregorio_shape shape, char signs,
char liquescentia)
{
+ signed char height = pitch_letter_to_height(tolower(
+ (unsigned char)gabc_notes_determination_text[i]));
+
nbof_isolated_episema = 0;
- gregorio_add_note(&current_note, pitch_letter_to_height(
- tolower((unsigned char)gabc_notes_determination_text[i])),
- shape, signs, liquescentia, NULL, &notes_lloc);
+ gregorio_add_note(&current_note, height, shape, signs, liquescentia, NULL,
+ &notes_lloc);
current_note->he_adjustment_index[SO_OVER] = he_adjustment_index[SO_OVER];
current_note->he_adjustment_index[SO_UNDER] = he_adjustment_index[SO_UNDER];
- if (ledger_var[SO_OVER]) {
- current_note->supposed_high_ledger_line = true;
- current_note->explicit_high_ledger_line = true;
+ if (height >= high_ledger_line_pitch) {
+ LEDGER(high, DRAWN, true);
+ } else if (ledger_var[SO_OVER]) {
+ LEDGER(high, EXPLICIT, true);
}
- if (ledger_var[SO_UNDER]) {
- current_note->supposed_low_ledger_line = true;
- current_note->explicit_low_ledger_line = true;
+ if (height <= LOW_LEDGER_LINE_PITCH) {
+ LEDGER(low, DRAWN, true);
+ } else if (ledger_var[SO_UNDER]) {
+ LEDGER(low, EXPLICIT, true);
}
}
@@ -491,15 +512,88 @@ static void end_var_slur(void)
slur[index].start = NULL;
}
-void parse_hepisema_adjustment(void)
+static void left_bracket(void)
{
- /* [xh:yz{]
- * - x indicates l(ow) or h(igh) episema
- * - y (optional) for l(ow), m(iddle), or h(igh) vertical position in space
- * - z (optional) nudge dimension that starts with + or -
- * - { (optional) starts a group
- * - at least one of y, z, or w must be provided
- * - if y and z are omitted, : may be omitted
+ if (left_bracket_texverb) {
+ gregorio_message(
+ _("cannot add a left bracket before closing the previous one"),
+ "left_bracket", VERBOSITY_ERROR, 0);
+ return;
+ }
+
+ /* when setting the left bracket, temporarily store the point-and-click
+ * information in the texverb */
+ if (notes_lloc.generate_point_and_click) {
+ gregorio_snprintf(tempstr, sizeof tempstr, "%u:%u:%u",
+ notes_lloc.first_line, notes_lloc.first_offset,
+ notes_lloc.first_column + 1);
+ } else {
+ tempstr[0] = '\0';
+ }
+ left_bracket_texverb = gregorio_add_texverb_as_note(&current_note,
+ gregorio_strdup(tempstr), GRE_TEXVERB_GLYPH, &notes_lloc);
+ bracket_low_pitch = MAX_PITCH;
+ bracket_high_pitch = LOWEST_PITCH;
+}
+
+static void right_bracket(void)
+{
+ if (!left_bracket_texverb) {
+ gregorio_message(
+ _("cannot add a right bracket without a matching left bracket"),
+ "right_bracket", VERBOSITY_ERROR, 0);
+ return;
+ }
+
+ if (bracket_high_pitch < bracket_low_pitch) {
+ gregorio_message(
+ _("cannot add brackets without notes between them"),
+ "right_bracket", VERBOSITY_ERROR, 0);
+ return;
+ }
+
+ gregorio_snprintf(tempstr, sizeof tempstr, "\\GreBracket{0}{%d}{%d}{%s}",
+ bracket_low_pitch, bracket_high_pitch,
+ gregorio_texverb(left_bracket_texverb));
+ gregorio_change_texverb(left_bracket_texverb, gregorio_strdup(tempstr));
+
+ if (notes_lloc.generate_point_and_click) {
+ gregorio_snprintf(tempstr, sizeof tempstr,
+ "\\GreBracket{1}{%d}{%d}{%u:%u:%u}", bracket_low_pitch,
+ bracket_high_pitch, notes_lloc.first_line,
+ notes_lloc.first_offset, notes_lloc.first_column + 1);
+ } else {
+ gregorio_snprintf(tempstr, sizeof tempstr,
+ "\\GreBracket{1}{%d}{%d}{}", bracket_low_pitch,
+ bracket_high_pitch);
+ }
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(tempstr),
+ GRE_TEXVERB_GLYPH, &notes_lloc);
+
+ left_bracket_texverb = 0;
+}
+
+static void parse_hepisema_adjustment(void)
+{
+ /* See https://github.com/gregorio-project/gregorio/issues/872
+ *
+ * [xh:yzw]
+ *
+ * - x is o(ver) or u(under)
+ * - y is optional and is
+ * - l for low in the space (chooses ol or ul depending on x)
+ * - m for middle of the space
+ * - h for high in the space (chooses oh or uh depending on x)
+ * - ol for low in the space as if the episema were over the note
+ * - oh for high in the space as if the episema were over the note
+ * - ul for low in the space as if the episema were under the note
+ * - uh for high in the space as if the episema were under the note
+ * - z is an optional nudge and must start with + or -
+ * - w is optional and may be { to start a range or } to end a range.
+ *
+ * at least one of y, z, or w must be provided
+ * if y and z are omitted, the : may be omitted
+ * y and z are not permitted when w is }
*/
const gregorio_sign_orientation index = letter_to_sign_orientation(
@@ -587,7 +681,7 @@ void parse_hepisema_adjustment(void)
}
}
-void end_hepisema_adjustment(void)
+static void end_hepisema_adjustment(void)
{
/* [xh:}]
* - x indicates l(ow) or h(igh) episema
@@ -641,6 +735,11 @@ void gabc_det_notes_finish(void)
ledger_var[orientation] = 0;
}
}
+ if (left_bracket_texverb) {
+ gregorio_message(_("unclosed left bracket"),
+ "gabc_det_notes_finish", VERBOSITY_ERROR, 0);
+ left_bracket_texverb = 0;
+ }
}
%}
@@ -845,29 +944,29 @@ void gabc_det_notes_finish(void)
}
<INITIAL>\[nm[1-9]\] {
if (notesmacros[gabc_notes_determination_text[3]-'0']) {
- gregorio_add_texverb_to_note(current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[3]-'0']));
+ gregorio_add_texverb_to_note(current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[3]-'0']));
} else error();
}
<INITIAL>\[gm[1-9]\] {
if (notesmacros[gabc_notes_determination_text[3]-'0']) {
- gregorio_add_texverb_as_note(&current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[3]-'0']),
- GRE_TEXVERB_GLYPH, &notes_lloc);
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[3]-'0']),
+ GRE_TEXVERB_GLYPH, &notes_lloc);
} else error();
}
<INITIAL>\[em[1-9]\] {
if (notesmacros[gabc_notes_determination_text[3]-'0']) {
- gregorio_add_texverb_as_note(&current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[3]-'0']),
- GRE_TEXVERB_ELEMENT, &notes_lloc);
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[3]-'0']),
+ GRE_TEXVERB_ELEMENT, &notes_lloc);
} else error();
}
<INITIAL>\[altm[1-9]\] {
if (notesmacros[gabc_notes_determination_text[5]-'0']) {
- gregorio_add_texverb_as_note(&current_note,
- gregorio_strdup(notesmacros[gabc_notes_determination_text[5]-'0']),
- GRE_TEXVERB_ELEMENT, &notes_lloc);
+ gregorio_add_texverb_as_note(&current_note, gregorio_strdup(
+ notesmacros[gabc_notes_determination_text[5]-'0']),
+ GRE_TEXVERB_ELEMENT, &notes_lloc);
} else error();
}
<INITIAL>\[nv: {
@@ -959,6 +1058,12 @@ void gabc_det_notes_finish(void)
gregorio_add_space_as_note(&current_note, SP_AD_HOC_SPACE_NB,
gregorio_strdup(gabc_notes_determination_text), &notes_lloc);
}
+<INITIAL>\[oll:1\] {
+ LEDGER(high, EXPLICITLY_DRAWN, true);
+ }
+<INITIAL>\[oll:0\] {
+ LEDGER(high, EXPLICITLY_DRAWN, false);
+ }
<INITIAL>\[oll:\}\] {
end_variable_ledger(SO_OVER);
}
@@ -977,6 +1082,12 @@ void gabc_det_notes_finish(void)
add_variable_ledger(SO_OVER, gabc_notes_determination_text);
BEGIN(endledger);
}
+<INITIAL>\[ull:1\] {
+ LEDGER(low, EXPLICITLY_DRAWN, true);
+ }
+<INITIAL>\[ull:0\] {
+ LEDGER(low, EXPLICITLY_DRAWN, false);
+ }
<INITIAL>\[ull:\}\] {
end_variable_ledger(SO_UNDER);
}
@@ -1017,6 +1128,12 @@ void gabc_det_notes_finish(void)
<INITIAL>\[[ou]h:?\}\] {
end_hepisema_adjustment();
}
+<INITIAL>\[\[ {
+ left_bracket();
+ }
+<INITIAL>\]\] {
+ right_bracket();
+ }
\{ {
gregorio_add_texverb_as_note(&current_note,
gregorio_strdup("\\hbox to 0pt{"), GRE_TEXVERB_ELEMENT,
@@ -1033,8 +1150,11 @@ void gabc_det_notes_finish(void)
&notes_lloc);
}
[\t\r\n]+ /* ignore ends of line and tabs */;
+<INITIAL>\[nocustos\] {
+ gregorio_add_suppress_custos_as_note(&current_note, &notes_lloc);
+ }
z0 {
- gregorio_add_custo_as_note(&current_note, &notes_lloc);
+ gregorio_add_custos_as_note(&current_note, &notes_lloc);
}
z {
gregorio_add_end_of_line_as_note(&current_note, false, false, false,
@@ -1101,16 +1221,16 @@ Z- {
add_bar_as_note(B_DIVISIO_FINALIS);
}
r {
- gregorio_change_shape(current_note, S_PUNCTUM_CAVUM,
- legacy_oriscus_orientation);
+ gregorio_add_cavum(current_note);
}
R {
gregorio_change_shape(current_note, S_LINEA_PUNCTUM,
legacy_oriscus_orientation);
}
r0 {
- gregorio_change_shape(current_note, S_LINEA_PUNCTUM_CAVUM,
+ gregorio_change_shape(current_note, S_LINEA_PUNCTUM,
legacy_oriscus_orientation);
+ gregorio_add_cavum(current_note);
}
r1 {
gregorio_add_special_sign(current_note, _ACCENTUS);
@@ -1127,6 +1247,15 @@ r4 {
r5 {
gregorio_add_special_sign(current_note, _SEMI_CIRCULUS_REVERSUS);
}
+r6 {
+ gregorio_add_special_sign(current_note, _MUSICA_FICTA_FLAT);
+ }
+r7 {
+ gregorio_add_special_sign(current_note, _MUSICA_FICTA_NATURAL);
+ }
+r8 {
+ gregorio_add_special_sign(current_note, _MUSICA_FICTA_SHARP);
+ }
x {
gregorio_change_shape(current_note, S_FLAT, legacy_oriscus_orientation);
}
@@ -1301,20 +1430,16 @@ s {
legacy_oriscus_orientation);
}
\[hl:1\] {
- current_note->supposed_high_ledger_line = true;
- current_note->explicit_high_ledger_line = true;
+ LEDGER(high, EXPLICIT, true);
}
\[hl:0\] {
- current_note->supposed_high_ledger_line = false;
- current_note->explicit_high_ledger_line = true;
+ LEDGER(high, EXPLICIT, false);
}
\[ll:1\] {
- current_note->supposed_low_ledger_line = true;
- current_note->explicit_low_ledger_line = true;
+ LEDGER(low, EXPLICIT, true);
}
\[ll:0\] {
- current_note->supposed_low_ledger_line = false;
- current_note->explicit_low_ledger_line = true;
+ LEDGER(low, EXPLICIT, false);
}
.|\n {
gregorio_messagef("det_notes_from_string", VERBOSITY_ERROR, 0,
@@ -1337,9 +1462,11 @@ gregorio_note *gabc_det_notes_from_string(char *str, char *newmacros[10],
notes_lloc.last_line = loc->first_line;
notes_lloc.last_column = loc->first_column;
notes_lloc.last_offset = loc->first_offset;
+ notes_lloc.generate_point_and_click = loc->generate_point_and_click;
staff_lines = score->staff_lines;
highest_pitch = score->highest_pitch;
+ high_ledger_line_pitch = score->high_ledger_line_pitch;
legacy_oriscus_orientation = score->legacy_oriscus_orientation;
/* a small optimization could uccur here: we could do it only once at the
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.c
index 42c089a3dea..5a3953c2ad6 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.c
@@ -398,8 +398,8 @@ static void yy_fatal_error (yyconst char msg[] );
*yy_cp = '\0'; \
(yy_c_buf_p) = yy_cp;
-#define YY_NUM_RULES 71
-#define YY_END_OF_BUFFER 72
+#define YY_NUM_RULES 77
+#define YY_END_OF_BUFFER 78
/* This struct is not used in this scanner,
but its presence is necessary. */
struct yy_trans_info
@@ -407,41 +407,42 @@ struct yy_trans_info
flex_int32_t yy_verify;
flex_int32_t yy_nxt;
};
-static yyconst flex_int32_t yy_accept[296] =
+static yyconst flex_int32_t yy_accept[309] =
{ 0,
- 0, 0, 7, 7, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 72, 25,
- 70, 25, 23, 6, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 2, 2, 3, 3, 1, 7, 7,
- 71, 27, 26, 49, 65, 28, 55, 63, 64, 56,
- 57, 66, 68, 67, 27, 47, 48, 55, 71, 54,
- 55, 51, 50, 5, 4, 55, 0, 0, 23, 6,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 78, 25, 76, 25, 23, 6, 23, 23,
+ 23, 23, 23, 23, 23, 23, 2, 2, 3, 3,
+ 1, 8, 9, 27, 26, 50, 71, 29, 28, 56,
+ 64, 65, 57, 58, 72, 74, 73, 49, 48, 77,
+ 77, 55, 56, 52, 51, 5, 4, 56, 77, 69,
+ 77, 77, 70, 0, 0, 23, 6, 23, 23, 23,
+ 23, 23, 23, 23, 23, 23, 23, 2, 1, 8,
+ 0, 7, 0, 27, 26, 0, 0, 0, 0, 0,
+
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 72,
+ 75, 49, 48, 0, 55, 0, 52, 51, 5, 4,
+ 0, 69, 69, 69, 0, 0, 70, 0, 24, 23,
23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
- 23, 2, 1, 7, 7, 0, 7, 7, 0, 7,
- 8, 0, 27, 26, 0, 0, 0, 0, 0, 0,
-
- 0, 0, 0, 0, 0, 0, 66, 69, 27, 48,
- 47, 0, 54, 0, 51, 50, 5, 4, 0, 24,
- 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 7, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 39, 37, 43, 0, 31, 0, 0,
- 0, 0, 0, 52, 62, 0, 0, 0, 23, 23,
- 0, 23, 23, 23, 14, 23, 10, 23, 23, 23,
- 40, 38, 44, 0, 32, 0, 0, 0, 0, 0,
- 60, 0, 41, 45, 33, 35, 0, 53, 0, 23,
- 23, 23, 0, 23, 23, 0, 0, 23, 23, 23,
-
- 61, 0, 42, 34, 36, 58, 0, 46, 0, 23,
- 18, 9, 23, 23, 23, 23, 23, 23, 23, 0,
- 0, 0, 29, 59, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 23, 30, 23, 23, 0, 19, 23,
+ 23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 40, 38, 0, 44, 0, 32, 0, 0, 0,
+ 0, 0, 0, 53, 63, 0, 0, 0, 23, 23,
+ 0, 23, 23, 14, 23, 11, 23, 23, 23, 41,
+ 39, 45, 0, 33, 0, 0, 0, 0, 0, 0,
+ 61, 0, 0, 0, 68, 67, 42, 46, 34, 36,
+
+ 0, 54, 0, 23, 23, 23, 0, 23, 0, 0,
+ 23, 23, 23, 62, 0, 43, 35, 37, 59, 0,
+ 0, 0, 68, 47, 0, 23, 18, 10, 23, 23,
+ 23, 23, 23, 23, 0, 0, 0, 0, 30, 60,
+ 23, 23, 23, 23, 23, 23, 23, 23, 23, 31,
+ 0, 0, 66, 23, 23, 19, 23, 23, 23, 0,
23, 23, 0, 23, 23, 23, 23, 23, 23, 23,
- 23, 23, 23, 23, 17, 23, 23, 23, 23, 21,
- 23, 23, 23, 23, 23, 23, 23, 23, 23, 20,
- 23, 23, 23, 23, 23, 23, 23, 13, 23, 15,
- 23, 23, 12, 23, 23, 23, 23, 23, 11, 16,
- 23, 23, 23, 22, 0
+ 23, 17, 23, 23, 23, 21, 23, 23, 23, 23,
+ 23, 23, 23, 23, 20, 23, 23, 23, 23, 23,
+ 23, 23, 15, 23, 23, 13, 23, 23, 23, 23,
+ 23, 12, 16, 23, 23, 23, 22, 0
} ;
static yyconst YY_CHAR yy_ec[256] =
@@ -450,285 +451,297 @@ static yyconst YY_CHAR yy_ec[256] =
1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 5, 1, 1, 6, 1, 7, 1, 1, 8,
- 9, 1, 1, 1, 10, 1, 11, 12, 12, 12,
- 12, 12, 12, 12, 12, 12, 12, 13, 14, 15,
- 1, 16, 1, 1, 17, 17, 17, 17, 17, 17,
- 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
- 17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
- 18, 1, 19, 1, 17, 1, 20, 21, 22, 23,
-
- 24, 25, 26, 27, 28, 17, 17, 29, 30, 31,
- 32, 33, 17, 34, 35, 36, 37, 38, 17, 17,
- 39, 17, 40, 41, 42, 1, 1, 1, 1, 1,
+ 9, 1, 1, 10, 11, 12, 13, 14, 14, 14,
+ 14, 14, 14, 14, 14, 14, 14, 15, 16, 17,
+ 1, 18, 1, 1, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
+ 20, 1, 21, 1, 19, 1, 22, 23, 24, 25,
+
+ 26, 27, 28, 29, 30, 19, 19, 31, 32, 33,
+ 34, 35, 19, 36, 37, 38, 39, 40, 19, 19,
+ 41, 19, 42, 43, 44, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 43, 1, 1, 1,
- 44, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 45, 1, 1, 1,
+ 46, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 1, 1, 1, 45, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 47, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1
} ;
-static yyconst YY_CHAR yy_meta[46] =
+static yyconst YY_CHAR yy_meta[48] =
{ 0,
- 1, 1, 2, 2, 1, 1, 3, 3, 4, 5,
- 1, 6, 1, 7, 8, 1, 6, 3, 3, 6,
+ 1, 1, 2, 2, 1, 1, 3, 3, 4, 3,
+ 5, 3, 1, 6, 3, 7, 8, 1, 6, 3,
+ 3, 6, 6, 6, 6, 6, 6, 6, 6, 6,
6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
- 6, 6, 6, 6, 6, 6, 6, 6, 6, 9,
- 4, 9, 1, 1, 1
+ 6, 9, 4, 9, 1, 1, 1
} ;
-static yyconst flex_uint32_t yy_base[316] =
+static yyconst flex_uint32_t yy_base[326] =
{ 0,
- 0, 43, 48, 50, 86, 126, 39, 50, 166, 206,
- 662, 661, 52, 54, 57, 62, 660, 659, 673, 678,
- 678, 665, 661, 665, 61, 53, 58, 64, 59, 65,
- 62, 66, 63, 80, 99, 678, 662, 63, 106, 108,
- 110, 0, 113, 678, 678, 678, 238, 657, 678, 678,
- 678, 0, 135, 678, 139, 148, 0, 656, 678, 0,
- 655, 0, 128, 0, 139, 654, 152, 0, 654, 678,
- 117, 125, 150, 60, 144, 152, 154, 157, 161, 169,
- 170, 188, 150, 193, 201, 208, 649, 214, 0, 216,
- 195, 199, 0, 229, 256, 633, 645, 644, 149, 643,
-
- 629, 204, 621, 627, 639, 635, 0, 236, 235, 0,
- 292, 618, 0, 614, 0, 232, 0, 247, 631, 252,
- 640, 247, 217, 639, 178, 253, 242, 237, 260, 257,
- 255, 254, 261, 634, 631, 630, 267, 629, 615, 621,
- 606, 612, 604, 678, 678, 678, 623, 678, 617, 621,
- 620, 619, 618, 678, 678, 600, 616, 602, 262, 275,
- 600, 619, 289, 290, 618, 617, 616, 291, 292, 293,
- 678, 678, 678, 609, 678, 603, 607, 606, 605, 604,
- 678, 599, 678, 678, 678, 678, 602, 678, 581, 295,
- 296, 109, 594, 299, 300, 291, 586, 298, 604, 601,
-
- 678, 577, 678, 678, 678, 678, 572, 678, 569, 301,
- 562, 555, 302, 153, 312, 313, 314, 315, 316, 536,
- 523, 534, 678, 678, 319, 321, 539, 318, 323, 322,
- 326, 444, 329, 330, 678, 334, 339, 415, 436, 340,
- 342, 343, 413, 346, 345, 349, 350, 352, 353, 358,
- 354, 359, 361, 362, 434, 363, 364, 365, 377, 433,
- 380, 372, 375, 371, 382, 385, 388, 391, 386, 431,
- 392, 394, 397, 403, 407, 406, 384, 426, 411, 424,
- 412, 413, 219, 414, 415, 416, 419, 417, 213, 115,
- 421, 423, 420, 113, 678, 455, 464, 473, 482, 491,
-
- 500, 509, 514, 520, 529, 538, 547, 554, 563, 570,
- 577, 586, 595, 61, 604
+ 0, 45, 707, 706, 90, 132, 41, 44, 71, 78,
+ 704, 703, 51, 53, 55, 57, 702, 701, 50, 51,
+ 65, 152, 717, 724, 724, 709, 704, 709, 75, 78,
+ 55, 74, 65, 101, 92, 107, 68, 76, 724, 706,
+ 79, 0, 156, 0, 164, 724, 724, 724, 724, 175,
+ 699, 724, 724, 724, 0, 179, 724, 0, 187, 698,
+ 724, 0, 697, 0, 113, 0, 126, 696, 694, 107,
+ 191, 214, 724, 134, 0, 696, 724, 140, 164, 135,
+ 200, 152, 139, 210, 176, 192, 209, 221, 182, 0,
+ 232, 236, 241, 0, 245, 249, 262, 675, 687, 237,
+
+ 168, 686, 672, 666, 232, 663, 669, 681, 677, 0,
+ 255, 0, 259, 660, 0, 656, 0, 262, 0, 266,
+ 673, 680, 679, 260, 276, 300, 724, 304, 272, 681,
+ 276, 98, 680, 266, 285, 271, 287, 301, 280, 303,
+ 304, 659, 671, 670, 298, 669, 655, 661, 646, 652,
+ 644, 724, 724, 655, 724, 662, 724, 656, 330, 660,
+ 659, 658, 657, 724, 724, 639, 655, 641, 282, 308,
+ 639, 659, 310, 658, 657, 656, 312, 314, 317, 724,
+ 724, 724, 648, 724, 642, 646, 645, 644, 643, 638,
+ 724, 637, 348, 352, 369, 724, 724, 724, 724, 724,
+
+ 633, 724, 604, 319, 347, 315, 615, 353, 335, 595,
+ 348, 608, 603, 724, 590, 724, 724, 724, 724, 575,
+ 589, 374, 386, 724, 507, 327, 510, 509, 313, 357,
+ 351, 335, 369, 371, 495, 487, 497, 391, 724, 724,
+ 373, 375, 386, 387, 390, 189, 503, 389, 391, 724,
+ 414, 426, 724, 400, 394, 500, 395, 396, 413, 476,
+ 402, 409, 443, 422, 414, 425, 427, 429, 432, 430,
+ 438, 498, 442, 441, 445, 495, 446, 447, 448, 451,
+ 452, 454, 456, 458, 491, 462, 459, 463, 470, 473,
+ 449, 475, 272, 478, 479, 260, 482, 483, 484, 485,
+
+ 486, 219, 160, 487, 489, 493, 122, 724, 526, 535,
+ 544, 553, 562, 571, 580, 589, 594, 600, 609, 615,
+ 624, 631, 640, 649, 67
} ;
-static yyconst flex_int32_t yy_def[316] =
+static yyconst flex_int32_t yy_def[326] =
{ 0,
- 295, 1, 296, 296, 297, 297, 298, 298, 299, 299,
- 300, 300, 301, 301, 302, 302, 300, 300, 295, 295,
- 295, 295, 303, 295, 303, 303, 303, 303, 303, 303,
- 303, 303, 303, 295, 295, 295, 295, 295, 304, 305,
- 306, 307, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 308, 295, 295, 309, 295, 310, 295, 295, 311,
- 295, 312, 295, 313, 295, 295, 295, 314, 303, 295,
- 303, 303, 303, 303, 303, 303, 303, 303, 303, 303,
- 303, 295, 295, 304, 305, 306, 305, 305, 315, 306,
- 295, 295, 307, 295, 295, 295, 295, 295, 295, 295,
-
- 295, 295, 295, 295, 295, 295, 308, 295, 309, 310,
- 295, 295, 311, 295, 312, 295, 313, 295, 295, 295,
- 314, 303, 303, 303, 303, 303, 303, 303, 303, 303,
- 303, 303, 303, 315, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 303, 303,
- 314, 303, 303, 303, 303, 303, 303, 303, 303, 303,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 303,
- 303, 314, 314, 303, 303, 314, 314, 303, 303, 303,
-
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 303,
- 303, 314, 314, 303, 303, 314, 314, 314, 303, 314,
- 314, 295, 295, 295, 303, 314, 303, 303, 314, 314,
- 314, 303, 314, 314, 295, 303, 314, 314, 303, 314,
- 314, 314, 314, 314, 314, 303, 314, 314, 314, 314,
- 314, 314, 314, 314, 303, 314, 314, 314, 314, 314,
- 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
- 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
- 314, 314, 314, 314, 314, 314, 314, 314, 314, 314,
- 314, 314, 314, 314, 0, 295, 295, 295, 295, 295,
-
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295
+ 308, 1, 309, 309, 310, 310, 311, 311, 312, 312,
+ 313, 313, 314, 314, 315, 315, 313, 313, 316, 316,
+ 316, 316, 308, 308, 308, 308, 317, 308, 317, 317,
+ 317, 317, 317, 317, 317, 317, 308, 308, 308, 308,
+ 308, 318, 308, 319, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 320, 308, 308, 321, 308, 308,
+ 308, 322, 308, 323, 308, 324, 308, 308, 308, 308,
+ 308, 308, 308, 308, 325, 317, 308, 317, 317, 317,
+ 317, 317, 317, 317, 317, 317, 317, 308, 308, 318,
+ 308, 308, 308, 319, 308, 308, 308, 308, 308, 308,
+
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 320,
+ 308, 321, 308, 308, 322, 308, 323, 308, 324, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 325,
+ 317, 317, 317, 317, 317, 317, 317, 317, 317, 317,
+ 317, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 317, 317,
+ 325, 317, 317, 317, 317, 317, 317, 317, 317, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+
+ 308, 308, 308, 317, 317, 325, 325, 317, 325, 325,
+ 317, 317, 317, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 317, 317, 325, 325, 317,
+ 325, 325, 325, 317, 325, 325, 308, 308, 308, 308,
+ 317, 325, 317, 325, 325, 325, 317, 325, 325, 308,
+ 308, 308, 308, 317, 325, 317, 325, 325, 325, 325,
+ 325, 325, 308, 317, 325, 325, 325, 325, 325, 325,
+ 325, 317, 325, 325, 325, 325, 325, 325, 325, 325,
+ 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
+ 325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
+
+ 325, 325, 325, 325, 325, 325, 325, 0, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308
} ;
-static yyconst flex_uint32_t yy_nxt[724] =
+static yyconst flex_uint32_t yy_nxt[772] =
{ 0,
- 20, 20, 21, 20, 20, 20, 22, 20, 20, 20,
- 20, 23, 24, 20, 20, 20, 23, 20, 20, 25,
- 23, 23, 26, 23, 23, 27, 23, 28, 29, 30,
- 31, 32, 23, 23, 33, 23, 23, 23, 23, 20,
- 20, 20, 20, 20, 20, 34, 35, 53, 36, 37,
- 40, 40, 40, 40, 63, 63, 63, 63, 53, 65,
- 65, 41, 68, 41, 65, 65, 121, 68, 68, 68,
- 68, 68, 68, 68, 68, 68, 73, 74, 76, 54,
- 125, 78, 82, 82, 80, 38, 38, 38, 43, 43,
- 54, 71, 44, 45, 75, 46, 77, 72, 81, 79,
-
- 47, 82, 82, 48, 49, 83, 83, 83, 85, 85,
- 88, 88, 91, 91, 94, 94, 94, 94, 68, 86,
- 212, 89, 68, 92, 68, 50, 68, 51, 43, 43,
- 116, 116, 44, 45, 68, 46, 108, 108, 108, 108,
- 47, 118, 118, 48, 49, 110, 110, 122, 110, 111,
- 111, 111, 111, 68, 120, 120, 110, 110, 67, 68,
- 123, 68, 68, 68, 146, 50, 68, 51, 56, 56,
- 68, 126, 57, 57, 124, 57, 128, 129, 68, 68,
- 58, 227, 127, 57, 57, 147, 130, 68, 131, 133,
- 82, 82, 83, 83, 83, 85, 85, 91, 91, 162,
-
- 132, 91, 91, 88, 88, 59, 86, 59, 56, 56,
- 295, 295, 57, 57, 89, 57, 88, 88, 85, 85,
- 58, 295, 68, 57, 57, 150, 68, 89, 68, 86,
- 94, 94, 94, 94, 116, 116, 151, 108, 108, 108,
- 108, 110, 110, 160, 110, 59, 68, 59, 95, 118,
- 118, 68, 110, 110, 120, 120, 68, 96, 97, 98,
- 165, 99, 68, 68, 68, 100, 68, 164, 101, 68,
- 68, 68, 102, 103, 104, 105, 135, 136, 159, 137,
- 167, 166, 173, 138, 68, 170, 139, 169, 163, 168,
- 140, 141, 142, 111, 111, 111, 111, 190, 68, 68,
-
- 68, 68, 68, 174, 68, 68, 191, 68, 68, 68,
- 68, 68, 198, 216, 210, 199, 194, 200, 214, 215,
- 217, 68, 68, 68, 68, 68, 195, 68, 68, 211,
- 68, 68, 68, 226, 219, 68, 225, 228, 68, 68,
- 229, 239, 231, 68, 241, 230, 236, 240, 68, 68,
- 232, 68, 68, 237, 68, 68, 242, 245, 68, 68,
- 244, 68, 68, 68, 249, 246, 251, 68, 68, 250,
- 68, 68, 68, 68, 68, 254, 258, 247, 253, 255,
- 68, 68, 259, 256, 68, 263, 68, 257, 260, 68,
- 264, 68, 261, 68, 68, 68, 271, 68, 266, 262,
-
- 68, 68, 265, 68, 267, 269, 68, 268, 273, 270,
- 272, 274, 68, 276, 275, 68, 68, 278, 277, 283,
- 68, 68, 68, 68, 68, 68, 68, 279, 68, 68,
- 68, 282, 68, 68, 288, 68, 280, 281, 290, 286,
- 68, 287, 68, 68, 252, 68, 284, 285, 292, 248,
- 294, 289, 291, 243, 293, 39, 39, 39, 39, 39,
- 39, 39, 39, 39, 42, 42, 42, 42, 42, 42,
- 42, 42, 42, 52, 52, 52, 52, 52, 52, 52,
- 52, 52, 55, 55, 55, 55, 55, 55, 55, 55,
- 55, 60, 60, 60, 60, 60, 60, 60, 60, 60,
-
- 62, 62, 62, 62, 62, 62, 62, 62, 62, 64,
- 64, 64, 64, 64, 64, 64, 64, 64, 69, 69,
- 84, 84, 84, 84, 84, 84, 84, 84, 84, 87,
- 87, 87, 87, 87, 87, 87, 87, 87, 90, 90,
- 90, 90, 90, 90, 90, 90, 90, 93, 238, 235,
- 93, 234, 93, 93, 107, 107, 107, 233, 107, 107,
- 107, 107, 107, 109, 68, 109, 109, 109, 109, 109,
- 110, 68, 110, 110, 110, 110, 110, 113, 113, 113,
- 113, 113, 113, 113, 224, 113, 115, 223, 115, 115,
- 115, 115, 115, 115, 115, 117, 222, 117, 117, 117,
-
- 117, 117, 117, 117, 134, 134, 134, 134, 134, 134,
- 221, 134, 134, 220, 218, 213, 209, 208, 207, 206,
- 205, 204, 203, 202, 201, 68, 197, 196, 193, 192,
- 189, 188, 187, 186, 185, 184, 183, 182, 181, 180,
- 179, 178, 177, 176, 175, 172, 171, 89, 161, 68,
- 158, 157, 156, 155, 154, 153, 152, 149, 148, 145,
- 144, 143, 89, 68, 119, 114, 112, 106, 67, 70,
- 68, 67, 295, 66, 66, 61, 61, 19, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
-
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295
+ 24, 24, 25, 24, 24, 24, 26, 24, 24, 24,
+ 24, 24, 24, 27, 28, 24, 24, 24, 27, 24,
+ 24, 29, 27, 27, 30, 27, 27, 31, 27, 27,
+ 32, 33, 34, 35, 27, 27, 36, 27, 27, 27,
+ 27, 24, 24, 24, 24, 24, 24, 37, 38, 56,
+ 39, 40, 56, 65, 65, 65, 65, 67, 67, 67,
+ 67, 69, 69, 70, 70, 75, 71, 71, 71, 71,
+ 88, 88, 130, 59, 59, 75, 81, 72, 88, 88,
+ 59, 59, 73, 57, 75, 75, 57, 60, 75, 41,
+ 41, 41, 45, 45, 60, 82, 46, 47, 83, 48,
+
+ 49, 48, 75, 80, 48, 48, 50, 78, 75, 51,
+ 52, 75, 61, 79, 61, 118, 118, 75, 123, 61,
+ 124, 61, 84, 89, 89, 89, 170, 85, 120, 120,
+ 86, 53, 75, 54, 45, 45, 129, 129, 46, 47,
+ 74, 48, 49, 48, 87, 75, 48, 48, 50, 75,
+ 75, 51, 52, 71, 71, 71, 71, 91, 92, 92,
+ 91, 133, 75, 136, 72, 95, 95, 95, 95, 73,
+ 75, 93, 131, 53, 75, 54, 96, 96, 96, 96,
+ 111, 111, 111, 111, 135, 155, 75, 97, 113, 113,
+ 113, 113, 125, 125, 125, 125, 98, 99, 100, 75,
+
+ 101, 132, 75, 126, 102, 139, 156, 103, 127, 104,
+ 75, 105, 106, 107, 108, 128, 128, 128, 128, 75,
+ 75, 259, 134, 88, 88, 140, 89, 89, 89, 75,
+ 141, 127, 137, 91, 92, 92, 91, 91, 92, 92,
+ 91, 138, 91, 92, 92, 91, 95, 95, 95, 95,
+ 96, 96, 96, 96, 153, 160, 111, 111, 111, 111,
+ 113, 113, 113, 113, 118, 118, 161, 154, 120, 120,
+ 75, 123, 142, 124, 129, 129, 75, 125, 125, 125,
+ 125, 75, 75, 104, 143, 144, 75, 145, 126, 172,
+ 75, 146, 75, 127, 147, 75, 174, 75, 148, 149,
+
+ 150, 128, 128, 128, 128, 128, 128, 128, 128, 169,
+ 175, 75, 173, 75, 75, 182, 177, 127, 75, 204,
+ 75, 127, 75, 75, 75, 75, 176, 75, 228, 75,
+ 179, 193, 193, 193, 193, 211, 183, 75, 178, 212,
+ 226, 205, 194, 213, 195, 75, 242, 196, 208, 193,
+ 193, 193, 193, 222, 222, 222, 222, 75, 75, 231,
+ 194, 75, 195, 75, 241, 196, 232, 75, 245, 196,
+ 223, 223, 223, 223, 230, 222, 222, 222, 222, 75,
+ 244, 75, 227, 75, 243, 75, 234, 223, 223, 223,
+ 223, 196, 251, 251, 251, 251, 75, 75, 246, 75,
+
+ 75, 75, 254, 252, 75, 75, 75, 247, 253, 255,
+ 75, 256, 75, 257, 258, 251, 251, 251, 251, 75,
+ 262, 266, 261, 75, 75, 267, 252, 263, 263, 263,
+ 263, 253, 75, 264, 265, 75, 270, 75, 268, 75,
+ 75, 271, 75, 253, 263, 263, 263, 263, 75, 273,
+ 274, 75, 75, 275, 272, 75, 75, 75, 75, 75,
+ 253, 75, 75, 279, 75, 276, 75, 277, 75, 75,
+ 278, 280, 75, 75, 282, 283, 281, 287, 286, 288,
+ 75, 289, 284, 75, 285, 75, 296, 290, 75, 75,
+ 291, 292, 75, 75, 75, 75, 75, 75, 293, 75,
+
+ 295, 75, 294, 75, 301, 75, 303, 299, 75, 269,
+ 75, 300, 297, 260, 250, 298, 305, 249, 248, 75,
+ 75, 302, 306, 304, 240, 307, 42, 42, 42, 42,
+ 42, 42, 42, 42, 42, 44, 44, 44, 44, 44,
+ 44, 44, 44, 44, 55, 55, 55, 55, 55, 55,
+ 55, 55, 55, 58, 58, 58, 58, 58, 58, 58,
+ 58, 58, 62, 62, 62, 62, 62, 62, 62, 62,
+ 62, 64, 64, 64, 64, 64, 64, 64, 64, 64,
+ 66, 66, 66, 66, 66, 66, 66, 66, 66, 61,
+ 61, 61, 61, 61, 61, 61, 61, 61, 76, 76,
+
+ 90, 90, 90, 90, 90, 90, 239, 90, 90, 94,
+ 238, 237, 94, 236, 94, 110, 110, 110, 235, 110,
+ 110, 110, 110, 110, 112, 233, 112, 112, 112, 112,
+ 112, 115, 115, 115, 115, 115, 115, 115, 229, 115,
+ 117, 225, 117, 117, 117, 117, 117, 117, 117, 119,
+ 224, 119, 119, 119, 119, 119, 119, 119, 221, 220,
+ 219, 218, 217, 216, 215, 214, 75, 210, 209, 207,
+ 206, 203, 202, 201, 200, 199, 198, 197, 192, 191,
+ 190, 189, 188, 187, 186, 185, 184, 181, 180, 154,
+ 171, 75, 122, 122, 168, 167, 166, 165, 164, 163,
+
+ 162, 159, 158, 157, 152, 151, 75, 122, 121, 116,
+ 114, 109, 74, 77, 75, 74, 308, 68, 68, 63,
+ 63, 43, 43, 23, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308
} ;
-static yyconst flex_int32_t yy_chk[724] =
+static yyconst flex_int32_t yy_chk[772] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 1, 2, 2, 7, 2, 2,
- 3, 3, 4, 4, 13, 13, 14, 14, 8, 15,
- 15, 3, 26, 4, 16, 16, 314, 27, 29, 74,
- 25, 31, 33, 28, 30, 32, 26, 27, 29, 7,
- 74, 31, 34, 34, 33, 2, 2, 2, 5, 5,
- 8, 25, 5, 5, 28, 5, 30, 25, 33, 32,
-
- 5, 35, 35, 5, 5, 38, 38, 38, 39, 39,
- 40, 40, 41, 41, 43, 43, 43, 43, 192, 39,
- 192, 40, 294, 41, 290, 5, 71, 5, 6, 6,
- 63, 63, 6, 6, 72, 6, 53, 53, 53, 53,
- 6, 65, 65, 6, 6, 55, 55, 71, 55, 56,
- 56, 56, 56, 75, 67, 67, 55, 55, 67, 73,
- 72, 76, 214, 77, 99, 6, 78, 6, 9, 9,
- 79, 75, 9, 9, 73, 9, 77, 78, 80, 81,
- 9, 214, 76, 9, 9, 99, 78, 125, 79, 81,
- 82, 82, 83, 83, 83, 84, 84, 91, 91, 125,
-
- 80, 92, 92, 85, 85, 9, 84, 9, 10, 10,
- 86, 86, 10, 10, 85, 10, 88, 88, 90, 90,
- 10, 86, 289, 10, 10, 102, 123, 88, 283, 90,
- 94, 94, 94, 94, 116, 116, 102, 108, 108, 108,
- 108, 109, 109, 123, 109, 10, 128, 10, 47, 118,
- 118, 127, 109, 109, 120, 120, 122, 47, 47, 47,
- 128, 47, 126, 132, 131, 47, 130, 127, 47, 129,
- 133, 159, 47, 47, 47, 47, 95, 95, 122, 95,
- 130, 129, 137, 95, 160, 133, 95, 132, 126, 131,
- 95, 95, 95, 111, 111, 111, 111, 159, 163, 164,
-
- 168, 169, 170, 137, 190, 191, 160, 198, 194, 195,
- 210, 213, 168, 196, 190, 169, 163, 170, 194, 195,
- 196, 215, 216, 217, 218, 219, 164, 228, 225, 191,
- 226, 230, 229, 213, 198, 231, 210, 215, 233, 234,
- 216, 228, 218, 236, 230, 217, 225, 229, 237, 240,
- 219, 241, 242, 226, 245, 244, 231, 234, 246, 247,
- 233, 248, 249, 251, 240, 236, 242, 250, 252, 241,
- 253, 254, 256, 257, 258, 245, 249, 237, 244, 246,
- 264, 262, 250, 247, 263, 254, 259, 248, 251, 261,
- 256, 265, 252, 277, 266, 269, 264, 267, 258, 253,
-
- 268, 271, 257, 272, 259, 262, 273, 261, 266, 263,
- 265, 267, 274, 269, 268, 276, 275, 272, 271, 277,
- 279, 281, 282, 284, 285, 286, 288, 273, 287, 293,
- 291, 276, 292, 280, 285, 278, 274, 275, 287, 282,
- 270, 284, 260, 255, 243, 239, 279, 281, 291, 238,
- 293, 286, 288, 232, 292, 296, 296, 296, 296, 296,
- 296, 296, 296, 296, 297, 297, 297, 297, 297, 297,
- 297, 297, 297, 298, 298, 298, 298, 298, 298, 298,
- 298, 298, 299, 299, 299, 299, 299, 299, 299, 299,
- 299, 300, 300, 300, 300, 300, 300, 300, 300, 300,
-
- 301, 301, 301, 301, 301, 301, 301, 301, 301, 302,
- 302, 302, 302, 302, 302, 302, 302, 302, 303, 303,
- 304, 304, 304, 304, 304, 304, 304, 304, 304, 305,
- 305, 305, 305, 305, 305, 305, 305, 305, 306, 306,
- 306, 306, 306, 306, 306, 306, 306, 307, 227, 222,
- 307, 221, 307, 307, 308, 308, 308, 220, 308, 308,
- 308, 308, 308, 309, 212, 309, 309, 309, 309, 309,
- 310, 211, 310, 310, 310, 310, 310, 311, 311, 311,
- 311, 311, 311, 311, 209, 311, 312, 207, 312, 312,
- 312, 312, 312, 312, 312, 313, 202, 313, 313, 313,
-
- 313, 313, 313, 313, 315, 315, 315, 315, 315, 315,
- 200, 315, 315, 199, 197, 193, 189, 187, 182, 180,
- 179, 178, 177, 176, 174, 167, 166, 165, 162, 161,
- 158, 157, 156, 153, 152, 151, 150, 149, 147, 143,
- 142, 141, 140, 139, 138, 136, 135, 134, 124, 121,
- 119, 114, 112, 106, 105, 104, 103, 101, 100, 98,
- 97, 96, 87, 69, 66, 61, 58, 48, 37, 24,
- 23, 22, 19, 18, 17, 12, 11, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
-
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,
- 295, 295, 295
+ 1, 1, 1, 1, 1, 1, 1, 2, 2, 7,
+ 2, 2, 8, 13, 13, 14, 14, 15, 15, 16,
+ 16, 19, 20, 19, 20, 31, 21, 21, 21, 21,
+ 37, 37, 325, 9, 9, 33, 31, 21, 38, 38,
+ 10, 10, 21, 7, 32, 29, 8, 9, 30, 2,
+ 2, 2, 5, 5, 10, 32, 5, 5, 33, 5,
+
+ 5, 5, 35, 30, 5, 5, 5, 29, 132, 5,
+ 5, 34, 9, 29, 9, 65, 65, 36, 70, 10,
+ 70, 10, 34, 41, 41, 41, 132, 35, 67, 67,
+ 36, 5, 307, 5, 6, 6, 74, 74, 6, 6,
+ 74, 6, 6, 6, 36, 80, 6, 6, 6, 83,
+ 78, 6, 6, 22, 22, 22, 22, 43, 43, 43,
+ 43, 80, 82, 83, 22, 45, 45, 45, 45, 22,
+ 303, 43, 78, 6, 79, 6, 50, 50, 50, 50,
+ 56, 56, 56, 56, 82, 101, 85, 50, 59, 59,
+ 59, 59, 71, 71, 71, 71, 50, 50, 50, 246,
+
+ 50, 79, 86, 71, 50, 85, 101, 50, 71, 50,
+ 81, 50, 50, 50, 50, 72, 72, 72, 72, 87,
+ 84, 246, 81, 88, 88, 86, 89, 89, 89, 302,
+ 87, 72, 84, 91, 91, 91, 91, 92, 92, 92,
+ 92, 84, 93, 93, 93, 93, 95, 95, 95, 95,
+ 96, 96, 96, 96, 100, 105, 111, 111, 111, 111,
+ 113, 113, 113, 113, 118, 118, 105, 100, 120, 120,
+ 296, 124, 96, 124, 129, 129, 134, 125, 125, 125,
+ 125, 136, 293, 96, 97, 97, 131, 97, 125, 134,
+ 139, 97, 169, 125, 97, 135, 136, 137, 97, 97,
+
+ 97, 126, 126, 126, 126, 128, 128, 128, 128, 131,
+ 137, 138, 135, 140, 141, 145, 139, 126, 170, 169,
+ 173, 128, 177, 229, 178, 206, 138, 179, 206, 204,
+ 141, 159, 159, 159, 159, 177, 145, 226, 140, 178,
+ 204, 170, 159, 179, 159, 232, 229, 159, 173, 193,
+ 193, 193, 193, 194, 194, 194, 194, 205, 211, 209,
+ 193, 231, 193, 208, 226, 193, 209, 230, 232, 194,
+ 195, 195, 195, 195, 208, 222, 222, 222, 222, 233,
+ 231, 234, 205, 241, 230, 242, 211, 223, 223, 223,
+ 223, 222, 238, 238, 238, 238, 243, 244, 233, 248,
+
+ 245, 249, 241, 238, 255, 257, 258, 234, 238, 242,
+ 254, 243, 261, 244, 245, 251, 251, 251, 251, 262,
+ 249, 257, 248, 259, 265, 258, 251, 252, 252, 252,
+ 252, 251, 264, 254, 255, 266, 261, 267, 259, 268,
+ 270, 262, 269, 252, 263, 263, 263, 263, 271, 265,
+ 266, 274, 273, 267, 264, 275, 277, 278, 279, 291,
+ 263, 280, 281, 271, 282, 268, 283, 269, 284, 287,
+ 270, 273, 286, 288, 275, 277, 274, 281, 280, 282,
+ 289, 283, 278, 290, 279, 292, 291, 284, 294, 295,
+ 286, 287, 297, 298, 299, 300, 301, 304, 288, 305,
+
+ 290, 285, 289, 306, 298, 276, 300, 295, 272, 260,
+ 256, 297, 292, 247, 237, 294, 304, 236, 235, 228,
+ 227, 299, 305, 301, 225, 306, 309, 309, 309, 309,
+ 309, 309, 309, 309, 309, 310, 310, 310, 310, 310,
+ 310, 310, 310, 310, 311, 311, 311, 311, 311, 311,
+ 311, 311, 311, 312, 312, 312, 312, 312, 312, 312,
+ 312, 312, 313, 313, 313, 313, 313, 313, 313, 313,
+ 313, 314, 314, 314, 314, 314, 314, 314, 314, 314,
+ 315, 315, 315, 315, 315, 315, 315, 315, 315, 316,
+ 316, 316, 316, 316, 316, 316, 316, 316, 317, 317,
+
+ 318, 318, 318, 318, 318, 318, 221, 318, 318, 319,
+ 220, 215, 319, 213, 319, 320, 320, 320, 212, 320,
+ 320, 320, 320, 320, 321, 210, 321, 321, 321, 321,
+ 321, 322, 322, 322, 322, 322, 322, 322, 207, 322,
+ 323, 203, 323, 323, 323, 323, 323, 323, 323, 324,
+ 201, 324, 324, 324, 324, 324, 324, 324, 192, 190,
+ 189, 188, 187, 186, 185, 183, 176, 175, 174, 172,
+ 171, 168, 167, 166, 163, 162, 161, 160, 158, 156,
+ 154, 151, 150, 149, 148, 147, 146, 144, 143, 142,
+ 133, 130, 123, 122, 121, 116, 114, 109, 108, 107,
+
+ 106, 104, 103, 102, 99, 98, 76, 69, 68, 63,
+ 60, 51, 40, 28, 27, 26, 23, 18, 17, 12,
+ 11, 4, 3, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
+ 308
} ;
static yy_state_type yy_last_accepting_state;
@@ -752,7 +765,7 @@ char *gabc_score_determination_text;
* This file implements the score lexer.
*
* Gregorio score determination in gabc input.
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -817,7 +830,7 @@ static bool eof_found = false;
#define YY_INPUT(buf,result,max_size) \
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) { \
int c = '*'; \
- size_t n; \
+ int n; \
for (n = 0; n < max_size \
&& (c = getc(gabc_score_determination_in)) != EOF \
&& c != '\n'; ++n ) { \
@@ -855,11 +868,13 @@ static bool eof_found = false;
+
+
/* The expression for attribute below is rather messy because we allow
for (a) single-line values, ending with a semicolon at end of line or a
double semicolon, (b) multi-line values, which end at a double
semicolon. */
-#line 863 "gabc/gabc-score-determination-l.c"
+#line 878 "gabc/gabc-score-determination-l.c"
#define INITIAL 0
#define attribute 1
@@ -870,6 +885,8 @@ semicolon. */
#define comments 6
#define inicomments 7
#define alt 8
+#define protrusion_value 9
+#define protrusion_end 10
#ifndef YY_NO_UNISTD_H
/* Special case for "unistd.h", since it is non-ANSI. We include it way
@@ -1090,9 +1107,9 @@ YY_DECL
}
{
-#line 134 "gabc/gabc-score-determination.l"
+#line 136 "gabc/gabc-score-determination.l"
-#line 1096 "gabc/gabc-score-determination-l.c"
+#line 1113 "gabc/gabc-score-determination-l.c"
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
{
@@ -1120,13 +1137,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 296 )
+ if ( yy_current_state >= 309 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
- while ( yy_base[yy_current_state] != 678 );
+ while ( yy_base[yy_current_state] != 724 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
@@ -1152,7 +1169,7 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
YY_RULE_SETUP
-#line 135 "gabc/gabc-score-determination.l"
+#line 137 "gabc/gabc-score-determination.l"
{
/* BOM written by a lot of windows softwares when they write UTF-8 */
}
@@ -1160,14 +1177,14 @@ YY_RULE_SETUP
case 2:
/* rule 2 can match eol */
YY_RULE_SETUP
-#line 138 "gabc/gabc-score-determination.l"
+#line 140 "gabc/gabc-score-determination.l"
{
/* ignoring empty lines */
}
YY_BREAK
case 3:
YY_RULE_SETUP
-#line 141 "gabc/gabc-score-determination.l"
+#line 143 "gabc/gabc-score-determination.l"
{
BEGIN(inicomments);
}
@@ -1175,21 +1192,21 @@ YY_RULE_SETUP
case 4:
/* rule 4 can match eol */
YY_RULE_SETUP
-#line 144 "gabc/gabc-score-determination.l"
+#line 146 "gabc/gabc-score-determination.l"
{
BEGIN(INITIAL);
}
YY_BREAK
case 5:
YY_RULE_SETUP
-#line 147 "gabc/gabc-score-determination.l"
+#line 149 "gabc/gabc-score-determination.l"
{
/* ignored */
}
YY_BREAK
case 6:
YY_RULE_SETUP
-#line 150 "gabc/gabc-score-determination.l"
+#line 152 "gabc/gabc-score-determination.l"
{
BEGIN(attribute);
return COLON;
@@ -1198,68 +1215,69 @@ YY_RULE_SETUP
case 7:
/* rule 7 can match eol */
YY_RULE_SETUP
-#line 154 "gabc/gabc-score-determination.l"
+#line 156 "gabc/gabc-score-determination.l"
{
- gabc_score_determination_lval.text =
- gregorio_strdup(gabc_score_determination_text);
- return ATTRIBUTE;
+ BEGIN(INITIAL);
+ return SEMICOLON;
}
YY_BREAK
case 8:
/* rule 8 can match eol */
YY_RULE_SETUP
-#line 159 "gabc/gabc-score-determination.l"
+#line 160 "gabc/gabc-score-determination.l"
{
- BEGIN(INITIAL);
- return SEMICOLON;
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return ATTRIBUTE;
}
YY_BREAK
case 9:
YY_RULE_SETUP
-#line 163 "gabc/gabc-score-determination.l"
+#line 165 "gabc/gabc-score-determination.l"
{
- gabc_score_determination_lval.character = gabc_score_determination_text[5];
- return DEF_MACRO;
- }
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return ATTRIBUTE;
+}
YY_BREAK
case 10:
YY_RULE_SETUP
-#line 167 "gabc/gabc-score-determination.l"
+#line 170 "gabc/gabc-score-determination.l"
{
- gabc_score_determination_lval.text =
- gregorio_strdup(gabc_score_determination_text);
- return NAME;
+ gabc_score_determination_lval.character = gabc_score_determination_text[5];
+ return DEF_MACRO;
}
YY_BREAK
case 11:
YY_RULE_SETUP
-#line 172 "gabc/gabc-score-determination.l"
+#line 174 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
- return SCORE_COPYRIGHT;
+ return NAME;
}
YY_BREAK
case 12:
YY_RULE_SETUP
-#line 177 "gabc/gabc-score-determination.l"
+#line 179 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
- return GABC_COPYRIGHT;
+ return SCORE_COPYRIGHT;
}
YY_BREAK
case 13:
YY_RULE_SETUP
-#line 182 "gabc/gabc-score-determination.l"
+#line 184 "gabc/gabc-score-determination.l"
{
- /* DEPRECATED for removal in 5.0 */
- return INITIAL_STYLE;
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return GABC_COPYRIGHT;
}
YY_BREAK
case 14:
YY_RULE_SETUP
-#line 186 "gabc/gabc-score-determination.l"
+#line 189 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1268,7 +1286,7 @@ YY_RULE_SETUP
YY_BREAK
case 15:
YY_RULE_SETUP
-#line 191 "gabc/gabc-score-determination.l"
+#line 194 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1277,7 +1295,7 @@ YY_RULE_SETUP
YY_BREAK
case 16:
YY_RULE_SETUP
-#line 196 "gabc/gabc-score-determination.l"
+#line 199 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1286,7 +1304,7 @@ YY_RULE_SETUP
YY_BREAK
case 17:
YY_RULE_SETUP
-#line 201 "gabc/gabc-score-determination.l"
+#line 204 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1295,7 +1313,7 @@ YY_RULE_SETUP
YY_BREAK
case 18:
YY_RULE_SETUP
-#line 206 "gabc/gabc-score-determination.l"
+#line 209 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1304,7 +1322,7 @@ YY_RULE_SETUP
YY_BREAK
case 19:
YY_RULE_SETUP
-#line 211 "gabc/gabc-score-determination.l"
+#line 214 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1313,7 +1331,7 @@ YY_RULE_SETUP
YY_BREAK
case 20:
YY_RULE_SETUP
-#line 216 "gabc/gabc-score-determination.l"
+#line 219 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1322,7 +1340,7 @@ YY_RULE_SETUP
YY_BREAK
case 21:
YY_RULE_SETUP
-#line 221 "gabc/gabc-score-determination.l"
+#line 224 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1331,7 +1349,7 @@ YY_RULE_SETUP
YY_BREAK
case 22:
YY_RULE_SETUP
-#line 226 "gabc/gabc-score-determination.l"
+#line 229 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1340,7 +1358,7 @@ YY_RULE_SETUP
YY_BREAK
case 23:
YY_RULE_SETUP
-#line 231 "gabc/gabc-score-determination.l"
+#line 234 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -1350,7 +1368,7 @@ YY_RULE_SETUP
case 24:
/* rule 24 can match eol */
YY_RULE_SETUP
-#line 236 "gabc/gabc-score-determination.l"
+#line 239 "gabc/gabc-score-determination.l"
{
BEGIN(score);
return END_OF_DEFINITIONS;
@@ -1358,7 +1376,7 @@ YY_RULE_SETUP
YY_BREAK
case 25:
YY_RULE_SETUP
-#line 240 "gabc/gabc-score-determination.l"
+#line 243 "gabc/gabc-score-determination.l"
{
gregorio_messagef("det_score", VERBOSITY_ERROR, 0,
_("unrecognized character: \"%c\" in definition part"),
@@ -1368,323 +1386,376 @@ YY_RULE_SETUP
case 26:
/* rule 26 can match eol */
YY_RULE_SETUP
-#line 245 "gabc/gabc-score-determination.l"
+#line 248 "gabc/gabc-score-determination.l"
{
RETURN_SPACE;
}
YY_BREAK
case 27:
YY_RULE_SETUP
-#line 248 "gabc/gabc-score-determination.l"
+#line 251 "gabc/gabc-score-determination.l"
{
RETURN_CHARACTERS;
}
YY_BREAK
case 28:
YY_RULE_SETUP
-#line 251 "gabc/gabc-score-determination.l"
+#line 254 "gabc/gabc-score-determination.l"
{
return HYPHEN;
}
YY_BREAK
case 29:
YY_RULE_SETUP
-#line 254 "gabc/gabc-score-determination.l"
+#line 257 "gabc/gabc-score-determination.l"
{
- return NLBA_B;
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return PROTRUDING_PUNCTUATION;
}
YY_BREAK
case 30:
YY_RULE_SETUP
-#line 257 "gabc/gabc-score-determination.l"
+#line 262 "gabc/gabc-score-determination.l"
{
- return NLBA_E;
+ return NLBA_B;
}
YY_BREAK
case 31:
YY_RULE_SETUP
-#line 260 "gabc/gabc-score-determination.l"
+#line 265 "gabc/gabc-score-determination.l"
{
- START_STYLE(I);
+ return NLBA_E;
}
YY_BREAK
case 32:
YY_RULE_SETUP
-#line 263 "gabc/gabc-score-determination.l"
+#line 268 "gabc/gabc-score-determination.l"
{
- END_STYLE(I);
+ START_STYLE(I);
}
YY_BREAK
case 33:
YY_RULE_SETUP
-#line 266 "gabc/gabc-score-determination.l"
+#line 271 "gabc/gabc-score-determination.l"
{
- START_STYLE(TT);
+ END_STYLE(I);
}
YY_BREAK
case 34:
YY_RULE_SETUP
-#line 269 "gabc/gabc-score-determination.l"
+#line 274 "gabc/gabc-score-determination.l"
{
- END_STYLE(TT);
+ START_STYLE(TT);
}
YY_BREAK
case 35:
YY_RULE_SETUP
-#line 272 "gabc/gabc-score-determination.l"
+#line 277 "gabc/gabc-score-determination.l"
{
- START_STYLE(UL);
+ END_STYLE(TT);
}
YY_BREAK
case 36:
YY_RULE_SETUP
-#line 275 "gabc/gabc-score-determination.l"
+#line 280 "gabc/gabc-score-determination.l"
{
- END_STYLE(UL);
+ START_STYLE(UL);
}
YY_BREAK
case 37:
YY_RULE_SETUP
-#line 278 "gabc/gabc-score-determination.l"
+#line 283 "gabc/gabc-score-determination.l"
{
- START_STYLE(C);
+ END_STYLE(UL);
}
YY_BREAK
case 38:
YY_RULE_SETUP
-#line 281 "gabc/gabc-score-determination.l"
+#line 286 "gabc/gabc-score-determination.l"
{
- END_STYLE(C);
+ START_STYLE(C);
}
YY_BREAK
case 39:
YY_RULE_SETUP
-#line 284 "gabc/gabc-score-determination.l"
+#line 289 "gabc/gabc-score-determination.l"
{
- START_STYLE(B);
+ END_STYLE(C);
}
YY_BREAK
case 40:
YY_RULE_SETUP
-#line 287 "gabc/gabc-score-determination.l"
+#line 292 "gabc/gabc-score-determination.l"
{
- END_STYLE(B);
+ START_STYLE(B);
}
YY_BREAK
case 41:
YY_RULE_SETUP
-#line 290 "gabc/gabc-score-determination.l"
+#line 295 "gabc/gabc-score-determination.l"
{
- START_STYLE(SC);
+ END_STYLE(B);
}
YY_BREAK
case 42:
YY_RULE_SETUP
-#line 293 "gabc/gabc-score-determination.l"
+#line 298 "gabc/gabc-score-determination.l"
{
- END_STYLE(SC);
+ START_STYLE(SC);
}
YY_BREAK
case 43:
YY_RULE_SETUP
-#line 296 "gabc/gabc-score-determination.l"
+#line 301 "gabc/gabc-score-determination.l"
{
- START_STYLE(ELISION);
+ END_STYLE(SC);
}
YY_BREAK
case 44:
YY_RULE_SETUP
-#line 299 "gabc/gabc-score-determination.l"
+#line 304 "gabc/gabc-score-determination.l"
{
- END_STYLE(ELISION);
+ START_STYLE(ELISION);
}
YY_BREAK
case 45:
YY_RULE_SETUP
-#line 302 "gabc/gabc-score-determination.l"
+#line 307 "gabc/gabc-score-determination.l"
+{
+ END_STYLE(ELISION);
+ }
+ YY_BREAK
+case 46:
+YY_RULE_SETUP
+#line 310 "gabc/gabc-score-determination.l"
{
BEGIN(sp);
return SP_BEGIN;
}
YY_BREAK
-case 46:
+case 47:
YY_RULE_SETUP
-#line 306 "gabc/gabc-score-determination.l"
+#line 314 "gabc/gabc-score-determination.l"
{
BEGIN(score);
return SP_END;
}
YY_BREAK
-case 47:
-/* rule 47 can match eol */
+case 48:
+/* rule 48 can match eol */
YY_RULE_SETUP
-#line 310 "gabc/gabc-score-determination.l"
+#line 318 "gabc/gabc-score-determination.l"
{
RETURN_SPACE;
}
YY_BREAK
-case 48:
+case 49:
YY_RULE_SETUP
-#line 313 "gabc/gabc-score-determination.l"
+#line 321 "gabc/gabc-score-determination.l"
{
RETURN_CHARACTERS;
}
YY_BREAK
-case 49:
+case 50:
YY_RULE_SETUP
-#line 316 "gabc/gabc-score-determination.l"
+#line 324 "gabc/gabc-score-determination.l"
{
BEGIN(comments);
}
YY_BREAK
-case 50:
-/* rule 50 can match eol */
+case 51:
+/* rule 51 can match eol */
YY_RULE_SETUP
-#line 319 "gabc/gabc-score-determination.l"
+#line 327 "gabc/gabc-score-determination.l"
{
BEGIN(score);
}
YY_BREAK
-case 51:
+case 52:
YY_RULE_SETUP
-#line 322 "gabc/gabc-score-determination.l"
+#line 330 "gabc/gabc-score-determination.l"
{
/* ignored */
}
YY_BREAK
-case 52:
+case 53:
YY_RULE_SETUP
-#line 325 "gabc/gabc-score-determination.l"
+#line 333 "gabc/gabc-score-determination.l"
{
BEGIN(verb);
return VERB_BEGIN;
}
YY_BREAK
-case 53:
+case 54:
YY_RULE_SETUP
-#line 329 "gabc/gabc-score-determination.l"
+#line 337 "gabc/gabc-score-determination.l"
{
BEGIN(score);
return VERB_END;
}
YY_BREAK
-case 54:
-/* rule 54 can match eol */
+case 55:
+/* rule 55 can match eol */
YY_RULE_SETUP
-#line 333 "gabc/gabc-score-determination.l"
+#line 341 "gabc/gabc-score-determination.l"
{
RETURN_CHARACTERS;
}
YY_BREAK
-case 55:
+case 56:
YY_RULE_SETUP
-#line 336 "gabc/gabc-score-determination.l"
+#line 344 "gabc/gabc-score-determination.l"
{
RETURN_CHARACTERS;
}
YY_BREAK
-case 56:
+case 57:
YY_RULE_SETUP
-#line 339 "gabc/gabc-score-determination.l"
+#line 347 "gabc/gabc-score-determination.l"
{
return CENTER_BEGIN;
}
YY_BREAK
-case 57:
+case 58:
YY_RULE_SETUP
-#line 342 "gabc/gabc-score-determination.l"
+#line 350 "gabc/gabc-score-determination.l"
{
return CENTER_END;
}
YY_BREAK
-case 58:
+case 59:
YY_RULE_SETUP
-#line 345 "gabc/gabc-score-determination.l"
+#line 353 "gabc/gabc-score-determination.l"
{
BEGIN(alt);
return ALT_BEGIN;
}
YY_BREAK
-case 59:
+case 60:
YY_RULE_SETUP
-#line 349 "gabc/gabc-score-determination.l"
+#line 357 "gabc/gabc-score-determination.l"
{
BEGIN(score);
return ALT_END;
}
YY_BREAK
-case 60:
+case 61:
YY_RULE_SETUP
-#line 353 "gabc/gabc-score-determination.l"
+#line 361 "gabc/gabc-score-determination.l"
{
return EUOUAE_B;
}
YY_BREAK
-case 61:
+case 62:
YY_RULE_SETUP
-#line 356 "gabc/gabc-score-determination.l"
+#line 364 "gabc/gabc-score-determination.l"
{
return EUOUAE_E;
}
YY_BREAK
-case 62:
+case 63:
YY_RULE_SETUP
-#line 359 "gabc/gabc-score-determination.l"
+#line 367 "gabc/gabc-score-determination.l"
{
return TRANSLATION_CENTER_END;
}
YY_BREAK
-case 63:
+case 64:
YY_RULE_SETUP
-#line 362 "gabc/gabc-score-determination.l"
+#line 370 "gabc/gabc-score-determination.l"
{
return TRANSLATION_BEGIN;
}
YY_BREAK
-case 64:
+case 65:
YY_RULE_SETUP
-#line 365 "gabc/gabc-score-determination.l"
+#line 373 "gabc/gabc-score-determination.l"
{
return TRANSLATION_END;
}
YY_BREAK
-case 65:
+case 66:
+/* rule 66 can match eol */
YY_RULE_SETUP
-#line 368 "gabc/gabc-score-determination.l"
+#line 376 "gabc/gabc-score-determination.l"
+{
+ return CLEAR;
+ }
+ YY_BREAK
+case 67:
+/* rule 67 can match eol */
+YY_RULE_SETUP
+#line 379 "gabc/gabc-score-determination.l"
+{
+ return PROTRUSION;
+ }
+ YY_BREAK
+case 68:
+/* rule 68 can match eol */
+YY_RULE_SETUP
+#line 382 "gabc/gabc-score-determination.l"
+{
+ BEGIN(protrusion_value);
+ return PROTRUSION;
+ }
+ YY_BREAK
+case 69:
+YY_RULE_SETUP
+#line 386 "gabc/gabc-score-determination.l"
+{
+ BEGIN(protrusion_end);
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return PROTRUSION_VALUE;
+ }
+ YY_BREAK
+case 70:
+/* rule 70 can match eol */
+YY_RULE_SETUP
+#line 392 "gabc/gabc-score-determination.l"
+{
+ BEGIN(score);
+ return PROTRUSION_END;
+ }
+ YY_BREAK
+case 71:
+YY_RULE_SETUP
+#line 396 "gabc/gabc-score-determination.l"
{
BEGIN(notes);
return OPENING_BRACKET;
}
YY_BREAK
-case 66:
-/* rule 66 can match eol */
+case 72:
+/* rule 72 can match eol */
YY_RULE_SETUP
-#line 372 "gabc/gabc-score-determination.l"
+#line 400 "gabc/gabc-score-determination.l"
{
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
return NOTES;
}
YY_BREAK
-case 67:
+case 73:
YY_RULE_SETUP
-#line 377 "gabc/gabc-score-determination.l"
+#line 405 "gabc/gabc-score-determination.l"
{
return NABC_CUT;
}
YY_BREAK
-case 68:
+case 74:
YY_RULE_SETUP
-#line 380 "gabc/gabc-score-determination.l"
+#line 408 "gabc/gabc-score-determination.l"
{
BEGIN(score);
return CLOSING_BRACKET;
}
YY_BREAK
-case 69:
-/* rule 69 can match eol */
+case 75:
+/* rule 75 can match eol */
YY_RULE_SETUP
-#line 384 "gabc/gabc-score-determination.l"
+#line 412 "gabc/gabc-score-determination.l"
{
BEGIN(score);
return CLOSING_BRACKET_WITH_SPACE;
@@ -1699,7 +1770,9 @@ case YY_STATE_EOF(verb):
case YY_STATE_EOF(comments):
case YY_STATE_EOF(inicomments):
case YY_STATE_EOF(alt):
-#line 388 "gabc/gabc-score-determination.l"
+case YY_STATE_EOF(protrusion_value):
+case YY_STATE_EOF(protrusion_end):
+#line 416 "gabc/gabc-score-determination.l"
{
if (!eof_found) {
eof_found = true;
@@ -1709,22 +1782,22 @@ case YY_STATE_EOF(alt):
}
}
YY_BREAK
-case 70:
-/* rule 70 can match eol */
+case 76:
+/* rule 76 can match eol */
YY_RULE_SETUP
-#line 396 "gabc/gabc-score-determination.l"
+#line 424 "gabc/gabc-score-determination.l"
{
gregorio_messagef("gabc_score_determination_lex", VERBOSITY_ERROR, 0,
_("unrecognized character: \"%c\""),
gabc_score_determination_text[0]);
}
YY_BREAK
-case 71:
+case 77:
YY_RULE_SETUP
-#line 401 "gabc/gabc-score-determination.l"
+#line 429 "gabc/gabc-score-determination.l"
ECHO;
YY_BREAK
-#line 1728 "gabc/gabc-score-determination-l.c"
+#line 1801 "gabc/gabc-score-determination-l.c"
case YY_END_OF_BUFFER:
{
@@ -2016,7 +2089,7 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 296 )
+ if ( yy_current_state >= 309 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -2044,11 +2117,11 @@ static int yy_get_next_buffer (void)
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
- if ( yy_current_state >= 296 )
+ if ( yy_current_state >= 309 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
- yy_is_jam = (yy_current_state == 295);
+ yy_is_jam = (yy_current_state == 308);
return yy_is_jam ? 0 : yy_current_state;
}
@@ -2697,7 +2770,7 @@ void gabc_score_determination_free (void * ptr )
#define YYTABLES_NAME "yytables"
-#line 401 "gabc/gabc-score-determination.l"
+#line 429 "gabc/gabc-score-determination.l"
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.h b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.h
index 411b56732a4..a53d97e76c7 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-l.h
@@ -230,6 +230,8 @@ extern char *gabc_score_determination_text;
#define comments 6
#define inicomments 7
#define alt 8
+#define protrusion_value 9
+#define protrusion_end 10
#endif
@@ -338,9 +340,9 @@ extern int gabc_score_determination_lex (void);
#undef YY_DECL
#endif
-#line 401 "gabc/gabc-score-determination.l"
+#line 429 "gabc/gabc-score-determination.l"
-#line 345 "gabc/gabc-score-determination-l.h"
+#line 347 "gabc/gabc-score-determination-l.h"
#undef gabc_score_determination_IN_HEADER
#endif /* gabc_score_determination_HEADER_H */
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.c
index 82e4d2dc37a..7017c6a3e07 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.c
@@ -78,7 +78,7 @@
* This file implements the score parser.
*
* Gregorio score determination from gabc.
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -125,10 +125,13 @@
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
(Current).last_offset = YYRHSLOC (Rhs, N).last_offset; \
+ (Current).generate_point_and_click = YYRHSLOC (Rhs, 1).generate_point_and_click; \
} else { \
(Current).first_line = (Current).last_line = YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = YYRHSLOC (Rhs, 0).last_column; \
(Current).first_offset = (Current).last_offset = YYRHSLOC (Rhs, 0).last_offset; \
+ (Current).first_offset = (Current).last_offset = YYRHSLOC (Rhs, 0).last_offset; \
+ (Current).generate_point_and_click = YYRHSLOC (Rhs, 0).generate_point_and_click; \
}
#include "gabc-score-determination.h"
@@ -160,6 +163,7 @@ gregorio_element *current_element;
static char *macros[10];
/* other variables that we will have to use */
static gregorio_character *current_character;
+static gregorio_character *suspended_character;
static gregorio_character *first_text_character;
static gregorio_character *first_translation_character;
static gregorio_tr_centering translation_type;
@@ -178,6 +182,9 @@ static bool got_staff_lines;
static bool started_first_word;
static struct sha1_ctx digester;
static gabc_style_bits styles;
+static bool generate_point_and_click;
+static bool clear_syllable_text;
+static bool has_protrusion;
/* punctum_inclinatum_orientation maintains the running punctum inclinatum
* orientation in order to decide if the glyph needs to be cut when a punctum
@@ -214,7 +221,7 @@ static void gabc_score_determination_error(const char *error_str)
* The function that will initialize the variables.
*/
-static void initialize_variables(void)
+static void initialize_variables(bool point_and_click)
{
int i;
/* build a brand new empty score */
@@ -227,6 +234,7 @@ static void initialize_variables(void)
number_of_voices = 1;
voice = 0; /* first (and only) voice */
current_character = NULL;
+ suspended_character = NULL;
first_translation_character = NULL;
first_text_character = NULL;
translation_type = TR_NORMAL;
@@ -242,6 +250,9 @@ static void initialize_variables(void)
started_first_word = false;
styles = 0;
punctum_inclinatum_orientation = S_PUNCTUM_INCLINATUM_UNDETERMINED;
+ generate_point_and_click = point_and_click;
+ clear_syllable_text = false;
+ has_protrusion = false;
}
/*
@@ -266,7 +277,7 @@ static void end_definitions(void)
{
int i;
- gregorio_assert_only(check_infos_integrity(score), end_definitions,
+ gregorio_assert_only(gabc_check_infos_integrity(score), end_definitions,
"can't determine valid infos on the score");
elements = (gregorio_element **) gregorio_malloc(number_of_voices *
@@ -378,7 +389,159 @@ static void rebuild_score_characters(void)
}
/*
- * Function to close a syllable and update the position.
+ *
+ * The two functions called when lex returns a style, we simply add it. All the
+ * complex things will be done by the function after...
+ *
+ */
+
+static void add_style(unsigned char style)
+{
+ gregorio_begin_style(&current_character, style);
+}
+
+static void end_style(unsigned char style)
+{
+ gregorio_end_style(&current_character, style);
+}
+
+static __inline void save_text(void)
+{
+ if (has_protrusion) {
+ end_style(ST_PROTRUSION);
+ }
+ ready_characters();
+ first_text_character = current_character;
+}
+
+/* a function called when we see a [, basically, all characters are added to
+ * the translation pointer instead of the text pointer */
+static void start_translation(unsigned char asked_translation_type)
+{
+ suspended_character = current_character;
+ /* the middle letters of the translation have no sense */
+ /*center_is_determined = CENTER_FULLY_DETERMINED;*/
+ current_character = NULL;
+ translation_type = asked_translation_type;
+}
+
+static void end_translation(void)
+{
+ ready_characters();
+ first_translation_character = current_character;
+ current_character = suspended_character;
+}
+
+/*
+ * add_text is the function called when lex returns a char *. In
+ * this function we convert it into grewchar, and then we add the corresponding
+ * gregorio_characters in the list of gregorio_characters.
+ */
+
+static void add_text(char *mbcharacters)
+{
+ if (!current_character) {
+ /* insert open styles, leaving out ELISION on purpose */
+ if (styles & SB_I) {
+ add_style(ST_ITALIC);
+ }
+ if (styles & SB_B) {
+ add_style(ST_BOLD);
+ }
+ if (styles & SB_TT) {
+ add_style(ST_TT);
+ }
+ if (styles & SB_SC) {
+ add_style(ST_SMALL_CAPS);
+ }
+ if (styles & SB_UL) {
+ add_style(ST_UNDERLINED);
+ }
+ if (styles & SB_C) {
+ add_style(ST_COLORED);
+ }
+ }
+ if (current_character) {
+ current_character->next_character = gregorio_build_char_list_from_buf(
+ mbcharacters);
+ current_character->next_character->previous_character =
+ current_character;
+ } else {
+ current_character = gregorio_build_char_list_from_buf(mbcharacters);
+ }
+ while (current_character && current_character->next_character) {
+ current_character = current_character->next_character;
+ }
+ free(mbcharacters);
+}
+
+static void add_protrusion(char *factor)
+{
+ if (has_protrusion) {
+ gregorio_message("syllable already has protrusion; pr tag ignored",
+ "det_score", VERBOSITY_WARNING, 0);
+ free(factor);
+ } else {
+ if (center_is_determined == CENTER_HALF_DETERMINED) {
+ gregorio_message("closing open syllable center before protrusion",
+ "det_score", VERBOSITY_WARNING, 0);
+ end_style(ST_FORCED_CENTER);
+ center_is_determined = CENTER_FULLY_DETERMINED;
+ }
+
+ add_style(ST_PROTRUSION_FACTOR);
+ add_text(factor);
+ end_style(ST_PROTRUSION_FACTOR);
+ add_style(ST_PROTRUSION);
+ has_protrusion = true;
+ }
+}
+
+static void add_auto_protrusion(char *protrusion)
+{
+ if (has_protrusion) {
+ add_text(protrusion);
+ } else {
+ add_style(ST_PROTRUSION_FACTOR);
+ add_style(ST_VERBATIM);
+ add_text(gregorio_strdup("\\GreProtrusionFactor{"));
+
+ switch (*protrusion) {
+ case ',':
+ add_text(gregorio_strdup("comma"));
+ break;
+ case ';':
+ add_text(gregorio_strdup("semicolon"));
+ break;
+ case ':':
+ add_text(gregorio_strdup("colon"));
+ break;
+ case '.':
+ add_text(gregorio_strdup("period"));
+ break;
+ default:
+ /* not reachable unless there's a programming error */
+ /* LCOV_EXCL_START */
+ gregorio_fail2(add_auto_protrusion,
+ "unsupported protruding punctuation: %c", *protrusion);
+ break;
+ /* LCOV_EXCL_STOP */
+ }
+
+ add_text(gregorio_strdup("}"));
+ end_style(ST_VERBATIM);
+ end_style(ST_PROTRUSION_FACTOR);
+
+ add_style(ST_PROTRUSION);
+ add_text(protrusion);
+ end_style(ST_PROTRUSION);
+
+ has_protrusion = true;
+ }
+}
+
+/*
+ * Function to close a syllable and update the position.
*/
static void close_syllable(YYLTYPE *loc)
@@ -394,10 +557,9 @@ static void close_syllable(YYLTYPE *loc)
switch (ch->cos.s.type) {
case ST_T_BEGIN:
++i;
- if (i > 1) {
- gregorio_message(_("elisions may not be nested"),
- "close_syllable", VERBOSITY_ERROR, 0);
- }
+ /* the parser precludes this from falling here */
+ gregorio_assert_only(i <= 1, close_syllable,
+ "elisions may not be nested");
break;
case ST_T_END:
@@ -436,7 +598,7 @@ static void close_syllable(YYLTYPE *loc)
gregorio_add_syllable(&current_syllable, number_of_voices, elements,
first_text_character, first_translation_character, position,
abovelinestext, translation_type, no_linebreak_area, euouae, loc,
- started_first_word);
+ started_first_word, clear_syllable_text);
if (!score->first_syllable) {
/* we rebuild the first syllable if we have to */
score->first_syllable = current_syllable;
@@ -457,6 +619,7 @@ static void close_syllable(YYLTYPE *loc)
}
center_is_determined = CENTER_NOT_DETERMINED;
current_character = NULL;
+ suspended_character = NULL;
first_text_character = NULL;
first_translation_character = NULL;
translation_type = TR_NORMAL;
@@ -467,84 +630,8 @@ static void close_syllable(YYLTYPE *loc)
elements[i] = NULL;
}
current_element = NULL;
-}
-
-/* a function called when we see a [, basically, all characters are added to
- * the translation pointer instead of the text pointer */
-static void start_translation(unsigned char asked_translation_type)
-{
- ready_characters();
- first_text_character = current_character;
- /* the middle letters of the translation have no sense */
- center_is_determined = CENTER_FULLY_DETERMINED;
- current_character = NULL;
- translation_type = asked_translation_type;
-}
-
-static void end_translation(void)
-{
- ready_characters();
- first_translation_character = current_character;
-}
-
-/*
- *
- * The two functions called when lex returns a style, we simply add it. All the
- * complex things will be done by the function after...
- *
- */
-
-static void add_style(unsigned char style)
-{
- gregorio_begin_style(&current_character, style);
-}
-
-static void end_style(unsigned char style)
-{
- gregorio_end_style(&current_character, style);
-}
-
-/*
- * add_text is the function called when lex returns a char *. In
- * this function we convert it into grewchar, and then we add the corresponding
- * gregorio_characters in the list of gregorio_characters.
- */
-
-static void add_text(char *mbcharacters)
-{
- if (!current_character) {
- /* insert open styles, leaving out ELISION on purpose */
- if (styles & SB_I) {
- add_style(ST_ITALIC);
- }
- if (styles & SB_B) {
- add_style(ST_BOLD);
- }
- if (styles & SB_TT) {
- add_style(ST_TT);
- }
- if (styles & SB_SC) {
- add_style(ST_SMALL_CAPS);
- }
- if (styles & SB_UL) {
- add_style(ST_UNDERLINED);
- }
- if (styles & SB_C) {
- add_style(ST_COLORED);
- }
- }
- if (current_character) {
- current_character->next_character = gregorio_build_char_list_from_buf(
- mbcharacters);
- current_character->next_character->previous_character =
- current_character;
- } else {
- current_character = gregorio_build_char_list_from_buf(mbcharacters);
- }
- while (current_character && current_character->next_character) {
- current_character = current_character->next_character;
- }
- free(mbcharacters);
+ clear_syllable_text = false;
+ has_protrusion = false;
}
void gabc_digest(const void *const buf, const size_t size)
@@ -558,7 +645,7 @@ void gabc_digest(const void *const buf, const size_t size)
* aleady open. It returns a valid gregorio_score
*/
-gregorio_score *gabc_read_score(FILE *f_in)
+gregorio_score *gabc_read_score(FILE *f_in, bool point_and_click)
{
/* compute the SHA-1 digest while parsing, for I/O efficiency */
sha1_init_ctx(&digester);
@@ -569,21 +656,23 @@ gregorio_score *gabc_read_score(FILE *f_in)
gabc_score_determination_in = f_in;
gregorio_assert(f_in, gabc_read_score, "can't read stream from NULL",
return NULL);
- initialize_variables();
+ initialize_variables(point_and_click);
/* the flex/bison main call, it will build the score (that we have
* initialized) */
gabc_score_determination_parse();
if (!score->legacy_oriscus_orientation) {
- determine_oriscus_orientation(score);
+ gabc_determine_oriscus_orientation(score);
}
- determine_punctum_inclinatum_orientation(score);
+ gabc_determine_punctum_inclinatum_orientation(score);
+ gabc_determine_ledger_lines(score);
gregorio_fix_initial_keys(score, gregorio_default_clef);
rebuild_score_characters();
- fix_custos(score);
+ gabc_suppress_extra_custos_at_linebreak(score);
+ gabc_fix_custos_pitches(score);
gabc_det_notes_finish();
free_variables();
/* then we check the validity and integrity of the score we have built. */
- if (!check_score_integrity(score)) {
+ if (!gabc_check_score_integrity(score)) {
gregorio_message(_("unable to determine a valid score from file"),
"gabc_read_score", VERBOSITY_ERROR, 0);
}
@@ -629,7 +718,14 @@ static void gabc_y_add_notes(char *notes, YYLTYPE loc) {
}
}
-#line 633 "gabc/gabc-score-determination-y.c" /* yacc.c:339 */
+static char *concatenate(char *first, char *const second) {
+ first = (char *)gregorio_realloc(first, strlen(first) + strlen(second) + 1);
+ strcat(first, second);
+ free(second);
+ return first;
+}
+
+#line 729 "gabc/gabc-score-determination-y.c" /* yacc.c:339 */
# ifndef YY_NULLPTR
# if defined __cplusplus && 201103L <= __cplusplus
@@ -677,51 +773,53 @@ extern int gabc_score_determination_debug;
MODE = 268,
MODE_MODIFIER = 269,
MODE_DIFFERENTIA = 270,
- INITIAL_STYLE = 271,
- END_OF_DEFINITIONS = 272,
- END_OF_FILE = 273,
- COLON = 274,
- SEMICOLON = 275,
- SPACE = 276,
- CHARACTERS = 277,
- NOTES = 278,
- HYPHEN = 279,
- ATTRIBUTE = 280,
- OPENING_BRACKET = 281,
- CLOSING_BRACKET = 282,
- CLOSING_BRACKET_WITH_SPACE = 283,
- I_BEGIN = 284,
- I_END = 285,
- TT_BEGIN = 286,
- TT_END = 287,
- UL_BEGIN = 288,
- UL_END = 289,
- C_BEGIN = 290,
- C_END = 291,
- B_BEGIN = 292,
- B_END = 293,
- SC_BEGIN = 294,
- SC_END = 295,
- SP_BEGIN = 296,
- SP_END = 297,
- VERB_BEGIN = 298,
- VERB = 299,
- VERB_END = 300,
- CENTER_BEGIN = 301,
- CENTER_END = 302,
- ELISION_BEGIN = 303,
- ELISION_END = 304,
- TRANSLATION_BEGIN = 305,
- TRANSLATION_END = 306,
- TRANSLATION_CENTER_END = 307,
- ALT_BEGIN = 308,
- ALT_END = 309,
- NLBA_B = 310,
- NLBA_E = 311,
- EUOUAE_B = 312,
- EUOUAE_E = 313,
- NABC_CUT = 314,
- NABC_LINES = 315
+ END_OF_DEFINITIONS = 271,
+ END_OF_FILE = 272,
+ COLON = 273,
+ SEMICOLON = 274,
+ CHARACTERS = 275,
+ NOTES = 276,
+ HYPHEN = 277,
+ ATTRIBUTE = 278,
+ OPENING_BRACKET = 279,
+ CLOSING_BRACKET = 280,
+ CLOSING_BRACKET_WITH_SPACE = 281,
+ I_BEGIN = 282,
+ I_END = 283,
+ TT_BEGIN = 284,
+ TT_END = 285,
+ UL_BEGIN = 286,
+ UL_END = 287,
+ C_BEGIN = 288,
+ C_END = 289,
+ B_BEGIN = 290,
+ B_END = 291,
+ SC_BEGIN = 292,
+ SC_END = 293,
+ SP_BEGIN = 294,
+ SP_END = 295,
+ VERB_BEGIN = 296,
+ VERB_END = 297,
+ CENTER_BEGIN = 298,
+ CENTER_END = 299,
+ ELISION_BEGIN = 300,
+ ELISION_END = 301,
+ TRANSLATION_BEGIN = 302,
+ TRANSLATION_END = 303,
+ TRANSLATION_CENTER_END = 304,
+ ALT_BEGIN = 305,
+ ALT_END = 306,
+ NLBA_B = 307,
+ NLBA_E = 308,
+ EUOUAE_B = 309,
+ EUOUAE_E = 310,
+ NABC_CUT = 311,
+ NABC_LINES = 312,
+ CLEAR = 313,
+ PROTRUSION = 314,
+ PROTRUSION_VALUE = 315,
+ PROTRUSION_END = 316,
+ PROTRUDING_PUNCTUATION = 317
};
#endif
/* Tokens. */
@@ -738,51 +836,53 @@ extern int gabc_score_determination_debug;
#define MODE 268
#define MODE_MODIFIER 269
#define MODE_DIFFERENTIA 270
-#define INITIAL_STYLE 271
-#define END_OF_DEFINITIONS 272
-#define END_OF_FILE 273
-#define COLON 274
-#define SEMICOLON 275
-#define SPACE 276
-#define CHARACTERS 277
-#define NOTES 278
-#define HYPHEN 279
-#define ATTRIBUTE 280
-#define OPENING_BRACKET 281
-#define CLOSING_BRACKET 282
-#define CLOSING_BRACKET_WITH_SPACE 283
-#define I_BEGIN 284
-#define I_END 285
-#define TT_BEGIN 286
-#define TT_END 287
-#define UL_BEGIN 288
-#define UL_END 289
-#define C_BEGIN 290
-#define C_END 291
-#define B_BEGIN 292
-#define B_END 293
-#define SC_BEGIN 294
-#define SC_END 295
-#define SP_BEGIN 296
-#define SP_END 297
-#define VERB_BEGIN 298
-#define VERB 299
-#define VERB_END 300
-#define CENTER_BEGIN 301
-#define CENTER_END 302
-#define ELISION_BEGIN 303
-#define ELISION_END 304
-#define TRANSLATION_BEGIN 305
-#define TRANSLATION_END 306
-#define TRANSLATION_CENTER_END 307
-#define ALT_BEGIN 308
-#define ALT_END 309
-#define NLBA_B 310
-#define NLBA_E 311
-#define EUOUAE_B 312
-#define EUOUAE_E 313
-#define NABC_CUT 314
-#define NABC_LINES 315
+#define END_OF_DEFINITIONS 271
+#define END_OF_FILE 272
+#define COLON 273
+#define SEMICOLON 274
+#define CHARACTERS 275
+#define NOTES 276
+#define HYPHEN 277
+#define ATTRIBUTE 278
+#define OPENING_BRACKET 279
+#define CLOSING_BRACKET 280
+#define CLOSING_BRACKET_WITH_SPACE 281
+#define I_BEGIN 282
+#define I_END 283
+#define TT_BEGIN 284
+#define TT_END 285
+#define UL_BEGIN 286
+#define UL_END 287
+#define C_BEGIN 288
+#define C_END 289
+#define B_BEGIN 290
+#define B_END 291
+#define SC_BEGIN 292
+#define SC_END 293
+#define SP_BEGIN 294
+#define SP_END 295
+#define VERB_BEGIN 296
+#define VERB_END 297
+#define CENTER_BEGIN 298
+#define CENTER_END 299
+#define ELISION_BEGIN 300
+#define ELISION_END 301
+#define TRANSLATION_BEGIN 302
+#define TRANSLATION_END 303
+#define TRANSLATION_CENTER_END 304
+#define ALT_BEGIN 305
+#define ALT_END 306
+#define NLBA_B 307
+#define NLBA_E 308
+#define EUOUAE_B 309
+#define EUOUAE_E 310
+#define NABC_CUT 311
+#define NABC_LINES 312
+#define CLEAR 313
+#define PROTRUSION 314
+#define PROTRUSION_VALUE 315
+#define PROTRUSION_END 316
+#define PROTRUDING_PUNCTUATION 317
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
@@ -814,7 +914,7 @@ int gabc_score_determination_parse (void);
/* Copy the second part of user declarations. */
-#line 818 "gabc/gabc-score-determination-y.c" /* yacc.c:358 */
+#line 918 "gabc/gabc-score-determination-y.c" /* yacc.c:358 */
#ifdef short
# undef short
@@ -1058,21 +1158,21 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 4
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 166
+#define YYLAST 247
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 61
+#define YYNTOKENS 63
/* YYNNTS -- Number of nonterminals. */
-#define YYNNTS 23
+#define YYNNTS 28
/* YYNRULES -- Number of rules. */
-#define YYNRULES 81
+#define YYNRULES 101
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 115
+#define YYNSTATES 145
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
#define YYUNDEFTOK 2
-#define YYMAXUTOK 315
+#define YYMAXUTOK 317
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -1112,22 +1212,24 @@ static const yytype_uint8 yytranslate[] =
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
- 55, 56, 57, 58, 59, 60
+ 55, 56, 57, 58, 59, 60, 61, 62
};
#if YYDEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 597, 597, 601, 606, 607, 611, 615, 621, 626,
- 635, 641, 646, 651, 656, 661, 666, 674, 682, 692,
- 701, 706, 710, 715, 716, 720, 725, 731, 742, 746,
- 754, 755, 756, 760, 763, 766, 769, 772, 775, 778,
- 781, 784, 787, 796, 799, 802, 805, 808, 811, 814,
- 817, 820, 823, 832, 835, 841, 844, 850, 851, 854,
- 855, 856, 857, 861, 864, 869, 870, 871, 875, 881,
- 884, 890, 896, 901, 909, 912, 921, 924, 930, 931,
- 934, 935
+ 0, 700, 700, 704, 709, 710, 714, 717, 723, 726,
+ 732, 737, 746, 752, 757, 762, 767, 772, 777, 785,
+ 793, 802, 807, 811, 816, 817, 821, 826, 832, 843,
+ 847, 855, 856, 857, 861, 864, 867, 870, 873, 876,
+ 879, 882, 888, 891, 894, 897, 900, 903, 906, 909,
+ 915, 918, 935, 938, 951, 954, 960, 963, 969, 972,
+ 978, 979, 982, 983, 984, 985, 986, 987, 988, 991,
+ 992, 995, 1001, 1002, 1006, 1009, 1010, 1011, 1014, 1020,
+ 1021, 1025, 1031, 1034, 1037, 1044, 1050, 1054, 1061, 1068,
+ 1073, 1078, 1082, 1089, 1096, 1101, 1109, 1112, 1118, 1119,
+ 1122, 1123
};
#endif
@@ -1139,19 +1241,21 @@ static const char *const yytname[] =
"$end", "error", "$undefined", "NAME", "AUTHOR", "GABC_COPYRIGHT",
"SCORE_COPYRIGHT", "LANGUAGE", "STAFF_LINES", "ORISCUS_ORIENTATION",
"DEF_MACRO", "OTHER_HEADER", "ANNOTATION", "MODE", "MODE_MODIFIER",
- "MODE_DIFFERENTIA", "INITIAL_STYLE", "END_OF_DEFINITIONS", "END_OF_FILE",
- "COLON", "SEMICOLON", "SPACE", "CHARACTERS", "NOTES", "HYPHEN",
- "ATTRIBUTE", "OPENING_BRACKET", "CLOSING_BRACKET",
- "CLOSING_BRACKET_WITH_SPACE", "I_BEGIN", "I_END", "TT_BEGIN", "TT_END",
- "UL_BEGIN", "UL_END", "C_BEGIN", "C_END", "B_BEGIN", "B_END", "SC_BEGIN",
- "SC_END", "SP_BEGIN", "SP_END", "VERB_BEGIN", "VERB", "VERB_END",
- "CENTER_BEGIN", "CENTER_END", "ELISION_BEGIN", "ELISION_END",
- "TRANSLATION_BEGIN", "TRANSLATION_END", "TRANSLATION_CENTER_END",
- "ALT_BEGIN", "ALT_END", "NLBA_B", "NLBA_E", "EUOUAE_B", "EUOUAE_E",
- "NABC_CUT", "NABC_LINES", "$accept", "score", "all_definitions",
- "definitions", "attribute", "definition", "notes", "note",
- "closing_bracket_with_space", "style_beginning", "style_end", "euouae",
- "linebreak_area", "character", "text_hyphen", "text",
+ "MODE_DIFFERENTIA", "END_OF_DEFINITIONS", "END_OF_FILE", "COLON",
+ "SEMICOLON", "CHARACTERS", "NOTES", "HYPHEN", "ATTRIBUTE",
+ "OPENING_BRACKET", "CLOSING_BRACKET", "CLOSING_BRACKET_WITH_SPACE",
+ "I_BEGIN", "I_END", "TT_BEGIN", "TT_END", "UL_BEGIN", "UL_END",
+ "C_BEGIN", "C_END", "B_BEGIN", "B_END", "SC_BEGIN", "SC_END", "SP_BEGIN",
+ "SP_END", "VERB_BEGIN", "VERB_END", "CENTER_BEGIN", "CENTER_END",
+ "ELISION_BEGIN", "ELISION_END", "TRANSLATION_BEGIN", "TRANSLATION_END",
+ "TRANSLATION_CENTER_END", "ALT_BEGIN", "ALT_END", "NLBA_B", "NLBA_E",
+ "EUOUAE_B", "EUOUAE_E", "NABC_CUT", "NABC_LINES", "CLEAR", "PROTRUSION",
+ "PROTRUSION_VALUE", "PROTRUSION_END", "PROTRUDING_PUNCTUATION",
+ "$accept", "score", "all_definitions", "definitions", "attribute_value",
+ "attribute", "definition", "notes", "note", "closing_bracket_with_space",
+ "style_beginning", "style_end", "special_style_beginning",
+ "special_style_end", "euouae", "linebreak_area", "protrusion",
+ "character", "text", "translation_character", "translation_text",
"translation_beginning", "translation", "above_line_text",
"syllable_with_notes", "notes_without_word", "syllable", "syllables", YY_NULLPTR
};
@@ -1168,36 +1272,39 @@ static const yytype_uint16 yytoknum[] =
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
- 315
+ 315, 316, 317
};
# endif
-#define YYPACT_NINF -52
+#define YYPACT_NINF -85
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-52)))
+ (!!((Yystate) == (-85)))
-#define YYTABLE_NINF -3
+#define YYTABLE_NINF -1
#define yytable_value_is_error(Yytable_value) \
0
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
-static const yytype_int8 yypact[] =
+static const yytype_int16 yypact[] =
{
- -52, 17, -52, -2, -52, 16, 18, 18, 18, 18,
- 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
- -52, 18, -52, -52, -52, -52, 41, -52, 12, -52,
- -52, -52, 28, -52, -52, -52, -52, -52, -52, -52,
- -52, -52, -52, -52, -52, -52, -52, -52, 24, -52,
- -6, -52, -52, -52, -52, -52, -52, -52, -52, -52,
- -52, -52, -52, -52, -52, -52, -52, -52, -52, -52,
- -52, -52, 19, -52, -52, -52, -52, -52, -52, -52,
- -52, -52, 108, 13, -52, 78, -52, -52, 20, -9,
- 36, 37, -52, -52, -52, 30, 24, 3, -52, -52,
- -52, -52, -52, 24, -52, 36, -52, -52, -52, -52,
- 24, -52, -52, 24, 24
+ -85, 11, -85, 69, -85, 66, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -85,
+ 0, -85, -85, -20, -85, -85, -85, -85, -85, -85,
+ -85, -85, -85, -85, -85, -85, -85, -85, -85, -85,
+ -85, -85, -85, -85, -85, -85, -85, 4, -85, -85,
+ -85, -85, -85, -41, -19, -85, -85, -85, -85, -85,
+ -85, -85, -85, 107, 148, -4, -85, -85, -85, -85,
+ -7, -85, -85, -85, -85, -85, -85, -85, -85, -85,
+ -85, -85, -85, -85, -85, -85, 1, -11, -17, -29,
+ -85, 9, -2, -85, -1, -85, 13, -85, -85, -85,
+ -85, -85, -85, -85, 184, -85, -85, -85, -6, -11,
+ -85, -18, 27, 32, -85, -85, -85, -85, -11, -85,
+ -85, 26, -11, -85, 28, -85, -85, -85, -11, -85,
+ -85, -11, 27, -85, -85, -85, -85, -11, -11, -85,
+ -11, -85, -11, -11, -11
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -1205,124 +1312,150 @@ static const yytype_int8 yypact[] =
means the default is an error. */
static const yytype_uint8 yydefact[] =
{
- 4, 0, 80, 0, 1, 65, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 3, 0, 5, 23, 68, 70, 0, 65, 0, 78,
- 79, 81, 0, 9, 20, 11, 12, 10, 16, 21,
- 8, 22, 19, 13, 14, 15, 18, 17, 76, 58,
- 63, 23, 33, 43, 34, 44, 35, 45, 36, 46,
- 37, 47, 38, 48, 40, 50, 39, 49, 42, 52,
- 41, 51, 0, 55, 56, 53, 54, 59, 60, 62,
- 61, 66, 0, 0, 57, 0, 23, 7, 0, 0,
- 28, 30, 24, 29, 23, 0, 72, 0, 64, 67,
- 23, 63, 69, 77, 6, 25, 27, 26, 32, 31,
- 73, 23, 71, 74, 75
+ 4, 0, 100, 0, 1, 2, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,
+ 0, 5, 61, 70, 24, 34, 42, 35, 43, 36,
+ 44, 37, 45, 38, 46, 39, 47, 41, 49, 40,
+ 48, 51, 53, 50, 52, 81, 84, 0, 56, 57,
+ 54, 55, 68, 59, 71, 62, 63, 64, 65, 67,
+ 66, 69, 72, 0, 0, 0, 60, 98, 99, 101,
+ 0, 11, 21, 13, 14, 12, 18, 22, 10, 23,
+ 20, 15, 16, 17, 19, 24, 0, 96, 0, 0,
+ 24, 0, 70, 24, 71, 73, 0, 74, 77, 82,
+ 78, 75, 76, 79, 0, 24, 9, 6, 0, 87,
+ 24, 0, 29, 31, 25, 30, 85, 58, 89, 24,
+ 24, 0, 86, 24, 0, 24, 83, 80, 97, 8,
+ 7, 92, 26, 28, 27, 33, 32, 94, 88, 24,
+ 90, 24, 91, 93, 95
};
/* YYPGOTO[NTERM-NUM]. */
-static const yytype_int8 yypgoto[] =
+static const yytype_int16 yypgoto[] =
{
- -52, -52, -52, -52, 15, -52, -51, -52, -30, -52,
- -52, -52, -52, -21, -52, 35, -52, -5, -52, -52,
- -52, -52, -52
+ -85, -85, -85, -85, -85, 227, -85, -84, -85, -60,
+ -62, -61, -85, -85, -85, -85, -85, -10, -85, -50,
+ -85, -85, -23, -85, -85, -85, -85, -85
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int8 yydefgoto[] =
{
- -1, 1, 2, 3, 33, 22, 48, 92, 93, 77,
- 78, 79, 80, 81, 82, 26, 27, 28, 84, 29,
- 30, 31, 5
+ -1, 1, 2, 3, 108, 71, 21, 87, 114, 115,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 103,
+ 104, 64, 65, 66, 67, 68, 69, 5
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule whose
number is the opposite. If YYTABLE_NINF, syntax error. */
-static const yytype_int8 yytable[] =
+static const yytype_uint8 yytable[] =
{
- 96, 6, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 20, -2, 4, 105, 91,
- 94, 83, 34, 35, 36, 37, 38, 39, 40, 41,
- 42, 43, 44, 45, 46, 103, 47, 32, 86, 100,
- 104, 97, 23, 110, 24, 95, 25, 89, 87, 113,
- 106, 90, 91, 88, 108, 109, 111, 112, 21, 107,
- 114, 99, 85, 49, 0, 50, 24, 51, 25, 0,
- 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
- 62, 63, 64, 65, 66, 0, 67, 68, 69, 70,
- 71, 24, 0, 25, 72, 0, 73, 74, 75, 76,
- 49, 0, 101, 0, 0, 0, 0, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 66, 0, 67, 68, 69, 70, 71, 0, 102,
- 49, 72, 98, 73, 74, 75, 76, 52, 53, 54,
- 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
- 65, 66, 0, 67, 68, 69, 70, 71, 0, 0,
- 0, 72, 0, 73, 74, 75, 76
+ 86, 109, 101, 102, 85, 90, 118, 132, 113, 122,
+ 111, 4, 106, 129, 112, 113, 107, 130, 70, 89,
+ 105, 128, 120, 123, 88, 110, 131, 45, 45, 46,
+ 46, 91, 117, 119, 116, 137, 138, 125, 133, 140,
+ 96, 142, 101, 102, 135, 45, 45, 46, 46, 136,
+ 139, 134, 141, 95, 127, 143, 0, 144, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 121,
+ 0, 124, 6, 7, 8, 9, 10, 11, 12, 13,
+ 14, 15, 16, 17, 18, 19, 22, 0, 23, 0,
+ 24, 0, 0, 25, 26, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
+ 42, 43, 44, 45, 0, 46, 47, 0, 48, 49,
+ 50, 51, 0, 0, 52, 53, 20, 22, 54, 92,
+ 0, 93, 0, 0, 25, 26, 27, 28, 29, 30,
+ 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
+ 41, 42, 43, 44, 45, 0, 46, 47, 0, 48,
+ 49, 50, 51, 0, 0, 52, 53, 0, 97, 94,
+ 98, 0, 0, 0, 0, 25, 26, 27, 28, 29,
+ 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
+ 40, 0, 0, 0, 0, 0, 99, 0, 0, 0,
+ 0, 0, 0, 0, 97, 0, 98, 0, 0, 0,
+ 100, 25, 26, 27, 28, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
+ 0, 0, 126, 0, 72, 73, 74, 75, 76, 77,
+ 78, 79, 80, 81, 82, 83, 100, 84
};
-static const yytype_int8 yycheck[] =
+static const yytype_int16 yycheck[] =
{
- 51, 3, 4, 5, 6, 7, 8, 9, 10, 11,
- 12, 13, 14, 15, 16, 17, 0, 0, 27, 28,
- 26, 26, 7, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 86, 21, 19, 26, 26,
- 20, 22, 26, 94, 50, 50, 52, 23, 20, 100,
- 59, 27, 28, 25, 18, 18, 26, 54, 60, 89,
- 111, 82, 27, 22, -1, 24, 50, 26, 52, -1,
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
- 39, 40, 41, 42, 43, -1, 45, 46, 47, 48,
- 49, 50, -1, 52, 53, -1, 55, 56, 57, 58,
- 22, -1, 24, -1, -1, -1, -1, 29, 30, 31,
- 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
- 42, 43, -1, 45, 46, 47, 48, 49, -1, 51,
- 22, 53, 24, 55, 56, 57, 58, 29, 30, 31,
+ 23, 85, 64, 64, 24, 24, 90, 25, 26, 93,
+ 21, 0, 19, 19, 25, 26, 23, 23, 18, 60,
+ 24, 105, 24, 24, 20, 24, 110, 47, 47, 49,
+ 49, 54, 61, 24, 51, 119, 120, 24, 56, 123,
+ 63, 125, 104, 104, 17, 47, 47, 49, 49, 17,
+ 24, 111, 24, 63, 104, 139, -1, 141, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 92,
+ -1, 94, 3, 4, 5, 6, 7, 8, 9, 10,
+ 11, 12, 13, 14, 15, 16, 20, -1, 22, -1,
+ 24, -1, -1, 27, 28, 29, 30, 31, 32, 33,
+ 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
+ 44, 45, 46, 47, -1, 49, 50, -1, 52, 53,
+ 54, 55, -1, -1, 58, 59, 57, 20, 62, 22,
+ -1, 24, -1, -1, 27, 28, 29, 30, 31, 32,
+ 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
+ 43, 44, 45, 46, 47, -1, 49, 50, -1, 52,
+ 53, 54, 55, -1, -1, 58, 59, -1, 20, 62,
+ 22, -1, -1, -1, -1, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
- 42, 43, -1, 45, 46, 47, 48, 49, -1, -1,
- -1, 53, -1, 55, 56, 57, 58
+ 42, -1, -1, -1, -1, -1, 48, -1, -1, -1,
+ -1, -1, -1, -1, 20, -1, 22, -1, -1, -1,
+ 62, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, 42, -1, -1, -1,
+ -1, -1, 48, -1, 7, 8, 9, 10, 11, 12,
+ 13, 14, 15, 16, 17, 18, 62, 20
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 62, 63, 64, 0, 83, 3, 4, 5, 6,
+ 0, 64, 65, 66, 0, 90, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
- 17, 60, 66, 26, 50, 52, 76, 77, 78, 80,
- 81, 82, 19, 65, 65, 65, 65, 65, 65, 65,
- 65, 65, 65, 65, 65, 65, 65, 65, 67, 22,
- 24, 26, 29, 30, 31, 32, 33, 34, 35, 36,
- 37, 38, 39, 40, 41, 42, 43, 45, 46, 47,
- 48, 49, 53, 55, 56, 57, 58, 70, 71, 72,
- 73, 74, 75, 78, 79, 76, 26, 20, 25, 23,
- 27, 28, 68, 69, 26, 78, 67, 22, 24, 74,
- 26, 24, 51, 67, 20, 27, 59, 69, 18, 18,
- 67, 26, 54, 67, 67
+ 57, 69, 20, 22, 24, 27, 28, 29, 30, 31,
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
+ 42, 43, 44, 45, 46, 47, 49, 50, 52, 53,
+ 54, 55, 58, 59, 62, 73, 74, 75, 76, 77,
+ 78, 79, 80, 81, 84, 85, 86, 87, 88, 89,
+ 18, 68, 68, 68, 68, 68, 68, 68, 68, 68,
+ 68, 68, 68, 68, 68, 24, 85, 70, 20, 60,
+ 24, 85, 22, 24, 62, 80, 85, 20, 22, 48,
+ 62, 73, 74, 82, 83, 24, 19, 23, 67, 70,
+ 24, 21, 25, 26, 71, 72, 51, 61, 70, 24,
+ 24, 85, 70, 24, 85, 24, 48, 82, 70, 19,
+ 23, 70, 25, 56, 72, 17, 17, 70, 70, 24,
+ 70, 24, 70, 70, 70
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 61, 62, 63, 64, 64, 65, 65, 66, 66,
- 66, 66, 66, 66, 66, 66, 66, 66, 66, 66,
- 66, 66, 66, 67, 67, 68, 68, 68, 68, 68,
- 69, 69, 69, 70, 70, 70, 70, 70, 70, 70,
- 70, 70, 70, 71, 71, 71, 71, 71, 71, 71,
- 71, 71, 71, 72, 72, 73, 73, 74, 74, 74,
- 74, 74, 74, 75, 75, 76, 76, 76, 77, 78,
- 78, 79, 80, 80, 80, 80, 81, 81, 82, 82,
- 83, 83
+ 0, 63, 64, 65, 66, 66, 67, 67, 68, 68,
+ 69, 69, 69, 69, 69, 69, 69, 69, 69, 69,
+ 69, 69, 69, 69, 70, 70, 71, 71, 71, 71,
+ 71, 72, 72, 72, 73, 73, 73, 73, 73, 73,
+ 73, 73, 74, 74, 74, 74, 74, 74, 74, 74,
+ 75, 75, 76, 76, 77, 77, 78, 78, 79, 79,
+ 80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
+ 80, 80, 81, 81, 82, 82, 82, 82, 82, 83,
+ 83, 84, 85, 85, 85, 86, 87, 87, 87, 87,
+ 87, 87, 87, 87, 87, 87, 88, 88, 89, 89,
+ 90, 90
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
static const yytype_uint8 yyr2[] =
{
- 0, 2, 2, 2, 0, 2, 3, 2, 2, 2,
+ 0, 2, 2, 2, 0, 2, 1, 2, 3, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 2, 2, 0, 2, 2, 2, 2, 1, 1,
- 1, 2, 2, 1, 1, 1, 1, 1, 1, 1,
+ 2, 2, 2, 2, 0, 2, 2, 2, 2, 1,
+ 1, 1, 2, 2, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 3, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 0, 2, 3, 1, 3,
- 1, 3, 3, 4, 4, 5, 2, 3, 1, 1,
+ 1, 1, 1, 2, 1, 1, 1, 1, 1, 1,
+ 2, 1, 2, 3, 1, 3, 3, 3, 4, 3,
+ 4, 4, 4, 5, 4, 5, 2, 3, 1, 1,
0, 2
};
@@ -1909,7 +2042,7 @@ yyparse (void)
yychar = YYEMPTY; /* Cause a token to be read. */
/* User initialization code. */
-#line 559 "gabc/gabc-score-determination.y" /* yacc.c:1429 */
+#line 655 "gabc/gabc-score-determination.y" /* yacc.c:1429 */
{
yylloc.first_line = 1;
yylloc.first_column = 0;
@@ -1917,9 +2050,10 @@ yyparse (void)
yylloc.last_line = 1;
yylloc.last_column = 0;
yylloc.last_offset = 0;
+ yylloc.generate_point_and_click = generate_point_and_click;
}
-#line 1923 "gabc/gabc-score-determination-y.c" /* yacc.c:1429 */
+#line 2057 "gabc/gabc-score-determination-y.c" /* yacc.c:1429 */
yylsp[0] = yylloc;
goto yysetstate;
@@ -2106,41 +2240,57 @@ yyreduce:
switch (yyn)
{
case 3:
-#line 601 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 704 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
end_definitions();
}
-#line 2114 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2248 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 6:
-#line 611 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 714 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- (yyval).text = (yyvsp[-1]).text;
+ (yyval).text = (yyvsp[0]).text;
}
-#line 2122 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2256 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 7:
-#line 615 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 717 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- (yyval).text = NULL;
+ (yyval).text = concatenate((yyvsp[-1]).text, (yyvsp[0]).text);
}
-#line 2130 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2264 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 8:
-#line 621 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 723 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ (yyval).text = (yyvsp[-1]).text;
+ }
+#line 2272 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 9:
+#line 726 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ (yyval).text = NULL;
+ }
+#line 2280 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 10:
+#line 732 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
/* these definitions are not passed through */
free(macros[(yyvsp[-1]).character - '0']);
macros[(yyvsp[-1]).character - '0'] = (yyvsp[0]).text;
}
-#line 2140 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2290 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 9:
-#line 626 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 11:
+#line 737 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
if ((yyvsp[0]).text == NULL) {
gregorio_message("name can't be empty","det_score",
@@ -2150,72 +2300,72 @@ yyreduce:
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->name = (yyvsp[0]).text;
}
-#line 2154 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2304 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 10:
-#line 635 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 12:
+#line 746 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("language", got_language);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
gregorio_set_centering_language((yyvsp[0]).text);
got_language = true;
}
-#line 2165 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2315 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 11:
-#line 641 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 13:
+#line 752 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("gabc-copyright", score->gabc_copyright != NULL);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->gabc_copyright = (yyvsp[0]).text;
}
-#line 2175 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2325 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 12:
-#line 646 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 14:
+#line 757 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("score_copyright", score->score_copyright != NULL);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->score_copyright = (yyvsp[0]).text;
}
-#line 2185 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2335 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 13:
-#line 651 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 15:
+#line 762 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("mode", score->mode != 0);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->mode = (yyvsp[0]).text;
}
-#line 2195 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2345 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 14:
-#line 656 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 16:
+#line 767 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("mode-modifier", score->mode_modifier != NULL);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->mode_modifier = (yyvsp[0]).text;
}
-#line 2205 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2355 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 15:
-#line 661 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 17:
+#line 772 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("mode-differentia", score->mode_differentia != NULL);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->mode_differentia = (yyvsp[0]).text;
}
-#line 2215 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2365 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 16:
-#line 666 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 18:
+#line 777 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("staff-lines", got_staff_lines);
if ((yyvsp[0]).text) {
@@ -2224,11 +2374,11 @@ yyreduce:
got_staff_lines = true;
}
}
-#line 2228 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2378 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 17:
-#line 674 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 19:
+#line 785 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("nabc lines", score->nabc_lines != 0);
if ((yyvsp[0]).text) {
@@ -2237,26 +2387,11 @@ yyreduce:
score->nabc_lines=nabc_lines;
}
}
-#line 2241 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2391 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 18:
-#line 682 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
- {
- if ((yyvsp[0]).text) {
- /* DEPRECATED for removal in 5.0 */
- gregorio_message("\"initial-style\" header is deprecated. Please "
- "use \\gresetinitiallines in TeX instead.",
- "gabc_score_determination_parse", VERBOSITY_DEPRECATION, 0);
- score->initial_style = atoi((yyvsp[0]).text);
- free((yyvsp[0]).text);
- }
- }
-#line 2256 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
- break;
-
- case 19:
-#line 692 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 20:
+#line 793 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
if (score->annotation [MAX_ANNOTATIONS - 1]) {
gregorio_messagef("det_score", VERBOSITY_WARNING, 0,
@@ -2266,59 +2401,59 @@ yyreduce:
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
gregorio_set_score_annotation(score, (yyvsp[0]).text);
}
-#line 2270 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2405 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 20:
-#line 701 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 21:
+#line 802 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
check_multiple("author", score->author != NULL);
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->author = (yyvsp[0]).text;
}
-#line 2280 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2415 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 21:
-#line 706 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 22:
+#line 807 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
score->legacy_oriscus_orientation = (strcmp((yyvsp[0]).text, "legacy") == 0);
}
-#line 2289 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2424 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 22:
-#line 710 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 23:
+#line 811 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
gregorio_add_score_header(score, (yyvsp[-1]).text, (yyvsp[0]).text);
}
-#line 2297 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2432 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 25:
-#line 720 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 26:
+#line 821 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
gabc_y_add_notes((yyvsp[-1]).text, (yylsp[-1]));
free((yyvsp[-1]).text);
nabc_state=0;
}
-#line 2307 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2442 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 26:
-#line 725 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 27:
+#line 826 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
gabc_y_add_notes((yyvsp[-1]).text, (yylsp[-1]));
free((yyvsp[-1]).text);
nabc_state=0;
update_position_with_space();
}
-#line 2318 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2453 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 27:
-#line 731 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 28:
+#line 832 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
if (!nabc_lines) {
gregorio_message(_("You used character \"|\" in gabc without "
@@ -2330,342 +2465,475 @@ yyreduce:
free((yyvsp[-1]).text);
nabc_state = (nabc_state + 1) % (nabc_lines+1);
}
-#line 2334 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2469 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 28:
-#line 742 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 29:
+#line 843 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
elements[voice]=NULL;
nabc_state=0;
}
-#line 2343 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2478 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 29:
-#line 746 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 30:
+#line 847 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
elements[voice]=NULL;
nabc_state=0;
update_position_with_space();
}
-#line 2353 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
- break;
-
- case 33:
-#line 760 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
- {
- add_style(ST_ITALIC);
- }
-#line 2361 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2488 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 34:
-#line 763 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 861 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_TT);
+ add_style(ST_ITALIC);
}
-#line 2369 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2496 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 35:
-#line 766 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 864 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_UNDERLINED);
+ add_style(ST_TT);
}
-#line 2377 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2504 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 36:
-#line 769 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 867 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_COLORED);
+ add_style(ST_UNDERLINED);
}
-#line 2385 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2512 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 37:
-#line 772 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 870 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_BOLD);
+ add_style(ST_COLORED);
}
-#line 2393 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2520 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 38:
-#line 775 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 873 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_SMALL_CAPS);
+ add_style(ST_BOLD);
}
-#line 2401 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2528 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 39:
-#line 778 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 876 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_VERBATIM);
+ add_style(ST_SMALL_CAPS);
}
-#line 2409 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2536 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 40:
-#line 781 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 879 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_SPECIAL_CHAR);
+ add_style(ST_VERBATIM);
}
-#line 2417 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2544 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 41:
-#line 784 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 882 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- add_style(ST_ELISION);
+ add_style(ST_SPECIAL_CHAR);
}
-#line 2425 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2552 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 42:
-#line 787 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 888 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- if (!center_is_determined) {
- add_style(ST_FORCED_CENTER);
- center_is_determined=CENTER_HALF_DETERMINED;
- }
+ end_style(ST_ITALIC);
}
-#line 2436 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2560 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 43:
-#line 796 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 891 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_ITALIC);
+ end_style(ST_TT);
}
-#line 2444 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2568 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 44:
-#line 799 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 894 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_TT);
+ end_style(ST_UNDERLINED);
}
-#line 2452 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2576 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 45:
-#line 802 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 897 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_UNDERLINED);
+ end_style(ST_COLORED);
}
-#line 2460 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2584 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 46:
-#line 805 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 900 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_COLORED);
+ end_style(ST_BOLD);
}
-#line 2468 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2592 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 47:
-#line 808 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 903 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_BOLD);
+ end_style(ST_SMALL_CAPS);
}
-#line 2476 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2600 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 48:
-#line 811 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 906 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_SMALL_CAPS);
+ end_style(ST_VERBATIM);
}
-#line 2484 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2608 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 49:
-#line 814 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 909 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_VERBATIM);
+ end_style(ST_SPECIAL_CHAR);
}
-#line 2492 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2616 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 50:
-#line 817 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 915 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- end_style(ST_SPECIAL_CHAR);
+ add_style(ST_ELISION);
}
-#line 2500 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2624 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 51:
-#line 820 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 918 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ if (center_is_determined) {
+ gregorio_message(
+ "syllable already has center; ignoring additional center",
+ "det_score", VERBOSITY_WARNING, 0);
+ } else if (has_protrusion) {
+ gregorio_message(
+ "center not allowed after protrusion; ignored",
+ "det_score", VERBOSITY_WARNING, 0);
+ } else {
+ add_style(ST_FORCED_CENTER);
+ center_is_determined = CENTER_HALF_DETERMINED;
+ }
+ }
+#line 2643 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 52:
+#line 935 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
end_style(ST_ELISION);
}
-#line 2508 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2651 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 52:
-#line 823 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 53:
+#line 938 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- if (center_is_determined==CENTER_HALF_DETERMINED) {
+ if (center_is_determined == CENTER_HALF_DETERMINED) {
end_style(ST_FORCED_CENTER);
- center_is_determined=CENTER_FULLY_DETERMINED;
+ center_is_determined = CENTER_FULLY_DETERMINED;
+ } else {
+ gregorio_message(
+ "not within a syllable center",
+ "det_score", VERBOSITY_WARNING, 0);
}
}
-#line 2519 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2666 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 53:
-#line 832 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 54:
+#line 951 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
euouae = EUOUAE_BEGINNING;
}
-#line 2527 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2674 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 54:
-#line 835 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 55:
+#line 954 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
euouae = EUOUAE_END;
}
-#line 2535 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2682 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 55:
-#line 841 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 56:
+#line 960 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
no_linebreak_area = NLBA_BEGINNING;
}
-#line 2543 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2690 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 56:
-#line 844 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 57:
+#line 963 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
no_linebreak_area = NLBA_END;
}
-#line 2551 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2698 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
case 58:
-#line 851 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+#line 969 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_protrusion((yyvsp[-1]).text);
+ }
+#line 2706 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 59:
+#line 972 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_protrusion(gregorio_strdup("d")); /* d = default */
+ }
+#line 2714 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 61:
+#line 979 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
add_text((yyvsp[0]).text);
}
-#line 2559 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2722 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 63:
-#line 861 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 68:
+#line 988 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ clear_syllable_text = true;
+ }
+#line 2730 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 70:
+#line 992 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
add_text(gregorio_strdup("-"));
}
-#line 2567 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2738 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 64:
-#line 864 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 71:
+#line 995 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_text((yyvsp[0]).text);
+ }
+#line 2746 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 74:
+#line 1006 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_text((yyvsp[0]).text);
+ }
+#line 2754 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 77:
+#line 1011 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
add_text(gregorio_strdup("-"));
}
-#line 2575 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2762 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 68:
-#line 875 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 78:
+#line 1014 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_text((yyvsp[0]).text);
+ }
+#line 2770 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 81:
+#line 1025 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
start_translation(TR_NORMAL);
}
-#line 2583 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2778 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 69:
-#line 881 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 82:
+#line 1031 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
end_translation();
}
-#line 2591 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2786 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 70:
-#line 884 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 83:
+#line 1034 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ end_translation();
+ }
+#line 2794 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 84:
+#line 1037 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
start_translation(TR_WITH_CENTER_END);
+ end_translation();
}
-#line 2599 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2803 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 71:
-#line 890 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 85:
+#line 1044 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
abovelinestext = (yyvsp[-1]).text;
}
-#line 2607 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2811 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 72:
-#line 896 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 86:
+#line 1050 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
- ready_characters();
- first_text_character = current_character;
+ save_text();
close_syllable(&(yylsp[-2]));
}
-#line 2617 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2820 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 73:
-#line 901 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 87:
+#line 1054 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
add_style(ST_VERBATIM);
add_text(gregorio_strdup("\\GreForceHyphen"));
end_style(ST_VERBATIM);
- ready_characters();
- first_text_character = current_character;
+ save_text();
+ close_syllable(&(yylsp[-2]));
+ }
+#line 2832 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 88:
+#line 1061 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_style(ST_VERBATIM);
+ add_text(gregorio_strdup("\\GreForceHyphen"));
+ end_style(ST_VERBATIM);
+ save_text();
close_syllable(&(yylsp[-3]));
}
-#line 2630 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2844 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 74:
-#line 909 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 89:
+#line 1068 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_auto_protrusion((yyvsp[-2]).text);
+ save_text();
+ close_syllable(&(yylsp[-2]));
+ }
+#line 2854 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 90:
+#line 1073 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
+ add_auto_protrusion((yyvsp[-2]).text);
+ save_text();
close_syllable(&(yylsp[-3]));
}
-#line 2638 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2864 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 75:
-#line 912 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 91:
+#line 1078 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ save_text();
+ close_syllable(&(yylsp[-3]));
+ }
+#line 2873 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 92:
+#line 1082 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_style(ST_VERBATIM);
+ add_text(gregorio_strdup("\\GreForceHyphen"));
+ end_style(ST_VERBATIM);
+ save_text();
+ close_syllable(&(yylsp[-3]));
+ }
+#line 2885 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 93:
+#line 1089 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
add_style(ST_VERBATIM);
add_text(gregorio_strdup("\\GreForceHyphen"));
end_style(ST_VERBATIM);
+ save_text();
+ close_syllable(&(yylsp[-4]));
+ }
+#line 2897 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 94:
+#line 1096 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_auto_protrusion((yyvsp[-3]).text);
+ save_text();
+ close_syllable(&(yylsp[-3]));
+ }
+#line 2907 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+ break;
+
+ case 95:
+#line 1101 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ {
+ add_auto_protrusion((yyvsp[-3]).text);
+ save_text();
close_syllable(&(yylsp[-4]));
}
-#line 2649 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2917 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 76:
-#line 921 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 96:
+#line 1109 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
close_syllable(NULL);
}
-#line 2657 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2925 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
- case 77:
-#line 924 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
+ case 97:
+#line 1112 "gabc/gabc-score-determination.y" /* yacc.c:1646 */
{
close_syllable(NULL);
}
-#line 2665 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2933 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
break;
-#line 2669 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
+#line 2937 "gabc/gabc-score-determination-y.c" /* yacc.c:1646 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.h b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.h
index 123dbc1c3a7..9c8fcbc7675 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination-y.h
@@ -58,51 +58,53 @@ extern int gabc_score_determination_debug;
MODE = 268,
MODE_MODIFIER = 269,
MODE_DIFFERENTIA = 270,
- INITIAL_STYLE = 271,
- END_OF_DEFINITIONS = 272,
- END_OF_FILE = 273,
- COLON = 274,
- SEMICOLON = 275,
- SPACE = 276,
- CHARACTERS = 277,
- NOTES = 278,
- HYPHEN = 279,
- ATTRIBUTE = 280,
- OPENING_BRACKET = 281,
- CLOSING_BRACKET = 282,
- CLOSING_BRACKET_WITH_SPACE = 283,
- I_BEGIN = 284,
- I_END = 285,
- TT_BEGIN = 286,
- TT_END = 287,
- UL_BEGIN = 288,
- UL_END = 289,
- C_BEGIN = 290,
- C_END = 291,
- B_BEGIN = 292,
- B_END = 293,
- SC_BEGIN = 294,
- SC_END = 295,
- SP_BEGIN = 296,
- SP_END = 297,
- VERB_BEGIN = 298,
- VERB = 299,
- VERB_END = 300,
- CENTER_BEGIN = 301,
- CENTER_END = 302,
- ELISION_BEGIN = 303,
- ELISION_END = 304,
- TRANSLATION_BEGIN = 305,
- TRANSLATION_END = 306,
- TRANSLATION_CENTER_END = 307,
- ALT_BEGIN = 308,
- ALT_END = 309,
- NLBA_B = 310,
- NLBA_E = 311,
- EUOUAE_B = 312,
- EUOUAE_E = 313,
- NABC_CUT = 314,
- NABC_LINES = 315
+ END_OF_DEFINITIONS = 271,
+ END_OF_FILE = 272,
+ COLON = 273,
+ SEMICOLON = 274,
+ CHARACTERS = 275,
+ NOTES = 276,
+ HYPHEN = 277,
+ ATTRIBUTE = 278,
+ OPENING_BRACKET = 279,
+ CLOSING_BRACKET = 280,
+ CLOSING_BRACKET_WITH_SPACE = 281,
+ I_BEGIN = 282,
+ I_END = 283,
+ TT_BEGIN = 284,
+ TT_END = 285,
+ UL_BEGIN = 286,
+ UL_END = 287,
+ C_BEGIN = 288,
+ C_END = 289,
+ B_BEGIN = 290,
+ B_END = 291,
+ SC_BEGIN = 292,
+ SC_END = 293,
+ SP_BEGIN = 294,
+ SP_END = 295,
+ VERB_BEGIN = 296,
+ VERB_END = 297,
+ CENTER_BEGIN = 298,
+ CENTER_END = 299,
+ ELISION_BEGIN = 300,
+ ELISION_END = 301,
+ TRANSLATION_BEGIN = 302,
+ TRANSLATION_END = 303,
+ TRANSLATION_CENTER_END = 304,
+ ALT_BEGIN = 305,
+ ALT_END = 306,
+ NLBA_B = 307,
+ NLBA_E = 308,
+ EUOUAE_B = 309,
+ EUOUAE_E = 310,
+ NABC_CUT = 311,
+ NABC_LINES = 312,
+ CLEAR = 313,
+ PROTRUSION = 314,
+ PROTRUSION_VALUE = 315,
+ PROTRUSION_END = 316,
+ PROTRUDING_PUNCTUATION = 317
};
#endif
/* Tokens. */
@@ -119,51 +121,53 @@ extern int gabc_score_determination_debug;
#define MODE 268
#define MODE_MODIFIER 269
#define MODE_DIFFERENTIA 270
-#define INITIAL_STYLE 271
-#define END_OF_DEFINITIONS 272
-#define END_OF_FILE 273
-#define COLON 274
-#define SEMICOLON 275
-#define SPACE 276
-#define CHARACTERS 277
-#define NOTES 278
-#define HYPHEN 279
-#define ATTRIBUTE 280
-#define OPENING_BRACKET 281
-#define CLOSING_BRACKET 282
-#define CLOSING_BRACKET_WITH_SPACE 283
-#define I_BEGIN 284
-#define I_END 285
-#define TT_BEGIN 286
-#define TT_END 287
-#define UL_BEGIN 288
-#define UL_END 289
-#define C_BEGIN 290
-#define C_END 291
-#define B_BEGIN 292
-#define B_END 293
-#define SC_BEGIN 294
-#define SC_END 295
-#define SP_BEGIN 296
-#define SP_END 297
-#define VERB_BEGIN 298
-#define VERB 299
-#define VERB_END 300
-#define CENTER_BEGIN 301
-#define CENTER_END 302
-#define ELISION_BEGIN 303
-#define ELISION_END 304
-#define TRANSLATION_BEGIN 305
-#define TRANSLATION_END 306
-#define TRANSLATION_CENTER_END 307
-#define ALT_BEGIN 308
-#define ALT_END 309
-#define NLBA_B 310
-#define NLBA_E 311
-#define EUOUAE_B 312
-#define EUOUAE_E 313
-#define NABC_CUT 314
-#define NABC_LINES 315
+#define END_OF_DEFINITIONS 271
+#define END_OF_FILE 272
+#define COLON 273
+#define SEMICOLON 274
+#define CHARACTERS 275
+#define NOTES 276
+#define HYPHEN 277
+#define ATTRIBUTE 278
+#define OPENING_BRACKET 279
+#define CLOSING_BRACKET 280
+#define CLOSING_BRACKET_WITH_SPACE 281
+#define I_BEGIN 282
+#define I_END 283
+#define TT_BEGIN 284
+#define TT_END 285
+#define UL_BEGIN 286
+#define UL_END 287
+#define C_BEGIN 288
+#define C_END 289
+#define B_BEGIN 290
+#define B_END 291
+#define SC_BEGIN 292
+#define SC_END 293
+#define SP_BEGIN 294
+#define SP_END 295
+#define VERB_BEGIN 296
+#define VERB_END 297
+#define CENTER_BEGIN 298
+#define CENTER_END 299
+#define ELISION_BEGIN 300
+#define ELISION_END 301
+#define TRANSLATION_BEGIN 302
+#define TRANSLATION_END 303
+#define TRANSLATION_CENTER_END 304
+#define ALT_BEGIN 305
+#define ALT_END 306
+#define NLBA_B 307
+#define NLBA_E 308
+#define EUOUAE_B 309
+#define EUOUAE_E 310
+#define NABC_CUT 311
+#define NABC_LINES 312
+#define CLEAR 313
+#define PROTRUSION 314
+#define PROTRUSION_VALUE 315
+#define PROTRUSION_END 316
+#define PROTRUDING_PUNCTUATION 317
/* Value type. */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.c
index b6659c18499..433c29f7df0 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.c
@@ -3,7 +3,7 @@
* This file implements the score parser.
*
* Gregorio score determination from gabc utilities.
- * Copyright (C) 2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2016-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -24,6 +24,7 @@
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include <assert.h>
#include "bool.h"
#include "struct.h"
@@ -31,64 +32,116 @@
#include "gabc.h"
#include "gabc-score-determination.h"
#include "messages.h"
+#include "support.h"
-void fix_custos(gregorio_score *score_to_check)
+void gabc_suppress_extra_custos_at_linebreak(gregorio_score *score)
+{
+ gregorio_syllable *syllable;
+ gregorio_element **custos = NULL;
+
+ for (syllable = score->first_syllable; syllable;
+ syllable = syllable->next_syllable) {
+ gregorio_element **element;
+ for (element = syllable->elements; element && *element;
+ element = &((*element)->next)) {
+ switch ((*element)->type) {
+ case GRE_CUSTOS:
+ if (!((*element)->u.misc.pitched.force_pitch)) {
+ /* save the encountered non-forced custos */
+ custos = element;
+ } else {
+ /* forget the (previous) custos */
+ custos = NULL;
+ }
+ break;
+ case GRE_CLEF:
+ case GRE_BAR:
+ /* remember the custos if only these appear before linebreak */
+ break;
+ case GRE_END_OF_LINE:
+ if (custos) {
+ /* suppress the custos when linebreak follows */
+ gregorio_free_one_element(custos);
+ }
+ /* fall through */
+ default:
+ /* forget the custos */
+ custos = NULL;
+ break;
+ }
+ }
+ }
+}
+
+void gabc_fix_custos_pitches(gregorio_score *score_to_check)
{
gregorio_syllable *current_syllable;
gregorio_element *current_element;
- gregorio_element *custo_element;
- char pitch = 0;
- char pitch_difference = 0;
+ gregorio_element *custos_element;
int newkey;
int current_key;
+
if (!score_to_check || !score_to_check->first_syllable
|| !score_to_check->first_voice_info) {
return;
}
+
current_key = gregorio_calculate_new_key(
score_to_check->first_voice_info->initial_clef);
- current_syllable = score_to_check->first_syllable;
- while (current_syllable) {
- current_element = (current_syllable->elements)[0];
- while (current_element) {
- if (current_element->type == GRE_CUSTOS) {
- custo_element = current_element;
- pitch = custo_element->u.misc.pitched.pitch;
- /* we look for the key */
- while (current_element) {
- if (current_element->type == GRE_CLEF) {
- pitch = gregorio_determine_next_pitch(current_syllable,
- current_element, NULL, NULL);
- newkey = gregorio_calculate_new_key(
- current_element->u.misc.clef);
- pitch_difference = (char) newkey - (char) current_key;
- pitch -= pitch_difference;
- current_key = newkey;
- }
- if (!custo_element->u.misc.pitched.force_pitch) {
- while (pitch < LOWEST_PITCH) {
- pitch += 7;
- }
- while (pitch > score_to_check->highest_pitch) {
- pitch -= 7;
- }
- custo_element->u.misc.pitched.pitch = pitch;
- }
- assert(custo_element->u.misc.pitched.pitch >= LOWEST_PITCH
- && custo_element->u.misc.pitched.pitch
- <= score_to_check->highest_pitch);
- current_element = current_element->next;
- }
+ for (current_syllable = score_to_check->first_syllable; current_syllable;
+ current_syllable = current_syllable->next_syllable) {
+ for (current_element = (current_syllable->elements)[0]; current_element;
+ current_element = current_element->next) {
+ if (current_element->type == GRE_CLEF) {
+ newkey = gregorio_calculate_new_key(
+ current_element->u.misc.clef);
+ current_element->u.misc.clef.pitch_difference =
+ (signed char) newkey - (signed char) current_key;
+ current_key = newkey;
}
- if (current_element) {
- if (current_element->type == GRE_CLEF) {
- current_key = gregorio_calculate_new_key(
- current_element->u.misc.clef);
+ }
+ }
+
+ custos_element = NULL;
+ for (current_syllable = score_to_check->first_syllable; current_syllable;
+ current_syllable = current_syllable->next_syllable) {
+ for (current_element = (current_syllable->elements)[0]; current_element;
+ current_element = current_element->next) {
+ switch (current_element->type) {
+ case GRE_CUSTOS:
+ if (current_element->u.misc.pitched.force_pitch) {
+ /* forget about the preceding custos if a forced one is
+ * encountered */
+ custos_element = NULL;
+ } else {
+ /* the pitch is not forced, so it may need to be adjusted */
+ custos_element = current_element;
+ custos_element->u.misc.pitched.pitch =
+ gregorio_determine_next_pitch(current_syllable,
+ current_element, NULL, NULL);
+ }
+ break;
+
+ case GRE_ELEMENT:
+ /* if it's an element, forget any preceding custos */
+ custos_element = NULL;
+ break;
+
+ case GRE_CLEF:
+ if (custos_element) {
+ /* adjust the preceding custos for the clef */
+ custos_element->u.misc.pitched.pitch =
+ gregorio_adjust_pitch_into_staff(score_to_check,
+ custos_element->u.misc.pitched.pitch
+ - current_element->u.misc.clef.pitch_difference);
}
- current_element = current_element->next;
+ break;
+
+ default:
+ /* to prevent the warning */
+ break;
}
}
- current_syllable = current_syllable->next_syllable;
}
}
@@ -96,7 +149,7 @@ void fix_custos(gregorio_score *score_to_check)
* A function that checks the score integrity.
*/
-bool check_score_integrity(gregorio_score *score_to_check)
+bool gabc_check_score_integrity(gregorio_score *score_to_check)
{
bool good = true;
@@ -144,7 +197,7 @@ bool check_score_integrity(gregorio_score *score_to_check)
* Another function to be improved: this one checks the validity of the voice_infos.
*/
-bool check_infos_integrity(gregorio_score *score_to_check)
+bool gabc_check_infos_integrity(gregorio_score *score_to_check)
{
if (!score_to_check->name) {
gregorio_message(_("no name specified, put `name:...;' at the "
@@ -154,100 +207,100 @@ bool check_infos_integrity(gregorio_score *score_to_check)
return true;
}
-/* data must be (gregorio_note **) */
-static void oriscus_orientation_visit(
- const gregorio_note_iter_position *const p, void *const data)
+static void set_oriscus_descending(const gregorio_note_iter_position *const p,
+ void *const ignored __attribute__((unused)))
{
- gregorio_note *const note = p->note;
- gregorio_note **const oriscus_ptr = (gregorio_note **const)data;
- gregorio_note *const oriscus = *oriscus_ptr;
- /* making oriscus const ensures we don't attempt to change *oriscus_ptr
- * via oriscus */
-
- if (oriscus) {
- if (note->u.note.pitch <= oriscus->u.note.pitch) {
- /* descending or unison */
- switch(oriscus->u.note.shape) {
- case S_ORISCUS_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_DESCENDENS;
- break;
- case S_ORISCUS_SCAPUS_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_SCAPUS_DESCENDENS;
- break;
- case S_ORISCUS_CAVUM_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_CAVUM_DESCENDENS;
- break;
- default:
- /* not reachable unless there's a
- * programming error */
- /* LCOV_EXCL_START */
- gregorio_fail(oriscus_orientation_visit, "bad_shape");
- break;
- /* LCOV_EXCL_STOP */
- }
- } else { /* ascending */
- switch(oriscus->u.note.shape) {
- case S_ORISCUS_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_ASCENDENS;
- break;
- case S_ORISCUS_SCAPUS_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_SCAPUS_ASCENDENS;
- break;
- case S_ORISCUS_CAVUM_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_CAVUM_ASCENDENS;
- break;
- default:
- /* not reachable unless there's a
- * programming error */
- /* LCOV_EXCL_START */
- gregorio_fail(oriscus_orientation_visit, "bad_shape");
- break;
- /* LCOV_EXCL_STOP */
- }
+ switch(p->note->u.note.shape) {
+ case S_ORISCUS_UNDETERMINED:
+ p->note->u.note.shape = S_ORISCUS_DESCENDENS;
+ break;
+ case S_ORISCUS_SCAPUS_UNDETERMINED:
+ p->note->u.note.shape = S_ORISCUS_SCAPUS_DESCENDENS;
+ gregorio_assert_only(p->glyph->u.notes.glyph_type
+ != G_PES_DESCENDENS_ORISCUS, set_oriscus_descending,
+ "glyph type should not be G_PES_DESCENDENS_ORISCUS");
+ if (p->glyph->u.notes.glyph_type == G_PES_ASCENDENS_ORISCUS) {
+ p->glyph->u.notes.glyph_type = G_PES_DESCENDENS_ORISCUS;
}
- *oriscus_ptr = NULL;
+ break;
+ default:
+ break;
}
+}
- switch (note->u.note.shape) {
+static void set_oriscus_ascending(const gregorio_note_iter_position *const p,
+ void *const ignored __attribute__((unused)))
+{
+ switch(p->note->u.note.shape) {
case S_ORISCUS_UNDETERMINED:
+ p->note->u.note.shape = S_ORISCUS_ASCENDENS;
+ break;
case S_ORISCUS_SCAPUS_UNDETERMINED:
- case S_ORISCUS_CAVUM_UNDETERMINED:
- *oriscus_ptr = note;
+ p->note->u.note.shape = S_ORISCUS_SCAPUS_ASCENDENS;
+ gregorio_assert_only(p->glyph->u.notes.glyph_type
+ != G_PES_DESCENDENS_ORISCUS, set_oriscus_ascending,
+ "glyph type should not be G_PES_DESCENDENS_ORISCUS");
break;
-
default:
break;
}
}
-void determine_oriscus_orientation(const gregorio_score *const score)
+/* data must be (gregorio_note_iter_position *) */
+static void oriscus_orientation_visit(
+ const gregorio_note_iter_position *const p, void *const data)
{
- gregorio_note *oriscus = NULL;
+ gregorio_note *const note = p->note;
+ gregorio_note_iter_position *const oriscus =
+ (gregorio_note_iter_position *const)data;
- gregorio_for_each_note(score, oriscus_orientation_visit, &oriscus);
+ if (oriscus->note && note->u.note.pitch != oriscus->note->u.note.pitch) {
+ if (note->u.note.pitch <= oriscus->note->u.note.pitch) {
+ /* descending (or undetermined oriscus in unison) */
+ gregorio_from_note_to_note(oriscus, p, false,
+ set_oriscus_descending, NULL, GRESTRUCT_NONE, NULL);
+ } else {
+ /* ascending */
+ gregorio_from_note_to_note(oriscus, p, false,
+ set_oriscus_ascending, NULL, GRESTRUCT_NONE, NULL);
+ }
+ oriscus->syllable = NULL,
+ oriscus->element = NULL,
+ oriscus->note = NULL;
+ oriscus->glyph = NULL;
+ }
- if (oriscus) {
- /* oriscus at the end of the score */
- switch(oriscus->u.note.shape) {
+ if (!oriscus->note) {
+ switch (note->u.note.shape) {
case S_ORISCUS_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_DESCENDENS;
- break;
case S_ORISCUS_SCAPUS_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_SCAPUS_DESCENDENS;
- break;
- case S_ORISCUS_CAVUM_UNDETERMINED:
- oriscus->u.note.shape = S_ORISCUS_CAVUM_DESCENDENS;
+ *oriscus = *p;
break;
+
default:
- /* not reachable unless there's a programming error */
- /* LCOV_EXCL_START */
- gregorio_fail(determine_oriscus_orientation, "bad_shape");
break;
- /* LCOV_EXCL_STOP */
}
}
}
+void gabc_determine_oriscus_orientation(const gregorio_score *const score)
+{
+ gregorio_note_iter_position oriscus = {
+ /* .syllable = */ NULL,
+ /* .element = */ NULL,
+ /* .glyph = */ NULL,
+ /* .note = */ NULL
+ };
+
+ gregorio_for_each_note(score, oriscus_orientation_visit, NULL,
+ GRESTRUCT_NONE, &oriscus);
+
+ if (oriscus.note) {
+ gregorio_from_note_to_note(&oriscus, NULL, true,
+ set_oriscus_descending, NULL, GRESTRUCT_NONE, NULL);
+ }
+}
+
typedef struct {
gregorio_note_iter_position first, previous;
gregorio_shape orientation;
@@ -298,8 +351,6 @@ static void punctum_inclinatum_orientation_visit(
case S_PUNCTUM_INCLINATUM_DESCENDENS:
case S_PUNCTUM_INCLINATUM_DEMINUTUS:
case S_PUNCTUM_INCLINATUM_AUCTUS:
- case S_PUNCTUM_CAVUM_INCLINATUM:
- case S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS:
v->orientation = S_PUNCTUM_INCLINATUM_DESCENDENS;
is_punctum_inclinatum = true;
break;
@@ -324,8 +375,8 @@ static void punctum_inclinatum_orientation_visit(
? S_PUNCTUM_INCLINATUM_ASCENDENS
: S_PUNCTUM_INCLINATUM_DESCENDENS;
}
- gregorio_from_note_to_note(&v->first, &v->previous, set_shape,
- &v->orientation);
+ gregorio_from_note_to_note(&v->first, &v->previous, true, set_shape,
+ NULL, GRESTRUCT_NONE, &v->orientation);
v->first.syllable = NULL;
v->first.element = NULL;
v->first.glyph = NULL;
@@ -341,7 +392,7 @@ static void punctum_inclinatum_orientation_visit(
v->previous = *p;
}
-void determine_punctum_inclinatum_orientation(
+void gabc_determine_punctum_inclinatum_orientation(
const gregorio_score *const score)
{
punctum_inclinatum_vars v = {
@@ -361,13 +412,188 @@ void determine_punctum_inclinatum_orientation(
/* .running = */ 0,
};
- gregorio_for_each_note(score, punctum_inclinatum_orientation_visit, &v);
-
+ gregorio_for_each_note(score, punctum_inclinatum_orientation_visit, NULL,
+ GRESTRUCT_NONE, &v);
+
if (v.first.note) {
v.orientation = (v.running > 0)
? S_PUNCTUM_INCLINATUM_ASCENDENS
: S_PUNCTUM_INCLINATUM_DESCENDENS;
- gregorio_from_note_to_note(&v.first, &v.previous, set_shape,
- &v.orientation);
+ gregorio_from_note_to_note(&v.first, &v.previous, true, set_shape, NULL,
+ GRESTRUCT_NONE, &v.orientation);
}
}
+
+typedef struct note_stack {
+ gregorio_note *note;
+ struct note_stack *prev;
+} note_stack;
+
+static void note_stack_push(note_stack **const stack, gregorio_note *note) {
+ note_stack *item = gregorio_malloc(sizeof(note_stack));
+ item->note = note;
+ item->prev = *stack;
+ *stack = item;
+}
+
+static gregorio_note *note_stack_pop(note_stack **const stack) {
+ note_stack *item = *stack;
+ if (item) {
+ gregorio_note *note = item->note;
+ note_stack *prev = item->prev;
+ free(item);
+ *stack = prev;
+ return note;
+ }
+ return NULL;
+}
+
+static void note_stack_clear(note_stack **const stack) {
+ note_stack *item = *stack;
+ while (item) {
+ note_stack *prev = item->prev;
+ free(item);
+ item = prev;
+ }
+ *stack = NULL;
+}
+
+typedef struct {
+ note_stack *high, *low;
+ gregorio_note *prev_note;
+ signed char high_ledger_line_pitch;
+ bool running_high, running_low;
+} ledger_line_vars;
+
+static __inline void clear_ledger_line_vars(ledger_line_vars *const v) {
+ note_stack_clear(&v->high);
+ note_stack_clear(&v->low);
+ v->prev_note = NULL;
+ v->running_high = false;
+ v->running_low = false;
+}
+
+static __inline void adjust_ledger(const gregorio_note_iter_position *const p,
+ const gregorio_ledger_specificity specificity, bool ledger_line,
+ note_stack **const stack, bool *const running, gregorio_note *prev_note,
+ const signed char high_ledger_line_pitch,
+ bool (*extend_ledger)(gregorio_note *, const gregorio_note *,
+ const gregorio_note *, signed char))
+{
+ if (specificity & LEDGER_DRAWN) {
+ if (ledger_line) {
+ gregorio_note *after = p->note;
+ gregorio_note *note;
+ /* process from this ledger backwards */
+ while ((note = note_stack_pop(stack))) {
+ if (!extend_ledger(note, NULL, after, high_ledger_line_pitch)) {
+ /* ledger has ended */
+ break;
+ }
+ after = note;
+ }
+ *running = true;
+ } else {
+ *running = false;
+ }
+ note_stack_clear(stack);
+ } else {
+ if (*running) {
+ if (!extend_ledger(p->note, prev_note, NULL,
+ high_ledger_line_pitch)) {
+ /* ledger has ended */
+ note_stack_push(stack, p->note);
+ *running = false;
+ }
+ /* else stack should be empty, keep it that way */
+ } else {
+ note_stack_push(stack, p->note);
+ }
+ }
+}
+
+static bool extend_high_ledger(gregorio_note *const note,
+ const gregorio_note *const note_before,
+ const gregorio_note *const note_after,
+ const signed char high_ledger_line_pitch)
+{
+ bool extend = false;
+
+ if (note_before) {
+ extend = note_before->u.note.pitch < note->u.note.pitch
+ || (note_before->u.note.pitch > high_ledger_line_pitch
+ && note->u.note.pitch < high_ledger_line_pitch);
+ } else if (note_after) {
+ extend = note_after->u.note.pitch < note->u.note.pitch
+ || (note_after->u.note.pitch > high_ledger_line_pitch
+ && note->u.note.pitch < high_ledger_line_pitch);
+ }
+
+ if (extend) {
+ note->high_ledger_line = true;
+ note->high_ledger_specificity = LEDGER_DRAWN;
+ }
+ return extend;
+}
+
+static bool extend_low_ledger(gregorio_note *const note,
+ const gregorio_note *const note_before,
+ const gregorio_note *const note_after,
+ const signed char high_ledger_line_pitch __attribute__((__unused__)))
+{
+ bool extend = false;
+
+ if (note_before) {
+ extend = note_before->u.note.pitch < note->u.note.pitch
+ || (note_before->u.note.pitch > LOW_LEDGER_LINE_PITCH
+ && note->u.note.pitch < LOW_LEDGER_LINE_PITCH);
+ } else if (note_after) {
+ extend = note_after->u.note.pitch < note->u.note.pitch
+ || (note_after->u.note.pitch > LOW_LEDGER_LINE_PITCH
+ && note->u.note.pitch < LOW_LEDGER_LINE_PITCH);
+ }
+
+ if (extend) {
+ note->low_ledger_line = true;
+ note->low_ledger_specificity = LEDGER_DRAWN;
+ }
+ return extend;
+}
+
+/* data must be (ledger_line_vars *) */
+static void ledger_line_visit(const gregorio_note_iter_position *const p,
+ void *const data)
+{
+ ledger_line_vars *const v = (ledger_line_vars *)data;
+
+ adjust_ledger(p, p->note->high_ledger_specificity, p->note->high_ledger_line,
+ &v->high, &v->running_high, v->prev_note, v->high_ledger_line_pitch,
+ &extend_high_ledger);
+ adjust_ledger(p, p->note->low_ledger_specificity, p->note->low_ledger_line,
+ &v->low, &v->running_low, v->prev_note, v->high_ledger_line_pitch,
+ &extend_low_ledger);
+
+ v->prev_note = p->note;
+}
+
+/* data must be (ledger_line_vars *) */
+static void ledger_line_end_item(
+ const gregorio_note_iter_position *const p __attribute__((__unused__)),
+ const gregorio_note_iter_item_type item_type, void *const data)
+{
+ if (item_type == GRESTRUCT_ELEMENT) {
+ clear_ledger_line_vars((ledger_line_vars *)data);
+ }
+}
+
+void gabc_determine_ledger_lines(const gregorio_score *const score)
+{
+ ledger_line_vars v;
+ memset(&v, 0, sizeof v);
+ v.high_ledger_line_pitch = score->high_ledger_line_pitch;
+
+ gregorio_for_each_note(score, ledger_line_visit, ledger_line_end_item,
+ GRESTRUCT_ELEMENT, &v);
+
+ /* stacks should be cleared by ledger_line_end_item */
+}
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h
index 3400e100465..a87afa27fe8 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.h
@@ -3,7 +3,7 @@
* This header shares definitions between the score parser and lexer.
*
* Gregorio score determination from gabc.
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -53,10 +53,12 @@ YY_DECL;
#define YYLTYPE gregorio_scanner_location
-void fix_custos(gregorio_score *score_to_check);
-bool check_score_integrity(gregorio_score *score_to_check);
-bool check_infos_integrity(gregorio_score *score_to_check);
-void determine_oriscus_orientation(const gregorio_score *score);
-void determine_punctum_inclinatum_orientation(const gregorio_score *score);
+void gabc_suppress_extra_custos_at_linebreak(gregorio_score *score);
+void gabc_fix_custos_pitches(gregorio_score *score_to_check);
+bool gabc_check_score_integrity(gregorio_score *score_to_check);
+bool gabc_check_infos_integrity(gregorio_score *score_to_check);
+void gabc_determine_oriscus_orientation(const gregorio_score *score);
+void gabc_determine_punctum_inclinatum_orientation(const gregorio_score *score);
+void gabc_determine_ledger_lines(const gregorio_score *const score);
#endif
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.l b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.l
index e35fc27fff6..64119527a1a 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.l
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.l
@@ -4,7 +4,7 @@
* This file implements the score lexer.
*
* Gregorio score determination in gabc input.
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -69,7 +69,7 @@ static bool eof_found = false;
#define YY_INPUT(buf,result,max_size) \
if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) { \
int c = '*'; \
- size_t n; \
+ int n; \
for (n = 0; n < max_size \
&& (c = getc(gabc_score_determination_in)) != EOF \
&& c != '\n'; ++n ) { \
@@ -109,6 +109,8 @@ static bool eof_found = false;
%x comments
%x inicomments
%x alt
+%x protrusion_value
+%x protrusion_end
%option stack
%option pointer
@@ -151,15 +153,20 @@ semicolon. */
BEGIN(attribute);
return COLON;
}
-<attribute>[^;\n\r]*(;[^;\n\r]+)*([\n\r]+[^;]*(;[^;]+)*)? {
+<attribute>;;?[\n\r \t]*[\n\r] {
+ BEGIN(INITIAL);
+ return SEMICOLON;
+ }
+<attribute>[^;]+ {
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
return ATTRIBUTE;
}
-<attribute>;;?[\n\r]+ {
- BEGIN(INITIAL);
- return SEMICOLON;
- }
+<attribute>; {
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return ATTRIBUTE;
+}
<INITIAL>def-m[0-9] {
gabc_score_determination_lval.character = gabc_score_determination_text[5];
return DEF_MACRO;
@@ -179,10 +186,6 @@ semicolon. */
gregorio_strdup(gabc_score_determination_text);
return GABC_COPYRIGHT;
}
-<INITIAL>initial-style {
- /* DEPRECATED for removal in 5.0 */
- return INITIAL_STYLE;
- }
<INITIAL>mode {
gabc_score_determination_lval.text =
gregorio_strdup(gabc_score_determination_text);
@@ -245,12 +248,17 @@ semicolon. */
<score>[\n\r][\n\r \t]* {
RETURN_SPACE;
}
-<score,sp>[^-\{\}\(\[\]<%\n\r]+ {
+<score>[^-,;:.\{\}\(\[\]<%\n\r]+ {
RETURN_CHARACTERS;
}
<score>- {
return HYPHEN;
}
+<score>[,;:.] {
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return PROTRUDING_PUNCTUATION;
+ }
<score><nlba> {
return NLBA_B;
}
@@ -333,7 +341,7 @@ semicolon. */
<verb,alt>[^<]+ {
RETURN_CHARACTERS;
}
-<verb,sp,score,alt>< {
+<verb,score,alt>< {
RETURN_CHARACTERS;
}
<score>\{ {
@@ -365,6 +373,26 @@ semicolon. */
<score>\] {
return TRANSLATION_END;
}
+<score><[\n\r \t]*clear[\n\r \t]*\/?[\n\r \t]*> {
+ return CLEAR;
+ }
+<score><[\n\r \t]*pr[\n\r \t]*\/?[\n\r \t]*> {
+ return PROTRUSION;
+ }
+<score><[\n\r \t]*pr[\n\r \t]*:[\n\r \t]* {
+ BEGIN(protrusion_value);
+ return PROTRUSION;
+ }
+<protrusion_value>([0-9]*\.?[0-9]+|[0-9]+\.) {
+ BEGIN(protrusion_end);
+ gabc_score_determination_lval.text =
+ gregorio_strdup(gabc_score_determination_text);
+ return PROTRUSION_VALUE;
+ }
+<protrusion_end>[\n\r \t]*\/?[\n\r \t]*> {
+ BEGIN(score);
+ return PROTRUSION_END;
+ }
<score>\( {
BEGIN(notes);
return OPENING_BRACKET;
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.y b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.y
index 71642f23bc3..1a9cc3980a1 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.y
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-score-determination.y
@@ -4,7 +4,7 @@
* This file implements the score parser.
*
* Gregorio score determination from gabc.
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -51,10 +51,13 @@
(Current).last_line = YYRHSLOC (Rhs, N).last_line; \
(Current).last_column = YYRHSLOC (Rhs, N).last_column; \
(Current).last_offset = YYRHSLOC (Rhs, N).last_offset; \
+ (Current).generate_point_and_click = YYRHSLOC (Rhs, 1).generate_point_and_click; \
} else { \
(Current).first_line = (Current).last_line = YYRHSLOC (Rhs, 0).last_line; \
(Current).first_column = (Current).last_column = YYRHSLOC (Rhs, 0).last_column; \
(Current).first_offset = (Current).last_offset = YYRHSLOC (Rhs, 0).last_offset; \
+ (Current).first_offset = (Current).last_offset = YYRHSLOC (Rhs, 0).last_offset; \
+ (Current).generate_point_and_click = YYRHSLOC (Rhs, 0).generate_point_and_click; \
}
#include "gabc-score-determination.h"
@@ -86,6 +89,7 @@ gregorio_element *current_element;
static char *macros[10];
/* other variables that we will have to use */
static gregorio_character *current_character;
+static gregorio_character *suspended_character;
static gregorio_character *first_text_character;
static gregorio_character *first_translation_character;
static gregorio_tr_centering translation_type;
@@ -104,6 +108,9 @@ static bool got_staff_lines;
static bool started_first_word;
static struct sha1_ctx digester;
static gabc_style_bits styles;
+static bool generate_point_and_click;
+static bool clear_syllable_text;
+static bool has_protrusion;
/* punctum_inclinatum_orientation maintains the running punctum inclinatum
* orientation in order to decide if the glyph needs to be cut when a punctum
@@ -140,7 +147,7 @@ static void gabc_score_determination_error(const char *error_str)
* The function that will initialize the variables.
*/
-static void initialize_variables(void)
+static void initialize_variables(bool point_and_click)
{
int i;
/* build a brand new empty score */
@@ -153,6 +160,7 @@ static void initialize_variables(void)
number_of_voices = 1;
voice = 0; /* first (and only) voice */
current_character = NULL;
+ suspended_character = NULL;
first_translation_character = NULL;
first_text_character = NULL;
translation_type = TR_NORMAL;
@@ -168,6 +176,9 @@ static void initialize_variables(void)
started_first_word = false;
styles = 0;
punctum_inclinatum_orientation = S_PUNCTUM_INCLINATUM_UNDETERMINED;
+ generate_point_and_click = point_and_click;
+ clear_syllable_text = false;
+ has_protrusion = false;
}
/*
@@ -192,7 +203,7 @@ static void end_definitions(void)
{
int i;
- gregorio_assert_only(check_infos_integrity(score), end_definitions,
+ gregorio_assert_only(gabc_check_infos_integrity(score), end_definitions,
"can't determine valid infos on the score");
elements = (gregorio_element **) gregorio_malloc(number_of_voices *
@@ -304,7 +315,159 @@ static void rebuild_score_characters(void)
}
/*
- * Function to close a syllable and update the position.
+ *
+ * The two functions called when lex returns a style, we simply add it. All the
+ * complex things will be done by the function after...
+ *
+ */
+
+static void add_style(unsigned char style)
+{
+ gregorio_begin_style(&current_character, style);
+}
+
+static void end_style(unsigned char style)
+{
+ gregorio_end_style(&current_character, style);
+}
+
+static __inline void save_text(void)
+{
+ if (has_protrusion) {
+ end_style(ST_PROTRUSION);
+ }
+ ready_characters();
+ first_text_character = current_character;
+}
+
+/* a function called when we see a [, basically, all characters are added to
+ * the translation pointer instead of the text pointer */
+static void start_translation(unsigned char asked_translation_type)
+{
+ suspended_character = current_character;
+ /* the middle letters of the translation have no sense */
+ /*center_is_determined = CENTER_FULLY_DETERMINED;*/
+ current_character = NULL;
+ translation_type = asked_translation_type;
+}
+
+static void end_translation(void)
+{
+ ready_characters();
+ first_translation_character = current_character;
+ current_character = suspended_character;
+}
+
+/*
+ * add_text is the function called when lex returns a char *. In
+ * this function we convert it into grewchar, and then we add the corresponding
+ * gregorio_characters in the list of gregorio_characters.
+ */
+
+static void add_text(char *mbcharacters)
+{
+ if (!current_character) {
+ /* insert open styles, leaving out ELISION on purpose */
+ if (styles & SB_I) {
+ add_style(ST_ITALIC);
+ }
+ if (styles & SB_B) {
+ add_style(ST_BOLD);
+ }
+ if (styles & SB_TT) {
+ add_style(ST_TT);
+ }
+ if (styles & SB_SC) {
+ add_style(ST_SMALL_CAPS);
+ }
+ if (styles & SB_UL) {
+ add_style(ST_UNDERLINED);
+ }
+ if (styles & SB_C) {
+ add_style(ST_COLORED);
+ }
+ }
+ if (current_character) {
+ current_character->next_character = gregorio_build_char_list_from_buf(
+ mbcharacters);
+ current_character->next_character->previous_character =
+ current_character;
+ } else {
+ current_character = gregorio_build_char_list_from_buf(mbcharacters);
+ }
+ while (current_character && current_character->next_character) {
+ current_character = current_character->next_character;
+ }
+ free(mbcharacters);
+}
+
+static void add_protrusion(char *factor)
+{
+ if (has_protrusion) {
+ gregorio_message("syllable already has protrusion; pr tag ignored",
+ "det_score", VERBOSITY_WARNING, 0);
+ free(factor);
+ } else {
+ if (center_is_determined == CENTER_HALF_DETERMINED) {
+ gregorio_message("closing open syllable center before protrusion",
+ "det_score", VERBOSITY_WARNING, 0);
+ end_style(ST_FORCED_CENTER);
+ center_is_determined = CENTER_FULLY_DETERMINED;
+ }
+
+ add_style(ST_PROTRUSION_FACTOR);
+ add_text(factor);
+ end_style(ST_PROTRUSION_FACTOR);
+ add_style(ST_PROTRUSION);
+ has_protrusion = true;
+ }
+}
+
+static void add_auto_protrusion(char *protrusion)
+{
+ if (has_protrusion) {
+ add_text(protrusion);
+ } else {
+ add_style(ST_PROTRUSION_FACTOR);
+ add_style(ST_VERBATIM);
+ add_text(gregorio_strdup("\\GreProtrusionFactor{"));
+
+ switch (*protrusion) {
+ case ',':
+ add_text(gregorio_strdup("comma"));
+ break;
+ case ';':
+ add_text(gregorio_strdup("semicolon"));
+ break;
+ case ':':
+ add_text(gregorio_strdup("colon"));
+ break;
+ case '.':
+ add_text(gregorio_strdup("period"));
+ break;
+ default:
+ /* not reachable unless there's a programming error */
+ /* LCOV_EXCL_START */
+ gregorio_fail2(add_auto_protrusion,
+ "unsupported protruding punctuation: %c", *protrusion);
+ break;
+ /* LCOV_EXCL_STOP */
+ }
+
+ add_text(gregorio_strdup("}"));
+ end_style(ST_VERBATIM);
+ end_style(ST_PROTRUSION_FACTOR);
+
+ add_style(ST_PROTRUSION);
+ add_text(protrusion);
+ end_style(ST_PROTRUSION);
+
+ has_protrusion = true;
+ }
+}
+
+/*
+ * Function to close a syllable and update the position.
*/
static void close_syllable(YYLTYPE *loc)
@@ -320,10 +483,9 @@ static void close_syllable(YYLTYPE *loc)
switch (ch->cos.s.type) {
case ST_T_BEGIN:
++i;
- if (i > 1) {
- gregorio_message(_("elisions may not be nested"),
- "close_syllable", VERBOSITY_ERROR, 0);
- }
+ /* the parser precludes this from falling here */
+ gregorio_assert_only(i <= 1, close_syllable,
+ "elisions may not be nested");
break;
case ST_T_END:
@@ -362,7 +524,7 @@ static void close_syllable(YYLTYPE *loc)
gregorio_add_syllable(&current_syllable, number_of_voices, elements,
first_text_character, first_translation_character, position,
abovelinestext, translation_type, no_linebreak_area, euouae, loc,
- started_first_word);
+ started_first_word, clear_syllable_text);
if (!score->first_syllable) {
/* we rebuild the first syllable if we have to */
score->first_syllable = current_syllable;
@@ -383,6 +545,7 @@ static void close_syllable(YYLTYPE *loc)
}
center_is_determined = CENTER_NOT_DETERMINED;
current_character = NULL;
+ suspended_character = NULL;
first_text_character = NULL;
first_translation_character = NULL;
translation_type = TR_NORMAL;
@@ -393,84 +556,8 @@ static void close_syllable(YYLTYPE *loc)
elements[i] = NULL;
}
current_element = NULL;
-}
-
-/* a function called when we see a [, basically, all characters are added to
- * the translation pointer instead of the text pointer */
-static void start_translation(unsigned char asked_translation_type)
-{
- ready_characters();
- first_text_character = current_character;
- /* the middle letters of the translation have no sense */
- center_is_determined = CENTER_FULLY_DETERMINED;
- current_character = NULL;
- translation_type = asked_translation_type;
-}
-
-static void end_translation(void)
-{
- ready_characters();
- first_translation_character = current_character;
-}
-
-/*
- *
- * The two functions called when lex returns a style, we simply add it. All the
- * complex things will be done by the function after...
- *
- */
-
-static void add_style(unsigned char style)
-{
- gregorio_begin_style(&current_character, style);
-}
-
-static void end_style(unsigned char style)
-{
- gregorio_end_style(&current_character, style);
-}
-
-/*
- * add_text is the function called when lex returns a char *. In
- * this function we convert it into grewchar, and then we add the corresponding
- * gregorio_characters in the list of gregorio_characters.
- */
-
-static void add_text(char *mbcharacters)
-{
- if (!current_character) {
- /* insert open styles, leaving out ELISION on purpose */
- if (styles & SB_I) {
- add_style(ST_ITALIC);
- }
- if (styles & SB_B) {
- add_style(ST_BOLD);
- }
- if (styles & SB_TT) {
- add_style(ST_TT);
- }
- if (styles & SB_SC) {
- add_style(ST_SMALL_CAPS);
- }
- if (styles & SB_UL) {
- add_style(ST_UNDERLINED);
- }
- if (styles & SB_C) {
- add_style(ST_COLORED);
- }
- }
- if (current_character) {
- current_character->next_character = gregorio_build_char_list_from_buf(
- mbcharacters);
- current_character->next_character->previous_character =
- current_character;
- } else {
- current_character = gregorio_build_char_list_from_buf(mbcharacters);
- }
- while (current_character && current_character->next_character) {
- current_character = current_character->next_character;
- }
- free(mbcharacters);
+ clear_syllable_text = false;
+ has_protrusion = false;
}
void gabc_digest(const void *const buf, const size_t size)
@@ -484,7 +571,7 @@ void gabc_digest(const void *const buf, const size_t size)
* aleady open. It returns a valid gregorio_score
*/
-gregorio_score *gabc_read_score(FILE *f_in)
+gregorio_score *gabc_read_score(FILE *f_in, bool point_and_click)
{
/* compute the SHA-1 digest while parsing, for I/O efficiency */
sha1_init_ctx(&digester);
@@ -495,21 +582,23 @@ gregorio_score *gabc_read_score(FILE *f_in)
gabc_score_determination_in = f_in;
gregorio_assert(f_in, gabc_read_score, "can't read stream from NULL",
return NULL);
- initialize_variables();
+ initialize_variables(point_and_click);
/* the flex/bison main call, it will build the score (that we have
* initialized) */
gabc_score_determination_parse();
if (!score->legacy_oriscus_orientation) {
- determine_oriscus_orientation(score);
+ gabc_determine_oriscus_orientation(score);
}
- determine_punctum_inclinatum_orientation(score);
+ gabc_determine_punctum_inclinatum_orientation(score);
+ gabc_determine_ledger_lines(score);
gregorio_fix_initial_keys(score, gregorio_default_clef);
rebuild_score_characters();
- fix_custos(score);
+ gabc_suppress_extra_custos_at_linebreak(score);
+ gabc_fix_custos_pitches(score);
gabc_det_notes_finish();
free_variables();
/* then we check the validity and integrity of the score we have built. */
- if (!check_score_integrity(score)) {
+ if (!gabc_check_score_integrity(score)) {
gregorio_message(_("unable to determine a valid score from file"),
"gabc_read_score", VERBOSITY_ERROR, 0);
}
@@ -554,6 +643,13 @@ static void gabc_y_add_notes(char *notes, YYLTYPE loc) {
current_element->nabc_lines = nabc_state;
}
}
+
+static char *concatenate(char *first, char *const second) {
+ first = (char *)gregorio_realloc(first, strlen(first) + strlen(second) + 1);
+ strcat(first, second);
+ free(second);
+ return first;
+}
%}
%initial-action {
@@ -563,6 +659,7 @@ static void gabc_y_add_notes(char *notes, YYLTYPE loc) {
@$.last_line = 1;
@$.last_column = 0;
@$.last_offset = 0;
+ @$.generate_point_and_click = generate_point_and_click;
}
%lex-param { gabc_style_bits *STYLE_BITS }
@@ -571,9 +668,8 @@ static void gabc_y_add_notes(char *notes, YYLTYPE loc) {
%token LANGUAGE STAFF_LINES ORISCUS_ORIENTATION
%token DEF_MACRO OTHER_HEADER
%token ANNOTATION MODE MODE_MODIFIER MODE_DIFFERENTIA
-%token INITIAL_STYLE /* DEPRECATED for removal in 5.0 */
%token END_OF_DEFINITIONS END_OF_FILE
-%token COLON SEMICOLON SPACE CHARACTERS NOTES HYPHEN ATTRIBUTE
+%token COLON SEMICOLON CHARACTERS NOTES HYPHEN ATTRIBUTE
%token OPENING_BRACKET CLOSING_BRACKET CLOSING_BRACKET_WITH_SPACE
%token I_BEGIN I_END
%token TT_BEGIN TT_END
@@ -582,7 +678,7 @@ static void gabc_y_add_notes(char *notes, YYLTYPE loc) {
%token B_BEGIN B_END
%token SC_BEGIN SC_END
%token SP_BEGIN SP_END
-%token VERB_BEGIN VERB VERB_END
+%token VERB_BEGIN VERB_END
%token CENTER_BEGIN CENTER_END
%token ELISION_BEGIN ELISION_END
%token TRANSLATION_BEGIN TRANSLATION_END TRANSLATION_CENTER_END
@@ -590,6 +686,13 @@ static void gabc_y_add_notes(char *notes, YYLTYPE loc) {
%token NLBA_B NLBA_E
%token EUOUAE_B EUOUAE_E
%token NABC_CUT NABC_LINES
+%token CLEAR
+%token PROTRUSION PROTRUSION_VALUE PROTRUSION_END PROTRUDING_PUNCTUATION
+
+%precedence HYPHEN PROTRUDING_PUNCTUATION
+%precedence TRANSLATION_BEGIN TRANSLATION_CENTER_END
+%precedence TRANSLATION_END
+%precedence OPENING_BRACKET
%%
@@ -607,12 +710,20 @@ definitions:
| definitions definition
;
+attribute_value:
+ ATTRIBUTE {
+ $$.text = $1.text;
+ }
+ | attribute_value ATTRIBUTE {
+ $$.text = concatenate($1.text, $2.text);
+ }
+ ;
+
attribute:
- COLON ATTRIBUTE SEMICOLON {
+ COLON attribute_value SEMICOLON {
$$.text = $2.text;
}
- |
- COLON SEMICOLON {
+ | COLON SEMICOLON {
$$.text = NULL;
}
;
@@ -679,16 +790,6 @@ definition:
score->nabc_lines=nabc_lines;
}
}
- | INITIAL_STYLE attribute {
- if ($2.text) {
- /* DEPRECATED for removal in 5.0 */
- gregorio_message("\"initial-style\" header is deprecated. Please "
- "use \\gresetinitiallines in TeX instead.",
- "gabc_score_determination_parse", VERBOSITY_DEPRECATION, 0);
- score->initial_style = atoi($2.text);
- free($2.text);
- }
- }
| ANNOTATION attribute {
if (score->annotation [MAX_ANNOTATIONS - 1]) {
gregorio_messagef("det_score", VERBOSITY_WARNING, 0,
@@ -781,15 +882,6 @@ style_beginning:
| SP_BEGIN {
add_style(ST_SPECIAL_CHAR);
}
- | ELISION_BEGIN {
- add_style(ST_ELISION);
- }
- | CENTER_BEGIN {
- if (!center_is_determined) {
- add_style(ST_FORCED_CENTER);
- center_is_determined=CENTER_HALF_DETERMINED;
- }
- }
;
style_end:
@@ -817,13 +909,40 @@ style_end:
| SP_END {
end_style(ST_SPECIAL_CHAR);
}
- | ELISION_END {
+ ;
+
+special_style_beginning:
+ ELISION_BEGIN {
+ add_style(ST_ELISION);
+ }
+ | CENTER_BEGIN {
+ if (center_is_determined) {
+ gregorio_message(
+ "syllable already has center; ignoring additional center",
+ "det_score", VERBOSITY_WARNING, 0);
+ } else if (has_protrusion) {
+ gregorio_message(
+ "center not allowed after protrusion; ignored",
+ "det_score", VERBOSITY_WARNING, 0);
+ } else {
+ add_style(ST_FORCED_CENTER);
+ center_is_determined = CENTER_HALF_DETERMINED;
+ }
+ }
+ ;
+
+special_style_end:
+ ELISION_END {
end_style(ST_ELISION);
}
| CENTER_END {
- if (center_is_determined==CENTER_HALF_DETERMINED) {
+ if (center_is_determined == CENTER_HALF_DETERMINED) {
end_style(ST_FORCED_CENTER);
- center_is_determined=CENTER_FULLY_DETERMINED;
+ center_is_determined = CENTER_FULLY_DETERMINED;
+ } else {
+ gregorio_message(
+ "not within a syllable center",
+ "det_score", VERBOSITY_WARNING, 0);
}
}
;
@@ -846,6 +965,15 @@ linebreak_area:
}
;
+protrusion:
+ PROTRUSION PROTRUSION_VALUE PROTRUSION_END {
+ add_protrusion($2.text);
+ }
+ | PROTRUSION {
+ add_protrusion(gregorio_strdup("d")); /* d = default */
+ }
+ ;
+
character:
above_line_text
| CHARACTERS {
@@ -853,22 +981,44 @@ character:
}
| style_beginning
| style_end
+ | special_style_beginning
+ | special_style_end
| linebreak_area
| euouae
- ;
-
-text_hyphen:
- HYPHEN {
- add_text(gregorio_strdup("-"));
+ | CLEAR {
+ clear_syllable_text = true;
}
- | text_hyphen HYPHEN {
+ | protrusion
+ | HYPHEN {
add_text(gregorio_strdup("-"));
}
+ | PROTRUDING_PUNCTUATION {
+ add_text($1.text);
+ }
;
text:
+ character
| text character
- | text text_hyphen character
+ ;
+
+translation_character:
+ CHARACTERS {
+ add_text($1.text);
+ }
+ | style_beginning
+ | style_end
+ | HYPHEN {
+ add_text(gregorio_strdup("-"));
+ }
+ | PROTRUDING_PUNCTUATION {
+ add_text($1.text);
+ }
+ ;
+
+translation_text:
+ translation_character
+ | translation_text translation_character
;
translation_beginning:
@@ -878,11 +1028,15 @@ translation_beginning:
;
translation:
- translation_beginning text TRANSLATION_END {
+ translation_beginning TRANSLATION_END {
+ end_translation();
+ }
+ | translation_beginning translation_text TRANSLATION_END {
end_translation();
}
| TRANSLATION_CENTER_END {
start_translation(TR_WITH_CENTER_END);
+ end_translation();
}
;
@@ -894,25 +1048,59 @@ above_line_text:
syllable_with_notes:
text OPENING_BRACKET notes {
- ready_characters();
- first_text_character = current_character;
+ save_text();
+ close_syllable(&@1);
+ }
+ | HYPHEN OPENING_BRACKET notes {
+ add_style(ST_VERBATIM);
+ add_text(gregorio_strdup("\\GreForceHyphen"));
+ end_style(ST_VERBATIM);
+ save_text();
close_syllable(&@1);
}
| text HYPHEN OPENING_BRACKET notes {
add_style(ST_VERBATIM);
add_text(gregorio_strdup("\\GreForceHyphen"));
end_style(ST_VERBATIM);
- ready_characters();
- first_text_character = current_character;
+ save_text();
+ close_syllable(&@1);
+ }
+ | PROTRUDING_PUNCTUATION OPENING_BRACKET notes {
+ add_auto_protrusion($1.text);
+ save_text();
+ close_syllable(&@1);
+ }
+ | text PROTRUDING_PUNCTUATION OPENING_BRACKET notes {
+ add_auto_protrusion($2.text);
+ save_text();
close_syllable(&@1);
}
| text translation OPENING_BRACKET notes {
+ save_text();
+ close_syllable(&@1);
+ }
+ | HYPHEN translation OPENING_BRACKET notes {
+ add_style(ST_VERBATIM);
+ add_text(gregorio_strdup("\\GreForceHyphen"));
+ end_style(ST_VERBATIM);
+ save_text();
close_syllable(&@1);
}
| text HYPHEN translation OPENING_BRACKET notes {
add_style(ST_VERBATIM);
add_text(gregorio_strdup("\\GreForceHyphen"));
end_style(ST_VERBATIM);
+ save_text();
+ close_syllable(&@1);
+ }
+ | PROTRUDING_PUNCTUATION translation OPENING_BRACKET notes {
+ add_auto_protrusion($1.text);
+ save_text();
+ close_syllable(&@1);
+ }
+ | text PROTRUDING_PUNCTUATION translation OPENING_BRACKET notes {
+ add_auto_protrusion($2.text);
+ save_text();
close_syllable(&@1);
}
;
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-write.c b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-write.c
index 31e75ccce3c..f783c84a035 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-write.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc-write.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file provides functions for writing gabc from Gregorio structures.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -36,6 +36,14 @@
#include "gabc.h"
+typedef enum {
+ GABC_NORMAL,
+ GABC_AT_PROTRUSION_FACTOR,
+ GABC_IN_PROTRUSION_FACTOR
+} gabc_write_state;
+
+static gabc_write_state write_state;
+
static __inline char pitch_letter(const char height) {
char result = height + 'a' - LOWEST_PITCH;
if (result == 'o') {
@@ -102,11 +110,15 @@ static void gabc_write_begin(FILE *f, grestyle_style style)
case ST_ELISION:
fprintf(f, "<e>");
break;
+ case ST_PROTRUSION_FACTOR:
+ write_state = GABC_AT_PROTRUSION_FACTOR;
+ break;
case ST_INITIAL:
case ST_CENTER:
case ST_FIRST_WORD:
case ST_FIRST_SYLLABLE:
case ST_FIRST_SYLLABLE_INITIAL:
+ case ST_PROTRUSION:
/* nothing should be emitted for these */
break;
default:
@@ -152,11 +164,17 @@ static void gabc_write_end(FILE *f, grestyle_style style)
case ST_ELISION:
fprintf(f, "</e>");
break;
+ case ST_PROTRUSION_FACTOR:
+ if (write_state == GABC_IN_PROTRUSION_FACTOR) {
+ fprintf(f, ">");
+ }
+ break;
case ST_INITIAL:
case ST_CENTER:
case ST_FIRST_WORD:
case ST_FIRST_SYLLABLE:
case ST_FIRST_SYLLABLE_INITIAL:
+ case ST_PROTRUSION:
/* nothing should be emitted for these */
break;
default:
@@ -191,9 +209,14 @@ static void gabc_write_special_char(FILE *f, const grewchar *first_char)
*/
static void gabc_write_verb(FILE *f, const grewchar *first_char)
{
- fprintf(f, "<v>");
- gregorio_print_unistring(f, first_char);
- fprintf(f, "</v>");
+ if (write_state == GABC_AT_PROTRUSION_FACTOR) {
+ /* this is an auto protrusion, so ignore it */
+ write_state = GABC_NORMAL;
+ } else {
+ fprintf(f, "<v>");
+ gregorio_print_unistring(f, first_char);
+ fprintf(f, "</v>");
+ }
}
/*
@@ -206,7 +229,17 @@ static void gabc_write_verb(FILE *f, const grewchar *first_char)
static void gabc_print_char(FILE *f, const grewchar to_print)
{
- gregorio_print_unichar(f, to_print);
+ if (write_state == GABC_AT_PROTRUSION_FACTOR) {
+ write_state = GABC_IN_PROTRUSION_FACTOR;
+ if (to_print == 'd') {
+ fprintf(f, "<pr");
+ } else {
+ fprintf(f, "<pr:");
+ gregorio_print_unichar(f, to_print);
+ }
+ } else {
+ gregorio_print_unichar(f, to_print);
+ }
}
/*
@@ -442,11 +475,25 @@ static const char *mora_vposition(gregorio_note *note)
}
static void write_note_heuristics(FILE *f, gregorio_note *note) {
- if (note->explicit_high_ledger_line) {
- fprintf(f, "[hl:%c]", note->supposed_high_ledger_line? '1' : '0');
+ switch (note->high_ledger_specificity) {
+ case LEDGER_EXPLICIT:
+ fprintf(f, "[hl:%c]", note->high_ledger_line? '1' : '0');
+ break;
+ case LEDGER_EXPLICITLY_DRAWN:
+ fprintf(f, "[oll:%c]", note->high_ledger_line? '1' : '0');
+ break;
+ default:
+ break;
}
- if (note->explicit_low_ledger_line) {
- fprintf(f, "[ll:%c]", note->supposed_low_ledger_line? '1' : '0');
+ switch (note->low_ledger_specificity) {
+ case LEDGER_EXPLICIT:
+ fprintf(f, "[ll:%c]", note->low_ledger_line? '1' : '0');
+ break;
+ case LEDGER_EXPLICITLY_DRAWN:
+ fprintf(f, "[ull:%c]", note->low_ledger_line? '1' : '0');
+ break;
+ default:
+ break;
}
}
@@ -496,12 +543,6 @@ static void gabc_write_gregorio_note(FILE *f, gregorio_note *note,
case S_PUNCTUM_INCLINATUM_AUCTUS:
fprintf(f, "%c", toupper((unsigned char)pitch_letter(note->u.note.pitch)));
break;
- case S_PUNCTUM_CAVUM_INCLINATUM:
- fprintf(f, "%cr", toupper((unsigned char)pitch_letter(note->u.note.pitch)));
- break;
- case S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS:
- fprintf(f, "%cr<", toupper((unsigned char)pitch_letter(note->u.note.pitch)));
- break;
case S_FLAT:
fprintf(f, "%cx", pitch_letter(note->u.note.pitch));
break;
@@ -527,16 +568,6 @@ static void gabc_write_gregorio_note(FILE *f, gregorio_note *note,
fprintf(f, "%co", pitch_letter(note->u.note.pitch));
/* Note: the DEMINUTUS is also in the liquescentia */
break;
- case S_ORISCUS_CAVUM_ASCENDENS:
- fprintf(f, "%co1r", pitch_letter(note->u.note.pitch));
- break;
- case S_ORISCUS_CAVUM_DESCENDENS:
- fprintf(f, "%co0r", pitch_letter(note->u.note.pitch));
- break;
- case S_ORISCUS_CAVUM_DEMINUTUS:
- fprintf(f, "%cor", pitch_letter(note->u.note.pitch));
- /* Note: the DEMINUTUS is also in the liquescentia */
- break;
case S_QUILISMA:
if (is_quadratum) {
fprintf(f, "%cW", pitch_letter(note->u.note.pitch));
@@ -547,15 +578,9 @@ static void gabc_write_gregorio_note(FILE *f, gregorio_note *note,
case S_LINEA:
fprintf(f, "%c=", pitch_letter(note->u.note.pitch));
break;
- case S_PUNCTUM_CAVUM:
- fprintf(f, "%cr", pitch_letter(note->u.note.pitch));
- break;
case S_LINEA_PUNCTUM:
fprintf(f, "%cR", pitch_letter(note->u.note.pitch));
break;
- case S_LINEA_PUNCTUM_CAVUM:
- fprintf(f, "%cr0", pitch_letter(note->u.note.pitch));
- break;
case S_ORISCUS_SCAPUS_ASCENDENS:
fprintf(f, "%cO1", pitch_letter(note->u.note.pitch));
break;
@@ -576,6 +601,9 @@ static void gabc_write_gregorio_note(FILE *f, gregorio_note *note,
break;
/* LCOV_EXCL_STOP */
}
+ if (note->u.note.is_cavum) {
+ fprintf(f, "r");
+ }
switch (note->signs) {
case _PUNCTUM_MORA:
fprintf(f, ".%s", mora_vposition(note));
@@ -619,6 +647,15 @@ static void gabc_write_gregorio_note(FILE *f, gregorio_note *note,
case _SEMI_CIRCULUS_REVERSUS:
fprintf(f, "r5");
break;
+ case _MUSICA_FICTA_FLAT:
+ fprintf(f, "r6");
+ break;
+ case _MUSICA_FICTA_NATURAL:
+ fprintf(f, "r7");
+ break;
+ case _MUSICA_FICTA_SHARP:
+ fprintf(f, "r8");
+ break;
case _NO_SIGN:
/* if there's no sign, don't emit anything */
break;
@@ -646,7 +683,7 @@ static void gabc_write_gregorio_note(FILE *f, gregorio_note *note,
}
write_note_heuristics(f, note);
if (note->texverb) {
- fprintf(f, "[nv:%s]", note->texverb);
+ fprintf(f, "[nv:%s]", gregorio_texverb(note->texverb));
}
}
@@ -804,7 +841,7 @@ static void gabc_write_gregorio_glyph(FILE *f, gregorio_glyph *glyph,
switch (glyph->type) {
case GRE_TEXVERB_GLYPH:
if (glyph->texverb) {
- fprintf(f, "[gv:%s]", glyph->texverb);
+ fprintf(f, "[gv:%s]", gregorio_texverb(glyph->texverb));
}
break;
case GRE_SPACE:
@@ -910,12 +947,12 @@ static void gabc_write_gregorio_element(FILE *f, gregorio_element *element,
break;
case GRE_TEXVERB_ELEMENT:
if (element->texverb) {
- fprintf(f, "[ev:%s]", element->texverb);
+ fprintf(f, "[ev:%s]", gregorio_texverb(element->texverb));
}
break;
case GRE_ALT:
if (element->texverb) {
- fprintf(f, "[alt:%s]", element->texverb);
+ fprintf(f, "[alt:%s]", gregorio_texverb(element->texverb));
}
break;
case GRE_SPACE:
@@ -948,6 +985,9 @@ static void gabc_write_gregorio_element(FILE *f, gregorio_element *element,
fprintf(f, "z0");
}
break;
+ case GRE_SUPPRESS_CUSTOS:
+ fprintf(f, "[nocustos]");
+ break;
case GRE_NLBA:
switch (element->u.misc.unpitched.info.nlba) {
case NLBA_BEGINNING:
@@ -1018,12 +1058,16 @@ static void gabc_write_gregorio_syllable(FILE *f, gregorio_syllable *syllable,
bool linebreak_or_bar_in_element;
gregorio_assert(syllable, gabc_write_gregorio_syllable,
"call with NULL argument", return);
+ write_state = GABC_NORMAL;
if (syllable->no_linebreak_area == NLBA_BEGINNING) {
fprintf(f, "<nlba>");
}
if (syllable->euouae == EUOUAE_BEGINNING) {
fprintf(f, "<eu>");
}
+ if (syllable->clear) {
+ fprintf(f, "<clear>");
+ }
if (syllable->text) {
/* we call the magic function (defined in struct_utils.c), that will
* write our text. */
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc.h b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc.h
index d2375a5fdde..7ec95632bf7 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/gabc/gabc.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes gabc-format handling data structures and entry points.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gregorio-utils.c b/Build/source/texk/gregorio/gregorio-src/src/gregorio-utils.c
index 18ef2f945b2..f61c4ff74b9 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gregorio-utils.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gregorio-utils.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the command line interface of Gregorio.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -21,7 +21,7 @@
*/
static const char *copyright =
-"Copyright (C) 2006-2016 Gregorio project authors (see CONTRIBUTORS.md)";
+"Copyright (C) 2006-2017 Gregorio project authors (see CONTRIBUTORS.md)";
#include "config.h"
#include <stdio.h>
@@ -661,7 +661,7 @@ int main(int argc, char **argv)
switch (input_format) {
case GABC:
- score = gabc_read_score(input_file);
+ score = gabc_read_score(input_file, point_and_click);
break;
default:
/* not reachable unless there's a programming error */
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-position.c b/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-position.c
index 3d21580727d..7ac334e5413 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-position.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-position.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file contains the logic for positioning signs on neumes.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -377,7 +377,7 @@ static gregorio_vposition advise_positioning(const gregorio_glyph *const glyph,
switch (type) {
case T_PES:
- case T_PESQUILISMA:
+ case T_QUILISMA_PES:
/*
* in the case of a pes, we put the episema just under the bottom note
*/
@@ -408,9 +408,9 @@ static gregorio_vposition advise_positioning(const gregorio_glyph *const glyph,
v_episema = below_if_auctus(glyph);
}
break;
- case T_PESQUADRATUM:
- case T_PESQUASSUS:
- case T_PESQUILISMAQUADRATUM:
+ case T_PES_QUADRATUM:
+ case T_PES_QUASSUS:
+ case T_QUILISMA_PES_QUADRATUM:
if (i == 1) {
note->gtex_offset_case = first_note_case(note, glyph);
h_episema = above_if_h_episema(note->next);
@@ -911,8 +911,6 @@ static gregorio_vposition advise_positioning(const gregorio_glyph *const glyph,
case S_PUNCTUM_INCLINATUM_AUCTUS:
case S_PUNCTUM_INCLINATUM_ASCENDENS:
case S_PUNCTUM_INCLINATUM_DESCENDENS:
- case S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS:
- case S_PUNCTUM_CAVUM_INCLINATUM:
note->gtex_offset_case = FinalInclinatum;
break;
case S_STROPHA:
@@ -928,11 +926,6 @@ static gregorio_vposition advise_positioning(const gregorio_glyph *const glyph,
note->gtex_offset_case = fused_single_note_case(glyph, FinalOriscus,
LeadingOriscus);
break;
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
- note->gtex_offset_case = FinalOriscus;
- break;
case S_VIRGA:
note->gtex_offset_case = InitialVirga;
break;
@@ -944,7 +937,6 @@ static gregorio_vposition advise_positioning(const gregorio_glyph *const glyph,
}
break;
case S_LINEA_PUNCTUM:
- case S_LINEA_PUNCTUM_CAVUM:
note->gtex_offset_case = FinalLineaPunctum;
break;
case S_LINEA:
@@ -1168,17 +1160,17 @@ static __inline void position_h_episema(gregorio_note *const note,
adj->pitch_extremum = h->height;
}
}
- if (!note->explicit_high_ledger_line && !note->supposed_high_ledger_line) {
- note->supposed_high_ledger_line = high_ledger_line;
+ if (!note->high_ledger_specificity && !note->high_ledger_line) {
+ note->high_ledger_line = high_ledger_line;
}
- if (!note->explicit_low_ledger_line && !note->supposed_low_ledger_line) {
- note->supposed_low_ledger_line = low_ledger_line;
+ if (!note->low_ledger_specificity && !note->low_ledger_line) {
+ note->low_ledger_line = low_ledger_line;
}
}
static __inline void next_has_ledger_line(
const height_computation *const h, bool *high_ledger_line,
- bool *low_ledger_line, const gregorio_score *const score)
+ bool *low_ledger_line)
{
const gregorio_element *element = h->last_connected_element;
const gregorio_glyph *glyph = h->last_connected_glyph;
@@ -1205,10 +1197,8 @@ static __inline void next_has_ledger_line(
note = glyph->u.notes.first_note;
}
- *high_ledger_line = *high_ledger_line
- || has_high_ledger_line(note->u.note.pitch, false, score);
- *low_ledger_line = *low_ledger_line
- || has_low_ledger_line(note->u.note.pitch, false);
+ *high_ledger_line = *high_ledger_line || note->high_ledger_line;
+ *low_ledger_line = *low_ledger_line || note->low_ledger_line;
if (keep_going) {
keep_going = false;
@@ -1224,7 +1214,7 @@ static __inline void next_has_ledger_line(
static __inline void previous_has_ledger_line(
const height_computation *const h, bool *high_ledger_line,
- bool *low_ledger_line, const gregorio_score *const score)
+ bool *low_ledger_line)
{
const gregorio_element *element = h->start_element;
const gregorio_glyph *glyph = h->start_glyph;
@@ -1253,10 +1243,8 @@ static __inline void previous_has_ledger_line(
} while (glyph->type != GRE_GLYPH);
note = gregorio_glyph_last_note(glyph);
}
- *high_ledger_line = *high_ledger_line
- || has_high_ledger_line(note->u.note.pitch, false, score);
- *low_ledger_line = *low_ledger_line
- || has_low_ledger_line(note->u.note.pitch, false);
+ *high_ledger_line = *high_ledger_line || note->high_ledger_line;
+ *low_ledger_line = *low_ledger_line || note->low_ledger_line;
if (keep_going) {
keep_going = false;
@@ -1284,8 +1272,8 @@ static __inline void set_h_episema_height(const height_computation *const h,
bool low_ledger_line = has_low_ledger_line(h->height, true)
|| has_low_ledger_line(h->height - h->vpos, false);
- next_has_ledger_line(h, &high_ledger_line, &low_ledger_line, score);
- previous_has_ledger_line(h, &high_ledger_line, &low_ledger_line, score);
+ next_has_ledger_line(h, &high_ledger_line, &low_ledger_line);
+ previous_has_ledger_line(h, &high_ledger_line, &low_ledger_line);
for ( ; element; element = element->next) {
if (element->type == GRE_ELEMENT) {
@@ -1328,11 +1316,17 @@ static __inline bool is_connected_right(const grehepisema_size size) {
return size == H_NORMAL || size == H_SMALL_RIGHT;
}
-static __inline bool is_connectable_interglyph_ambitus(
+static __inline bool is_connectable_interglyph_ambitus(const signed char first,
+ const signed char second)
+{
+ return abs(first - second) < 3;
+}
+
+static __inline bool is_connectable_interglyph_notes(
const gregorio_note *const first, const gregorio_note *const second)
{
- return first && second
- && abs(first->u.note.pitch - second->u.note.pitch) < 3;
+ return first && second && is_connectable_interglyph_ambitus(
+ first->u.note.pitch, second->u.note.pitch);
}
static __inline bool has_space_to_left(const gregorio_note *const note) {
@@ -1341,7 +1335,7 @@ static __inline bool has_space_to_left(const gregorio_note *const note) {
case S_PUNCTUM_INCLINATUM_DESCENDENS:
case S_PUNCTUM_INCLINATUM_DEMINUTUS:
case S_PUNCTUM_INCLINATUM_AUCTUS:
- return !is_connectable_interglyph_ambitus(note->previous, note);
+ return !is_connectable_interglyph_notes(note->previous, note);
default:
return !note->previous;
@@ -1430,7 +1424,6 @@ static __inline void compute_h_episema(height_computation *const h,
const gregorio_glyph *const glyph, gregorio_note *const note,
const int i, const gtex_type type, const gregorio_score *const score)
{
- signed char next_height;
grehepisema_size size;
if (h->is_applicable(note)) {
@@ -1438,11 +1431,11 @@ static __inline void compute_h_episema(height_computation *const h,
size = h->get_size(note);
if (h->active) {
+ const signed char next_height = compute_h_episema_height(
+ glyph, note, h->vpos);
if (h->connected && is_connected_left(size)
&& (i != 1 || is_connectable_interglyph_ambitus(
- note, h->last_connected_note))) {
- next_height = compute_h_episema_height(glyph, note,
- h->vpos);
+ next_height, h->height))) {
if (h->is_better_height(next_height, h->height)) {
h->height = next_height;
}
@@ -1555,10 +1548,6 @@ static __inline int compute_fused_shift(const gregorio_glyph *glyph)
switch (first_note->u.note.shape) {
case S_QUILISMA:
case S_QUILISMA_QUADRATUM:
- case S_PUNCTUM_CAVUM:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
case S_FLAT:
case S_SHARP:
case S_NATURAL:
@@ -1587,22 +1576,6 @@ static __inline int compute_fused_shift(const gregorio_glyph *glyph)
gregorio_assert(prev_note->type == GRE_NOTE, compute_fused_shift,
"previous note wasn't a note", return 0);
- switch (prev_note->u.note.shape) {
- case S_PUNCTUM_CAVUM:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
- case S_FLAT:
- case S_SHARP:
- case S_NATURAL:
- /* these don't fuse to anything */
- return 0;
-
- default:
- /* anything else is potentially fusible */
- break;
- }
-
shift = first_note->u.note.pitch - prev_note->u.note.pitch;
gregorio_assert(shift >= -MAX_AMBITUS && shift <= MAX_AMBITUS,
compute_fused_shift, "ambitus too large to fuse", return 0);
@@ -1644,70 +1617,6 @@ static __inline int compute_fused_shift(const gregorio_glyph *glyph)
return shift;
}
-static __inline void guess_ledger_lines(const gregorio_element *element,
- const gregorio_score *const score)
-{
- bool high_ledger_line = false;
- bool low_ledger_line = false;
- gregorio_note *prev = NULL;
-
- for (; element; element = element->next) {
- if (element->type == GRE_ELEMENT) {
- gregorio_glyph *glyph;
- for (glyph = element->u.first_glyph; glyph;
- glyph = glyph->next) {
- if (glyph->type == GRE_GLYPH) {
- gregorio_note *note;
- for (note = glyph->u.notes.first_note; note;
- note = note->next) {
- if (note->type == GRE_NOTE) {
- if (high_ledger_line
- && !note->explicit_high_ledger_line
- && !note->supposed_high_ledger_line) {
- note->supposed_high_ledger_line = true;
- }
- if (low_ledger_line
- && !note->explicit_low_ledger_line
- && !note->supposed_low_ledger_line) {
- note->supposed_low_ledger_line = true;
- }
- high_ledger_line = has_high_ledger_line(
- note->u.note.pitch, false, score);
- low_ledger_line = has_low_ledger_line(
- note->u.note.pitch, false);
- if (high_ledger_line) {
- if (!note->explicit_high_ledger_line
- && !note->supposed_high_ledger_line) {
- note->supposed_high_ledger_line = true;
- }
- if (prev && !prev->explicit_high_ledger_line
- && !prev->supposed_high_ledger_line) {
- prev->supposed_high_ledger_line = true;
- }
- }
- if (low_ledger_line) {
- if (!note->explicit_low_ledger_line
- && !note->supposed_low_ledger_line) {
- note->supposed_low_ledger_line = true;
- }
- if (prev && !prev->explicit_low_ledger_line
- && !prev->supposed_low_ledger_line) {
- prev->supposed_low_ledger_line = true;
- }
- }
- prev = note;
- }
- }
- }
- }
- /* this heuristic ends eith the element */
- high_ledger_line = false;
- low_ledger_line = false;
- prev = NULL;
- }
- }
-}
-
void gregoriotex_compute_positioning(
const gregorio_element *const param_element,
const gregorio_score *const score)
@@ -1759,8 +1668,6 @@ void gregoriotex_compute_positioning(
gtex_type type;
const gregorio_element *element;
- guess_ledger_lines(param_element, score);
-
for (element = param_element; element; element = element->next) {
if (element->type == GRE_ELEMENT) {
gregorio_glyph *glyph;
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-write.c b/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-write.c
index d34af2eaade..0ba25b0e9f7 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-write.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex-write.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file contains functions for writing GregorioTeX from Gregorio structures.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -60,6 +60,8 @@ typedef struct gregoriotex_status {
/* indicates if there is "above lines text" on the line */
bool abovelinestext;
+
+ bool suppressed_custos;
} gregoriotex_status;
#define UNDETERMINED_HEIGHT -127
@@ -73,7 +75,6 @@ static const char *tex_ambitus[] = {
SHAPE(Ancus);
SHAPE(AncusLongqueue);
SHAPE(AscendensOriscus);
-SHAPE(AscendensOriscusCavum);
SHAPE(AscendensOriscusLineBL);
SHAPE(AscendensOriscusLineTL);
SHAPE(AscendensOriscusScapus);
@@ -81,7 +82,6 @@ SHAPE(AscendensOriscusScapusLongqueue);
SHAPE(AscendensOriscusScapusOpenqueue);
SHAPE(AscendensPunctumInclinatum);
SHAPE(DescendensOriscus);
-SHAPE(DescendensOriscusCavum);
SHAPE(DescendensOriscusLineBL);
SHAPE(DescendensOriscusLineTL);
SHAPE(DescendensOriscusScapus);
@@ -103,11 +103,11 @@ SHAPE(FlexusOriscusScapusLongqueue);
SHAPE(FlexusOriscusScapusOpenqueue);
SHAPE(Linea);
SHAPE(LineaPunctum);
-SHAPE(LineaPunctumCavum);
SHAPE(Natural);
-SHAPE(OriscusCavumDeminutus);
SHAPE(OriscusDeminutus);
SHAPE(Pes);
+SHAPE(PesAscendensOriscus);
+SHAPE(PesDescendensOriscus);
SHAPE(PesQuadratum);
SHAPE(PesQuadratumLongqueue);
SHAPE(PesQuadratumOpenqueue);
@@ -117,10 +117,6 @@ SHAPE(PesQuassusInusitatusLongqueue);
SHAPE(PesQuassusInusitatusOpenqueue);
SHAPE(PesQuassusLongqueue);
SHAPE(PesQuassusOpenqueue);
-SHAPE(PesQuilisma);
-SHAPE(PesQuilismaQuadratum);
-SHAPE(PesQuilismaQuadratumLongqueue);
-SHAPE(PesQuilismaQuadratumOpenqueue);
SHAPE(Porrectus);
SHAPE(PorrectusFlexus);
SHAPE(PorrectusFlexusLongqueue);
@@ -129,9 +125,6 @@ SHAPE(PorrectusLongqueue);
SHAPE(PorrectusNobar);
SHAPE(Punctum);
SHAPE(PunctumAscendens);
-SHAPE(PunctumCavum);
-SHAPE(PunctumCavumInclinatum);
-SHAPE(PunctumCavumInclinatumAuctus);
SHAPE(PunctumDeminutus);
SHAPE(PunctumDescendens);
SHAPE(PunctumInclinatumAuctus);
@@ -139,6 +132,10 @@ SHAPE(PunctumInclinatumDeminutus);
SHAPE(PunctumLineBL);
SHAPE(PunctumLineTL);
SHAPE(Quilisma);
+SHAPE(QuilismaPes);
+SHAPE(QuilismaPesQuadratum);
+SHAPE(QuilismaPesQuadratumLongqueue);
+SHAPE(QuilismaPesQuadratumOpenqueue);
SHAPE(Salicus);
SHAPE(SalicusFlexus);
SHAPE(SalicusLongqueue);
@@ -165,7 +162,6 @@ SHAPE(VirgaReversaLongqueueDescendens);
SHAPE(VirgaReversaOpenqueue);
SHAPE(VirgaReversaOpenqueueAscendens);
SHAPE(VirgaReversaOpenqueueDescendens);
-SHAPE(VirgaStrata);
#define LIQ(NAME) static const char *const LIQ_##NAME = #NAME
LIQ(Deminutus);
@@ -214,10 +210,10 @@ static queuetype adjusted_queuetype_of(const gregorio_note *const note,
case 1:
return Q_ON_BOTTOM_LINE;
case 2:
- return queue_note->supposed_low_ledger_line?
+ return queue_note->low_ledger_line?
Q_ON_SPACE_ABOVE_BOTTOM_LINE : Q_ON_SPACE_BELOW_BOTTOM_LINE;
case 3:
- return queue_note->supposed_low_ledger_line?
+ return queue_note->low_ledger_line?
Q_ON_LINE_ABOVE_BOTTOM_LINE : Q_ON_BOTTOM_LINE;
case 5:
case 7:
@@ -578,10 +574,21 @@ static const char *fusible_queued_shape(const gregorio_note *const note,
return compute_glyph_name(glyph, name, LG_NONE, true);
}
+static __inline char *code_point(const char *const shape, const bool is_cavum,
+ char *const buf, const size_t bufsize)
+{
+ if (is_cavum) {
+ gregorio_snprintf(buf, bufsize, "\\GreCavum{%s}", shape);
+ } else {
+ gregorio_snprintf(buf, bufsize, "\\GreCP%s", shape);
+ }
+ return buf;
+}
+
static const char *determine_note_glyph_name(const gregorio_note *const note,
const gregorio_glyph *glyph, gtex_alignment *type)
{
- static char buf[128];
+ static char buf[128], cpbuf[96];
const char *name = "";
gregorio_assert(note, determine_note_glyph_name, "called with NULL pointer",
@@ -607,14 +614,10 @@ static const char *determine_note_glyph_name(const gregorio_note *const note,
return SHAPE_PunctumDescendens;
case S_PUNCTUM_DEMINUTUS:
return SHAPE_PunctumDeminutus;
- case S_PUNCTUM_CAVUM:
- return SHAPE_PunctumCavum;
case S_LINEA:
return SHAPE_Linea;
case S_LINEA_PUNCTUM:
return SHAPE_LineaPunctum;
- case S_LINEA_PUNCTUM_CAVUM:
- return SHAPE_LineaPunctumCavum;
case S_VIRGA:
switch (queuetype_of(note)) {
case Q_ON_SPACE_ABOVE_BOTTOM_LINE:
@@ -643,7 +646,8 @@ static const char *determine_note_glyph_name(const gregorio_note *const note,
if (note->u.note.pitch - LOWEST_PITCH == 3) {
/* if we're on the 'd' line, the queue could be long or short */
gregorio_snprintf(buf, sizeof buf,
- "VirgaReversaAscendensOnDLine{\\GreCP%s}", name);
+ "VirgaReversaAscendensOnDLine{%s}", code_point(name,
+ glyph->u.notes.is_cavum, cpbuf, sizeof cpbuf));
return buf;
}
return name;
@@ -698,21 +702,6 @@ static const char *determine_note_glyph_name(const gregorio_note *const note,
case Q_ON_LINE_ABOVE_BOTTOM_LINE:
return SHAPE_StrophaAuctaLongtail;
} /* all cases return, so this line is not hit; LCOV_EXCL_LINE */
- case S_PUNCTUM_CAVUM_INCLINATUM:
- *type = AT_PUNCTUM_INCLINATUM;
- return SHAPE_PunctumCavumInclinatum;
- case S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS:
- *type = AT_PUNCTUM_INCLINATUM;
- return SHAPE_PunctumCavumInclinatumAuctus;
- case S_ORISCUS_CAVUM_ASCENDENS:
- *type = AT_ORISCUS;
- return SHAPE_AscendensOriscusCavum;
- case S_ORISCUS_CAVUM_DESCENDENS:
- *type = AT_ORISCUS;
- return SHAPE_DescendensOriscusCavum;
- case S_ORISCUS_CAVUM_DEMINUTUS:
- *type = AT_ORISCUS;
- return SHAPE_OriscusCavumDeminutus;
case S_FLAT:
return SHAPE_Flat;
case S_SHARP:
@@ -883,18 +872,18 @@ const char *gregoriotex_determine_glyph_name(const gregorio_glyph *const glyph,
* look like pes quadratum. */
if (glyph->u.notes.liquescentia
& (L_AUCTUS_ASCENDENS | L_AUCTUS_DESCENDENS)) {
- *gtype = T_PESQUILISMAQUADRATUM;
- shape = SHAPE_PesQuilismaQuadratum;
+ *gtype = T_QUILISMA_PES_QUADRATUM;
+ shape = SHAPE_QuilismaPesQuadratum;
} else {
- *gtype = T_PESQUILISMA;
- shape = SHAPE_PesQuilisma;
+ *gtype = T_QUILISMA_PES;
+ shape = SHAPE_QuilismaPes;
}
ltype = LG_NO_INITIO;
break;
case S_ORISCUS_ASCENDENS:
case S_ORISCUS_SCAPUS_ASCENDENS:
*type = AT_ORISCUS;
- *gtype = T_PESQUASSUS;
+ *gtype = T_PES_QUASSUS;
shape = quadratum_shape(glyph, SHAPE_PesQuassus,
SHAPE_PesQuassusLongqueue, SHAPE_PesQuassusOpenqueue);
ltype = LG_NO_INITIO;
@@ -902,7 +891,7 @@ const char *gregoriotex_determine_glyph_name(const gregorio_glyph *const glyph,
case S_ORISCUS_DESCENDENS:
case S_ORISCUS_SCAPUS_DESCENDENS:
*type = AT_ORISCUS;
- *gtype = T_PESQUASSUS;
+ *gtype = T_PES_QUASSUS;
shape = quadratum_shape(glyph, SHAPE_PesQuassusInusitatus,
SHAPE_PesQuassusInusitatusLongqueue,
SHAPE_PesQuassusInusitatusOpenqueue);
@@ -912,7 +901,7 @@ const char *gregoriotex_determine_glyph_name(const gregorio_glyph *const glyph,
*type = AT_ONE_NOTE;
if (glyph->u.notes.liquescentia
& (L_AUCTUS_ASCENDENS | L_AUCTUS_DESCENDENS)) {
- *gtype = T_PESQUADRATUM;
+ *gtype = T_PES_QUADRATUM;
shape = SHAPE_PesQuadratum;
} else {
*gtype = T_PES;
@@ -926,25 +915,31 @@ const char *gregoriotex_determine_glyph_name(const gregorio_glyph *const glyph,
switch (glyph->u.notes.first_note->u.note.shape) {
case S_QUILISMA:
*type = AT_QUILISMA;
- *gtype = T_PESQUILISMAQUADRATUM;
- shape = quadratum_shape(glyph, SHAPE_PesQuilismaQuadratum,
- SHAPE_PesQuilismaQuadratumLongqueue,
- SHAPE_PesQuilismaQuadratumOpenqueue);
+ *gtype = T_QUILISMA_PES_QUADRATUM;
+ shape = quadratum_shape(glyph, SHAPE_QuilismaPesQuadratum,
+ SHAPE_QuilismaPesQuadratumLongqueue,
+ SHAPE_QuilismaPesQuadratumOpenqueue);
ltype = LG_NO_INITIO;
break;
default:
*type = AT_ONE_NOTE;
- *gtype = T_PESQUADRATUM;
+ *gtype = T_PES_QUADRATUM;
shape = quadratum_shape(glyph, SHAPE_PesQuadratum,
SHAPE_PesQuadratumLongqueue, SHAPE_PesQuadratumOpenqueue);
ltype = LG_ALL;
break;
}
break;
- case G_VIRGA_STRATA:
+ case G_PES_ASCENDENS_ORISCUS:
*type = AT_ONE_NOTE;
- *gtype = T_VIRGA_STRATA;
- shape = SHAPE_VirgaStrata;
+ *gtype = T_PES_ORISCUS;
+ shape = SHAPE_PesAscendensOriscus;
+ ltype = LG_ALL;
+ break;
+ case G_PES_DESCENDENS_ORISCUS:
+ *type = AT_ONE_NOTE;
+ *gtype = T_PES_ORISCUS;
+ shape = SHAPE_PesDescendensOriscus;
ltype = LG_ALL;
break;
case G_FLEXA:
@@ -1224,6 +1219,12 @@ static void gtex_write_begin(FILE *f, grestyle_style style)
case ST_FIRST_SYLLABLE_INITIAL:
fprintf(f, "\\GreFirstSyllableInitial{");
break;
+ case ST_PROTRUSION_FACTOR:
+ fprintf(f, "\\GreProtrusion{");
+ break;
+ case ST_PROTRUSION:
+ fprintf(f, "{");
+ break;
default:
break;
}
@@ -1305,12 +1306,17 @@ static __inline void tex_escape_wtext(FILE *const f, const grewchar *text)
/* these characters have special meaning to TeX */
fprintf(f, "\\string\\%03d", *text);
break;
+ /* There is currently no way to get a carriage return or a newline into
+ * an <sp>, but we'll leave this code here, but #if'd out, in case we
+ * need this function in a different context */
+#if 0
case L'\n':
fprintf(f, "\\string\\n");
break;
case L'\r':
- /* ignore */
+ / * ignore * /
break;
+#endif
default:
gregorio_print_unichar(f, *text);
break;
@@ -1772,12 +1778,12 @@ static void write_bar(FILE *f, const gregorio_score *const score,
static __inline char *suppose_high_ledger_line(const gregorio_note *const note)
{
- return note->supposed_high_ledger_line? "\\GreSupposeHighLedgerLine" : "";
+ return note->high_ledger_line? "\\GreSupposeHighLedgerLine" : "";
}
static __inline char *suppose_low_ledger_line(const gregorio_note *const note)
{
- return note->supposed_low_ledger_line? "\\GreSupposeLowLedgerLine" : "";
+ return note->low_ledger_line? "\\GreSupposeLowLedgerLine" : "";
}
/*
@@ -2049,7 +2055,6 @@ static __inline int get_punctum_inclinatum_space_case(
}
break;
case S_PUNCTUM_INCLINATUM_DESCENDENS:
- case S_PUNCTUM_CAVUM_INCLINATUM:
if (note->previous) {
/* means that it is the first note of the puncta inclinata
* sequence */
@@ -2111,7 +2116,6 @@ static __inline int get_punctum_inclinatum_space_case(
} /* LCOV_EXCL_LINE */
break;
case S_PUNCTUM_INCLINATUM_AUCTUS:
- case S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS:
if (note->previous) {
/* means that it is not the first note of the puncta inclinata
* sequence */
@@ -2413,6 +2417,21 @@ static void write_rare_sign(FILE *f, const gregorio_note *const current_note,
pitch_value(current_note->u.note.pitch),
current_note->gtex_offset_case);
break;
+ case _MUSICA_FICTA_FLAT:
+ fprintf(f, "\\GreMusicaFictaFlat{%d}{\\GreOCase%s}%%\n",
+ pitch_value(current_note->u.note.pitch),
+ current_note->gtex_offset_case);
+ break;
+ case _MUSICA_FICTA_NATURAL:
+ fprintf(f, "\\GreMusicaFictaNatural{%d}{\\GreOCase%s}%%\n",
+ pitch_value(current_note->u.note.pitch),
+ current_note->gtex_offset_case);
+ break;
+ case _MUSICA_FICTA_SHARP:
+ fprintf(f, "\\GreMusicaFictaSharp{%d}{\\GreOCase%s}%%\n",
+ pitch_value(current_note->u.note.pitch),
+ current_note->gtex_offset_case);
+ break;
/* the cases of the bar signs are dealt in another function
* (write_bar) */
default:
@@ -2440,14 +2459,18 @@ static __inline const char *alteration_name(
}
static const char *next_custos(const signed char next_note_pitch,
- const gregorio_shape next_note_alteration)
+ const gregorio_shape next_note_alteration,
+ gregoriotex_status *const status)
{
- static char buf[30];
+ static char buf[50];
- gregorio_snprintf(buf, sizeof buf, "\\GreNextCustos{%d}{%s}",
+ gregorio_snprintf(buf, sizeof buf, "%s\\GreNextCustos{%d}{%s}",
+ status->suppressed_custos? "\\GreResetEolCustos" : "",
pitch_value(next_note_pitch),
alteration_name(next_note_alteration));
+ status->suppressed_custos = false;
+
return buf;
}
@@ -2457,11 +2480,13 @@ static const char *next_custos(const signed char next_note_pitch,
static void write_note(FILE *f, gregorio_note *note,
const gregorio_glyph *glyph, const char next_note_pitch,
- const gregorio_shape next_note_alteration)
+ const gregorio_shape next_note_alteration,
+ gregoriotex_status *const status)
{
unsigned int initial_shape = note->u.note.shape;
const char *shape;
int space_case;
+ static char cpbuf[96];
/* type in the sense of GregorioTeX alignment type */
gtex_alignment type = AT_ONE_NOTE;
gregorio_assert(note, write_note, "called with NULL pointer",
@@ -2498,45 +2523,6 @@ static void write_note(FILE *f, gregorio_note *note,
}
switch (note->u.note.shape) {
- case S_PUNCTUM_CAVUM:
- fprintf(f, "\\GrePunctumCavum{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_PUNCTUM_CAVUM_INCLINATUM:
- fprintf(f, "\\GrePunctumCavumInclinatum{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS:
- fprintf(f, "\\GrePunctumCavumInclinatumAuctus{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_ORISCUS_CAVUM_ASCENDENS:
- fprintf(f, "\\GreAscendensOriscusCavum{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_ORISCUS_CAVUM_DESCENDENS:
- fprintf(f, "\\GreDescendensOriscusCavum{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_ORISCUS_CAVUM_DEMINUTUS:
- fprintf(f, "\\GreOriscusCavumDeminutus{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_LINEA_PUNCTUM_CAVUM:
- fprintf(f, "\\GreLineaPunctumCavum{%d}{%s}{%d}",
- pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
- case S_LINEA:
- fprintf(f, "\\GreLinea{%d}{%s}{%d}", pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
- break;
case S_FLAT:
fprintf(f, "\\GreFlat{%d}{0}", pitch_value(note->u.note.pitch));
break;
@@ -2547,9 +2533,11 @@ static void write_note(FILE *f, gregorio_note *note,
fprintf(f, "\\GreSharp{%d}{0}", pitch_value(note->u.note.pitch));
break;
default:
- fprintf(f, "\\GreGlyph{\\GreCP%s}{%d}{%s}{%d}", shape,
+ fprintf(f, "\\GreGlyph{%s}{%d}{%s}{%d}",
+ code_point(shape, glyph->u.notes.is_cavum, cpbuf, sizeof cpbuf),
pitch_value(note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
+ next_custos(next_note_pitch, next_note_alteration, status),
+ type);
break;
}
}
@@ -2800,13 +2788,65 @@ static void compute_height_extrema(const gregorio_glyph *const glyph,
height = note->v_episema_height;
} else {
height = note->u.note.pitch;
+
+ /* no vertical episema, so we need to check for a stem */
+ gregorio_assert(glyph->type == GRE_GLYPH, compute_height_extrema,
+ "glyph->type must be GRE_GLYPH here", return);
+ switch (glyph->u.notes.glyph_type) {
+ case G_BIVIRGA:
+ case G_TRIVIRGA:
+ case G_VIRGA:
+ case G_VIRGA_REVERSA:
+ --height;
+ break;
+
+ case G_PUNCTUM:
+ switch (note->u.note.shape) {
+ case S_ORISCUS_SCAPUS_ASCENDENS:
+ case S_ORISCUS_SCAPUS_DESCENDENS:
+ --height;
+ break;
+
+ default:
+ /* default to avoid the warning */
+ break;
+ }
+ break;
+
+ default:
+ /* default to avoid the warning */
+
+ /* other shapes like the porrectus have stems, but the height
+ * computation will cover other notes in the shape, negating
+ * the need to account for the stem on the shape */
+ break;
+ }
}
+
if (*bottom_height == UNDETERMINED_HEIGHT || height < *bottom_height) {
*bottom_height = height;
}
}
}
+static void compute_element_height_extrema(
+ const gregorio_element *const element, signed char *const top_height,
+ signed char *const bottom_height)
+{
+ const gregorio_glyph *glyph;
+ gregorio_not_null(element, compute_element_height_extrema, return);
+ if (element->type != GRE_ELEMENT) {
+ return;
+ }
+ /* get the minima/maxima pitches */
+ for (glyph = element->u.first_glyph; glyph; glyph = glyph->next) {
+ if (glyph->type == GRE_GLYPH) {
+ compute_height_extrema(glyph, glyph->u.notes.first_note,
+ top_height, bottom_height);
+ }
+ }
+}
+
static __inline void fixup_height_extrema(signed char *const top_height,
signed char *const bottom_height)
{
@@ -2818,6 +2858,12 @@ static __inline void fixup_height_extrema(signed char *const top_height,
}
}
+static __inline bool is_ledger_drawn(const bool setting,
+ const gregorio_ledger_specificity specificity)
+{
+ return ((specificity & LEDGER_DRAWN) && setting);
+}
+
static void write_signs(FILE *f, gtex_type type,
const gregorio_glyph *glyph, const gregorio_note *note,
int fuse_to_next_note, gregoriotex_status *const status,
@@ -2836,16 +2882,19 @@ static void write_signs(FILE *f, gtex_type type,
for (current_note = note, i = 1; current_note;
current_note = current_note->next, ++i) {
/* we start by the additional lines */
- if (current_note->u.note.pitch <= LOW_LEDGER_LINE_PITCH) {
+ if (is_ledger_drawn(current_note->low_ledger_line,
+ current_note->low_ledger_specificity)) {
write_additional_line(f, i, type, true, current_note, score);
status->bottom_line = 1;
}
- if (current_note->u.note.pitch >= score->high_ledger_line_pitch) {
+ if (is_ledger_drawn(current_note->high_ledger_line,
+ current_note->high_ledger_specificity)) {
write_additional_line(f, i, type, false, current_note, score);
}
if (current_note->texverb) {
fprintf(f, "%% verbatim text at note level:\n%s%%\n"
- "%% end of verbatim text\n", current_note->texverb);
+ "%% end of verbatim text\n",
+ gregorio_texverb(current_note->texverb));
}
if (type == T_ONE_NOTE) {
break;
@@ -2925,7 +2974,7 @@ static void write_signs(FILE *f, gtex_type type,
fprintf(f, "}%%\n");
}
-static char *determine_leading_shape(gregorio_glyph *glyph)
+static char *determine_leading_shape(const gregorio_glyph *const glyph)
{
static char buf[BUFSIZE];
int ambitus = compute_ambitus(glyph->u.notes.first_note);
@@ -2966,10 +3015,10 @@ static __inline void write_composed_multinote_glyph(FILE *const f,
const bool has_next = current_note->next != NULL;
if (has_next) {
write_note(f, current_note, glyph, current_note->next->u.note.pitch,
- S_UNDETERMINED);
+ S_UNDETERMINED, status);
} else {
write_note(f, current_note, glyph, next_note_pitch,
- next_note_alteration);
+ next_note_alteration, status);
}
write_signs(f, T_ONE_NOTE, glyph, current_note,
has_next ? 0 : fuse_to_next_note, status, score);
@@ -2980,13 +3029,13 @@ static __inline void write_composed_multinote_glyph(FILE *const f,
}
}
-static void write_glyph(FILE *f, gregorio_syllable *syllable,
- gregorio_element *element, gregorio_glyph *glyph,
+static void write_glyph(FILE *const f, const gregorio_syllable *const syllable,
+ const gregorio_element *const element,
+ gregorio_glyph *const glyph,
gregoriotex_status *const status, const gregorio_score *const score)
{
- /* glyph number is the number of the glyph in the fonte, it is discussed in
- * later comments
- * type is the type of the glyph. Understand the type of the glyph for
+ static char cpbuf[96], cpbuf2[96];
+ /* type is the type of the glyph. Understand the type of the glyph for
* gregoriotex, for the alignement between text and notes. (AT_ONE_NOTE,
* etc.) */
gtex_alignment type = 0;
@@ -3034,9 +3083,11 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
|| glyph->u.notes.liquescentia == L_NO_LIQUESCENTIA
|| glyph->u.notes.liquescentia == L_FUSED) {
shape = gregoriotex_determine_glyph_name(glyph, &type, &gtype);
- fprintf(f, "\\GreGlyph{\\GreCP%s}{%d}{%s}{%d}", shape,
+ fprintf(f, "\\GreGlyph{%s}{%d}{%s}{%d}", code_point(shape,
+ glyph->u.notes.is_cavum, cpbuf, sizeof cpbuf),
pitch_value(glyph->u.notes.first_note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
+ next_custos(next_note_pitch, next_note_alteration, status),
+ type);
write_signs(f, gtype, glyph, glyph->u.notes.first_note,
fuse_to_next_note, status, score);
} else {
@@ -3049,9 +3100,11 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
gregorio_assert(glyph->u.notes.liquescentia & L_DEMINUTUS,
write_glyph, "encountered a non-deminutus ancus", break);
shape = gregoriotex_determine_glyph_name(glyph, &type, &gtype);
- fprintf(f, "\\GreGlyph{\\GreCP%s}{%d}{%s}{%d}", shape,
+ fprintf(f, "\\GreGlyph{%s}{%d}{%s}{%d}", code_point(shape,
+ glyph->u.notes.is_cavum, cpbuf, sizeof cpbuf),
pitch_value(glyph->u.notes.first_note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
+ next_custos(next_note_pitch, next_note_alteration, status),
+ type);
write_signs(f, gtype, glyph, glyph->u.notes.first_note,
fuse_to_next_note, status, score);
break;
@@ -3063,10 +3116,14 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
glyph->u.notes.glyph_type = G_PORRECTUS_FLEXUS_NO_BAR;
glyph->u.notes.first_note = current_note->next;
shape = gregoriotex_determine_glyph_name(glyph, &type, &gtype);
- fprintf(f, "\\GreGlyph{\\GreFuseTwo{\\GreCP%s}{\\GreCP%s}}{%d}"
- "{%s}{%d}", leading_shape, shape,
+ fprintf(f, "\\GreGlyph{\\GreFuseTwo{%s}{%s}}{%d}{%s}{%d}",
+ code_point(leading_shape, glyph->u.notes.is_cavum, cpbuf,
+ sizeof cpbuf),
+ code_point(shape, glyph->u.notes.is_cavum, cpbuf2,
+ sizeof cpbuf2),
pitch_value(glyph->u.notes.first_note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
+ next_custos(next_note_pitch, next_note_alteration, status),
+ type);
glyph->u.notes.first_note = current_note;
glyph->u.notes.glyph_type = G_TORCULUS_RESUPINUS_FLEXUS;
write_signs(f, gtype, glyph, glyph->u.notes.first_note,
@@ -3092,9 +3149,6 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
case S_ORISCUS_ASCENDENS:
case S_ORISCUS_DESCENDENS:
case S_ORISCUS_DEMINUTUS:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
case S_ORISCUS_SCAPUS_ASCENDENS:
case S_ORISCUS_SCAPUS_DESCENDENS:
/* don't change the oriscus */
@@ -3131,7 +3185,7 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
case G_STROPHA_AUCTA:
case G_ALTERATION:
write_note(f, glyph->u.notes.first_note, glyph, next_note_pitch,
- next_note_alteration);
+ next_note_alteration, status);
write_signs(f, T_ONE_NOTE, glyph, current_note, fuse_to_next_note,
status, score);
break;
@@ -3148,10 +3202,14 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
glyph->u.notes.glyph_type = G_PORRECTUS_NO_BAR;
glyph->u.notes.first_note = current_note->next;
shape = gregoriotex_determine_glyph_name(glyph, &type, &gtype);
- fprintf(f, "\\GreGlyph{\\GreFuseTwo{\\GreCP%s}{\\GreCP%s}}"
- "{%d}{%s}{%d}", leading_shape, shape,
+ fprintf(f, "\\GreGlyph{\\GreFuseTwo{%s}{%s}}{%d}{%s}{%d}",
+ code_point(leading_shape, glyph->u.notes.is_cavum, cpbuf,
+ sizeof cpbuf),
+ code_point(shape, glyph->u.notes.is_cavum, cpbuf2,
+ sizeof cpbuf2),
pitch_value(glyph->u.notes.first_note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
+ next_custos(next_note_pitch, next_note_alteration, status),
+ type);
glyph->u.notes.first_note = current_note;
glyph->u.notes.glyph_type = G_TORCULUS_RESUPINUS;
write_signs(f, gtype, glyph, glyph->u.notes.first_note,
@@ -3159,9 +3217,11 @@ static void write_glyph(FILE *f, gregorio_syllable *syllable,
break;
} else {
shape = gregoriotex_determine_glyph_name(glyph, &type, &gtype);
- fprintf(f, "\\GreGlyph{\\GreCP%s}{%d}{%s}{%d}",
- shape, pitch_value(glyph->u.notes.first_note->u.note.pitch),
- next_custos(next_note_pitch, next_note_alteration), type);
+ fprintf(f, "\\GreGlyph{%s}{%d}{%s}{%d}", code_point(shape,
+ glyph->u.notes.is_cavum, cpbuf, sizeof cpbuf),
+ pitch_value(glyph->u.notes.first_note->u.note.pitch),
+ next_custos(next_note_pitch, next_note_alteration, status),
+ type);
write_signs(f, gtype, glyph, glyph->u.notes.first_note,
fuse_to_next_note, status, score);
break;
@@ -3184,8 +3244,10 @@ static __inline unsigned int glyph_note_units(const gregorio_glyph *glyph)
/* here we absolutely need to pass the syllable as an argument, because we
* will need the next note, that may be contained in the next syllable */
-static unsigned int write_element(FILE *f, gregorio_syllable *syllable,
- gregorio_element *element, gregoriotex_status *status,
+static unsigned int write_element(FILE *const f,
+ const gregorio_syllable *const syllable,
+ const gregorio_element *const element,
+ gregoriotex_status *const status,
const gregorio_score *const score)
{
unsigned int note_unit_count = 0;
@@ -3217,7 +3279,8 @@ static unsigned int write_element(FILE *f, gregorio_syllable *syllable,
case GRE_TEXVERB_GLYPH:
if (glyph->texverb) {
fprintf(f, "%% verbatim text at glyph level:\n%s%%\n"
- "%% end of verbatim text\n", glyph->texverb);
+ "%% end of verbatim text\n",
+ gregorio_texverb(glyph->texverb));
}
break;
@@ -3311,7 +3374,7 @@ static void write_text(FILE *const f, const gregorio_character *const text)
* \GreChangeClef.
*/
static void gregoriotex_print_change_line_clef(FILE *f,
- gregorio_element *current_element)
+ const gregorio_element *const current_element)
{
if (current_element->type == GRE_CLEF) {
/* the third argument is 0 or 1 according to the need for a space
@@ -3394,7 +3457,8 @@ static void handle_final_bar(FILE *f, const char *type, gregorio_syllable *sylla
case GRE_TEXVERB_ELEMENT:
if (element->texverb) {
fprintf(f, "%% verbatim text at element level:\n%s%%\n"
- "%% end of verbatim text\n", element->texverb);
+ "%% end of verbatim text\n",
+ gregorio_texverb(element->texverb));
}
break;
@@ -3428,21 +3492,23 @@ static __inline void write_syllable_point_and_click(FILE *const f,
}
static void write_syllable_text(FILE *f, const char *const syllable_type,
- const bool forced_center, const gregorio_character *text,
+ const gregorio_syllable *const syllable,
const bool ignored __attribute__((unused)))
{
if (syllable_type != NULL) {
- fprintf(f, "%s{%s\\GreSetThisSyllable", syllable_type,
- forced_center? "\\GreGABCForceCenters" : "");
- write_text(f, text);
+ fprintf(f, "%s{%s%s\\GreSetThisSyllable", syllable_type,
+ syllable->clear? "\\GreClearSyllableText" : "",
+ syllable->forced_center? "\\GreGABCForceCenters" : "");
+ write_text(f, syllable->text);
fprintf(f, "}");
}
}
static void write_first_syllable_text(FILE *f, const char *const syllable_type,
- const bool forced_center, const gregorio_character *const text,
+ const gregorio_syllable *const syllable,
const bool end_of_word)
{
+ const gregorio_character *const text = syllable->text;
gregorio_not_null(syllable_type, write_first_syllable_text, return);
if (text == NULL) {
fprintf(f, "}{%s}{\\GreSetNoFirstSyllableText}", syllable_type);
@@ -3452,7 +3518,7 @@ static void write_first_syllable_text(FILE *f, const char *const syllable_type,
const gregorio_character *t;
/* find out if there is a forced center -> has_forced_center */
- gregorio_center_determination center = forced_center?
+ gregorio_center_determination center = syllable->forced_center?
CENTER_FULLY_DETERMINED : CENTER_NOT_DETERMINED;
gregorio_rebuild_first_syllable(&text_with_initial, false);
@@ -3463,8 +3529,9 @@ static void write_first_syllable_text(FILE *f, const char *const syllable_type,
gregorio_rebuild_characters(&text_without_initial, center, true);
gregorio_set_first_word(&text_without_initial);
- fprintf(f, "}{%s}{%s\\GreSetFirstSyllableText", syllable_type,
- forced_center? "\\GreGABCForceCenters" : "");
+ fprintf(f, "}{%s}{%s%s\\GreSetFirstSyllableText", syllable_type,
+ syllable->clear? "\\GreClearSyllableText" : "",
+ syllable->forced_center? "\\GreGABCForceCenters" : "");
fprintf(f, "{");
gregorio_write_first_letter_alignment_text(WTP_FIRST_SYLLABLE,
@@ -3628,6 +3695,30 @@ static __inline void handle_last_of_voice(FILE *const f,
}
}
+static bool is_before_linebreak(const gregorio_syllable *syllable,
+ const gregorio_element *element)
+{
+ if (element) {
+ element = element->next;
+ }
+
+ while (syllable) {
+ if (element) {
+ if (element->type == GRE_END_OF_LINE) {
+ return true;
+ }
+ break;
+ }
+
+ syllable = syllable->next_syllable;
+ if (syllable) {
+ element = syllable->elements[0];
+ }
+ }
+
+ return false;
+}
+
/*
* Arguments are relatively obvious. The most obscure is certainly first_of_disc
* which is 0 all the time, except in the case of a "clef change syllable". In
@@ -3646,9 +3737,9 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
const gregorio_score *const score,
const gregorio_element *const *const last_of_voice,
void (*const write_this_syllable_text)
- (FILE *, const char *, bool, const gregorio_character *, bool))
+ (FILE *, const char *, const gregorio_syllable *, bool))
{
- gregorio_element *clef_change_element = NULL, *element;
+ const gregorio_element *clef_change_element = NULL, *element;
const char *syllable_type = NULL;
bool anticipated_event_written = false;
bool end_of_word;
@@ -3670,13 +3761,13 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
if (syllable->euouae == EUOUAE_BEGINNING) {
fprintf(f, "\\GreBeginEUOUAE{%hu}%%\n", syllable->euouae_id);
}
- /*
- * first we check if the syllable is only a end of line. If it is the case,
- * we don't print anything but a comment (to be able to read it if we read
- * GregorioTeX). The end of lines are treated separately in GregorioTeX, it
- * is buit inside the TeX structure.
- */
if (syllable->elements && *(syllable->elements)) {
+ /*
+ * first we check if the syllable is only a end of line. If it is the
+ * case, we don't print anything but a comment (to be able to read it
+ * if we read GregorioTeX). The end of lines are treated separately in
+ * GregorioTeX, it is buit inside the TeX structure.
+ */
if ((syllable->elements)[0]->type == GRE_END_OF_LINE) {
gregorio_assert(syllable != score->first_syllable, write_syllable,
"line break is not supported on the first syllable",
@@ -3686,8 +3777,7 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
} else {
fprintf(f, "%%\n%%\n\\GreNewLine %%\n%%\n%%\n");
}
- write_this_syllable_text(f, NULL, syllable->forced_center,
- syllable->text, end_of_word);
+ write_this_syllable_text(f, NULL, syllable, end_of_word);
return;
}
/*
@@ -3714,8 +3804,7 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
write_syllable(f, syllable, 2, status, score, last_of_voice,
write_syllable_text);
fprintf(f, "}%%\n");
- write_this_syllable_text(f, NULL, syllable->forced_center,
- syllable->text, end_of_word);
+ write_this_syllable_text(f, NULL, syllable, end_of_word);
return;
}
}
@@ -3727,16 +3816,14 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
&& (syllable->elements)[0]->u.misc.unpitched.info.bar
== B_DIVISIO_FINALIS) {
handle_final_bar(f, "DivisioFinalis", syllable);
- write_this_syllable_text(f, NULL, syllable->forced_center,
- syllable->text, end_of_word);
+ write_this_syllable_text(f, NULL, syllable, end_of_word);
return;
}
if (!syllable->next_syllable && !syllable->text
&& (syllable->elements)[0]->u.misc.unpitched.info.bar
== B_DIVISIO_MAIOR) {
handle_final_bar(f, "DivisioMaior", syllable);
- write_this_syllable_text(f, NULL, syllable->forced_center,
- syllable->text, end_of_word);
+ write_this_syllable_text(f, NULL, syllable, end_of_word);
return;
}
}
@@ -3755,8 +3842,7 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
syllable->next_syllable? syllable->next_syllable->text : NULL);
syllable_type = "\\GreNoNoteSyllable";
}
- write_this_syllable_text(f, syllable_type, syllable->forced_center,
- syllable->text, end_of_word);
+ write_this_syllable_text(f, syllable_type, syllable, end_of_word);
fprintf(f, "{}{\\Gre%s}", syllable->first_word ? "FirstWord" : "Unstyled");
if (end_of_word) {
fprintf(f, "{1}");
@@ -3816,12 +3902,18 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
if (syllable->elements) {
for (element = *syllable->elements; element; element = element->next) {
if (element->nabc_lines && element->nabc) {
+ signed char high_pitch = UNDETERMINED_HEIGHT;
+ signed char low_pitch = UNDETERMINED_HEIGHT;
size_t i;
+ compute_element_height_extrema(element, &high_pitch,
+ &low_pitch);
+ fixup_height_extrema(&high_pitch, &low_pitch);
for (i = 0; i < element->nabc_lines; i++) {
if (element->nabc[i]) {
fprintf(f, "\\GreNABCNeumes{%d}{", (int)(i+1));
tex_escape_text(f, element->nabc[i]);
- fprintf(f, "}%%\n");
+ fprintf(f, "}{%d}{%d}%%\n", pitch_value(high_pitch),
+ pitch_value(low_pitch));
}
}
}
@@ -3875,7 +3967,8 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
case GRE_TEXVERB_ELEMENT:
if (element->texverb) {
fprintf(f, "%% verbatim text at element level:\n%s%%\n"
- "%% end of verbatim text\n", element->texverb);
+ "%% end of verbatim text\n",
+ gregorio_texverb(element->texverb));
}
break;
@@ -3890,29 +3983,45 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
case GRE_ALT:
if (element->texverb) {
- fprintf(f, "\\GreSetTextAboveLines{%s}%%\n", element->texverb);
+ fprintf(f, "\\GreSetTextAboveLines{%s}%%\n",
+ gregorio_texverb(element->texverb));
}
break;
case GRE_CLEF:
/* We don't print clef changes at the end of a line */
if (first_of_disc != 1) {
- /* the third argument is 0 or 1 according to the need
- * for a space before the clef */
- fprintf(f, "\\GreChangeClef{%c}{%d}{%c}{%d}{%c}{%d}{%d}%%\n",
- gregorio_clef_to_char(element->u.misc.clef.clef),
- element->u.misc.clef.line,
- (!element->previous || element->previous->type
- == GRE_BAR)? '0' : '1',
- clef_flat_height(element->u.misc.clef.clef,
- element->u.misc.clef.line,
- element->u.misc.clef.flatted),
- gregorio_clef_to_char(
- element->u.misc.clef.secondary_clef),
- element->u.misc.clef.secondary_line,
- clef_flat_height(element->u.misc.clef.secondary_clef,
- element->u.misc.clef.secondary_line,
- element->u.misc.clef.secondary_flatted));
+ if (is_before_linebreak(syllable, element)) {
+ signed char next_note_pitch;
+ gregorio_shape next_note_alteration;
+
+ next_note_pitch = gregorio_adjust_pitch_into_staff(
+ score, gregorio_determine_next_pitch(
+ syllable, element, NULL, &next_note_alteration)
+ - element->u.misc.clef.pitch_difference);
+
+ fputs(next_custos(next_note_pitch, next_note_alteration,
+ status), f);
+ gregoriotex_print_change_line_clef(f, element);
+ } else {
+ /* the third argument is 0 or 1 according to the need
+ * for a space before the clef */
+ fprintf(f, "\\GreChangeClef{%c}{%d}{%c}{%d}{%c}{%d}{%d}%%\n",
+ gregorio_clef_to_char(element->u.misc.clef.clef),
+ element->u.misc.clef.line,
+ (!element->previous || element->previous->type
+ == GRE_BAR)? '0' : '1',
+ clef_flat_height(element->u.misc.clef.clef,
+ element->u.misc.clef.line,
+ element->u.misc.clef.flatted),
+ gregorio_clef_to_char(
+ element->u.misc.clef.secondary_clef),
+ element->u.misc.clef.secondary_line,
+ clef_flat_height(
+ element->u.misc.clef.secondary_clef,
+ element->u.misc.clef.secondary_line,
+ element->u.misc.clef.secondary_flatted));
+ }
}
break;
@@ -3921,10 +4030,9 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
signed char next_note_pitch;
gregorio_shape next_note_alteration;
const char *alteration = "";
- /*
- * We don't print custos before a bar at the end of a line
- */
- /* we also print an unbreakable larger space before the custo */
+ /* We don't print custos before a bar at the end of a line.
+ * We also print an unbreakable larger space before the
+ * custos */
handle_last_of_voice(f, syllable, element, *last_of_voice);
next_note_pitch = gregorio_determine_next_pitch(syllable,
element, NULL, &next_note_alteration);
@@ -3933,11 +4041,18 @@ static void write_syllable(FILE *f, gregorio_syllable *syllable,
}
fprintf(f, "\\GreCustos{%d}{%s}%s%%\n",
pitch_value(element->u.misc.pitched.pitch), alteration,
- next_custos(next_note_pitch, next_note_alteration));
+ next_custos(next_note_pitch, next_note_alteration,
+ status));
++note_unit_count;
}
break;
+ case GRE_SUPPRESS_CUSTOS:
+ handle_last_of_voice(f, syllable, element, *last_of_voice);
+ fprintf(f, "\\GreSuppressEolCustos %%\n");
+ status->suppressed_custos = true;
+ break;
+
case GRE_BAR:
handle_last_of_voice(f, syllable, element, *last_of_voice);
write_bar(f, score, syllable, element, first_of_disc);
@@ -4018,6 +4133,7 @@ static void initialize_score(gregoriotex_status *const status,
status->bottom_line = false;
status->top_height = status->bottom_height = UNDETERMINED_HEIGHT;
status->abovelinestext = status->translation = false;
+ status->suppressed_custos = false;
/* first pass to compute positioning */
for (syllable = score->first_syllable; syllable;
@@ -4172,6 +4288,90 @@ static int first_note_near_clef(const gregorio_score *const score) {
return 1;
}
+static int clef_size(const gregorio_clef_info *const clef)
+{
+ /* this is a heuristic clef size approximation:
+ * C-clef = 1
+ * F-clef = 2
+ * flatted = +2
+ * unstacked double-clef = +1 (plus the clef size)
+ */
+ /* purposely making line signed */
+ int line_diff = clef->line - clef->secondary_line;
+ int size;
+ if (clef->clef == CLEF_F) {
+ size = 2;
+ } else {
+ size = 1;
+ }
+ if (clef->flatted) {
+ size += 2;
+ }
+ if (clef->secondary_line) {
+ if (line_diff < -1 || line_diff > 1) { /* stacked */
+ int secondary_size;
+ if (clef->secondary_clef == CLEF_F) {
+ secondary_size = 2;
+ } else {
+ secondary_size = 1;
+ }
+ if (clef->secondary_flatted) {
+ secondary_size += 2;
+ }
+ if (secondary_size > size) {
+ size = secondary_size;
+ }
+ } else { /* unstacked */
+ size += 1;
+ if (clef->secondary_clef == CLEF_F) {
+ size += 2;
+ } else {
+ size += 1;
+ }
+ if (clef->secondary_flatted) {
+ size += 2;
+ }
+ }
+ }
+ return size;
+}
+
+static void write_largest_clef(FILE *const f, gregorio_score *const score)
+{
+ const gregorio_syllable *syllable;
+ const gregorio_element *element;
+ gregorio_clef_info clef = gregorio_default_clef;
+ int size;
+
+ if (score->first_voice_info) {
+ clef = score->first_voice_info->initial_clef;
+ }
+ size = clef_size(&clef);
+
+ for (syllable = score->first_syllable; syllable;
+ syllable = syllable->next_syllable) {
+ if (syllable->elements) {
+ for (element = *syllable->elements; element;
+ element = element->next) {
+ if (element->type == GRE_CLEF) {
+ const int this_size = clef_size(&element->u.misc.clef);
+ if (this_size > size) {
+ clef = element->u.misc.clef;
+ size = this_size;
+ }
+ }
+ }
+ }
+ }
+
+ fprintf(f, "\\GreSetLargestClef{%c}{%d}{%d}{%c}{%d}{%d}%%\n",
+ gregorio_clef_to_char(clef.clef), clef.line,
+ clef_flat_height(clef.clef, clef.line, clef.flatted),
+ gregorio_clef_to_char(clef.secondary_clef), clef.secondary_line,
+ clef_flat_height(clef.secondary_clef, clef.secondary_line,
+ clef.secondary_flatted));
+}
+
void gregoriotex_write_score(FILE *const f, gregorio_score *const score,
const char *const point_and_click_filename)
{
@@ -4210,12 +4410,16 @@ void gregoriotex_write_score(FILE *const f, gregorio_score *const score,
write_headers(f, score);
- fprintf(f, "\\GreBeginScore{%s}{%d}{%d}{%d}{%d}{%s}{%u}%%\n",
+ if (score->first_voice_info) {
+ clef = score->first_voice_info->initial_clef;
+ }
+ fprintf(f, "\\GreBeginScore{%s}{%d}{%d}{%d}{%d}{%s}{%u}"
+ "{\\GreInitialClefPosition{%d}{%d}}%%\n",
digest_to_hex(score->digest), status.top_height,
status.bottom_height, bool_to_int(status.translation),
bool_to_int(status.abovelinestext),
point_and_click_filename? point_and_click_filename : "",
- score->staff_lines);
+ score->staff_lines, clef.line, clef.secondary_line);
if (score->nabc_lines) {
fprintf(f, "\\GreScoreNABCLines{%d}", (int)score->nabc_lines);
}
@@ -4247,21 +4451,12 @@ void gregoriotex_write_score(FILE *const f, gregorio_score *const score,
fprintf(f, "}%%\n");
}
- /* DEPRECATED for removal in 5.0 */
- /* LCOV_EXCL_START */
- if (score->initial_style != INITIAL_NOT_SPECIFIED) { /* DEPRECATED for removal in 5.0 */
- fprintf(f, "\\GreSetInitialStyle{%d}%%\n", score->initial_style); /* DEPRECATED for removal in 5.0 */
- }
- /* LCOV_EXCL_STOP */
-
+ write_largest_clef(f, score);
fprintf(f, "\\GreScoreOpening{%%\n"); /* GreScoreOpening#1 */
if (score->first_voice_info) {
gregoriotex_write_voice_info(f, score->first_voice_info);
}
fprintf(f, "}{%%\n"); /* GreScoreOpening#2 */
- if (score->first_voice_info) {
- clef = score->first_voice_info->initial_clef;
- }
fprintf(f, "\\GreSetInitialClef{%c}{%d}{%d}{%c}{%d}{%d}{%d}%%\n",
gregorio_clef_to_char(clef.clef), clef.line,
clef_flat_height(clef.clef, clef.line, clef.flatted),
diff --git a/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex.h b/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex.h
index 3a2ca07bde5..af0533dcd73 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/gregoriotex/gregoriotex.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes GregorioTeX writing data structures and entry points.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -35,14 +35,14 @@ typedef enum gtex_type {
T_ONE_NOTE = 1,
/* two note neumes */
T_PES,
- T_PESQUADRATUM,
- T_PESQUILISMA,
- T_PESQUASSUS,
- T_PESQUILISMAQUADRATUM,
+ T_PES_QUADRATUM,
+ T_QUILISMA_PES,
+ T_PES_QUASSUS,
+ T_QUILISMA_PES_QUADRATUM,
T_FLEXUS,
T_FLEXUS_ORISCUS,
T_FLEXUS_ORISCUS_SCAPUS,
- T_VIRGA_STRATA,
+ T_PES_ORISCUS,
/* three note neumes */
T_PORRECTUS,
T_TORCULUS,
diff --git a/Build/source/texk/gregorio/gregorio-src/src/messages.c b/Build/source/texk/gregorio/gregorio-src/src/messages.c
index 5033a9e7152..2885a45246d 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/messages.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/messages.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file contains functions for logging messages, warnings, and errors.
*
- * Copyright (C) 2009-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2009-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -67,8 +67,11 @@ static const char *verbosity_to_str(const gregorio_verbosity verbosity)
str = _("warning:");
break;
case VERBOSITY_DEPRECATION:
+ /* if there is no deprecation, these lines will not be hit */
+ /* LCOV_EXCL_START */
str = _("deprecation:");
break;
+ /* LCOV_EXCL_STOP */
case VERBOSITY_ERROR:
str = _("error:");
break;
@@ -139,9 +142,12 @@ void gregorio_messagef(const char *function_name,
switch (verbosity) {
case VERBOSITY_DEPRECATION:
+ /* if there is no deprecation, these lines will not be hit */
+ /* LCOV_EXCL_START */
if (deprecation_is_warning) {
break;
}
+ /* LCOV_EXCL_STOP */
/* else fall through */
case VERBOSITY_ERROR:
case VERBOSITY_ASSERTION:
diff --git a/Build/source/texk/gregorio/gregorio-src/src/messages.h b/Build/source/texk/gregorio/gregorio-src/src/messages.h
index 0939b6beff3..4e92b5a2a00 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/messages.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/messages.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes the message logging functions.
*
- * Copyright (C) 2009-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2009-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/plugins.h b/Build/source/texk/gregorio/gregorio-src/src/plugins.h
index bdfb4fa0566..f88ab14c1f3 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/plugins.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/plugins.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes the "main" entry points for reading and writing data.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -23,12 +23,14 @@
#ifndef PLUGINS_H
#define PLUGINS_H
+#include "bool.h"
+
void dump_write_score(FILE *f, gregorio_score *score);
void dump_write_characters(FILE *const f,
const gregorio_character *current_character);
-gregorio_score *gabc_read_score(FILE *f_in);
+gregorio_score *gabc_read_score(FILE *f_in, bool point_and_click);
void gabc_write_score(FILE *f, gregorio_score *score);
diff --git a/Build/source/texk/gregorio/gregorio-src/src/sha1.c b/Build/source/texk/gregorio/gregorio-src/src/sha1.c
index 9ebd6d28c8a..e099bfd0074 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/sha1.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/sha1.c
@@ -2,7 +2,7 @@
* sha1.c - Functions to compute SHA1 message digest of files or
* memory blocks according to the NIST specification FIPS-180-1.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
* Copyright (C) 2000-2001, 2003-2006, 2008-2014 Free Software Foundation, Inc.
*
* This file is part of Gregorio.
diff --git a/Build/source/texk/gregorio/gregorio-src/src/sha1.h b/Build/source/texk/gregorio/gregorio-src/src/sha1.h
index aa8ec20ed85..9a2d2c7e708 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/sha1.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/sha1.h
@@ -2,7 +2,7 @@
* Declarations of functions and data types used for SHA1 sum
* library functions.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
* Copyright (C) 2000-2001, 2003, 2005-2006, 2008-2014 Free Software
* Foundation, Inc.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/struct.c b/Build/source/texk/gregorio/gregorio-src/src/struct.c
index f7ec4f2db0e..6259e9ad0e6 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/struct.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/struct.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the Gregorio data structures.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -58,15 +58,20 @@ unsigned short tex_position_id = 0;
gregorio_clef_info gregorio_default_clef = {
/*.line =*/ 3,
/*.secondary_line =*/ 0,
+ /*.pitch_difference =*/ 0,
/*.clef =*/ CLEF_C,
/*.flatted =*/ false,
/*.secondary_clef =*/ CLEF_C, /* not used since secondary_line is 0 */
/*.secondary_flatted =*/ false,
};
-static size_t hepisema_adjustments_capacity;
-static unsigned short hepisema_adjustments_last;
-static gregorio_hepisema_adjustment *hepisema_adjustments;
+static size_t hepisema_adjustments_capacity = 0;
+static unsigned short hepisema_adjustments_last = 0;
+static gregorio_hepisema_adjustment *hepisema_adjustments = NULL;
+
+static size_t texverbs_capacity = 0;
+static unsigned short texverbs_last = 0;
+static char **texverbs = NULL;
void gregorio_struct_init(void)
{
@@ -75,12 +80,18 @@ void gregorio_struct_init(void)
&hepisema_adjustments_capacity, gregorio_hepisema_adjustment);
hepisema_adjustments[0].vbasepos = HVB_AUTO;
hepisema_adjustments[0].nudge = NULL;
+
+ texverbs_capacity = 32;
+ texverbs = gregorio_grow_buffer(NULL, &texverbs_capacity, char *);
+ texverbs[0] = NULL;
}
void gregorio_struct_destroy(void)
{
size_t i;
gregorio_hepisema_adjustment *adj;
+ char **texverb;
+
for (i = 0, adj = hepisema_adjustments; i <= hepisema_adjustments_last;
++i, ++adj) {
if (adj->nudge) {
@@ -88,6 +99,45 @@ void gregorio_struct_destroy(void)
}
}
free(hepisema_adjustments);
+
+ for (i = 0, texverb = texverbs; i <= texverbs_last; ++i, ++texverb) {
+ if (*texverb) {
+ /* If the code falls here, this is a programming error. */
+ /* LCOV_EXCL_START */
+ gregorio_fail(gregorio_struct_destroy, "unfreed texverb");
+ free(*texverb);
+ }
+ /* LCOV_EXCL_STOP */
+ }
+ free(texverbs);
+}
+
+static unsigned short register_texverb(char *const texverb)
+{
+ if (texverbs_last == USHRT_MAX) {
+ /* It's not reasonable to trigger this condition while testing */
+ /* LCOV_EXCL_START */
+ gregorio_message(_("too many texverbs"), "register_texverb",
+ VERBOSITY_ERROR, 0);
+ return 0;
+ /* LCOV_EXCL_STOP */
+ }
+ ++texverbs_last;
+ if (texverbs_last >= texverbs_capacity) {
+ texverbs = gregorio_grow_buffer(texverbs, &texverbs_capacity, char *);
+ }
+ texverbs[texverbs_last] = texverb;
+ return texverbs_last;
+}
+
+static void free_one_texverb(unsigned short index)
+{
+ if (index) {
+ gregorio_assert(index <= texverbs_last, gregorio_texverb,
+ "array index out of bounds", return);
+ free(texverbs[index]);
+ texverbs[index] = NULL;
+ }
}
static gregorio_note *create_and_link_note(gregorio_note **current_note,
@@ -160,8 +210,12 @@ void gregorio_add_note(gregorio_note **current_note, signed char pitch,
prototype->he_adjustment_index[SO_OVER];
element->he_adjustment_index[SO_UNDER] =
prototype->he_adjustment_index[SO_UNDER];
+ element->high_ledger_line = prototype->high_ledger_line;
+ element->high_ledger_specificity = prototype->high_ledger_specificity;
+ element->low_ledger_line = prototype->low_ledger_line;
+ element->low_ledger_specificity = prototype->low_ledger_specificity;
}
- element->texverb = NULL;
+ element->texverb = 0;
element->choral_sign = NULL;
}
@@ -185,7 +239,7 @@ void gregorio_add_end_of_line_as_note(gregorio_note **current_note,
element->u.other.eol_forces_custos_on = eol_forces_custos_on;
}
-void gregorio_add_custo_as_note(gregorio_note **current_note,
+void gregorio_add_custos_as_note(gregorio_note **current_note,
const gregorio_scanner_location *const loc)
{
gregorio_note *element = create_and_link_note(current_note, loc);
@@ -198,6 +252,13 @@ void gregorio_add_manual_custos_as_note(gregorio_note **current_note,
add_pitched_item_as_note(current_note, GRE_MANUAL_CUSTOS, pitch, loc);
}
+void gregorio_add_suppress_custos_as_note(gregorio_note **current_note,
+ const gregorio_scanner_location *const loc)
+{
+ gregorio_note *element = create_and_link_note(current_note, loc);
+ element->type = GRE_SUPPRESS_CUSTOS;
+}
+
void gregorio_add_clef_as_note(gregorio_note **current_note,
gregorio_clef clef, signed char clef_line, bool flatted,
const gregorio_scanner_location *const loc)
@@ -250,16 +311,18 @@ void gregorio_add_space_as_note(gregorio_note **current_note,
element->u.other.ad_hoc_space_factor = factor;
}
-void gregorio_add_texverb_as_note(gregorio_note **current_note, char *str,
- gregorio_type type, const gregorio_scanner_location *const loc)
+unsigned short gregorio_add_texverb_as_note(gregorio_note **current_note,
+ char *str, gregorio_type type,
+ const gregorio_scanner_location *const loc)
{
gregorio_note *element;
- gregorio_not_null(str, gregorio_add_texverb_as_note, return);
+ /* gregorio_not_null(str, gregorio_add_texverb_as_note, return NULL); */
element = create_and_link_note(current_note, loc);
assert(type == GRE_TEXVERB_GLYPH || type == GRE_TEXVERB_ELEMENT
|| type == GRE_ALT);
element->type = type;
- element->texverb = str;
+ element->texverb = register_texverb(str);
+ return element->texverb;
}
void gregorio_add_nlba_as_note(gregorio_note **current_note, gregorio_nlba type,
@@ -284,22 +347,31 @@ void gregorio_end_autofuse(gregorio_note **current_note,
element->type = GRE_AUTOFUSE_END;
}
+static __inline void change_note_texverb(gregorio_note *note, char *str)
+{
+ if (note->texverb) {
+ gregorio_change_texverb(note->texverb, str);
+ } else {
+ note->texverb = register_texverb(str);
+ }
+}
+
void gregorio_add_texverb_to_note(gregorio_note *current_note, char *str)
{
size_t len;
char *res;
gregorio_not_null(str, gregorio_add_texverb_as_note, return);
if (current_note) {
- if (current_note->texverb) {
- len = strlen(current_note->texverb) + strlen(str) + 1;
+ const char *texverb = gregorio_texverb(current_note->texverb);
+ if (texverb) {
+ len = strlen(texverb) + strlen(str) + 1;
res = gregorio_malloc(len);
- strcpy(res, current_note->texverb);
+ strcpy(res, texverb);
strcat(res, str);
- free(current_note->texverb);
free(str);
- current_note->texverb = res;
+ change_note_texverb(current_note, res);
} else {
- current_note->texverb = str;
+ change_note_texverb(current_note, str);
}
}
}
@@ -324,20 +396,6 @@ void gregorio_add_special_sign(gregorio_note *note, gregorio_sign sign)
note->special_sign = sign;
}
-static void fix_punctum_cavum_inclinatum_liquescentia(gregorio_note *const note)
-{
- note->u.note.liquescentia &= TAIL_LIQUESCENTIA_MASK;
- switch (note->u.note.liquescentia) {
- case L_AUCTUS_ASCENDENS:
- case L_AUCTUS_DESCENDENS:
- note->u.note.liquescentia = L_AUCTUS_ASCENDENS;
- break;
- default:
- note->u.note.liquescentia = L_NO_LIQUESCENTIA;
- break;
- }
-}
-
static void fix_oriscus_liquescentia(gregorio_note *const note,
const bool legacy_oriscus_orientation)
{
@@ -388,81 +446,17 @@ static void fix_oriscus_scapus_liquescentia(gregorio_note *const note,
}
}
-static void fix_oriscus_cavum_liquescentia(gregorio_note *const note,
- const bool legacy_oriscus_orientation)
-{
- if (legacy_oriscus_orientation) {
- switch (note->u.note.liquescentia) {
- case L_AUCTUS_ASCENDENS:
- note->u.note.liquescentia =
- (note->u.note.liquescentia & ~TAIL_LIQUESCENTIA_MASK)
- | L_AUCTUS_DESCENDENS;
- /* fall through */
- case L_AUCTUS_DESCENDENS:
- note->u.note.shape = S_ORISCUS_CAVUM_DESCENDENS;
- break;
- case L_DEMINUTUS:
- note->u.note.shape = S_ORISCUS_CAVUM_DEMINUTUS;
- break;
- default:
- note->u.note.shape = S_ORISCUS_CAVUM_ASCENDENS;
- break;
- }
- } else {
- note->u.note.liquescentia &= ((~TAIL_LIQUESCENTIA_MASK) | L_DEMINUTUS);
- if (note->u.note.liquescentia & L_DEMINUTUS) {
- note->u.note.shape = S_ORISCUS_CAVUM_DEMINUTUS;
- }
- }
-}
-
void gregorio_change_shape(gregorio_note *const note,
const gregorio_shape shape, const bool legacy_oriscus_orientation)
{
- gregorio_shape old_shape;
if (!note || note->type != GRE_NOTE) {
gregorio_message(_("trying to change the shape of something that is "
"not a note"), "change_shape", VERBOSITY_ERROR, 0);
return;
}
- old_shape = note->u.note.shape;
note->u.note.shape = shape;
switch (shape) {
- case S_PUNCTUM_CAVUM:
- /* S_PUNCTUM_CAVUM morphs other shapes */
- switch (old_shape) {
- case S_PUNCTUM_INCLINATUM_UNDETERMINED:
- case S_PUNCTUM_INCLINATUM_ASCENDENS:
- case S_PUNCTUM_INCLINATUM_DESCENDENS:
- note->u.note.shape = S_PUNCTUM_CAVUM_INCLINATUM;
- fix_punctum_cavum_inclinatum_liquescentia(note);
- break;
-
- case S_ORISCUS_UNDETERMINED:
- case S_ORISCUS_DEMINUTUS:
- case S_ORISCUS_SCAPUS_UNDETERMINED:
- note->u.note.shape = S_ORISCUS_CAVUM_UNDETERMINED;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- case S_ORISCUS_ASCENDENS:
- case S_ORISCUS_SCAPUS_ASCENDENS:
- note->u.note.shape = S_ORISCUS_CAVUM_ASCENDENS;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- case S_ORISCUS_DESCENDENS:
- case S_ORISCUS_SCAPUS_DESCENDENS:
- note->u.note.shape = S_ORISCUS_CAVUM_DESCENDENS;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- default:
- break;
- }
- break;
-
case S_STROPHA:
case S_DISTROPHA:
case S_TRISTROPHA:
@@ -470,61 +464,9 @@ void gregorio_change_shape(gregorio_note *const note,
break;
case S_ORISCUS_UNDETERMINED:
- switch (old_shape) {
- case S_PUNCTUM_CAVUM:
- case S_PUNCTUM_CAVUM_INCLINATUM:
- note->u.note.shape = S_ORISCUS_CAVUM_UNDETERMINED;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- case S_ORISCUS_CAVUM_UNDETERMINED:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
- note->u.note.shape = old_shape;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- default:
- fix_oriscus_liquescentia(note, legacy_oriscus_orientation);
- break;
- }
- break;
-
case S_ORISCUS_ASCENDENS:
- switch (old_shape) {
- case S_PUNCTUM_CAVUM:
- case S_PUNCTUM_CAVUM_INCLINATUM:
- case S_ORISCUS_CAVUM_UNDETERMINED:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
- note->u.note.shape = S_ORISCUS_CAVUM_ASCENDENS;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- default:
- fix_oriscus_liquescentia(note, legacy_oriscus_orientation);
- break;
- }
- break;
-
case S_ORISCUS_DESCENDENS:
- switch (old_shape) {
- case S_PUNCTUM_CAVUM:
- case S_PUNCTUM_CAVUM_INCLINATUM:
- case S_ORISCUS_CAVUM_UNDETERMINED:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
- note->u.note.shape = S_ORISCUS_CAVUM_DESCENDENS;
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
- default:
- fix_oriscus_liquescentia(note, legacy_oriscus_orientation);
- break;
- }
+ fix_oriscus_liquescentia(note, legacy_oriscus_orientation);
break;
case S_ORISCUS_SCAPUS_UNDETERMINED:
@@ -538,6 +480,16 @@ void gregorio_change_shape(gregorio_note *const note,
}
}
+void gregorio_add_cavum(gregorio_note *const note)
+{
+ if (!note || note->type != GRE_NOTE) {
+ gregorio_message(_("trying to add cavum to something that is "
+ "not a note"), "change_shape", VERBOSITY_ERROR, 0);
+ return;
+ }
+ note->u.note.is_cavum = true;
+}
+
void gregorio_add_tail_liquescentia(gregorio_note *note,
gregorio_liquescentia liq, const bool legacy_oriscus_orientation)
{
@@ -552,10 +504,6 @@ void gregorio_add_tail_liquescentia(gregorio_note *note,
| (liq & TAIL_LIQUESCENTIA_MASK);
switch (note->u.note.shape) {
- case S_PUNCTUM_CAVUM_INCLINATUM:
- fix_punctum_cavum_inclinatum_liquescentia(note);
- break;
-
case S_STROPHA:
case S_DISTROPHA:
case S_TRISTROPHA:
@@ -579,13 +527,6 @@ void gregorio_add_tail_liquescentia(gregorio_note *note,
fix_oriscus_scapus_liquescentia(note, legacy_oriscus_orientation);
break;
- case S_ORISCUS_CAVUM_UNDETERMINED:
- case S_ORISCUS_CAVUM_ASCENDENS:
- case S_ORISCUS_CAVUM_DESCENDENS:
- case S_ORISCUS_CAVUM_DEMINUTUS:
- fix_oriscus_cavum_liquescentia(note, legacy_oriscus_orientation);
- break;
-
default:
break;
}
@@ -765,7 +706,7 @@ static __inline void free_one_note(gregorio_note *note)
if (note->type == GRE_SPACE) {
free(note->u.other.ad_hoc_space_factor);
}
- free(note->texverb);
+ free_one_texverb(note->texverb);
free(note->choral_sign);
free(note);
}
@@ -810,17 +751,18 @@ static gregorio_glyph *create_and_link_glyph(gregorio_glyph **current_glyph)
void gregorio_add_glyph(gregorio_glyph **current_glyph,
gregorio_glyph_type type, gregorio_note *first_note,
- gregorio_liquescentia liquescentia)
+ gregorio_liquescentia liquescentia, bool is_cavum)
{
gregorio_glyph *next_glyph = create_and_link_glyph(current_glyph);
next_glyph->type = GRE_GLYPH;
next_glyph->u.notes.glyph_type = type;
next_glyph->u.notes.liquescentia = liquescentia;
+ next_glyph->u.notes.is_cavum = is_cavum;
next_glyph->u.notes.first_note = first_note;
}
void gregorio_add_clef_as_glyph(gregorio_glyph **current_glyph,
- gregorio_clef_info clef, char *texverb)
+ gregorio_clef_info clef, unsigned short texverb)
{
gregorio_glyph *next_glyph = create_and_link_glyph(current_glyph);
next_glyph->type = GRE_CLEF;
@@ -829,7 +771,8 @@ void gregorio_add_clef_as_glyph(gregorio_glyph **current_glyph,
}
void gregorio_add_pitched_element_as_glyph(gregorio_glyph **current_glyph,
- gregorio_type type, signed char pitch, bool force_pitch, char *texverb)
+ gregorio_type type, signed char pitch, bool force_pitch,
+ unsigned short texverb)
{
gregorio_glyph *next_glyph = create_and_link_glyph(current_glyph);
assert(type == GRE_CUSTOS);
@@ -841,7 +784,7 @@ void gregorio_add_pitched_element_as_glyph(gregorio_glyph **current_glyph,
void gregorio_add_unpitched_element_as_glyph(gregorio_glyph **current_glyph,
gregorio_type type, gregorio_extra_info *info, gregorio_sign sign,
- char *texverb)
+ unsigned short texverb)
{
gregorio_glyph *next_glyph = create_and_link_glyph(current_glyph);
assert(type != GRE_NOTE && type != GRE_GLYPH && type != GRE_ELEMENT
@@ -869,7 +812,7 @@ void gregorio_go_to_first_glyph(gregorio_glyph **glyph)
static __inline void free_one_glyph(gregorio_glyph *glyph)
{
- free(glyph->texverb);
+ free_one_texverb(glyph->texverb);
switch (glyph->type) {
case GRE_GLYPH:
gregorio_free_notes(&glyph->u.notes.first_note);
@@ -933,7 +876,8 @@ void gregorio_add_element(gregorio_element **current_element,
}
void gregorio_add_misc_element(gregorio_element **current_element,
- gregorio_type type, gregorio_misc_element_info *info, char *texverb)
+ gregorio_type type, gregorio_misc_element_info *info,
+ unsigned short texverb)
{
gregorio_element *special = create_and_link_element(current_element);
special->type = type;
@@ -950,7 +894,7 @@ void gregorio_add_misc_element(gregorio_element **current_element,
static __inline void free_one_element(gregorio_element *element)
{
size_t i;
- free(element->texverb);
+ free_one_texverb(element->texverb);
for (i = 0; i < element->nabc_lines; i++) {
free(element->nabc[i]);
}
@@ -969,22 +913,22 @@ static __inline void free_one_element(gregorio_element *element)
free(element);
}
-static void gregorio_free_one_element(gregorio_element **element)
+void gregorio_free_one_element(gregorio_element **element)
{
gregorio_element *next = NULL;
+ gregorio_element *to_free;
gregorio_not_null_ptr(element, gregorio_free_one_element, return);
- if ((*element)->next) {
- (*element)->next->previous = NULL;
- next = (*element)->next;
+ to_free = *element;
+ if (to_free->next) {
+ to_free->next->previous = NULL;
+ next = to_free->next;
}
- if ((*element)->previous) {
- /* this doesn't currently happen, but it's safer to leave this in */
- /* LCOV_EXCL_START */
- (*element)->previous->next = NULL;
+ if (to_free->previous) {
+ to_free->previous->next = NULL;
}
/* The previous line is probably optimized out */
/* LCOV_EXCL_STOP */
- free_one_element(*element);
+ free_one_element(to_free);
*element = next;
}
@@ -1105,7 +1049,7 @@ void gregorio_add_syllable(gregorio_syllable **current_syllable,
gregorio_word_position position, char *abovelinestext,
gregorio_tr_centering translation_type, gregorio_nlba no_linebreak_area,
gregorio_euouae euouae, const gregorio_scanner_location *const loc,
- const bool first_word)
+ const bool first_word, const bool clear)
{
gregorio_syllable *next;
gregorio_element **tab;
@@ -1122,6 +1066,7 @@ void gregorio_add_syllable(gregorio_syllable **current_syllable,
next->translation_type = translation_type;
next->abovelinestext = abovelinestext;
next->first_word = first_word;
+ next->clear = clear;
if (loc) {
next->src_line = loc->first_line;
next->src_column = loc->first_column;
@@ -1177,7 +1122,6 @@ gregorio_score *gregorio_new_score(void)
{
gregorio_score *new_score = gregorio_calloc(1, sizeof(gregorio_score));
new_score->number_of_voices = 1;
- new_score->initial_style = INITIAL_NOT_SPECIFIED;
gregorio_set_score_staff_lines(new_score, 4);
return new_score;
}
@@ -1347,7 +1291,13 @@ static __inline signed char next_pitch_from_glyph(const gregorio_glyph *glyph,
}
break;
default:
+ /* not reachable unless there's a programming error */
+ /* LCOV_EXCL_START */
+ gregorio_fail2(next_pitch_from_glyph,
+ "unrecognized alteration shape: %s",
+ gregorio_shape_to_string(note->u.note.shape));
break;
+ /* LCOV_EXCL_STOP */
}
}
} else if (glyph->u.notes.first_note) {
@@ -1536,11 +1486,15 @@ bool gregorio_is_only_special(gregorio_element *element)
return 1;
}
+/* This should only be called when an unknown enum value is encountered; as
+ * such, this is a programming error */
+/* LCOV_EXCL_START */
const char *gregorio_unknown(int value) {
static char buf[20];
gregorio_snprintf(buf, sizeof buf, "?%d", value);
return buf;
}
+/* LCOV_EXCL_STOP */
/*
* A small helper for the following function
@@ -1615,6 +1569,26 @@ gregorio_hepisema_adjustment *gregorio_get_hepisema_adjustment(
return &hepisema_adjustments[index];
}
+const char *gregorio_texverb(unsigned short index)
+{
+ gregorio_assert(index <= texverbs_last, gregorio_texverb,
+ "array index out of bounds", return NULL);
+ return texverbs[index];
+}
+
+void gregorio_change_texverb(unsigned short index, char *texverb)
+{
+ /* not allowed to change index 0 (== NULL) */
+ gregorio_assert(index != 0, gregorio_texverb,
+ "array index 0 may not be changed", return);
+ gregorio_assert(index <= texverbs_last, gregorio_texverb,
+ "array index out of bounds", return);
+ if (texverbs[index]) {
+ free(texverbs[index]);
+ }
+ texverbs[index] = texverb;
+}
+
ENUM_TO_STRING(gregorio_type, GREGORIO_TYPE)
ENUM_TO_STRING(gregorio_shape, GREGORIO_SHAPE)
ENUM_TO_STRING(gregorio_bar, GREGORIO_BAR)
diff --git a/Build/source/texk/gregorio/gregorio-src/src/struct.h b/Build/source/texk/gregorio/gregorio-src/src/struct.h
index d634fe59b9c..97061b6716a 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/struct.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/struct.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header defines the Gregorio data structures and functions.
*
- * Copyright (C) 2006-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -32,6 +32,7 @@
#ifndef STRUCT_H
#define STRUCT_H
+#include <assert.h>
#include "enum_generator.h"
#include "bool.h"
#include "sha1.h"
@@ -60,6 +61,7 @@ typedef struct gregorio_scanner_location {
unsigned short last_line;
unsigned short last_column;
unsigned short last_offset;
+ bool generate_point_and_click:1;
} gregorio_scanner_location;
/* all the different types of things a gregorio_* can be */
@@ -74,6 +76,7 @@ typedef struct gregorio_scanner_location {
E(GRE_BAR) \
E(GRE_CUSTOS) \
E(GRE_MANUAL_CUSTOS) \
+ E(GRE_SUPPRESS_CUSTOS) \
/* I don't really know how I could use the a TEXVERB_NOTE in gregoriotex,
* as we don't write note by note... */ \
/* GRE_TEXVERB_NOTE, */ \
@@ -116,14 +119,7 @@ ENUM(gregorio_clef, GREGORIO_CLEF);
E(S_STROPHA_AUCTA) \
E(S_DISTROPHA) \
E(S_TRISTROPHA) \
- E(S_PUNCTUM_CAVUM) \
E(S_LINEA_PUNCTUM) \
- E(S_LINEA_PUNCTUM_CAVUM) \
- E(S_PUNCTUM_CAVUM_INCLINATUM) \
- E(S_PUNCTUM_CAVUM_INCLINATUM_AUCTUS) \
- E(S_ORISCUS_CAVUM_ASCENDENS) \
- E(S_ORISCUS_CAVUM_DESCENDENS) \
- E(S_ORISCUS_CAVUM_DEMINUTUS) \
E(S_FLAT) \
E(S_SHARP) \
E(S_NATURAL) \
@@ -133,7 +129,6 @@ ENUM(gregorio_clef, GREGORIO_CLEF);
* quislisma quadratum */ \
E(S_ORISCUS_UNDETERMINED) \
E(S_ORISCUS_SCAPUS_UNDETERMINED) \
- E(S_ORISCUS_CAVUM_UNDETERMINED) \
E(S_QUADRATUM) \
E(S_PUNCTUM_INCLINATUM_UNDETERMINED) \
/* those shapes are for now used only in gregoriotex */ \
@@ -183,7 +178,11 @@ ENUM(gregorio_bar, GREGORIO_BAR);
A(_SEMI_CIRCULUS_REVERSUS, 0x07) \
/* signs of a bar */ \
A(_BAR_H_EPISEMA, 0x08) \
- X(_V_EPISEMA_BAR_H_EPISEMA, 0x18)
+ A(_V_EPISEMA_BAR_H_EPISEMA, 0x18) \
+ /* musica ficta */ \
+ A(_MUSICA_FICTA_FLAT, 0x09) \
+ A(_MUSICA_FICTA_NATURAL, 0x0a) \
+ X(_MUSICA_FICTA_SHARP, 0x0b)
ENUM(gregorio_sign, GREGORIO_SIGN);
/* the different spaces */
@@ -283,7 +282,8 @@ ENUM(gregorio_vposition, GREGORIO_VPOSITION);
E(G_VIRGA_REVERSA) \
E(G_SALICUS) \
E(G_SALICUS_FLEXUS) \
- E(G_VIRGA_STRATA) \
+ E(G_PES_ASCENDENS_ORISCUS) \
+ E(G_PES_DESCENDENS_ORISCUS) \
E(G_TORCULUS_LIQUESCENS) \
/* additional glyph types, necessary for determination */ \
E(G_PORRECTUS_NO_BAR) \
@@ -318,6 +318,10 @@ ENUM(gregorio_glyph_type, GREGORIO_GLYPH_TYPE);
E(ST_FIRST_SYLLABLE) \
E(ST_FIRST_SYLLABLE_INITIAL) \
E(ST_SYLLABLE_INITIAL) \
+ /* protrusion is implemented a PROTRUSION_FACTOR followed by a PROTRUSION;
+ * an automatic protrusion will have a verbatim TeX macro as factor */ \
+ E(ST_PROTRUSION_FACTOR) \
+ E(ST_PROTRUSION) \
L(ST_SENTINEL) /* a temporary style to signify the end of a syllable */
ENUM(grestyle_style, GRESTYLE_STYLE);
@@ -380,6 +384,15 @@ ENUM(gregorio_sign_orientation, GREGORIO_SIGN_ORIENTATION);
X(HVB_U_HIGH, 5)
ENUM(gregorio_hepisema_vbasepos, GREGORIO_HEPISEMA_VBASEPOS);
+/* these may be used as bit fields, with LEDGER_EXPLICIT and LEDGER_DRAWN being
+ * the bits */
+#define GREGORIO_LEDGER_SPECIFICITY(A,E,X,L) \
+ A(LEDGER_SUPPOSED, 0) \
+ A(LEDGER_EXPLICIT, 1) \
+ A(LEDGER_DRAWN, 2) \
+ X(LEDGER_EXPLICITLY_DRAWN, 3)
+ENUM(gregorio_ledger_specificity, GREGORIO_LEDGER_SPECIFICITY);
+
typedef struct gregorio_extra_info {
char *ad_hoc_space_factor;
ENUM_BITFIELD(gregorio_bar) bar:4;
@@ -391,8 +404,9 @@ typedef struct gregorio_extra_info {
} gregorio_extra_info;
typedef struct gregorio_clef_info {
- unsigned char line;
- unsigned char secondary_line;
+ signed char line;
+ signed char secondary_line;
+ signed char pitch_difference;
ENUM_BITFIELD(gregorio_clef) clef:1;
bool flatted:1;
ENUM_BITFIELD(gregorio_clef) secondary_clef:1;
@@ -429,9 +443,6 @@ typedef struct gregorio_note {
/* choral sign is a letter that appears next to a note in some choral
* scores we put it as char* because sometimes two letters appear */
char *choral_sign;
- /* a string containing a possible TeX verbatim; necessary during
- * structure generation. */
- char *texverb;
union {
/* note is used for GRE_NOTE */
struct {
@@ -446,7 +457,8 @@ typedef struct gregorio_note {
/* liquescentia is the liquescence on the note, it is not really
* used in the final score, but it is, like type, used in the
* determination of glyphs. */
- ENUM_BITFIELD(gregorio_liquescentia) liquescentia:8;
+ ENUM_BITFIELD(gregorio_liquescentia) liquescentia:7;
+ bool is_cavum:1;
} note;
/* clef is used for GRE_CLEF */
struct gregorio_clef_info clef;
@@ -455,6 +467,9 @@ typedef struct gregorio_note {
} u;
/* these go to the end for structure alignment */
+ /* index to a string containing a possible TeX verbatim; necessary during
+ * structure generation. */
+ unsigned short texverb;
unsigned short src_line, src_column, src_offset;
unsigned short he_adjustment_index[2];
@@ -485,12 +500,11 @@ typedef struct gregorio_note {
ENUM_BITFIELD(grehepisema_size) h_episema_below_size:2;
bool h_episema_above_connect:1;
bool h_episema_below_connect:1;
- bool supposed_high_ledger_line:1;
- bool supposed_low_ledger_line:1;
- /* the "explicit" flags indicate that the "supposed" flags contain values
- * that were explicitly specified in the gabc file */
- bool explicit_high_ledger_line:1;
- bool explicit_low_ledger_line:1;
+ /* the "specificity" field indicates how to interpret the line flag */
+ bool high_ledger_line:1;
+ ENUM_BITFIELD(gregorio_ledger_specificity) high_ledger_specificity:2;
+ bool low_ledger_line:1;
+ ENUM_BITFIELD(gregorio_ledger_specificity) low_ledger_specificity:2;
bool is_lower_note:1;
bool is_upper_note:1;
ENUM_BITFIELD(gregorio_vposition) mora_vposition:2;
@@ -505,9 +519,6 @@ typedef struct gregorio_glyph {
/* two pointer to make a chained list */
struct gregorio_glyph *previous;
struct gregorio_glyph *next;
- /* a string containing a possible TeX verbatim; necessary during structure
- * generation. */
- char *texverb;
union {
/* glyph is used for GRE_GLYPH */
struct {
@@ -520,12 +531,15 @@ typedef struct gregorio_glyph {
ENUM_BITFIELD(gregorio_glyph_type) glyph_type:8;
/* liquescentia is really used, because that will determine the
* shape we will have to use. */
- ENUM_BITFIELD(gregorio_liquescentia) liquescentia:8;
+ ENUM_BITFIELD(gregorio_liquescentia) liquescentia:7;
+ bool is_cavum:1;
} notes;
union gregorio_misc_element_info misc;
} u;
- /* characters go to the end for structure alignment */
+ /* index to a string containing a possible TeX verbatim; necessary during
+ * structure generation. */
+ unsigned short texverb;
/* type can have the values explained in the comment just above. */
ENUM_BITFIELD(gregorio_type) type:8;
@@ -540,9 +554,6 @@ typedef struct gregorio_element {
/* pointers to the next and previous elements. */
struct gregorio_element *previous;
struct gregorio_element *next;
- /* a string containing a possible TeX verbatim; necessary during structure
- * generation. */
- char *texverb;
/* The nabc string */
char **nabc;
/* we put it here to get the length of the array here too */
@@ -554,9 +565,11 @@ typedef struct gregorio_element {
union gregorio_misc_element_info misc;
} u;
- /* type can have the values GRE_ELEMENT, GRE_BAR, GRE_C_KEY_CHANGE,
- * GRE_F_KEY_CHANGE, GRE_END_OF_LINE, GRE_SPACE, GRE_TEXVERB_ELEMENT
- * or GRE_NLBA */
+ /* index to a string containing a possible TeX verbatim; necessary during
+ * structure generation. */
+ unsigned short texverb;
+ /* type can have the values GRE_ELEMENT, GRE_BAR, GRE_CLEF, GRE_CUSTOS,
+ * GRE_END_OF_LINE, GRE_SPACE, GRE_TEXVERB_ELEMENT or GRE_NLBA */
ENUM_BITFIELD(gregorio_type) type:8;
} gregorio_element;
@@ -654,6 +667,7 @@ typedef struct gregorio_syllable {
ENUM_BITFIELD(gregorio_word_position) position:3;
bool first_word:1;
bool forced_center:1;
+ bool clear:1;
} gregorio_syllable;
/* Stores a header in a singly-linked list */
@@ -693,7 +707,6 @@ typedef struct gregorio_score {
char *annotation[MAX_ANNOTATIONS];
/* field giving informations on the initial (no initial, normal initial
* or two lines initial) */
- signed char initial_style; /* DEPRECATED for removal in 5.0 */
size_t nabc_lines;
char *user_notes;
/* the determination method (maximal ambitus, etc.) */
@@ -746,9 +759,6 @@ extern gregorio_clef_info gregorio_default_clef;
#define MONOPHONY 0
-/* the different initial styles - DEPRECATED for removal in 5.0 */
-#define INITIAL_NOT_SPECIFIED -1
-
#define USELESS_VALUE 0
static __inline bool is_puncta_inclinata(char glyph)
@@ -799,7 +809,7 @@ void gregorio_add_note(gregorio_note **current_note, signed char pitch,
const gregorio_scanner_location *loc);
void gregorio_add_glyph(gregorio_glyph **current_glyph,
gregorio_glyph_type type, gregorio_note *first_note,
- gregorio_liquescentia liquescentia);
+ gregorio_liquescentia liquescentia, bool is_cavum);
void gregorio_add_element(gregorio_element **current_element,
gregorio_glyph *first_glyph);
void gregorio_add_syllable(gregorio_syllable **current_syllable,
@@ -809,10 +819,11 @@ void gregorio_add_syllable(gregorio_syllable **current_syllable,
gregorio_word_position position, char *abovelinestext,
gregorio_tr_centering translation_type, gregorio_nlba no_linebreak_area,
gregorio_euouae euouae, const gregorio_scanner_location *loc,
- bool first_word);
+ bool first_word, bool clear);
void gregorio_add_special_sign(gregorio_note *current_note, gregorio_sign sign);
void gregorio_change_shape(gregorio_note *note, gregorio_shape shape,
bool legacy_oriscus_orientation);
+void gregorio_add_cavum(gregorio_note *note);
void gregorio_position_h_episema_above(gregorio_note *note, signed char height,
bool connect);
void gregorio_position_h_episema_below(gregorio_note *note, signed char height,
@@ -828,23 +839,27 @@ void gregorio_add_voice_info(gregorio_voice_info **current_voice_info);
void gregorio_free_voice_infos(gregorio_voice_info *voice_info);
void gregorio_free_one_note(gregorio_note **note);
void gregorio_free_one_glyph(gregorio_glyph **glyph);
+void gregorio_free_one_element(gregorio_element **element);
void gregorio_free_score(gregorio_score *score);
void gregorio_free_characters(gregorio_character *current_character);
void gregorio_go_to_first_character(const gregorio_character **character);
void gregorio_add_clef_as_glyph(gregorio_glyph **current_glyph,
- gregorio_clef_info clef, char *texverb);
+ gregorio_clef_info clef, unsigned short texverb);
void gregorio_add_pitched_element_as_glyph(gregorio_glyph **current_glyph,
- gregorio_type type, signed char pitch, bool force_pitch, char *texverb);
+ gregorio_type type, signed char pitch, bool force_pitch,
+ unsigned short texverb);
void gregorio_add_unpitched_element_as_glyph(gregorio_glyph **current_glyph,
gregorio_type type, gregorio_extra_info *info, gregorio_sign sign,
- char *texverb);
+ unsigned short texverb);
void gregorio_add_end_of_line_as_note(gregorio_note **current_note,
bool eol_ragged, bool eol_forces_custos, bool eol_forces_custos_on,
const gregorio_scanner_location *loc);
-void gregorio_add_custo_as_note(gregorio_note **current_note,
+void gregorio_add_custos_as_note(gregorio_note **current_note,
const gregorio_scanner_location *loc);
void gregorio_add_manual_custos_as_note(gregorio_note **current_note,
signed char pitch, const gregorio_scanner_location *loc);
+void gregorio_add_suppress_custos_as_note(gregorio_note **current_note,
+ const gregorio_scanner_location *loc);
void gregorio_add_clef_as_note(gregorio_note **current_note,
gregorio_clef clef, signed char clef_line, bool flatted,
const gregorio_scanner_location *loc);
@@ -855,8 +870,8 @@ void gregorio_add_bar_as_note(gregorio_note **current_note, gregorio_bar bar,
void gregorio_add_space_as_note(gregorio_note **current_note,
gregorio_space space, char *factor,
const gregorio_scanner_location *loc);
-void gregorio_add_texverb_as_note(gregorio_note **current_note, char *str,
- gregorio_type type, const gregorio_scanner_location *loc);
+unsigned short gregorio_add_texverb_as_note(gregorio_note **current_note,
+ char *str, gregorio_type type, const gregorio_scanner_location *loc);
void gregorio_add_nlba_as_note(gregorio_note **current_note,
gregorio_nlba type, const gregorio_scanner_location *loc);
void gregorio_start_autofuse(gregorio_note **current_note,
@@ -867,7 +882,8 @@ void gregorio_add_texverb_to_note(gregorio_note *current_note, char *str);
void gregorio_add_cs_to_note(gregorio_note *const*current_note, char *str,
bool nabc);
void gregorio_add_misc_element(gregorio_element **current_element,
- gregorio_type type, gregorio_misc_element_info *info, char *texverb);
+ gregorio_type type, gregorio_misc_element_info *info,
+ unsigned short texverb);
void gregorio_set_score_annotation(gregorio_score *score, char *annotation);
void gregorio_set_score_staff_lines(gregorio_score *score, char staff_lines);
void gregorio_add_score_header(gregorio_score *score, char *name,
@@ -894,6 +910,8 @@ unsigned short gregorio_add_hepisema_adjustment(
gregorio_hepisema_vbasepos vbasepos, char *nudge);
gregorio_hepisema_adjustment *gregorio_get_hepisema_adjustment(
unsigned short index);
+const char *gregorio_texverb(unsigned short index);
+void gregorio_change_texverb(unsigned short index, char *texverb);
static __inline void gregorio_go_to_first_character_c(gregorio_character **character)
{
@@ -944,4 +962,17 @@ static __inline char gregorio_clef_to_char(gregorio_clef clef)
return (clef == CLEF_C)? 'c' : 'f';
}
+static __inline signed char gregorio_adjust_pitch_into_staff(
+ const gregorio_score *score, signed char pitch)
+{
+ while (pitch < LOWEST_PITCH) {
+ pitch += 7;
+ }
+ while (pitch > score->highest_pitch) {
+ pitch -= 7;
+ }
+ assert(pitch >= LOWEST_PITCH && pitch <= score->highest_pitch);
+ return pitch;
+}
+
#endif
diff --git a/Build/source/texk/gregorio/gregorio-src/src/struct_iter.h b/Build/source/texk/gregorio/gregorio-src/src/struct_iter.h
index 33ed7ec924e..91113b418e6 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/struct_iter.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/struct_iter.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header defines the Gregorio data structures and functions.
*
- * Copyright (C) 2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2016-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -32,6 +32,16 @@
#include "struct.h"
+/* This enum defines bitfields selecting the node types that should be passed
+ * to end_item in gregorio_from_note_to_note */
+typedef enum {
+ GRESTRUCT_NONE = 0,
+ GRESTRUCT_NOTE = 1 << 0,
+ GRESTRUCT_GLYPH = 1 << 1,
+ GRESTRUCT_ELEMENT = 1 << 2,
+ GRESTRUCT_SYLLABLE = 1 << 3
+} gregorio_note_iter_item_type;
+
typedef struct {
gregorio_syllable *syllable;
gregorio_element *element;
@@ -41,10 +51,14 @@ typedef struct {
static __inline void gregorio_from_note_to_note(
const gregorio_note_iter_position *const start,
- const gregorio_note_iter_position *const end,
+ const gregorio_note_iter_position *const end, bool include_end,
void (*const visit)(const gregorio_note_iter_position *, void *),
- void *data)
+ void (*const end_item)(const gregorio_note_iter_position *,
+ gregorio_note_iter_item_type, void *),
+ const gregorio_note_iter_item_type desired_iter_items, void *data)
{
+ /* Note: include_end is effectively ignored if end is NULL */
+
gregorio_note_iter_position p = *start;
while (p.syllable) {
@@ -62,29 +76,98 @@ static __inline void gregorio_from_note_to_note(
p.note = p.glyph->u.notes.first_note;
}
while (p.note) {
- if (p.note->type == GRE_NOTE) {
+ bool at_end = (end && p.note == end->note);
+
+ if (p.note->type == GRE_NOTE
+ && (!at_end || include_end)) {
visit(&p, data);
}
- if (end && p.note == end->note) {
+ if (at_end) {
+ if (end_item) {
+ /* in 4.2.0, this code is never hit, as
+ * end_item will only be supplied from
+ * gregorio_for_each_note, which supplies
+ * NULL for end */
+ /* LCOV_EXCL_START */
+ /* to enable the real code, delete this
+ * assertion: */
+ gregorio_fail(gregorio_from_note_to_note,
+ "unused code path");
+ if (desired_iter_items & GRESTRUCT_NOTE) {
+ end_item(&p, GRESTRUCT_NOTE, data);
+ }
+ if (desired_iter_items & GRESTRUCT_GLYPH) {
+ end_item(&p, GRESTRUCT_GLYPH, data);
+ }
+ if (desired_iter_items
+ & GRESTRUCT_ELEMENT) {
+ end_item(&p, GRESTRUCT_ELEMENT, data);
+ }
+ if (desired_iter_items
+ & GRESTRUCT_SYLLABLE) {
+ end_item(&p, GRESTRUCT_SYLLABLE, data);
+ }
+ }
+ /* LCOV_EXCL_END */
return;
}
+ if (end_item
+ && (desired_iter_items & GRESTRUCT_NOTE)) {
+ /* in 4.2.0, this code is never hit, as the only
+ * usage that gets through to here does not
+ * include GRESTRUCT_NOTE in desired_iter_items */
+ /* LCOV_EXCL_START */
+ /* to enable the real code, delete this
+ * assertion: */
+ gregorio_fail(gregorio_from_note_to_note,
+ "unused code path");
+ end_item(&p, GRESTRUCT_NOTE, data);
+
+ }
+ /* LCOV_EXCL_STOP */
p.note = p.note->next;
} /* note */
}
+ if (end_item && (desired_iter_items & GRESTRUCT_GLYPH)) {
+ /* in 4.2.0, this code is never hit, as the only usage
+ * that gets through to here does not include
+ * GRESTRUCT_GLYPH in desired_iter_items */
+ /* LCOV_EXCL_START */
+ /* to enable the real code, delete this assertion: */
+ gregorio_fail(gregorio_from_note_to_note,
+ "unused code path");
+ end_item(&p, GRESTRUCT_GLYPH, data);
+ }
+ /* LCOV_EXCL_STOP */
p.glyph = p.glyph->next;
} /* glyph */
}
+ if (end_item && (desired_iter_items & GRESTRUCT_ELEMENT)) {
+ end_item(&p, GRESTRUCT_ELEMENT, data);
+ }
p.element = p.element->next;
} /* element */
+ if (end_item && (desired_iter_items & GRESTRUCT_SYLLABLE)) {
+ /* in 4.2.0, this code is never hit, as the only usage that gets
+ * through to here does not include GRESTRUCT_SYLLABLE in
+ * desired_iter_items */
+ /* LCOV_EXCL_START */
+ /* to enable the real code, delete this assertion: */
+ gregorio_fail(gregorio_from_note_to_note, "unused code path");
+ end_item(&p, GRESTRUCT_SYLLABLE, data);
+ }
+ /* LCOV_EXCL_STOP */
p.syllable = p.syllable->next_syllable;
} /* syllable */
}
static __inline void gregorio_for_each_note(const gregorio_score *score,
void (*const visit)(const gregorio_note_iter_position *, void *),
- void *data)
+ void (*const end_item)(const gregorio_note_iter_position *,
+ gregorio_note_iter_item_type, void *),
+ const gregorio_note_iter_item_type desired_iter_items, void *data)
{
gregorio_note_iter_position p = {
/* .syllable = */ NULL,
@@ -95,7 +178,8 @@ static __inline void gregorio_for_each_note(const gregorio_score *score,
p.syllable = score->first_syllable;
- gregorio_from_note_to_note(&p, NULL, visit, data);
+ gregorio_from_note_to_note(&p, NULL, true, visit, end_item,
+ desired_iter_items, data);
}
#endif
diff --git a/Build/source/texk/gregorio/gregorio-src/src/support.c b/Build/source/texk/gregorio/gregorio-src/src/support.c
index 39451726189..2d44718e6cd 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/support.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/support.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file contains miscellaneous support functions.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/support.h b/Build/source/texk/gregorio/gregorio-src/src/support.h
index a4b6738b2ee..3a048d6de66 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/support.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/support.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes the miscellaneous support functions.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/unicode.c b/Build/source/texk/gregorio/gregorio-src/src/unicode.c
index 1cc381d2a4d..b953beb8728 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/unicode.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/unicode.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file contains functions providing UTF-8 support.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/unicode.h b/Build/source/texk/gregorio/gregorio-src/src/unicode.h
index 0d0d5aac1ba..1c76b703772 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/unicode.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/unicode.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes the UTF-8 support functions.
*
- * Copyright (C) 2008-2016 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2008-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h b/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h
index 8d7dd732933..7f02b14e616 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header file contains UTF-8 encoded strings used by Gregorio
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h.in b/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h.in
index 548462844ba..11e7fd65657 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h.in
+++ b/Build/source/texk/gregorio/gregorio-src/src/utf8strings.h.in
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header file contains UTF-8 encoded strings used by Gregorio
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-l.c b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-l.c
index 1116fc9047b..bb8e4e99f27 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-l.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-l.c
@@ -546,7 +546,7 @@ char *gregorio_vowel_rulefile_text;
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the vowel rule lexer.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-y.c b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-y.c
index 11051101cc7..98ff4bf90b9 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-y.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules-y.c
@@ -76,7 +76,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the vowel rule parser.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.h b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.h
index bf99696e538..01882295795 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header shares definitions between the vowel parser and lexer.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.l b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.l
index 54e939a9f78..4e87a337e9e 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.l
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.l
@@ -3,7 +3,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the vowel rule lexer.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.y b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.y
index 72d807720ca..b08b0e3e318 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.y
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel-rules.y
@@ -3,7 +3,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements the vowel rule parser.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.c b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.c
index 8b108726610..e054220fa35 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.c
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.c
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This file implements vowel rule handling (aside from parsing).
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -82,7 +82,7 @@ static void character_set_free(character_set *const set)
}
static bool character_set_contains(character_set *const set,
- const grewchar vowel, character_set **const next)
+ const grewchar character, character_set **const next)
{
unsigned int index;
assert(set);
@@ -90,9 +90,9 @@ static bool character_set_contains(character_set *const set,
if (next) {
*next = NULL;
}
- for (index = ((unsigned long)vowel) & set->mask; set->table[index];
+ for (index = ((unsigned long)character) & set->mask; set->table[index];
index = (index + 1) & set->mask) {
- if (set->table[index] == vowel) {
+ if (set->table[index] == character) {
if (next && set->next) {
*next = set->next[index];
}
@@ -103,18 +103,18 @@ static bool character_set_contains(character_set *const set,
}
static __inline void character_set_put(character_set *const set,
- const grewchar vowel, character_set *next)
+ const grewchar character, character_set *next)
{
unsigned int index;
assert(set);
- index = ((unsigned long)vowel) & set->mask;
+ index = ((unsigned long)character) & set->mask;
while (set->table[index]) {
index = (index + 1) & set->mask;
}
- set->table[index] = vowel;
+ set->table[index] = character;
if (set->next) {
set->next[index] = next;
}
@@ -161,11 +161,11 @@ static __inline void character_set_grow(character_set *const set) {
}
static character_set *character_set_add(character_set *const set,
- const grewchar vowel)
+ const grewchar character)
{
character_set *next = NULL;
- if (!character_set_contains(set, vowel, &next)) {
+ if (!character_set_contains(set, character, &next)) {
if (((++(set->size) * 10) / set->bins) >= 7) {
character_set_grow(set);
}
@@ -174,7 +174,7 @@ static character_set *character_set_add(character_set *const set,
next = character_set_new(true);
}
- character_set_put(set, vowel, next);
+ character_set_put(set, character, next);
}
return next;
@@ -377,9 +377,11 @@ bool gregorio_find_vowel_group(const grewchar *const string, int *const start,
prefix_buffer[bufpos] = *subject;
if (character_set_contains(vowel_table, *subject, NULL)) {
/* we found a vowel */
- if (!character_set_contains(vowel_table, *(subject + 1), NULL)
+ if ((!character_set_contains(vowel_table, *(subject + 1), NULL)
+ && *(subject + 1) != GREVOWEL_ELISION_MARK)
|| !is_in_prefix(bufpos)) {
- /* no vowel after or not in prefix, so this is the start */
+ /* no vowel/elision after, or not in prefix, so this is the
+ * start */
*start = i;
state = VWL_WITHIN;
}
diff --git a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.h b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.h
index bd261c218e8..8c4f67e4ec9 100644
--- a/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.h
+++ b/Build/source/texk/gregorio/gregorio-src/src/vowel/vowel.h
@@ -2,7 +2,7 @@
* Gregorio is a program that translates gabc files to GregorioTeX
* This header prototypes the vowel handling data structures and entry points.
*
- * Copyright (C) 2015 The Gregorio Project (see CONTRIBUTORS.md)
+ * Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md)
*
* This file is part of Gregorio.
*
@@ -27,6 +27,9 @@
#include "bool.h"
#include "unicode.h"
+/* Use unicode 0xfffe, which is guaranteed not to be a character */
+#define GREVOWEL_ELISION_MARK ((grewchar)0xfffe)
+
typedef enum rulefile_parse_status {
RFPS_NOT_FOUND = 0,
RFPS_FOUND,