[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

EBNF from yacc



So, someone said recently that it would be nice to get EBNF out of the
yacc lojban grammar so we could compare them for the errors and stuff.

I happened to randomly find this today:

NAME
     yyextract - extract grammar rules from a yacc grammar

SYNOPSIS
     yyextract [-behyV] [-o file] [-t title] [-w cols] [file ...]

DESCRIPTION
     The yyextract utility extracts the grammar rules from a yacc grammar.

     The options are as follows:

     -b      Select the Backus-Naur Form (BNF) for the output.

     -e      Select the Extended Backus-Naur Form (EBNF) for the output.

The output format looks rather different than our EBNF, though, because our
EBNF is amazingly non-standard, and I suspect that the transformations
involved are NP-hard anyways.

But it's attached in case anyone is interested.

-Robin

-- 
http://www.digitalkingdom.org/~rlpowell/    ***    I'm a *male* Robin.
.i le pamoi velru'e zo'u crepu le plibu taxfu
.i le remoi velru'e zo'u mo .i le cimoi velru'e zo'u ba'e prali .uisai
http://www.lojban.org/   ***   to sa'a cu'u lei pibyta'u cridrnoma toi
The terminal tokens defined in the grammar:
A_501, BAI_502, BAhE_503, BE_504, BEI_505, BEhO_506, BIhI_507, BO_508,
BRIVLA_509, BU_511, BY_513, CAhA_514, CAI_515, CEI_516, CEhE_517, CMENE_518,
CO_519, COI_520, CU_521, CUhE_522, DAhO_524, DOI_525, DOhU_526, FA_527,
FAhA_528, FAhO_529, FEhE_530, FEhU_531, FIhO_532, FOI_533, FUhE_535,
FUhO_536, GA_537, GEhU_538, GI_539, GIhA_541, GOI_542, GOhA_543, GUhA_544,
I_545, JA_546, JAI_547, JOI_548, KEhE_550, KE_551, KEI_552, KI_554,
KOhA_555, KU_556, KUhO_557, LA_558, LAU_559, LAhE_561, LE_562, LEhU_565,
LI_566, LIhU_567, LOhO_568, LOhU_569, LU_571, LUhU_573, ME_574, MEhU_575,
MOhI_577, NA_578, NAI_581, NAhE_583, NIhO_584, NOI_585, NU_586, NUhI_587,
NUhU_588, PEhE_591, PU_592, RAhO_593, ROI_594, SA_595, SE_596, SEI_597,
SEhU_598, SI_601, SOI_602, SU_603, TAhE_604, TEI_605, TO_606, TOI_607,
TUhE_610, TUhU_611, UI_612, VA_613, VAU_614, VEhA_615, VIhA_616, VUhO_617,
XI_618, Y_619, ZAhO_621, ZEhA_622, ZEI_623, ZI_624, ZIhE_625, ZO_626,
ZOI_627, ZOhU_628, BIhE_650, BOI_651, FUhA_655, GAhO_656, JOhI_657,
KUhE_658, MAI_661, MAhO_662, MOI_663, MOhE_664, NAhU_665, NIhE_666,
NUhA_667, PA_672, PEhO_673, TEhU_675, VEI_677, VEhO_678, VUhU_679,
any_words_697, any_word_698, anything_699, lexer_A_701, lexer_B_702,
lexer_C_703, lexer_D_704, lexer_E_705, lexer_F_706, lexer_G_707,
lexer_H_708, lexer_I_709, lexer_J_710, lexer_K_711, lexer_L_712,
lexer_M_713, lexer_N_714, lexer_O_715, lexer_P_716, lexer_Q_717,
lexer_R_718, lexer_S_719, lexer_T_720, lexer_U_721, lexer_V_722,
lexer_W_723

<text_0> ::= <text_A_1> 
             <indicators_411> <text_A_1> 
             <free_modifier_32> <text_A_1> 
             <cmene_404> <text_A_1> 
             <indicators_411> <free_modifier_32> <text_A_1> 
             <NAI_581> <text_0> 

<text_A_1> ::= <JOIK_JEK_422> <text_B_2> 
               <text_B_2> 

<text_B_2> ::= <I_819> <text_B_2> 
               <I_JEK_820> <text_B_2> 
               <I_BO_811> <text_B_2> 
               <para_mark_410> <text_C_3> 
               <text_C_3> 

<text_C_3> ::= [ <paragraphs_4> ]

<paragraphs_4> ::= <paragraph_10> 
                   <paragraph_10> <para_mark_410> <paragraphs_4> 

<paragraph_10> ::= <statement_11> 
                   <fragment_20> 
                   <paragraph_10> <I_819> <statement_11> 
                   <paragraph_10> <I_819> <fragment_20> 
                   <paragraph_10> <I_819> 

<statement_11> ::= <statement_A_12> 
                   <prenex_30> <statement_11> 

<statement_A_12> ::= <statement_B_13> 
                     <statement_A_12> <I_JEK_820> <statement_B_13> 
                     <statement_A_12> <I_JEK_820> 

<statement_B_13> ::= <statement_C_14> 
                     <statement_C_14> <I_BO_811> <statement_B_13> 
                     <statement_C_14> <I_BO_811> 

<statement_C_14> ::= <sentence_40> 
                     <TUhE_447> <text_B_2> <TUhU_gap_454> 
                     <tag_491> <TUhE_447> <text_B_2> <TUhU_gap_454> 

<fragment_20> ::= <EK_802> 
                  <NA_445> 
                  <GIhEK_818> 
                  <quantifier_300> 
                  <terms_80> <VAU_gap_456> 
                  <relative_clauses_121> 
                  <links_161> 
                  <linkargs_160> 
                  <prenex_30> 

<prenex_30> ::= <terms_80> <ZOhU_492> 

<free_modifier_32> ::= <free_modifier_A_33> 
                       <free_modifier_A_33> <free_modifier_32> 

<free_modifier_A_33> ::= <vocative_35> 
                         <parenthetical_36> 
                         <discursive_bridi_34> 
                         <subscript_486> 
                         <utterance_ordinal_801> 

<discursive_bridi_34> ::= <SEI_440> <selbri_130> <SEhU_gap_459> 
                          <SOI_498> <sumti_90> <SEhU_gap_459> 
                          <SOI_498> <sumti_90> <sumti_90> <SEhU_gap_459> 
                          <SEI_440> <terms_80> <front_gap_451> <selbri_130> <SEhU_gap_459> 
                          <SEI_440> <terms_80> <selbri_130> <SEhU_gap_459> 

<vocative_35> ::= <DOI_415> <selbri_130> <DOhU_gap_457> 
                  <DOI_415> <selbri_130> <relative_clauses_121> <DOhU_gap_457> 
                  <DOI_415> <relative_clauses_121> <selbri_130> <DOhU_gap_457> 
                  <DOI_415> <relative_clauses_121> <selbri_130> <relative_clauses_121> <DOhU_gap_457> 
                  <DOI_415> <cmene_404> <DOhU_gap_457> 
                  <DOI_415> <cmene_404> <relative_clauses_121> <DOhU_gap_457> 
                  <DOI_415> <relative_clauses_121> <cmene_404> <DOhU_gap_457> 
                  <DOI_415> <relative_clauses_121> <cmene_404> <relative_clauses_121> <DOhU_gap_457> 
                  <DOI_415> <sumti_90> <DOhU_gap_457> 
                  <DOI_415> <DOhU_gap_457> 

<parenthetical_36> ::= <TO_606> <text_0> <TOI_gap_468> 

<sentence_40> ::= <bridi_tail_50> 
                  <terms_80> <front_gap_451> <bridi_tail_50> 
                  <terms_80> <bridi_tail_50> 

<subsentence_41> ::= <sentence_40> 
                     <prenex_30> <subsentence_41> 

<bridi_tail_50> ::= <bridi_tail_A_51> 
                    <bridi_tail_A_51> <GIhEK_KE_814> <bridi_tail_50> <KEhE_gap_466> <tail_terms_71> 

<bridi_tail_A_51> ::= <bridi_tail_B_52> 
                      <bridi_tail_A_51> <GIhEK_818> <bridi_tail_B_52> <tail_terms_71> 

<bridi_tail_B_52> ::= <bridi_tail_C_53> 
                      <bridi_tail_C_53> <GIhEK_BO_813> <bridi_tail_B_52> <tail_terms_71> 

<bridi_tail_C_53> ::= <gek_sentence_54> 
                      <selbri_130> <tail_terms_71> 

<gek_sentence_54> ::= <GEK_807> <subsentence_41> <GIK_816> <subsentence_41> <tail_terms_71> 
                      <tag_491> <KE_493> <gek_sentence_54> <KEhE_gap_466> 
                      <NA_445> <gek_sentence_54> 

<tail_terms_71> ::= <terms_80> <VAU_gap_456> 
                    <VAU_gap_456> 

<terms_80> ::= <terms_A_81> 
               <terms_80> <terms_A_81> 

<terms_A_81> ::= <terms_B_82> 
                 <terms_A_81> <PEhE_494> <JOIK_JEK_422> <terms_B_82> 

<terms_B_82> ::= <term_83> 
                 <terms_B_82> <CEhE_495> <term_83> 

<term_83> ::= <sumti_90> 
              <modifier_84> 
              <term_set_85> 
              <NA_KU_810> 

<modifier_84> ::= <mod_head_490> <gap_450> 
                  <mod_head_490> <sumti_90> 

<term_set_85> ::= <NUhI_496> <terms_80> <NUhU_gap_460> 
                  <NUhI_496> <GEK_807> <terms_80> <NUhU_gap_460> <GIK_816> <terms_80> <NUhU_gap_460> 

<sumti_90> ::= <sumti_A_91> 
               <sumti_A_91> <VUhO_497> <relative_clauses_121> 

<sumti_A_91> ::= <sumti_B_92> 
                 <sumti_B_92> <EK_KE_804> <sumti_90> <KEhE_gap_466> 
                 <sumti_B_92> <JOIK_KE_823> <sumti_90> <KEhE_gap_466> 

<sumti_B_92> ::= <sumti_C_93> 
                 <sumti_B_92> <JOIK_EK_421> <sumti_C_93> 

<sumti_C_93> ::= <sumti_D_94> 
                 <sumti_D_94> <EK_BO_803> <sumti_C_93> 
                 <sumti_D_94> <JOIK_BO_822> <sumti_C_93> 

<sumti_D_94> ::= <sumti_E_95> 
                 <GEK_807> <sumti_90> <GIK_816> <sumti_D_94> 

<sumti_E_95> ::= <sumti_F_96> 
                 <sumti_F_96> <relative_clauses_121> 
                 <quantifier_300> <selbri_130> <gap_450> 
                 <quantifier_300> <selbri_130> <gap_450> <relative_clauses_121> 

<sumti_F_96> ::= <sumti_G_97> 
                 <quantifier_300> <sumti_G_97> 

<sumti_G_97> ::= <qualifier_483> <sumti_90> <LUhU_gap_463> 
                 <qualifier_483> <relative_clauses_121> <sumti_90> <LUhU_gap_463> 
                 <anaphora_400> 
                 <LA_499> <cmene_404> 
                 <LA_499> <relative_clauses_121> <cmene_404> 
                 <LI_489> <MEX_310> <LOhO_gap_472> 
                 <description_110> 
                 <quote_arg_432> 

<description_110> ::= <LA_499> <sumti_tail_111> <gap_450> 
                      <LE_488> <sumti_tail_111> <gap_450> 

<sumti_tail_111> ::= <sumti_tail_A_112> 
                     <relative_clauses_121> <sumti_tail_A_112> 
                     <sumti_G_97> <sumti_tail_A_112> 
                     <sumti_G_97> <relative_clauses_121> <sumti_tail_A_112> 

<sumti_tail_A_112> ::= <selbri_130> 
                       <selbri_130> <relative_clauses_121> 
                       <quantifier_300> <selbri_130> 
                       <quantifier_300> <selbri_130> <relative_clauses_121> 
                       <quantifier_300> <sumti_90> 

<relative_clauses_121> ::= <relative_clause_122> 
                           <relative_clauses_121> <ZIhE_487> <relative_clause_122> 

<relative_clause_122> ::= <GOI_485> <term_83> <GEhU_gap_464> 
                          <NOI_484> <subsentence_41> <KUhO_gap_469> 

<selbri_130> ::= <tag_491> <selbri_A_131> 
                 <selbri_A_131> 

<selbri_A_131> ::= <selbri_B_132> 
                   <NA_445> <selbri_130> 

<selbri_B_132> ::= <selbri_C_133> 
                   <selbri_C_133> <CO_443> <selbri_B_132> 

<selbri_C_133> ::= <selbri_D_134> 
                   <selbri_C_133> <selbri_D_134> 

<selbri_D_134> ::= <selbri_E_135> 
                   <selbri_D_134> <JOIK_JEK_422> <selbri_E_135> 
                   <selbri_D_134> <JOIK_KE_823> <selbri_C_133> <KEhE_gap_466> 

<selbri_E_135> ::= <selbri_F_136> 
                   <selbri_F_136> <JEK_BO_821> <selbri_E_135> 
                   <selbri_F_136> <JOIK_BO_822> <selbri_E_135> 

<selbri_F_136> ::= <tanru_unit_150> 
                   <tanru_unit_150> <BO_479> <selbri_F_136> 
                   <GUhEK_selbri_137> 
                   <NAhE_482> <GUhEK_selbri_137> 

<GUhEK_selbri_137> ::= <GUhEK_808> <selbri_130> <GIK_816> <selbri_F_136> 

<tanru_unit_150> ::= <tanru_unit_A_151> 
                     <tanru_unit_150> <CEI_444> <tanru_unit_A_151> 

<tanru_unit_A_151> ::= <tanru_unit_B_152> 
                       <tanru_unit_B_152> <linkargs_160> 

<tanru_unit_B_152> ::= <bridi_valsi_407> 
                       <KE_493> <selbri_C_133> <KEhE_gap_466> 
                       <SE_480> <tanru_unit_B_152> 
                       <JAI_478> <tag_491> <tanru_unit_B_152> 
                       <JAI_478> <tanru_unit_B_152> 
                       <ME_477> <sumti_90> <MEhU_gap_465> 
                       <ME_477> <sumti_90> <MEhU_gap_465> <MOI_476> 
                       <NUhA_475> <MEX_operator_374> 
                       <NAhE_482> <tanru_unit_B_152> 
                       <NU_425> <subsentence_41> <KEI_gap_453> 

<linkargs_160> ::= <BE_446> <term_83> <BEhO_gap_467> 
                   <BE_446> <term_83> <links_161> <BEhO_gap_467> 

<links_161> ::= <BEI_442> <term_83> 
                <BEI_442> <term_83> <links_161> 

<quantifier_300> ::= <number_812> <BOI_gap_461> 
                     <left_bracket_470> <MEX_310> <right_bracket_gap_471> 

<MEX_310> ::= <MEX_A_311> 
              <MEX_310> <operator_370> <MEX_A_311> 
              <FUhA_441> <rp_expression_330> 

<MEX_A_311> ::= <MEX_B_312> 
                <MEX_B_312> <BIhE_439> <operator_370> <MEX_A_311> 

<MEX_B_312> ::= <operand_381> 
                <operator_370> <MEX_C_313> <MEX_gap_452> 
                <PEhO_438> <operator_370> <MEX_C_313> <MEX_gap_452> 

<MEX_C_313> ::= <MEX_B_312> 
                <MEX_C_313> <MEX_B_312> 

<rp_expression_330> ::= <rp_operand_332> <rp_operand_332> <operator_370> 

<rp_operand_332> ::= <operand_381> 
                     <rp_expression_330> 

<operator_370> ::= <operator_A_371> 
                   <operator_370> <JOIK_JEK_422> <operator_A_371> 
                   <operator_370> <JOIK_KE_823> <operator_370> <KEhE_gap_466> 

<operator_A_371> ::= <operator_B_372> 
                     <GUhEK_808> <operator_A_371> <GIK_816> <operator_B_372> 
                     <operator_B_372> <JOIK_BO_822> <operator_A_371> 
                     <operator_B_372> <JEK_BO_821> <operator_A_371> 

<operator_B_372> ::= <MEX_operator_374> 
                     <KE_493> <operator_370> <KEhE_gap_466> 

<MEX_operator_374> ::= <VUhU_679> 
                       <VUhU_679> <free_modifier_32> 
                       <SE_480> <MEX_operator_374> 
                       <NAhE_482> <MEX_operator_374> 
                       <MAhO_430> <MEX_310> <TEhU_gap_473> 
                       <NAhU_429> <selbri_130> <TEhU_gap_473> 

<operand_381> ::= <operand_A_382> 
                  <operand_A_382> <EK_KE_804> <operand_381> <KEhE_gap_466> 
                  <operand_A_382> <JOIK_KE_823> <operand_381> <KEhE_gap_466> 

<operand_A_382> ::= <operand_B_383> 
                    <operand_A_382> <JOIK_EK_421> <operand_B_383> 

<operand_B_383> ::= <operand_C_385> 
                    <operand_C_385> <EK_BO_803> <operand_B_383> 
                    <operand_C_385> <JOIK_BO_822> <operand_B_383> 

<operand_C_385> ::= <quantifier_300> 
                    <lerfu_string_817> <BOI_gap_461> 
                    <NIhE_428> <selbri_130> <TEhU_gap_473> 
                    <MOhE_427> <sumti_90> <TEhU_gap_473> 
                    <JOhI_431> <MEX_C_313> <TEhU_gap_473> 
                    <GEK_807> <operand_381> <GIK_816> <operand_C_385> 
                    <qualifier_483> <operand_381> <LUhU_gap_463> 

<anaphora_400> ::= <KOhA_555> 
                   <KOhA_555> <free_modifier_32> 
                   <lerfu_string_817> <BOI_gap_461> 

<cmene_404> ::= <cmene_A_405> 
                <cmene_A_405> <free_modifier_32> 

<cmene_A_405> ::= <CMENE_518> 
                  <cmene_A_405> <CMENE_518> 

<bridi_valsi_407> ::= <bridi_valsi_A_408> 
                      <bridi_valsi_A_408> <free_modifier_32> 

<bridi_valsi_A_408> ::= <BRIVLA_509> 
                        <PA_MOI_824> 
                        <GOhA_543> 
                        <GOhA_543> <RAhO_593> 

<para_mark_410> ::= <NIhO_584> 
                    <NIhO_584> <free_modifier_32> 
                    <NIhO_584> <para_mark_410> 

<indicators_411> ::= <indicators_A_412> 
                     <FUhE_535> <indicators_A_412> 

<indicators_A_412> ::= <indicator_413> 
                       <indicators_A_412> <indicator_413> 

<indicator_413> ::= <UI_612> 
                    <CAI_515> 
                    <UI_612> <NAI_581> 
                    <CAI_515> <NAI_581> 
                    <Y_619> 
                    <DAhO_524> 
                    <FUhO_536> 

<DOI_415> ::= <DOI_525> 
              <COI_416> 
              <COI_416> <DOI_525> 

<COI_416> ::= <COI_A_417> 
              <COI_416> <COI_A_417> 

<COI_A_417> ::= <COI_520> 
                <COI_520> <NAI_581> 

<JOIK_EK_421> ::= <EK_802> 
                  <JOIK_806> 
                  <JOIK_806> <free_modifier_32> 

<JOIK_JEK_422> ::= <JOIK_806> 
                   <JOIK_806> <free_modifier_32> 
                   <JEK_805> 
                   <JEK_805> <free_modifier_32> 

<XI_424> ::= <XI_618> 
             <XI_618> <free_modifier_32> 

<NU_425> ::= <NU_A_426> 
             <NU_425> <JOIK_JEK_422> <NU_A_426> 

<NU_A_426> ::= <NU_586> 
               <NU_586> <NAI_581> 
               <NU_586> <free_modifier_32> 
               <NU_586> <NAI_581> <free_modifier_32> 

<MOhE_427> ::= <MOhE_664> 
               <MOhE_664> <free_modifier_32> 

<NIhE_428> ::= <NIhE_666> 
               <NIhE_666> <free_modifier_32> 

<NAhU_429> ::= <NAhU_665> 
               <NAhU_665> <free_modifier_32> 

<MAhO_430> ::= <MAhO_662> 
               <MAhO_662> <free_modifier_32> 

<JOhI_431> ::= <JOhI_657> 
               <JOhI_657> <free_modifier_32> 

<quote_arg_432> ::= <quote_arg_A_433> 
                    <quote_arg_A_433> <free_modifier_32> 

<quote_arg_A_433> ::= <ZOI_quote_434> 
                      <ZO_quote_435> 
                      <LOhU_quote_436> 
                      <LU_571> <text_0> <LIhU_gap_448> 

<ZOI_quote_434> ::= <ZOI_627> <any_word_698> <anything_699> <any_word_698> 

<ZO_quote_435> ::= <ZO_626> <any_word_698> 

<LOhU_quote_436> ::= <LOhU_569> <any_words_697> <LEhU_565> 

<FIhO_437> ::= <FIhO_532> 
               <FIhO_532> <free_modifier_32> 

<PEhO_438> ::= <PEhO_673> 
               <PEhO_673> <free_modifier_32> 

<BIhE_439> ::= <BIhE_650> 
               <BIhE_650> <free_modifier_32> 

<SEI_440> ::= <SEI_597> 
              <SEI_597> <free_modifier_32> 

<FUhA_441> ::= <FUhA_655> 
               <FUhA_655> <free_modifier_32> 

<BEI_442> ::= <BEI_505> 
              <BEI_505> <free_modifier_32> 

<CO_443> ::= <CO_519> 
             <CO_519> <free_modifier_32> 

<CEI_444> ::= <CEI_516> 
              <CEI_516> <free_modifier_32> 

<NA_445> ::= <NA_578> 
             <NA_578> <free_modifier_32> 

<BE_446> ::= <BE_504> 
             <BE_504> <free_modifier_32> 

<TUhE_447> ::= <TUhE_610> 
               <TUhE_610> <free_modifier_32> 

<LIhU_gap_448> ::= <LIhU_567> 
                   <error> 

<gap_450> ::= <KU_556> 
              <KU_556> <free_modifier_32> 
              <error> 

<front_gap_451> ::= <CU_521> 
                    <CU_521> <free_modifier_32> 

<MEX_gap_452> ::= <KUhE_658> 
                  <KUhE_658> <free_modifier_32> 
                  <error> 

<KEI_gap_453> ::= <KEI_552> 
                  <KEI_552> <free_modifier_32> 
                  <error> 

<TUhU_gap_454> ::= <TUhU_611> 
                   <TUhU_611> <free_modifier_32> 
                   <error> 

<VAU_gap_456> ::= <VAU_614> 
                  <VAU_614> <free_modifier_32> 
                  <error> 

<DOhU_gap_457> ::= <DOhU_526> 
                   <error> 

<FEhU_gap_458> ::= <FEhU_531> 
                   <FEhU_531> <free_modifier_32> 
                   <error> 

<SEhU_gap_459> ::= <SEhU_598> 
                   <error> 

<NUhU_gap_460> ::= <NUhU_588> 
                   <NUhU_588> <free_modifier_32> 
                   <error> 

<BOI_gap_461> ::= <BOI_651> 
                  <BOI_651> <free_modifier_32> 
                  <error> 

<sub_gap_462> ::= <BOI_651> 
                  <error> 

<LUhU_gap_463> ::= <LUhU_573> 
                   <LUhU_573> <free_modifier_32> 
                   <error> 

<GEhU_gap_464> ::= <GEhU_538> 
                   <GEhU_538> <free_modifier_32> 
                   <error> 

<MEhU_gap_465> ::= <MEhU_575> 
                   <MEhU_575> <free_modifier_32> 
                   <error> 

<KEhE_gap_466> ::= <KEhE_550> 
                   <KEhE_550> <free_modifier_32> 
                   <error> 

<BEhO_gap_467> ::= <BEhO_506> 
                   <BEhO_506> <free_modifier_32> 
                   <error> 

<TOI_gap_468> ::= <TOI_607> 
                  <error> 

<KUhO_gap_469> ::= <KUhO_557> 
                   <KUhO_557> <free_modifier_32> 
                   <error> 

<left_bracket_470> ::= <VEI_677> 
                       <VEI_677> <free_modifier_32> 

<right_bracket_gap_471> ::= <VEhO_678> 
                            <VEhO_678> <free_modifier_32> 
                            <error> 

<LOhO_gap_472> ::= <LOhO_568> 
                   <LOhO_568> <free_modifier_32> 
                   <error> 

<TEhU_gap_473> ::= <TEhU_675> 
                   <TEhU_675> <free_modifier_32> 
                   <error> 

<right_br_no_free_474> ::= <VEhO_678> 
                           <error> 

<NUhA_475> ::= <NUhA_667> 
               <NUhA_667> <free_modifier_32> 

<MOI_476> ::= <MOI_663> 
              <MOI_663> <free_modifier_32> 

<ME_477> ::= <ME_574> 
             <ME_574> <free_modifier_32> 

<JAI_478> ::= <JAI_547> 
              <JAI_547> <free_modifier_32> 

<BO_479> ::= <BO_508> 
             <BO_508> <free_modifier_32> 

<SE_480> ::= <SE_596> 
             <SE_596> <free_modifier_32> 

<FA_481> ::= <FA_527> 
             <FA_527> <free_modifier_32> 

<NAhE_482> ::= <NAhE_583> 
               <NAhE_583> <free_modifier_32> 

<qualifier_483> ::= <LAhE_561> 
                    <LAhE_561> <free_modifier_32> 
                    <NAhE_BO_809> 

<NOI_484> ::= <NOI_585> 
              <NOI_585> <free_modifier_32> 

<GOI_485> ::= <GOI_542> 
              <GOI_542> <free_modifier_32> 

<subscript_486> ::= <XI_424> <number_812> <sub_gap_462> 
                    <XI_424> <left_bracket_470> <MEX_310> <right_br_no_free_474> 
                    <XI_424> <lerfu_string_817> <sub_gap_462> 

<ZIhE_487> ::= <ZIhE_625> 
               <ZIhE_625> <free_modifier_32> 

<LE_488> ::= <LE_562> 
             <LE_562> <free_modifier_32> 

<LI_489> ::= <LI_566> 
             <LI_566> <free_modifier_32> 

<mod_head_490> ::= <tag_491> 
                   <FA_481> 

<tag_491> ::= <tense_modal_815> 
              <tag_491> <JOIK_JEK_422> <tense_modal_815> 

<ZOhU_492> ::= <ZOhU_628> 
               <ZOhU_628> <free_modifier_32> 

<KE_493> ::= <KE_551> 
             <KE_551> <free_modifier_32> 

<PEhE_494> ::= <PEhE_591> 
               <PEhE_591> <free_modifier_32> 

<CEhE_495> ::= <CEhE_517> 
               <CEhE_517> <free_modifier_32> 

<NUhI_496> ::= <NUhI_587> 
               <NUhI_587> <free_modifier_32> 

<VUhO_497> ::= <VUhO_617> 
               <VUhO_617> <free_modifier_32> 

<SOI_498> ::= <SOI_602> 
              <SOI_602> <free_modifier_32> 

<LA_499> ::= <LA_558> 
             <LA_558> <free_modifier_32> 

<utterance_ordinal_801> ::= <lexer_A_905> 

<EK_802> ::= <lexer_B_910> 
             <lexer_B_910> <free_modifier_32> 

<EK_BO_803> ::= <lexer_C_915> 
                <lexer_C_915> <free_modifier_32> 

<EK_KE_804> ::= <lexer_D_916> 
                <lexer_D_916> <free_modifier_32> 

<JEK_805> ::= <lexer_E_925> 

<JOIK_806> ::= <lexer_F_930> 

<GEK_807> ::= <lexer_G_935> 
              <lexer_G_935> <free_modifier_32> 

<GUhEK_808> ::= <lexer_H_940> 
                <lexer_H_940> <free_modifier_32> 

<NAhE_BO_809> ::= <lexer_I_945> 
                  <lexer_I_945> <free_modifier_32> 

<NA_KU_810> ::= <lexer_J_950> 
                <lexer_J_950> <free_modifier_32> 

<I_BO_811> ::= <lexer_K_955> 
               <lexer_K_955> <free_modifier_32> 

<number_812> ::= <lexer_L_960> 

<GIhEK_BO_813> ::= <lexer_M_965> 
                   <lexer_M_965> <free_modifier_32> 

<GIhEK_KE_814> ::= <lexer_N_966> 
                   <lexer_N_966> <free_modifier_32> 

<tense_modal_815> ::= <lexer_O_970> 
                      <lexer_O_970> <free_modifier_32> 
                      <FIhO_437> <selbri_130> <FEhU_gap_458> 

<GIK_816> ::= <lexer_P_980> 
              <lexer_P_980> <free_modifier_32> 

<lerfu_string_817> ::= <lexer_Q_985> 

<GIhEK_818> ::= <lexer_R_990> 
                <lexer_R_990> <free_modifier_32> 

<I_819> ::= <lexer_S_995> 
            <lexer_S_995> <free_modifier_32> 

<I_JEK_820> ::= <lexer_T_1000> 
                <lexer_T_1000> <free_modifier_32> 

<JEK_BO_821> ::= <lexer_U_1005> 
                 <lexer_U_1005> <free_modifier_32> 

<JOIK_BO_822> ::= <lexer_V_1010> 
                  <lexer_V_1010> <free_modifier_32> 

<JOIK_KE_823> ::= <lexer_W_1015> 
                  <lexer_W_1015> <free_modifier_32> 

<PA_MOI_824> ::= <lexer_Y_1025> 

<lexer_A_905> ::= <lexer_A_701> <utt_ordinal_root_906> 

<utt_ordinal_root_906> ::= <lerfu_string_root_986> <MAI_661> 
                           <number_root_961> <MAI_661> 

<lexer_B_910> ::= <lexer_B_702> <EK_root_911> 

<EK_root_911> ::= <A_501> 
                  <SE_596> <A_501> 
                  <NA_578> <A_501> 
                  <A_501> <NAI_581> 
                  <SE_596> <A_501> <NAI_581> 
                  <NA_578> <A_501> <NAI_581> 
                  <NA_578> <SE_596> <A_501> 
                  <NA_578> <SE_596> <A_501> <NAI_581> 

<lexer_C_915> ::= <lexer_C_703> <EK_root_911> <BO_508> 
                  <lexer_C_703> <EK_root_911> <simple_tag_971> <BO_508> 

<lexer_D_916> ::= <lexer_D_704> <EK_root_911> <KE_551> 
                  <lexer_D_704> <EK_root_911> <simple_tag_971> <KE_551> 

<lexer_E_925> ::= <lexer_E_705> <JEK_root_926> 

<JEK_root_926> ::= <JA_546> 
                   <JA_546> <NAI_581> 
                   <NA_578> <JA_546> 
                   <NA_578> <JA_546> <NAI_581> 
                   <SE_596> <JA_546> 
                   <SE_596> <JA_546> <NAI_581> 
                   <NA_578> <SE_596> <JA_546> 
                   <NA_578> <SE_596> <JA_546> <NAI_581> 

<lexer_F_930> ::= <lexer_F_706> <JOIK_root_931> 

<JOIK_root_931> ::= <JOI_548> 
                    <JOI_548> <NAI_581> 
                    <SE_596> <JOI_548> 
                    <SE_596> <JOI_548> <NAI_581> 
                    <interval_932> 
                    <GAhO_656> <interval_932> <GAhO_656> 

<interval_932> ::= <BIhI_507> 
                   <BIhI_507> <NAI_581> 
                   <SE_596> <BIhI_507> 
                   <SE_596> <BIhI_507> <NAI_581> 

<lexer_G_935> ::= <lexer_G_707> <GA_537> 
                  <lexer_G_707> <SE_596> <GA_537> 
                  <lexer_G_707> <GA_537> <NAI_581> 
                  <lexer_G_707> <SE_596> <GA_537> <NAI_581> 
                  <lexer_G_707> <simple_tag_971> <GIK_root_981> 
                  <lexer_G_707> <JOIK_root_931> <GI_539> 

<lexer_H_940> ::= <lexer_H_708> <GUhA_544> 
                  <lexer_H_708> <SE_596> <GUhA_544> 
                  <lexer_H_708> <GUhA_544> <NAI_581> 
                  <lexer_H_708> <SE_596> <GUhA_544> <NAI_581> 

<lexer_I_945> ::= <lexer_I_709> <NAhE_583> <BO_508> 

<lexer_J_950> ::= <lexer_J_710> <NA_578> <KU_556> 

<lexer_K_955> ::= <lexer_K_711> <I_root_956> <BO_508> 
                  <lexer_K_711> <I_root_956> <simple_tag_971> <BO_508> 

<I_root_956> ::= <I_545> 
                 <I_545> <simple_JOIK_JEK_957> 

<simple_JOIK_JEK_957> ::= <JOIK_806> 
                          <JEK_805> 

<lexer_L_960> ::= <lexer_L_712> <number_root_961> 

<number_root_961> ::= <PA_672> 
                      <number_root_961> <PA_672> 
                      <number_root_961> <lerfu_word_987> 

<lexer_M_965> ::= <lexer_M_713> <GIhEK_root_991> <BO_508> 
                  <lexer_M_713> <GIhEK_root_991> <simple_tag_971> <BO_508> 

<lexer_N_966> ::= <lexer_N_714> <GIhEK_root_991> <KE_551> 
                  <lexer_N_714> <GIhEK_root_991> <simple_tag_971> <KE_551> 

<lexer_O_970> ::= <lexer_O_715> <simple_tense_modal_972> 

<simple_tag_971> ::= <simple_tense_modal_972> 
                     <simple_tag_971> <simple_JOIK_JEK_957> <simple_tense_modal_972> 

<simple_tense_modal_972> ::= <simple_tense_modal_A_973> 
                             <NAhE_583> <simple_tense_modal_A_973> 
                             <KI_554> 
                             <CUhE_522> 

<simple_tense_modal_A_973> ::= <modal_974> 
                               <modal_974> <KI_554> 
                               <tense_A_977> 

<modal_974> ::= <modal_A_975> 
                <modal_A_975> <NAI_581> 

<modal_A_975> ::= <BAI_502> 
                  <SE_596> <BAI_502> 

<tense_A_977> ::= <tense_B_978> 
                  <tense_B_978> <KI_554> 

<tense_B_978> ::= <tense_C_979> 
                  <CAhA_514> 
                  <tense_C_979> <CAhA_514> 

<tense_C_979> ::= <time_1030> 
                  <space_1040> 
                  <time_1030> <space_1040> 
                  <space_1040> <time_1030> 

<lexer_P_980> ::= <lexer_P_716> <GIK_root_981> 

<GIK_root_981> ::= <GI_539> 
                   <GI_539> <NAI_581> 

<lexer_Q_985> ::= <lexer_Q_717> <lerfu_string_root_986> 

<lerfu_string_root_986> ::= <lerfu_word_987> 
                            <lerfu_string_root_986> <lerfu_word_987> 
                            <lerfu_string_root_986> <PA_672> 

<lerfu_word_987> ::= <BY_513> 
                     <LAU_559> <lerfu_word_987> 
                     <TEI_605> <lerfu_string_root_986> <FOI_533> 

<lexer_R_990> ::= <lexer_R_718> <GIhEK_root_991> 

<GIhEK_root_991> ::= <GIhA_541> 
                     <SE_596> <GIhA_541> 
                     <NA_578> <GIhA_541> 
                     <GIhA_541> <NAI_581> 
                     <SE_596> <GIhA_541> <NAI_581> 
                     <NA_578> <GIhA_541> <NAI_581> 
                     <NA_578> <SE_596> <GIhA_541> 
                     <NA_578> <SE_596> <GIhA_541> <NAI_581> 

<lexer_S_995> ::= <lexer_S_719> <I_545> 

<lexer_T_1000> ::= <lexer_T_720> <I_545> <simple_JOIK_JEK_957> 

<lexer_U_1005> ::= <lexer_U_721> <JEK_root_926> <BO_508> 
                   <lexer_U_721> <JEK_root_926> <simple_tag_971> <BO_508> 

<lexer_V_1010> ::= <lexer_V_722> <JOIK_root_931> <BO_508> 
                   <lexer_V_722> <JOIK_root_931> <simple_tag_971> <BO_508> 

<lexer_W_1015> ::= <lexer_W_723> <JOIK_root_931> <KE_551> 
                   <lexer_W_723> <JOIK_root_931> <simple_tag_971> <KE_551> 

<lexer_Y_1025> ::= <lexer_Y_725> <number_root_961> <MOI_663> 
                   <lexer_Y_725> <lerfu_string_root_986> <MOI_663> 

<time_1030> ::= <ZI_624> 
                <ZI_624> <time_A_1031> 
                <time_A_1031> 

<time_A_1031> ::= <time_B_1032> 
                  <time_interval_1034> 
                  <time_B_1032> <time_interval_1034> 

<time_B_1032> ::= <time_offset_1033> 
                  <time_B_1032> <time_offset_1033> 

<time_offset_1033> ::= <time_direction_1035> 
                       <time_direction_1035> <ZI_624> 

<time_interval_1034> ::= <ZEhA_622> 
                         <ZEhA_622> <time_direction_1035> 
                         <time_int_props_1036> 
                         <ZEhA_622> <time_int_props_1036> 
                         <ZEhA_622> <time_direction_1035> <time_int_props_1036> 

<time_direction_1035> ::= <PU_592> 
                          <PU_592> <NAI_581> 

<time_int_props_1036> ::= <interval_property_1051> 
                          <time_int_props_1036> <interval_property_1051> 

<space_1040> ::= <space_A_1042> 
                 <space_motion_1041> 
                 <space_A_1042> <space_motion_1041> 

<space_motion_1041> ::= <MOhI_577> <space_offset_1045> 

<space_A_1042> ::= <VA_613> 
                   <VA_613> <space_B_1043> 
                   <space_B_1043> 

<space_B_1043> ::= <space_C_1044> 
                   <space_intval_1046> 
                   <space_C_1044> <space_intval_1046> 

<space_C_1044> ::= <space_offset_1045> 
                   <space_C_1044> <space_offset_1045> 

<space_offset_1045> ::= <space_direction_1048> 
                        <space_direction_1048> <VA_613> 

<space_intval_1046> ::= <space_intval_A_1047> 
                        <space_intval_A_1047> <space_direction_1048> 
                        <space_int_props_1049> 
                        <space_intval_A_1047> <space_int_props_1049> 
                        <space_intval_A_1047> <space_direction_1048> <space_int_props_1049> 

<space_intval_A_1047> ::= <VEhA_615> 
                          <VIhA_616> 
                          <VEhA_615> <VIhA_616> 

<space_direction_1048> ::= <FAhA_528> 
                           <FAhA_528> <NAI_581> 

<space_int_props_1049> ::= <space_int_props_A_1050> 
                           <space_int_props_1049> <space_int_props_A_1050> 

<space_int_props_A_1050> ::= <FEhE_530> <interval_property_1051> 

<interval_property_1051> ::= <number_root_961> <ROI_594> 
                             <number_root_961> <ROI_594> <NAI_581> 
                             <TAhE_604> 
                             <TAhE_604> <NAI_581> 
                             <ZAhO_621> 
                             <ZAhO_621> <NAI_581>