isomorfeus-ferret 0.12.4 → 0.12.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +612 -612
  3. data/README.md +80 -48
  4. data/ext/isomorfeus_ferret_ext/bm_hash.c +9 -6
  5. data/ext/isomorfeus_ferret_ext/bm_micro_string.c +4 -2
  6. data/ext/isomorfeus_ferret_ext/frb_store.c +34 -5
  7. data/ext/isomorfeus_ferret_ext/frt_posh.h +11 -19
  8. data/ext/isomorfeus_ferret_ext/frt_q_parser.c +1844 -1911
  9. data/ext/isomorfeus_ferret_ext/frt_q_phrase.c +7 -7
  10. data/ext/isomorfeus_ferret_ext/frt_scanner.c +1 -0
  11. data/ext/isomorfeus_ferret_ext/frt_scanner_mb.c +1 -0
  12. data/ext/isomorfeus_ferret_ext/frt_scanner_utf8.c +1 -0
  13. data/ext/isomorfeus_ferret_ext/frt_search.h +1 -1
  14. data/ext/isomorfeus_ferret_ext/libstemmer.c +14 -11
  15. data/ext/isomorfeus_ferret_ext/libstemmer.h +4 -9
  16. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_basque.c +1167 -0
  17. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_basque.h +6 -0
  18. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_catalan.c +1433 -0
  19. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_catalan.h +6 -0
  20. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_danish.c +120 -143
  21. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_danish.h +1 -2
  22. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_dutch.c +217 -237
  23. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_dutch.h +1 -1
  24. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_english.c +377 -432
  25. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_english.h +1 -1
  26. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_finnish.c +298 -342
  27. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_finnish.h +1 -2
  28. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_french.c +530 -524
  29. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_french.h +1 -1
  30. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_german.c +201 -214
  31. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_german.h +1 -1
  32. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_hungarian.c +1 -1
  33. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_indonesian.c +394 -0
  34. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_indonesian.h +6 -0
  35. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_irish.c +457 -0
  36. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_irish.h +6 -0
  37. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_italian.c +396 -439
  38. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_italian.h +1 -1
  39. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_norwegian.c +104 -128
  40. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_norwegian.h +1 -1
  41. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_porter.c +242 -273
  42. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_porter.h +1 -1
  43. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_portuguese.c +406 -461
  44. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_portuguese.h +1 -2
  45. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_spanish.c +405 -456
  46. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_spanish.h +1 -1
  47. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_swedish.c +108 -126
  48. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_swedish.h +1 -1
  49. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_hungarian.c +849 -0
  50. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_hungarian.h +6 -0
  51. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_romanian.c +373 -405
  52. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_romanian.h +1 -1
  53. data/ext/isomorfeus_ferret_ext/stem_KOI8_R_russian.c +288 -305
  54. data/ext/isomorfeus_ferret_ext/stem_KOI8_R_russian.h +1 -1
  55. data/ext/isomorfeus_ferret_ext/stem_UTF_8_arabic.c +1651 -0
  56. data/ext/isomorfeus_ferret_ext/stem_UTF_8_arabic.h +6 -0
  57. data/ext/isomorfeus_ferret_ext/stem_UTF_8_armenian.c +546 -0
  58. data/ext/isomorfeus_ferret_ext/stem_UTF_8_armenian.h +6 -0
  59. data/ext/isomorfeus_ferret_ext/stem_UTF_8_basque.c +1171 -0
  60. data/ext/isomorfeus_ferret_ext/stem_UTF_8_basque.h +6 -0
  61. data/ext/isomorfeus_ferret_ext/stem_UTF_8_catalan.c +1436 -0
  62. data/ext/isomorfeus_ferret_ext/stem_UTF_8_catalan.h +6 -0
  63. data/ext/isomorfeus_ferret_ext/stem_UTF_8_danish.c +121 -141
  64. data/ext/isomorfeus_ferret_ext/stem_UTF_8_danish.h +1 -1
  65. data/ext/isomorfeus_ferret_ext/stem_UTF_8_dutch.c +221 -241
  66. data/ext/isomorfeus_ferret_ext/stem_UTF_8_dutch.h +1 -1
  67. data/ext/isomorfeus_ferret_ext/stem_UTF_8_english.c +381 -431
  68. data/ext/isomorfeus_ferret_ext/stem_UTF_8_english.h +1 -1
  69. data/ext/isomorfeus_ferret_ext/stem_UTF_8_finnish.c +300 -345
  70. data/ext/isomorfeus_ferret_ext/stem_UTF_8_finnish.h +1 -1
  71. data/ext/isomorfeus_ferret_ext/stem_UTF_8_french.c +518 -511
  72. data/ext/isomorfeus_ferret_ext/stem_UTF_8_french.h +1 -1
  73. data/ext/isomorfeus_ferret_ext/stem_UTF_8_german.c +201 -209
  74. data/ext/isomorfeus_ferret_ext/stem_UTF_8_german.h +1 -1
  75. data/ext/isomorfeus_ferret_ext/stem_UTF_8_greek.c +3660 -0
  76. data/ext/isomorfeus_ferret_ext/stem_UTF_8_greek.h +6 -0
  77. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hindi.c +309 -0
  78. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hindi.h +6 -0
  79. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hungarian.c +306 -671
  80. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hungarian.h +1 -1
  81. data/ext/isomorfeus_ferret_ext/stem_UTF_8_indonesian.c +394 -0
  82. data/ext/isomorfeus_ferret_ext/stem_UTF_8_indonesian.h +6 -0
  83. data/ext/isomorfeus_ferret_ext/stem_UTF_8_irish.c +457 -0
  84. data/ext/isomorfeus_ferret_ext/stem_UTF_8_irish.h +6 -0
  85. data/ext/isomorfeus_ferret_ext/stem_UTF_8_italian.c +400 -442
  86. data/ext/isomorfeus_ferret_ext/stem_UTF_8_italian.h +1 -1
  87. data/ext/isomorfeus_ferret_ext/stem_UTF_8_lithuanian.c +824 -0
  88. data/ext/isomorfeus_ferret_ext/stem_UTF_8_lithuanian.h +6 -0
  89. data/ext/isomorfeus_ferret_ext/stem_UTF_8_nepali.c +408 -0
  90. data/ext/isomorfeus_ferret_ext/stem_UTF_8_nepali.h +6 -0
  91. data/ext/isomorfeus_ferret_ext/stem_UTF_8_norwegian.c +105 -127
  92. data/ext/isomorfeus_ferret_ext/stem_UTF_8_norwegian.h +1 -1
  93. data/ext/isomorfeus_ferret_ext/stem_UTF_8_porter.c +245 -276
  94. data/ext/isomorfeus_ferret_ext/stem_UTF_8_porter.h +1 -1
  95. data/ext/isomorfeus_ferret_ext/stem_UTF_8_portuguese.c +409 -464
  96. data/ext/isomorfeus_ferret_ext/stem_UTF_8_portuguese.h +1 -1
  97. data/ext/isomorfeus_ferret_ext/stem_UTF_8_romanian.c +376 -408
  98. data/ext/isomorfeus_ferret_ext/stem_UTF_8_romanian.h +1 -1
  99. data/ext/isomorfeus_ferret_ext/stem_UTF_8_russian.c +272 -287
  100. data/ext/isomorfeus_ferret_ext/stem_UTF_8_russian.h +1 -1
  101. data/ext/isomorfeus_ferret_ext/stem_UTF_8_serbian.c +6530 -0
  102. data/ext/isomorfeus_ferret_ext/stem_UTF_8_serbian.h +6 -0
  103. data/ext/isomorfeus_ferret_ext/stem_UTF_8_spanish.c +407 -458
  104. data/ext/isomorfeus_ferret_ext/stem_UTF_8_spanish.h +1 -1
  105. data/ext/isomorfeus_ferret_ext/stem_UTF_8_swedish.c +110 -125
  106. data/ext/isomorfeus_ferret_ext/stem_UTF_8_swedish.h +1 -1
  107. data/ext/isomorfeus_ferret_ext/stem_UTF_8_tamil.c +1865 -0
  108. data/ext/isomorfeus_ferret_ext/stem_UTF_8_tamil.h +6 -0
  109. data/ext/isomorfeus_ferret_ext/stem_UTF_8_turkish.c +698 -806
  110. data/ext/isomorfeus_ferret_ext/stem_UTF_8_turkish.h +1 -1
  111. data/ext/isomorfeus_ferret_ext/stem_UTF_8_yiddish.c +1220 -0
  112. data/ext/isomorfeus_ferret_ext/stem_UTF_8_yiddish.h +6 -0
  113. data/ext/isomorfeus_ferret_ext/stem_api.c +1 -9
  114. data/ext/isomorfeus_ferret_ext/stem_api.h +1 -3
  115. data/ext/isomorfeus_ferret_ext/stem_header.h +30 -26
  116. data/ext/isomorfeus_ferret_ext/stem_modules.h +113 -26
  117. data/ext/isomorfeus_ferret_ext/stem_modules.txt +18 -5
  118. data/ext/isomorfeus_ferret_ext/stem_utilities.c +167 -132
  119. data/ext/isomorfeus_ferret_ext/test.c +7 -1
  120. data/ext/isomorfeus_ferret_ext/test_search.c +0 -1
  121. data/lib/isomorfeus/ferret/version.rb +1 -1
  122. metadata +39 -4
  123. data/ext/isomorfeus_ferret_ext/q_parser.y +0 -1366
@@ -1,4 +1,4 @@
1
- /* This file was generated automatically by the Snowball to ANSI C compiler */
1
+ /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
2
2
 
3
3
  #include "stem_header.h"
4
4
 
@@ -33,14 +33,14 @@ static const symbol s_0_7[2] = { 'z', 's' };
33
33
 
34
34
  static const struct among a_0[8] =
35
35
  {
36
- /* 0 */ { 2, s_0_0, -1, -1, 0},
37
- /* 1 */ { 3, s_0_1, -1, -1, 0},
38
- /* 2 */ { 2, s_0_2, -1, -1, 0},
39
- /* 3 */ { 2, s_0_3, -1, -1, 0},
40
- /* 4 */ { 2, s_0_4, -1, -1, 0},
41
- /* 5 */ { 2, s_0_5, -1, -1, 0},
42
- /* 6 */ { 2, s_0_6, -1, -1, 0},
43
- /* 7 */ { 2, s_0_7, -1, -1, 0}
36
+ { 2, s_0_0, -1, -1, 0},
37
+ { 3, s_0_1, -1, -1, 0},
38
+ { 2, s_0_2, -1, -1, 0},
39
+ { 2, s_0_3, -1, -1, 0},
40
+ { 2, s_0_4, -1, -1, 0},
41
+ { 2, s_0_5, -1, -1, 0},
42
+ { 2, s_0_6, -1, -1, 0},
43
+ { 2, s_0_7, -1, -1, 0}
44
44
  };
45
45
 
46
46
  static const symbol s_1_0[2] = { 0xC3, 0xA1 };
@@ -48,8 +48,8 @@ static const symbol s_1_1[2] = { 0xC3, 0xA9 };
48
48
 
49
49
  static const struct among a_1[2] =
50
50
  {
51
- /* 0 */ { 2, s_1_0, -1, 1, 0},
52
- /* 1 */ { 2, s_1_1, -1, 2, 0}
51
+ { 2, s_1_0, -1, 1, 0},
52
+ { 2, s_1_1, -1, 2, 0}
53
53
  };
54
54
 
55
55
  static const symbol s_2_0[2] = { 'b', 'b' };
@@ -78,29 +78,29 @@ static const symbol s_2_22[2] = { 'z', 'z' };
78
78
 
79
79
  static const struct among a_2[23] =
80
80
  {
81
- /* 0 */ { 2, s_2_0, -1, -1, 0},
82
- /* 1 */ { 2, s_2_1, -1, -1, 0},
83
- /* 2 */ { 2, s_2_2, -1, -1, 0},
84
- /* 3 */ { 2, s_2_3, -1, -1, 0},
85
- /* 4 */ { 2, s_2_4, -1, -1, 0},
86
- /* 5 */ { 2, s_2_5, -1, -1, 0},
87
- /* 6 */ { 2, s_2_6, -1, -1, 0},
88
- /* 7 */ { 2, s_2_7, -1, -1, 0},
89
- /* 8 */ { 2, s_2_8, -1, -1, 0},
90
- /* 9 */ { 2, s_2_9, -1, -1, 0},
91
- /* 10 */ { 2, s_2_10, -1, -1, 0},
92
- /* 11 */ { 2, s_2_11, -1, -1, 0},
93
- /* 12 */ { 3, s_2_12, -1, -1, 0},
94
- /* 13 */ { 2, s_2_13, -1, -1, 0},
95
- /* 14 */ { 3, s_2_14, -1, -1, 0},
96
- /* 15 */ { 2, s_2_15, -1, -1, 0},
97
- /* 16 */ { 2, s_2_16, -1, -1, 0},
98
- /* 17 */ { 3, s_2_17, -1, -1, 0},
99
- /* 18 */ { 3, s_2_18, -1, -1, 0},
100
- /* 19 */ { 3, s_2_19, -1, -1, 0},
101
- /* 20 */ { 3, s_2_20, -1, -1, 0},
102
- /* 21 */ { 3, s_2_21, -1, -1, 0},
103
- /* 22 */ { 2, s_2_22, -1, -1, 0}
81
+ { 2, s_2_0, -1, -1, 0},
82
+ { 2, s_2_1, -1, -1, 0},
83
+ { 2, s_2_2, -1, -1, 0},
84
+ { 2, s_2_3, -1, -1, 0},
85
+ { 2, s_2_4, -1, -1, 0},
86
+ { 2, s_2_5, -1, -1, 0},
87
+ { 2, s_2_6, -1, -1, 0},
88
+ { 2, s_2_7, -1, -1, 0},
89
+ { 2, s_2_8, -1, -1, 0},
90
+ { 2, s_2_9, -1, -1, 0},
91
+ { 2, s_2_10, -1, -1, 0},
92
+ { 2, s_2_11, -1, -1, 0},
93
+ { 3, s_2_12, -1, -1, 0},
94
+ { 2, s_2_13, -1, -1, 0},
95
+ { 3, s_2_14, -1, -1, 0},
96
+ { 2, s_2_15, -1, -1, 0},
97
+ { 2, s_2_16, -1, -1, 0},
98
+ { 3, s_2_17, -1, -1, 0},
99
+ { 3, s_2_18, -1, -1, 0},
100
+ { 3, s_2_19, -1, -1, 0},
101
+ { 3, s_2_20, -1, -1, 0},
102
+ { 3, s_2_21, -1, -1, 0},
103
+ { 2, s_2_22, -1, -1, 0}
104
104
  };
105
105
 
106
106
  static const symbol s_3_0[2] = { 'a', 'l' };
@@ -108,8 +108,8 @@ static const symbol s_3_1[2] = { 'e', 'l' };
108
108
 
109
109
  static const struct among a_3[2] =
110
110
  {
111
- /* 0 */ { 2, s_3_0, -1, 1, 0},
112
- /* 1 */ { 2, s_3_1, -1, 2, 0}
111
+ { 2, s_3_0, -1, 1, 0},
112
+ { 2, s_3_1, -1, 1, 0}
113
113
  };
114
114
 
115
115
  static const symbol s_4_0[2] = { 'b', 'a' };
@@ -122,14 +122,14 @@ static const symbol s_4_6[3] = { 'n', 'e', 'k' };
122
122
  static const symbol s_4_7[3] = { 'v', 'a', 'l' };
123
123
  static const symbol s_4_8[3] = { 'v', 'e', 'l' };
124
124
  static const symbol s_4_9[2] = { 'u', 'l' };
125
- static const symbol s_4_10[4] = { 'n', 0xC3, 0xA1, 'l' };
126
- static const symbol s_4_11[4] = { 'n', 0xC3, 0xA9, 'l' };
127
- static const symbol s_4_12[4] = { 'b', 0xC3, 0xB3, 'l' };
128
- static const symbol s_4_13[4] = { 'r', 0xC3, 0xB3, 'l' };
129
- static const symbol s_4_14[4] = { 't', 0xC3, 0xB3, 'l' };
130
- static const symbol s_4_15[4] = { 'b', 0xC3, 0xB5, 'l' };
131
- static const symbol s_4_16[4] = { 'r', 0xC3, 0xB5, 'l' };
132
- static const symbol s_4_17[4] = { 't', 0xC3, 0xB5, 'l' };
125
+ static const symbol s_4_10[4] = { 'b', 0xC5, 0x91, 'l' };
126
+ static const symbol s_4_11[4] = { 'r', 0xC5, 0x91, 'l' };
127
+ static const symbol s_4_12[4] = { 't', 0xC5, 0x91, 'l' };
128
+ static const symbol s_4_13[4] = { 'n', 0xC3, 0xA1, 'l' };
129
+ static const symbol s_4_14[4] = { 'n', 0xC3, 0xA9, 'l' };
130
+ static const symbol s_4_15[4] = { 'b', 0xC3, 0xB3, 'l' };
131
+ static const symbol s_4_16[4] = { 'r', 0xC3, 0xB3, 'l' };
132
+ static const symbol s_4_17[4] = { 't', 0xC3, 0xB3, 'l' };
133
133
  static const symbol s_4_18[3] = { 0xC3, 0xBC, 'l' };
134
134
  static const symbol s_4_19[1] = { 'n' };
135
135
  static const symbol s_4_20[2] = { 'a', 'n' };
@@ -159,50 +159,50 @@ static const symbol s_4_43[3] = { 'v', 0xC3, 0xA9 };
159
159
 
160
160
  static const struct among a_4[44] =
161
161
  {
162
- /* 0 */ { 2, s_4_0, -1, -1, 0},
163
- /* 1 */ { 2, s_4_1, -1, -1, 0},
164
- /* 2 */ { 2, s_4_2, -1, -1, 0},
165
- /* 3 */ { 2, s_4_3, -1, -1, 0},
166
- /* 4 */ { 2, s_4_4, -1, -1, 0},
167
- /* 5 */ { 3, s_4_5, -1, -1, 0},
168
- /* 6 */ { 3, s_4_6, -1, -1, 0},
169
- /* 7 */ { 3, s_4_7, -1, -1, 0},
170
- /* 8 */ { 3, s_4_8, -1, -1, 0},
171
- /* 9 */ { 2, s_4_9, -1, -1, 0},
172
- /* 10 */ { 4, s_4_10, -1, -1, 0},
173
- /* 11 */ { 4, s_4_11, -1, -1, 0},
174
- /* 12 */ { 4, s_4_12, -1, -1, 0},
175
- /* 13 */ { 4, s_4_13, -1, -1, 0},
176
- /* 14 */ { 4, s_4_14, -1, -1, 0},
177
- /* 15 */ { 4, s_4_15, -1, -1, 0},
178
- /* 16 */ { 4, s_4_16, -1, -1, 0},
179
- /* 17 */ { 4, s_4_17, -1, -1, 0},
180
- /* 18 */ { 3, s_4_18, -1, -1, 0},
181
- /* 19 */ { 1, s_4_19, -1, -1, 0},
182
- /* 20 */ { 2, s_4_20, 19, -1, 0},
183
- /* 21 */ { 3, s_4_21, 20, -1, 0},
184
- /* 22 */ { 2, s_4_22, 19, -1, 0},
185
- /* 23 */ { 3, s_4_23, 22, -1, 0},
186
- /* 24 */ { 7, s_4_24, 22, -1, 0},
187
- /* 25 */ { 2, s_4_25, 19, -1, 0},
188
- /* 26 */ { 3, s_4_26, 19, -1, 0},
189
- /* 27 */ { 5, s_4_27, -1, -1, 0},
190
- /* 28 */ { 3, s_4_28, -1, -1, 0},
191
- /* 29 */ { 1, s_4_29, -1, -1, 0},
192
- /* 30 */ { 2, s_4_30, 29, -1, 0},
193
- /* 31 */ { 2, s_4_31, 29, -1, 0},
194
- /* 32 */ { 5, s_4_32, 29, -1, 0},
195
- /* 33 */ { 7, s_4_33, 32, -1, 0},
196
- /* 34 */ { 7, s_4_34, 32, -1, 0},
197
- /* 35 */ { 7, s_4_35, 32, -1, 0},
198
- /* 36 */ { 2, s_4_36, 29, -1, 0},
199
- /* 37 */ { 4, s_4_37, 29, -1, 0},
200
- /* 38 */ { 3, s_4_38, 29, -1, 0},
201
- /* 39 */ { 3, s_4_39, -1, -1, 0},
202
- /* 40 */ { 3, s_4_40, -1, -1, 0},
203
- /* 41 */ { 4, s_4_41, -1, -1, 0},
204
- /* 42 */ { 3, s_4_42, -1, -1, 0},
205
- /* 43 */ { 3, s_4_43, -1, -1, 0}
162
+ { 2, s_4_0, -1, -1, 0},
163
+ { 2, s_4_1, -1, -1, 0},
164
+ { 2, s_4_2, -1, -1, 0},
165
+ { 2, s_4_3, -1, -1, 0},
166
+ { 2, s_4_4, -1, -1, 0},
167
+ { 3, s_4_5, -1, -1, 0},
168
+ { 3, s_4_6, -1, -1, 0},
169
+ { 3, s_4_7, -1, -1, 0},
170
+ { 3, s_4_8, -1, -1, 0},
171
+ { 2, s_4_9, -1, -1, 0},
172
+ { 4, s_4_10, -1, -1, 0},
173
+ { 4, s_4_11, -1, -1, 0},
174
+ { 4, s_4_12, -1, -1, 0},
175
+ { 4, s_4_13, -1, -1, 0},
176
+ { 4, s_4_14, -1, -1, 0},
177
+ { 4, s_4_15, -1, -1, 0},
178
+ { 4, s_4_16, -1, -1, 0},
179
+ { 4, s_4_17, -1, -1, 0},
180
+ { 3, s_4_18, -1, -1, 0},
181
+ { 1, s_4_19, -1, -1, 0},
182
+ { 2, s_4_20, 19, -1, 0},
183
+ { 3, s_4_21, 20, -1, 0},
184
+ { 2, s_4_22, 19, -1, 0},
185
+ { 3, s_4_23, 22, -1, 0},
186
+ { 7, s_4_24, 22, -1, 0},
187
+ { 2, s_4_25, 19, -1, 0},
188
+ { 3, s_4_26, 19, -1, 0},
189
+ { 5, s_4_27, -1, -1, 0},
190
+ { 3, s_4_28, -1, -1, 0},
191
+ { 1, s_4_29, -1, -1, 0},
192
+ { 2, s_4_30, 29, -1, 0},
193
+ { 2, s_4_31, 29, -1, 0},
194
+ { 5, s_4_32, 29, -1, 0},
195
+ { 7, s_4_33, 32, -1, 0},
196
+ { 7, s_4_34, 32, -1, 0},
197
+ { 7, s_4_35, 32, -1, 0},
198
+ { 2, s_4_36, 29, -1, 0},
199
+ { 4, s_4_37, 29, -1, 0},
200
+ { 3, s_4_38, 29, -1, 0},
201
+ { 3, s_4_39, -1, -1, 0},
202
+ { 3, s_4_40, -1, -1, 0},
203
+ { 4, s_4_41, -1, -1, 0},
204
+ { 3, s_4_42, -1, -1, 0},
205
+ { 3, s_4_43, -1, -1, 0}
206
206
  };
207
207
 
208
208
  static const symbol s_5_0[3] = { 0xC3, 0xA1, 'n' };
@@ -211,9 +211,9 @@ static const symbol s_5_2[8] = { 0xC3, 0xA1, 'n', 'k', 0xC3, 0xA9, 'n', 't' };
211
211
 
212
212
  static const struct among a_5[3] =
213
213
  {
214
- /* 0 */ { 3, s_5_0, -1, 2, 0},
215
- /* 1 */ { 3, s_5_1, -1, 1, 0},
216
- /* 2 */ { 8, s_5_2, -1, 3, 0}
214
+ { 3, s_5_0, -1, 2, 0},
215
+ { 3, s_5_1, -1, 1, 0},
216
+ { 8, s_5_2, -1, 2, 0}
217
217
  };
218
218
 
219
219
  static const symbol s_6_0[4] = { 's', 't', 'u', 'l' };
@@ -225,12 +225,12 @@ static const symbol s_6_5[7] = { 0xC3, 0xA9, 's', 't', 0xC3, 0xBC, 'l' };
225
225
 
226
226
  static const struct among a_6[6] =
227
227
  {
228
- /* 0 */ { 4, s_6_0, -1, 2, 0},
229
- /* 1 */ { 5, s_6_1, 0, 1, 0},
230
- /* 2 */ { 6, s_6_2, 0, 3, 0},
231
- /* 3 */ { 5, s_6_3, -1, 2, 0},
232
- /* 4 */ { 6, s_6_4, 3, 1, 0},
233
- /* 5 */ { 7, s_6_5, 3, 4, 0}
228
+ { 4, s_6_0, -1, 1, 0},
229
+ { 5, s_6_1, 0, 1, 0},
230
+ { 6, s_6_2, 0, 2, 0},
231
+ { 5, s_6_3, -1, 1, 0},
232
+ { 6, s_6_4, 3, 1, 0},
233
+ { 7, s_6_5, 3, 3, 0}
234
234
  };
235
235
 
236
236
  static const symbol s_7_0[2] = { 0xC3, 0xA1 };
@@ -238,8 +238,8 @@ static const symbol s_7_1[2] = { 0xC3, 0xA9 };
238
238
 
239
239
  static const struct among a_7[2] =
240
240
  {
241
- /* 0 */ { 2, s_7_0, -1, 1, 0},
242
- /* 1 */ { 2, s_7_1, -1, 2, 0}
241
+ { 2, s_7_0, -1, 1, 0},
242
+ { 2, s_7_1, -1, 1, 0}
243
243
  };
244
244
 
245
245
  static const symbol s_8_0[1] = { 'k' };
@@ -252,13 +252,13 @@ static const symbol s_8_6[3] = { 0xC3, 0xB6, 'k' };
252
252
 
253
253
  static const struct among a_8[7] =
254
254
  {
255
- /* 0 */ { 1, s_8_0, -1, 7, 0},
256
- /* 1 */ { 2, s_8_1, 0, 4, 0},
257
- /* 2 */ { 2, s_8_2, 0, 6, 0},
258
- /* 3 */ { 2, s_8_3, 0, 5, 0},
259
- /* 4 */ { 3, s_8_4, 0, 1, 0},
260
- /* 5 */ { 3, s_8_5, 0, 2, 0},
261
- /* 6 */ { 3, s_8_6, 0, 3, 0}
255
+ { 1, s_8_0, -1, 3, 0},
256
+ { 2, s_8_1, 0, 3, 0},
257
+ { 2, s_8_2, 0, 3, 0},
258
+ { 2, s_8_3, 0, 3, 0},
259
+ { 3, s_8_4, 0, 1, 0},
260
+ { 3, s_8_5, 0, 2, 0},
261
+ { 3, s_8_6, 0, 3, 0}
262
262
  };
263
263
 
264
264
  static const symbol s_9_0[3] = { 0xC3, 0xA9, 'i' };
@@ -276,18 +276,18 @@ static const symbol s_9_11[4] = { 0xC3, 0xA9, 0xC3, 0xA9 };
276
276
 
277
277
  static const struct among a_9[12] =
278
278
  {
279
- /* 0 */ { 3, s_9_0, -1, 7, 0},
280
- /* 1 */ { 5, s_9_1, 0, 6, 0},
281
- /* 2 */ { 5, s_9_2, 0, 5, 0},
282
- /* 3 */ { 2, s_9_3, -1, 9, 0},
283
- /* 4 */ { 3, s_9_4, 3, 4, 0},
284
- /* 5 */ { 4, s_9_5, 4, 1, 0},
285
- /* 6 */ { 4, s_9_6, 4, 1, 0},
286
- /* 7 */ { 4, s_9_7, 4, 1, 0},
287
- /* 8 */ { 5, s_9_8, 4, 3, 0},
288
- /* 9 */ { 5, s_9_9, 4, 2, 0},
289
- /* 10 */ { 5, s_9_10, 4, 1, 0},
290
- /* 11 */ { 4, s_9_11, 3, 8, 0}
279
+ { 3, s_9_0, -1, 1, 0},
280
+ { 5, s_9_1, 0, 3, 0},
281
+ { 5, s_9_2, 0, 2, 0},
282
+ { 2, s_9_3, -1, 1, 0},
283
+ { 3, s_9_4, 3, 1, 0},
284
+ { 4, s_9_5, 4, 1, 0},
285
+ { 4, s_9_6, 4, 1, 0},
286
+ { 4, s_9_7, 4, 1, 0},
287
+ { 5, s_9_8, 4, 3, 0},
288
+ { 5, s_9_9, 4, 2, 0},
289
+ { 5, s_9_10, 4, 1, 0},
290
+ { 4, s_9_11, 3, 2, 0}
291
291
  };
292
292
 
293
293
  static const symbol s_10_0[1] = { 'a' };
@@ -324,37 +324,37 @@ static const symbol s_10_30[2] = { 0xC3, 0xA9 };
324
324
 
325
325
  static const struct among a_10[31] =
326
326
  {
327
- /* 0 */ { 1, s_10_0, -1, 18, 0},
328
- /* 1 */ { 2, s_10_1, 0, 17, 0},
329
- /* 2 */ { 1, s_10_2, -1, 16, 0},
330
- /* 3 */ { 2, s_10_3, 2, 13, 0},
331
- /* 4 */ { 2, s_10_4, 2, 13, 0},
332
- /* 5 */ { 2, s_10_5, 2, 13, 0},
333
- /* 6 */ { 3, s_10_6, 2, 14, 0},
334
- /* 7 */ { 3, s_10_7, 2, 15, 0},
335
- /* 8 */ { 3, s_10_8, 2, 13, 0},
336
- /* 9 */ { 1, s_10_9, -1, 18, 0},
337
- /* 10 */ { 2, s_10_10, 9, 17, 0},
338
- /* 11 */ { 2, s_10_11, -1, 4, 0},
339
- /* 12 */ { 3, s_10_12, 11, 1, 0},
340
- /* 13 */ { 4, s_10_13, 11, 2, 0},
341
- /* 14 */ { 4, s_10_14, 11, 3, 0},
342
- /* 15 */ { 4, s_10_15, 11, 1, 0},
343
- /* 16 */ { 2, s_10_16, -1, 8, 0},
344
- /* 17 */ { 3, s_10_17, 16, 7, 0},
345
- /* 18 */ { 5, s_10_18, 17, 5, 0},
346
- /* 19 */ { 3, s_10_19, -1, 8, 0},
347
- /* 20 */ { 4, s_10_20, 19, 7, 0},
348
- /* 21 */ { 6, s_10_21, 20, 6, 0},
349
- /* 22 */ { 1, s_10_22, -1, 12, 0},
350
- /* 23 */ { 2, s_10_23, 22, 9, 0},
351
- /* 24 */ { 2, s_10_24, 22, 9, 0},
352
- /* 25 */ { 2, s_10_25, 22, 9, 0},
353
- /* 26 */ { 3, s_10_26, 22, 10, 0},
354
- /* 27 */ { 3, s_10_27, 22, 11, 0},
355
- /* 28 */ { 1, s_10_28, -1, 18, 0},
356
- /* 29 */ { 2, s_10_29, -1, 19, 0},
357
- /* 30 */ { 2, s_10_30, -1, 20, 0}
327
+ { 1, s_10_0, -1, 1, 0},
328
+ { 2, s_10_1, 0, 1, 0},
329
+ { 1, s_10_2, -1, 1, 0},
330
+ { 2, s_10_3, 2, 1, 0},
331
+ { 2, s_10_4, 2, 1, 0},
332
+ { 2, s_10_5, 2, 1, 0},
333
+ { 3, s_10_6, 2, 2, 0},
334
+ { 3, s_10_7, 2, 3, 0},
335
+ { 3, s_10_8, 2, 1, 0},
336
+ { 1, s_10_9, -1, 1, 0},
337
+ { 2, s_10_10, 9, 1, 0},
338
+ { 2, s_10_11, -1, 1, 0},
339
+ { 3, s_10_12, 11, 1, 0},
340
+ { 4, s_10_13, 11, 2, 0},
341
+ { 4, s_10_14, 11, 3, 0},
342
+ { 4, s_10_15, 11, 1, 0},
343
+ { 2, s_10_16, -1, 1, 0},
344
+ { 3, s_10_17, 16, 1, 0},
345
+ { 5, s_10_18, 17, 2, 0},
346
+ { 3, s_10_19, -1, 1, 0},
347
+ { 4, s_10_20, 19, 1, 0},
348
+ { 6, s_10_21, 20, 3, 0},
349
+ { 1, s_10_22, -1, 1, 0},
350
+ { 2, s_10_23, 22, 1, 0},
351
+ { 2, s_10_24, 22, 1, 0},
352
+ { 2, s_10_25, 22, 1, 0},
353
+ { 3, s_10_26, 22, 2, 0},
354
+ { 3, s_10_27, 22, 3, 0},
355
+ { 1, s_10_28, -1, 1, 0},
356
+ { 2, s_10_29, -1, 2, 0},
357
+ { 2, s_10_30, -1, 3, 0}
358
358
  };
359
359
 
360
360
  static const symbol s_11_0[2] = { 'i', 'd' };
@@ -402,117 +402,95 @@ static const symbol s_11_41[4] = { 0xC3, 0xA9, 'i', 'm' };
402
402
 
403
403
  static const struct among a_11[42] =
404
404
  {
405
- /* 0 */ { 2, s_11_0, -1, 10, 0},
406
- /* 1 */ { 3, s_11_1, 0, 9, 0},
407
- /* 2 */ { 4, s_11_2, 1, 6, 0},
408
- /* 3 */ { 3, s_11_3, 0, 9, 0},
409
- /* 4 */ { 4, s_11_4, 3, 6, 0},
410
- /* 5 */ { 4, s_11_5, 0, 7, 0},
411
- /* 6 */ { 4, s_11_6, 0, 8, 0},
412
- /* 7 */ { 1, s_11_7, -1, 15, 0},
413
- /* 8 */ { 2, s_11_8, 7, 14, 0},
414
- /* 9 */ { 3, s_11_9, 8, 11, 0},
415
- /* 10 */ { 2, s_11_10, 7, 14, 0},
416
- /* 11 */ { 3, s_11_11, 10, 11, 0},
417
- /* 12 */ { 3, s_11_12, 7, 12, 0},
418
- /* 13 */ { 3, s_11_13, 7, 13, 0},
419
- /* 14 */ { 4, s_11_14, -1, 24, 0},
420
- /* 15 */ { 5, s_11_15, 14, 21, 0},
421
- /* 16 */ { 6, s_11_16, 15, 20, 0},
422
- /* 17 */ { 6, s_11_17, 14, 23, 0},
423
- /* 18 */ { 2, s_11_18, -1, 29, 0},
424
- /* 19 */ { 3, s_11_19, 18, 26, 0},
425
- /* 20 */ { 4, s_11_20, 19, 25, 0},
426
- /* 21 */ { 3, s_11_21, 18, 26, 0},
427
- /* 22 */ { 4, s_11_22, 21, 25, 0},
428
- /* 23 */ { 4, s_11_23, 18, 27, 0},
429
- /* 24 */ { 4, s_11_24, 18, 28, 0},
430
- /* 25 */ { 3, s_11_25, -1, 20, 0},
431
- /* 26 */ { 4, s_11_26, 25, 17, 0},
432
- /* 27 */ { 5, s_11_27, 26, 16, 0},
433
- /* 28 */ { 4, s_11_28, 25, 17, 0},
434
- /* 29 */ { 5, s_11_29, 28, 16, 0},
435
- /* 30 */ { 5, s_11_30, 25, 18, 0},
436
- /* 31 */ { 5, s_11_31, 25, 19, 0},
437
- /* 32 */ { 5, s_11_32, -1, 21, 0},
438
- /* 33 */ { 6, s_11_33, 32, 20, 0},
439
- /* 34 */ { 6, s_11_34, -1, 22, 0},
440
- /* 35 */ { 2, s_11_35, -1, 5, 0},
441
- /* 36 */ { 3, s_11_36, 35, 4, 0},
442
- /* 37 */ { 4, s_11_37, 36, 1, 0},
443
- /* 38 */ { 3, s_11_38, 35, 4, 0},
444
- /* 39 */ { 4, s_11_39, 38, 1, 0},
445
- /* 40 */ { 4, s_11_40, 35, 2, 0},
446
- /* 41 */ { 4, s_11_41, 35, 3, 0}
405
+ { 2, s_11_0, -1, 1, 0},
406
+ { 3, s_11_1, 0, 1, 0},
407
+ { 4, s_11_2, 1, 1, 0},
408
+ { 3, s_11_3, 0, 1, 0},
409
+ { 4, s_11_4, 3, 1, 0},
410
+ { 4, s_11_5, 0, 2, 0},
411
+ { 4, s_11_6, 0, 3, 0},
412
+ { 1, s_11_7, -1, 1, 0},
413
+ { 2, s_11_8, 7, 1, 0},
414
+ { 3, s_11_9, 8, 1, 0},
415
+ { 2, s_11_10, 7, 1, 0},
416
+ { 3, s_11_11, 10, 1, 0},
417
+ { 3, s_11_12, 7, 2, 0},
418
+ { 3, s_11_13, 7, 3, 0},
419
+ { 4, s_11_14, -1, 1, 0},
420
+ { 5, s_11_15, 14, 1, 0},
421
+ { 6, s_11_16, 15, 1, 0},
422
+ { 6, s_11_17, 14, 3, 0},
423
+ { 2, s_11_18, -1, 1, 0},
424
+ { 3, s_11_19, 18, 1, 0},
425
+ { 4, s_11_20, 19, 1, 0},
426
+ { 3, s_11_21, 18, 1, 0},
427
+ { 4, s_11_22, 21, 1, 0},
428
+ { 4, s_11_23, 18, 2, 0},
429
+ { 4, s_11_24, 18, 3, 0},
430
+ { 3, s_11_25, -1, 1, 0},
431
+ { 4, s_11_26, 25, 1, 0},
432
+ { 5, s_11_27, 26, 1, 0},
433
+ { 4, s_11_28, 25, 1, 0},
434
+ { 5, s_11_29, 28, 1, 0},
435
+ { 5, s_11_30, 25, 2, 0},
436
+ { 5, s_11_31, 25, 3, 0},
437
+ { 5, s_11_32, -1, 1, 0},
438
+ { 6, s_11_33, 32, 1, 0},
439
+ { 6, s_11_34, -1, 2, 0},
440
+ { 2, s_11_35, -1, 1, 0},
441
+ { 3, s_11_36, 35, 1, 0},
442
+ { 4, s_11_37, 36, 1, 0},
443
+ { 3, s_11_38, 35, 1, 0},
444
+ { 4, s_11_39, 38, 1, 0},
445
+ { 4, s_11_40, 35, 2, 0},
446
+ { 4, s_11_41, 35, 3, 0}
447
447
  };
448
448
 
449
- static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 52, 14 };
449
+ static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 36, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1 };
450
450
 
451
451
  static const symbol s_0[] = { 'a' };
452
452
  static const symbol s_1[] = { 'e' };
453
453
  static const symbol s_2[] = { 'e' };
454
454
  static const symbol s_3[] = { 'a' };
455
455
  static const symbol s_4[] = { 'a' };
456
- static const symbol s_5[] = { 'a' };
457
- static const symbol s_6[] = { 'e' };
458
- static const symbol s_7[] = { 'a' };
456
+ static const symbol s_5[] = { 'e' };
457
+ static const symbol s_6[] = { 'a' };
458
+ static const symbol s_7[] = { 'e' };
459
459
  static const symbol s_8[] = { 'e' };
460
- static const symbol s_9[] = { 'e' };
460
+ static const symbol s_9[] = { 'a' };
461
461
  static const symbol s_10[] = { 'a' };
462
462
  static const symbol s_11[] = { 'e' };
463
463
  static const symbol s_12[] = { 'a' };
464
464
  static const symbol s_13[] = { 'e' };
465
- static const symbol s_14[] = { 'a' };
466
- static const symbol s_15[] = { 'e' };
467
- static const symbol s_16[] = { 'a' };
468
- static const symbol s_17[] = { 'e' };
469
- static const symbol s_18[] = { 'a' };
470
- static const symbol s_19[] = { 'e' };
471
- static const symbol s_20[] = { 'a' };
472
- static const symbol s_21[] = { 'e' };
473
- static const symbol s_22[] = { 'a' };
474
- static const symbol s_23[] = { 'e' };
475
- static const symbol s_24[] = { 'a' };
476
- static const symbol s_25[] = { 'e' };
477
- static const symbol s_26[] = { 'a' };
478
- static const symbol s_27[] = { 'e' };
479
- static const symbol s_28[] = { 'a' };
480
- static const symbol s_29[] = { 'e' };
481
- static const symbol s_30[] = { 'a' };
482
- static const symbol s_31[] = { 'e' };
483
- static const symbol s_32[] = { 'a' };
484
- static const symbol s_33[] = { 'e' };
485
- static const symbol s_34[] = { 'a' };
486
- static const symbol s_35[] = { 'e' };
487
465
 
488
466
  static int r_mark_regions(struct SN_env * z) {
489
467
  z->I[0] = z->l;
490
- { int c1 = z->c; /* or, line 51 */
491
- if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab1;
492
- if (in_grouping_U(z, g_v, 97, 252, 1) < 0) goto lab1; /* goto */ /* non v, line 48 */
493
- { int c2 = z->c; /* or, line 49 */
468
+ { int c1 = z->c;
469
+ if (in_grouping_U(z, g_v, 97, 369, 0)) goto lab1;
470
+ if (in_grouping_U(z, g_v, 97, 369, 1) < 0) goto lab1;
471
+ { int c2 = z->c;
494
472
  if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3;
495
- if (!(find_among(z, a_0, 8))) goto lab3; /* among, line 49 */
473
+ if (!(find_among(z, a_0, 8))) goto lab3;
496
474
  goto lab2;
497
475
  lab3:
498
476
  z->c = c2;
499
- { int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
477
+ { int ret = skip_utf8(z->p, z->c, z->l, 1);
500
478
  if (ret < 0) goto lab1;
501
- z->c = ret; /* next, line 49 */
479
+ z->c = ret;
502
480
  }
503
481
  }
504
482
  lab2:
505
- z->I[0] = z->c; /* setmark p1, line 50 */
483
+ z->I[0] = z->c;
506
484
  goto lab0;
507
485
  lab1:
508
486
  z->c = c1;
509
- if (out_grouping_U(z, g_v, 97, 252, 0)) return 0;
510
- { /* gopast */ /* grouping v, line 53 */
511
- int ret = out_grouping_U(z, g_v, 97, 252, 1);
487
+ if (out_grouping_U(z, g_v, 97, 369, 0)) return 0;
488
+ {
489
+ int ret = out_grouping_U(z, g_v, 97, 369, 1);
512
490
  if (ret < 0) return 0;
513
491
  z->c += ret;
514
492
  }
515
- z->I[0] = z->c; /* setmark p1, line 53 */
493
+ z->I[0] = z->c;
516
494
  }
517
495
  lab0:
518
496
  return 1;
@@ -525,24 +503,22 @@ static int r_R1(struct SN_env * z) {
525
503
 
526
504
  static int r_v_ending(struct SN_env * z) {
527
505
  int among_var;
528
- z->ket = z->c; /* [, line 61 */
506
+ z->ket = z->c;
529
507
  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0;
530
- among_var = find_among_b(z, a_1, 2); /* substring, line 61 */
508
+ among_var = find_among_b(z, a_1, 2);
531
509
  if (!(among_var)) return 0;
532
- z->bra = z->c; /* ], line 61 */
510
+ z->bra = z->c;
533
511
  { int ret = r_R1(z);
534
- if (ret == 0) return 0; /* call R1, line 61 */
535
- if (ret < 0) return ret;
512
+ if (ret <= 0) return ret;
536
513
  }
537
- switch(among_var) {
538
- case 0: return 0;
514
+ switch (among_var) {
539
515
  case 1:
540
- { int ret = slice_from_s(z, 1, s_0); /* <-, line 62 */
516
+ { int ret = slice_from_s(z, 1, s_0);
541
517
  if (ret < 0) return ret;
542
518
  }
543
519
  break;
544
520
  case 2:
545
- { int ret = slice_from_s(z, 1, s_1); /* <-, line 63 */
521
+ { int ret = slice_from_s(z, 1, s_1);
546
522
  if (ret < 0) return ret;
547
523
  }
548
524
  break;
@@ -551,110 +527,85 @@ static int r_v_ending(struct SN_env * z) {
551
527
  }
552
528
 
553
529
  static int r_double(struct SN_env * z) {
554
- { int m_test = z->l - z->c; /* test, line 68 */
530
+ { int m_test1 = z->l - z->c;
555
531
  if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
556
- if (!(find_among_b(z, a_2, 23))) return 0; /* among, line 68 */
557
- z->c = z->l - m_test;
532
+ if (!(find_among_b(z, a_2, 23))) return 0;
533
+ z->c = z->l - m_test1;
558
534
  }
559
535
  return 1;
560
536
  }
561
537
 
562
538
  static int r_undouble(struct SN_env * z) {
563
- { int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
539
+ { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
564
540
  if (ret < 0) return 0;
565
- z->c = ret; /* next, line 73 */
541
+ z->c = ret;
566
542
  }
567
- z->ket = z->c; /* [, line 73 */
568
- { int ret = skip_utf8(z->p, z->c, z->lb, z->l, - 1);
543
+ z->ket = z->c;
544
+ { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
569
545
  if (ret < 0) return 0;
570
- z->c = ret; /* hop, line 73 */
546
+ z->c = ret;
571
547
  }
572
- z->bra = z->c; /* ], line 73 */
573
- { int ret = slice_del(z); /* delete, line 73 */
548
+ z->bra = z->c;
549
+ { int ret = slice_del(z);
574
550
  if (ret < 0) return ret;
575
551
  }
576
552
  return 1;
577
553
  }
578
554
 
579
555
  static int r_instrum(struct SN_env * z) {
580
- int among_var;
581
- z->ket = z->c; /* [, line 77 */
556
+ z->ket = z->c;
582
557
  if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0;
583
- among_var = find_among_b(z, a_3, 2); /* substring, line 77 */
584
- if (!(among_var)) return 0;
585
- z->bra = z->c; /* ], line 77 */
558
+ if (!(find_among_b(z, a_3, 2))) return 0;
559
+ z->bra = z->c;
586
560
  { int ret = r_R1(z);
587
- if (ret == 0) return 0; /* call R1, line 77 */
588
- if (ret < 0) return ret;
561
+ if (ret <= 0) return ret;
589
562
  }
590
- switch(among_var) {
591
- case 0: return 0;
592
- case 1:
593
- { int ret = r_double(z);
594
- if (ret == 0) return 0; /* call double, line 78 */
595
- if (ret < 0) return ret;
596
- }
597
- break;
598
- case 2:
599
- { int ret = r_double(z);
600
- if (ret == 0) return 0; /* call double, line 79 */
601
- if (ret < 0) return ret;
602
- }
603
- break;
563
+ { int ret = r_double(z);
564
+ if (ret <= 0) return ret;
604
565
  }
605
- { int ret = slice_del(z); /* delete, line 81 */
566
+ { int ret = slice_del(z);
606
567
  if (ret < 0) return ret;
607
568
  }
608
569
  { int ret = r_undouble(z);
609
- if (ret == 0) return 0; /* call undouble, line 82 */
610
- if (ret < 0) return ret;
570
+ if (ret <= 0) return ret;
611
571
  }
612
572
  return 1;
613
573
  }
614
574
 
615
575
  static int r_case(struct SN_env * z) {
616
- z->ket = z->c; /* [, line 87 */
617
- if (!(find_among_b(z, a_4, 44))) return 0; /* substring, line 87 */
618
- z->bra = z->c; /* ], line 87 */
576
+ z->ket = z->c;
577
+ if (!(find_among_b(z, a_4, 44))) return 0;
578
+ z->bra = z->c;
619
579
  { int ret = r_R1(z);
620
- if (ret == 0) return 0; /* call R1, line 87 */
621
- if (ret < 0) return ret;
580
+ if (ret <= 0) return ret;
622
581
  }
623
- { int ret = slice_del(z); /* delete, line 111 */
582
+ { int ret = slice_del(z);
624
583
  if (ret < 0) return ret;
625
584
  }
626
585
  { int ret = r_v_ending(z);
627
- if (ret == 0) return 0; /* call v_ending, line 112 */
628
- if (ret < 0) return ret;
586
+ if (ret <= 0) return ret;
629
587
  }
630
588
  return 1;
631
589
  }
632
590
 
633
591
  static int r_case_special(struct SN_env * z) {
634
592
  int among_var;
635
- z->ket = z->c; /* [, line 116 */
593
+ z->ket = z->c;
636
594
  if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0;
637
- among_var = find_among_b(z, a_5, 3); /* substring, line 116 */
595
+ among_var = find_among_b(z, a_5, 3);
638
596
  if (!(among_var)) return 0;
639
- z->bra = z->c; /* ], line 116 */
597
+ z->bra = z->c;
640
598
  { int ret = r_R1(z);
641
- if (ret == 0) return 0; /* call R1, line 116 */
642
- if (ret < 0) return ret;
599
+ if (ret <= 0) return ret;
643
600
  }
644
- switch(among_var) {
645
- case 0: return 0;
601
+ switch (among_var) {
646
602
  case 1:
647
- { int ret = slice_from_s(z, 1, s_2); /* <-, line 117 */
603
+ { int ret = slice_from_s(z, 1, s_2);
648
604
  if (ret < 0) return ret;
649
605
  }
650
606
  break;
651
607
  case 2:
652
- { int ret = slice_from_s(z, 1, s_3); /* <-, line 118 */
653
- if (ret < 0) return ret;
654
- }
655
- break;
656
- case 3:
657
- { int ret = slice_from_s(z, 1, s_4); /* <-, line 119 */
608
+ { int ret = slice_from_s(z, 1, s_3);
658
609
  if (ret < 0) return ret;
659
610
  }
660
611
  break;
@@ -664,34 +615,27 @@ static int r_case_special(struct SN_env * z) {
664
615
 
665
616
  static int r_case_other(struct SN_env * z) {
666
617
  int among_var;
667
- z->ket = z->c; /* [, line 124 */
618
+ z->ket = z->c;
668
619
  if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0;
669
- among_var = find_among_b(z, a_6, 6); /* substring, line 124 */
620
+ among_var = find_among_b(z, a_6, 6);
670
621
  if (!(among_var)) return 0;
671
- z->bra = z->c; /* ], line 124 */
622
+ z->bra = z->c;
672
623
  { int ret = r_R1(z);
673
- if (ret == 0) return 0; /* call R1, line 124 */
674
- if (ret < 0) return ret;
624
+ if (ret <= 0) return ret;
675
625
  }
676
- switch(among_var) {
677
- case 0: return 0;
626
+ switch (among_var) {
678
627
  case 1:
679
- { int ret = slice_del(z); /* delete, line 125 */
628
+ { int ret = slice_del(z);
680
629
  if (ret < 0) return ret;
681
630
  }
682
631
  break;
683
632
  case 2:
684
- { int ret = slice_del(z); /* delete, line 126 */
633
+ { int ret = slice_from_s(z, 1, s_4);
685
634
  if (ret < 0) return ret;
686
635
  }
687
636
  break;
688
637
  case 3:
689
- { int ret = slice_from_s(z, 1, s_5); /* <-, line 127 */
690
- if (ret < 0) return ret;
691
- }
692
- break;
693
- case 4:
694
- { int ret = slice_from_s(z, 1, s_6); /* <-, line 128 */
638
+ { int ret = slice_from_s(z, 1, s_5);
695
639
  if (ret < 0) return ret;
696
640
  }
697
641
  break;
@@ -700,86 +644,48 @@ static int r_case_other(struct SN_env * z) {
700
644
  }
701
645
 
702
646
  static int r_factive(struct SN_env * z) {
703
- int among_var;
704
- z->ket = z->c; /* [, line 133 */
647
+ z->ket = z->c;
705
648
  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 161 && z->p[z->c - 1] != 169)) return 0;
706
- among_var = find_among_b(z, a_7, 2); /* substring, line 133 */
707
- if (!(among_var)) return 0;
708
- z->bra = z->c; /* ], line 133 */
649
+ if (!(find_among_b(z, a_7, 2))) return 0;
650
+ z->bra = z->c;
709
651
  { int ret = r_R1(z);
710
- if (ret == 0) return 0; /* call R1, line 133 */
711
- if (ret < 0) return ret;
652
+ if (ret <= 0) return ret;
712
653
  }
713
- switch(among_var) {
714
- case 0: return 0;
715
- case 1:
716
- { int ret = r_double(z);
717
- if (ret == 0) return 0; /* call double, line 134 */
718
- if (ret < 0) return ret;
719
- }
720
- break;
721
- case 2:
722
- { int ret = r_double(z);
723
- if (ret == 0) return 0; /* call double, line 135 */
724
- if (ret < 0) return ret;
725
- }
726
- break;
654
+ { int ret = r_double(z);
655
+ if (ret <= 0) return ret;
727
656
  }
728
- { int ret = slice_del(z); /* delete, line 137 */
657
+ { int ret = slice_del(z);
729
658
  if (ret < 0) return ret;
730
659
  }
731
660
  { int ret = r_undouble(z);
732
- if (ret == 0) return 0; /* call undouble, line 138 */
733
- if (ret < 0) return ret;
661
+ if (ret <= 0) return ret;
734
662
  }
735
663
  return 1;
736
664
  }
737
665
 
738
666
  static int r_plural(struct SN_env * z) {
739
667
  int among_var;
740
- z->ket = z->c; /* [, line 142 */
668
+ z->ket = z->c;
741
669
  if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0;
742
- among_var = find_among_b(z, a_8, 7); /* substring, line 142 */
670
+ among_var = find_among_b(z, a_8, 7);
743
671
  if (!(among_var)) return 0;
744
- z->bra = z->c; /* ], line 142 */
672
+ z->bra = z->c;
745
673
  { int ret = r_R1(z);
746
- if (ret == 0) return 0; /* call R1, line 142 */
747
- if (ret < 0) return ret;
674
+ if (ret <= 0) return ret;
748
675
  }
749
- switch(among_var) {
750
- case 0: return 0;
676
+ switch (among_var) {
751
677
  case 1:
752
- { int ret = slice_from_s(z, 1, s_7); /* <-, line 143 */
678
+ { int ret = slice_from_s(z, 1, s_6);
753
679
  if (ret < 0) return ret;
754
680
  }
755
681
  break;
756
682
  case 2:
757
- { int ret = slice_from_s(z, 1, s_8); /* <-, line 144 */
683
+ { int ret = slice_from_s(z, 1, s_7);
758
684
  if (ret < 0) return ret;
759
685
  }
760
686
  break;
761
687
  case 3:
762
- { int ret = slice_del(z); /* delete, line 145 */
763
- if (ret < 0) return ret;
764
- }
765
- break;
766
- case 4:
767
- { int ret = slice_del(z); /* delete, line 146 */
768
- if (ret < 0) return ret;
769
- }
770
- break;
771
- case 5:
772
- { int ret = slice_del(z); /* delete, line 147 */
773
- if (ret < 0) return ret;
774
- }
775
- break;
776
- case 6:
777
- { int ret = slice_del(z); /* delete, line 148 */
778
- if (ret < 0) return ret;
779
- }
780
- break;
781
- case 7:
782
- { int ret = slice_del(z); /* delete, line 149 */
688
+ { int ret = slice_del(z);
783
689
  if (ret < 0) return ret;
784
690
  }
785
691
  break;
@@ -789,59 +695,27 @@ static int r_plural(struct SN_env * z) {
789
695
 
790
696
  static int r_owned(struct SN_env * z) {
791
697
  int among_var;
792
- z->ket = z->c; /* [, line 154 */
698
+ z->ket = z->c;
793
699
  if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 169)) return 0;
794
- among_var = find_among_b(z, a_9, 12); /* substring, line 154 */
700
+ among_var = find_among_b(z, a_9, 12);
795
701
  if (!(among_var)) return 0;
796
- z->bra = z->c; /* ], line 154 */
702
+ z->bra = z->c;
797
703
  { int ret = r_R1(z);
798
- if (ret == 0) return 0; /* call R1, line 154 */
799
- if (ret < 0) return ret;
704
+ if (ret <= 0) return ret;
800
705
  }
801
- switch(among_var) {
802
- case 0: return 0;
706
+ switch (among_var) {
803
707
  case 1:
804
- { int ret = slice_del(z); /* delete, line 155 */
708
+ { int ret = slice_del(z);
805
709
  if (ret < 0) return ret;
806
710
  }
807
711
  break;
808
712
  case 2:
809
- { int ret = slice_from_s(z, 1, s_9); /* <-, line 156 */
713
+ { int ret = slice_from_s(z, 1, s_8);
810
714
  if (ret < 0) return ret;
811
715
  }
812
716
  break;
813
717
  case 3:
814
- { int ret = slice_from_s(z, 1, s_10); /* <-, line 157 */
815
- if (ret < 0) return ret;
816
- }
817
- break;
818
- case 4:
819
- { int ret = slice_del(z); /* delete, line 158 */
820
- if (ret < 0) return ret;
821
- }
822
- break;
823
- case 5:
824
- { int ret = slice_from_s(z, 1, s_11); /* <-, line 159 */
825
- if (ret < 0) return ret;
826
- }
827
- break;
828
- case 6:
829
- { int ret = slice_from_s(z, 1, s_12); /* <-, line 160 */
830
- if (ret < 0) return ret;
831
- }
832
- break;
833
- case 7:
834
- { int ret = slice_del(z); /* delete, line 161 */
835
- if (ret < 0) return ret;
836
- }
837
- break;
838
- case 8:
839
- { int ret = slice_from_s(z, 1, s_13); /* <-, line 162 */
840
- if (ret < 0) return ret;
841
- }
842
- break;
843
- case 9:
844
- { int ret = slice_del(z); /* delete, line 163 */
718
+ { int ret = slice_from_s(z, 1, s_9);
845
719
  if (ret < 0) return ret;
846
720
  }
847
721
  break;
@@ -851,113 +725,26 @@ static int r_owned(struct SN_env * z) {
851
725
 
852
726
  static int r_sing_owner(struct SN_env * z) {
853
727
  int among_var;
854
- z->ket = z->c; /* [, line 168 */
855
- among_var = find_among_b(z, a_10, 31); /* substring, line 168 */
728
+ z->ket = z->c;
729
+ among_var = find_among_b(z, a_10, 31);
856
730
  if (!(among_var)) return 0;
857
- z->bra = z->c; /* ], line 168 */
731
+ z->bra = z->c;
858
732
  { int ret = r_R1(z);
859
- if (ret == 0) return 0; /* call R1, line 168 */
860
- if (ret < 0) return ret;
733
+ if (ret <= 0) return ret;
861
734
  }
862
- switch(among_var) {
863
- case 0: return 0;
735
+ switch (among_var) {
864
736
  case 1:
865
- { int ret = slice_del(z); /* delete, line 169 */
737
+ { int ret = slice_del(z);
866
738
  if (ret < 0) return ret;
867
739
  }
868
740
  break;
869
741
  case 2:
870
- { int ret = slice_from_s(z, 1, s_14); /* <-, line 170 */
742
+ { int ret = slice_from_s(z, 1, s_10);
871
743
  if (ret < 0) return ret;
872
744
  }
873
745
  break;
874
746
  case 3:
875
- { int ret = slice_from_s(z, 1, s_15); /* <-, line 171 */
876
- if (ret < 0) return ret;
877
- }
878
- break;
879
- case 4:
880
- { int ret = slice_del(z); /* delete, line 172 */
881
- if (ret < 0) return ret;
882
- }
883
- break;
884
- case 5:
885
- { int ret = slice_from_s(z, 1, s_16); /* <-, line 173 */
886
- if (ret < 0) return ret;
887
- }
888
- break;
889
- case 6:
890
- { int ret = slice_from_s(z, 1, s_17); /* <-, line 174 */
891
- if (ret < 0) return ret;
892
- }
893
- break;
894
- case 7:
895
- { int ret = slice_del(z); /* delete, line 175 */
896
- if (ret < 0) return ret;
897
- }
898
- break;
899
- case 8:
900
- { int ret = slice_del(z); /* delete, line 176 */
901
- if (ret < 0) return ret;
902
- }
903
- break;
904
- case 9:
905
- { int ret = slice_del(z); /* delete, line 177 */
906
- if (ret < 0) return ret;
907
- }
908
- break;
909
- case 10:
910
- { int ret = slice_from_s(z, 1, s_18); /* <-, line 178 */
911
- if (ret < 0) return ret;
912
- }
913
- break;
914
- case 11:
915
- { int ret = slice_from_s(z, 1, s_19); /* <-, line 179 */
916
- if (ret < 0) return ret;
917
- }
918
- break;
919
- case 12:
920
- { int ret = slice_del(z); /* delete, line 180 */
921
- if (ret < 0) return ret;
922
- }
923
- break;
924
- case 13:
925
- { int ret = slice_del(z); /* delete, line 181 */
926
- if (ret < 0) return ret;
927
- }
928
- break;
929
- case 14:
930
- { int ret = slice_from_s(z, 1, s_20); /* <-, line 182 */
931
- if (ret < 0) return ret;
932
- }
933
- break;
934
- case 15:
935
- { int ret = slice_from_s(z, 1, s_21); /* <-, line 183 */
936
- if (ret < 0) return ret;
937
- }
938
- break;
939
- case 16:
940
- { int ret = slice_del(z); /* delete, line 184 */
941
- if (ret < 0) return ret;
942
- }
943
- break;
944
- case 17:
945
- { int ret = slice_del(z); /* delete, line 185 */
946
- if (ret < 0) return ret;
947
- }
948
- break;
949
- case 18:
950
- { int ret = slice_del(z); /* delete, line 186 */
951
- if (ret < 0) return ret;
952
- }
953
- break;
954
- case 19:
955
- { int ret = slice_from_s(z, 1, s_22); /* <-, line 187 */
956
- if (ret < 0) return ret;
957
- }
958
- break;
959
- case 20:
960
- { int ret = slice_from_s(z, 1, s_23); /* <-, line 188 */
747
+ { int ret = slice_from_s(z, 1, s_11);
961
748
  if (ret < 0) return ret;
962
749
  }
963
750
  break;
@@ -967,159 +754,27 @@ static int r_sing_owner(struct SN_env * z) {
967
754
 
968
755
  static int r_plur_owner(struct SN_env * z) {
969
756
  int among_var;
970
- z->ket = z->c; /* [, line 193 */
757
+ z->ket = z->c;
971
758
  if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
972
- among_var = find_among_b(z, a_11, 42); /* substring, line 193 */
759
+ among_var = find_among_b(z, a_11, 42);
973
760
  if (!(among_var)) return 0;
974
- z->bra = z->c; /* ], line 193 */
761
+ z->bra = z->c;
975
762
  { int ret = r_R1(z);
976
- if (ret == 0) return 0; /* call R1, line 193 */
977
- if (ret < 0) return ret;
763
+ if (ret <= 0) return ret;
978
764
  }
979
- switch(among_var) {
980
- case 0: return 0;
765
+ switch (among_var) {
981
766
  case 1:
982
- { int ret = slice_del(z); /* delete, line 194 */
767
+ { int ret = slice_del(z);
983
768
  if (ret < 0) return ret;
984
769
  }
985
770
  break;
986
771
  case 2:
987
- { int ret = slice_from_s(z, 1, s_24); /* <-, line 195 */
772
+ { int ret = slice_from_s(z, 1, s_12);
988
773
  if (ret < 0) return ret;
989
774
  }
990
775
  break;
991
776
  case 3:
992
- { int ret = slice_from_s(z, 1, s_25); /* <-, line 196 */
993
- if (ret < 0) return ret;
994
- }
995
- break;
996
- case 4:
997
- { int ret = slice_del(z); /* delete, line 197 */
998
- if (ret < 0) return ret;
999
- }
1000
- break;
1001
- case 5:
1002
- { int ret = slice_del(z); /* delete, line 198 */
1003
- if (ret < 0) return ret;
1004
- }
1005
- break;
1006
- case 6:
1007
- { int ret = slice_del(z); /* delete, line 199 */
1008
- if (ret < 0) return ret;
1009
- }
1010
- break;
1011
- case 7:
1012
- { int ret = slice_from_s(z, 1, s_26); /* <-, line 200 */
1013
- if (ret < 0) return ret;
1014
- }
1015
- break;
1016
- case 8:
1017
- { int ret = slice_from_s(z, 1, s_27); /* <-, line 201 */
1018
- if (ret < 0) return ret;
1019
- }
1020
- break;
1021
- case 9:
1022
- { int ret = slice_del(z); /* delete, line 202 */
1023
- if (ret < 0) return ret;
1024
- }
1025
- break;
1026
- case 10:
1027
- { int ret = slice_del(z); /* delete, line 203 */
1028
- if (ret < 0) return ret;
1029
- }
1030
- break;
1031
- case 11:
1032
- { int ret = slice_del(z); /* delete, line 204 */
1033
- if (ret < 0) return ret;
1034
- }
1035
- break;
1036
- case 12:
1037
- { int ret = slice_from_s(z, 1, s_28); /* <-, line 205 */
1038
- if (ret < 0) return ret;
1039
- }
1040
- break;
1041
- case 13:
1042
- { int ret = slice_from_s(z, 1, s_29); /* <-, line 206 */
1043
- if (ret < 0) return ret;
1044
- }
1045
- break;
1046
- case 14:
1047
- { int ret = slice_del(z); /* delete, line 207 */
1048
- if (ret < 0) return ret;
1049
- }
1050
- break;
1051
- case 15:
1052
- { int ret = slice_del(z); /* delete, line 208 */
1053
- if (ret < 0) return ret;
1054
- }
1055
- break;
1056
- case 16:
1057
- { int ret = slice_del(z); /* delete, line 209 */
1058
- if (ret < 0) return ret;
1059
- }
1060
- break;
1061
- case 17:
1062
- { int ret = slice_del(z); /* delete, line 210 */
1063
- if (ret < 0) return ret;
1064
- }
1065
- break;
1066
- case 18:
1067
- { int ret = slice_from_s(z, 1, s_30); /* <-, line 211 */
1068
- if (ret < 0) return ret;
1069
- }
1070
- break;
1071
- case 19:
1072
- { int ret = slice_from_s(z, 1, s_31); /* <-, line 212 */
1073
- if (ret < 0) return ret;
1074
- }
1075
- break;
1076
- case 20:
1077
- { int ret = slice_del(z); /* delete, line 214 */
1078
- if (ret < 0) return ret;
1079
- }
1080
- break;
1081
- case 21:
1082
- { int ret = slice_del(z); /* delete, line 215 */
1083
- if (ret < 0) return ret;
1084
- }
1085
- break;
1086
- case 22:
1087
- { int ret = slice_from_s(z, 1, s_32); /* <-, line 216 */
1088
- if (ret < 0) return ret;
1089
- }
1090
- break;
1091
- case 23:
1092
- { int ret = slice_from_s(z, 1, s_33); /* <-, line 217 */
1093
- if (ret < 0) return ret;
1094
- }
1095
- break;
1096
- case 24:
1097
- { int ret = slice_del(z); /* delete, line 218 */
1098
- if (ret < 0) return ret;
1099
- }
1100
- break;
1101
- case 25:
1102
- { int ret = slice_del(z); /* delete, line 219 */
1103
- if (ret < 0) return ret;
1104
- }
1105
- break;
1106
- case 26:
1107
- { int ret = slice_del(z); /* delete, line 220 */
1108
- if (ret < 0) return ret;
1109
- }
1110
- break;
1111
- case 27:
1112
- { int ret = slice_from_s(z, 1, s_34); /* <-, line 221 */
1113
- if (ret < 0) return ret;
1114
- }
1115
- break;
1116
- case 28:
1117
- { int ret = slice_from_s(z, 1, s_35); /* <-, line 222 */
1118
- if (ret < 0) return ret;
1119
- }
1120
- break;
1121
- case 29:
1122
- { int ret = slice_del(z); /* delete, line 223 */
777
+ { int ret = slice_from_s(z, 1, s_13);
1123
778
  if (ret < 0) return ret;
1124
779
  }
1125
780
  break;
@@ -1128,93 +783,73 @@ static int r_plur_owner(struct SN_env * z) {
1128
783
  }
1129
784
 
1130
785
  extern int hungarian_UTF_8_stem(struct SN_env * z) {
1131
- { int c1 = z->c; /* do, line 229 */
786
+ { int c1 = z->c;
1132
787
  { int ret = r_mark_regions(z);
1133
- if (ret == 0) goto lab0; /* call mark_regions, line 229 */
1134
788
  if (ret < 0) return ret;
1135
789
  }
1136
- lab0:
1137
790
  z->c = c1;
1138
791
  }
1139
- z->lb = z->c; z->c = z->l; /* backwards, line 230 */
792
+ z->lb = z->c; z->c = z->l;
1140
793
 
1141
- { int m2 = z->l - z->c; (void)m2; /* do, line 231 */
794
+ { int m2 = z->l - z->c; (void)m2;
1142
795
  { int ret = r_instrum(z);
1143
- if (ret == 0) goto lab1; /* call instrum, line 231 */
1144
796
  if (ret < 0) return ret;
1145
797
  }
1146
- lab1:
1147
798
  z->c = z->l - m2;
1148
799
  }
1149
- { int m3 = z->l - z->c; (void)m3; /* do, line 232 */
800
+ { int m3 = z->l - z->c; (void)m3;
1150
801
  { int ret = r_case(z);
1151
- if (ret == 0) goto lab2; /* call case, line 232 */
1152
802
  if (ret < 0) return ret;
1153
803
  }
1154
- lab2:
1155
804
  z->c = z->l - m3;
1156
805
  }
1157
- { int m4 = z->l - z->c; (void)m4; /* do, line 233 */
806
+ { int m4 = z->l - z->c; (void)m4;
1158
807
  { int ret = r_case_special(z);
1159
- if (ret == 0) goto lab3; /* call case_special, line 233 */
1160
808
  if (ret < 0) return ret;
1161
809
  }
1162
- lab3:
1163
810
  z->c = z->l - m4;
1164
811
  }
1165
- { int m5 = z->l - z->c; (void)m5; /* do, line 234 */
812
+ { int m5 = z->l - z->c; (void)m5;
1166
813
  { int ret = r_case_other(z);
1167
- if (ret == 0) goto lab4; /* call case_other, line 234 */
1168
814
  if (ret < 0) return ret;
1169
815
  }
1170
- lab4:
1171
816
  z->c = z->l - m5;
1172
817
  }
1173
- { int m6 = z->l - z->c; (void)m6; /* do, line 235 */
818
+ { int m6 = z->l - z->c; (void)m6;
1174
819
  { int ret = r_factive(z);
1175
- if (ret == 0) goto lab5; /* call factive, line 235 */
1176
820
  if (ret < 0) return ret;
1177
821
  }
1178
- lab5:
1179
822
  z->c = z->l - m6;
1180
823
  }
1181
- { int m7 = z->l - z->c; (void)m7; /* do, line 236 */
824
+ { int m7 = z->l - z->c; (void)m7;
1182
825
  { int ret = r_owned(z);
1183
- if (ret == 0) goto lab6; /* call owned, line 236 */
1184
826
  if (ret < 0) return ret;
1185
827
  }
1186
- lab6:
1187
828
  z->c = z->l - m7;
1188
829
  }
1189
- { int m8 = z->l - z->c; (void)m8; /* do, line 237 */
830
+ { int m8 = z->l - z->c; (void)m8;
1190
831
  { int ret = r_sing_owner(z);
1191
- if (ret == 0) goto lab7; /* call sing_owner, line 237 */
1192
832
  if (ret < 0) return ret;
1193
833
  }
1194
- lab7:
1195
834
  z->c = z->l - m8;
1196
835
  }
1197
- { int m9 = z->l - z->c; (void)m9; /* do, line 238 */
836
+ { int m9 = z->l - z->c; (void)m9;
1198
837
  { int ret = r_plur_owner(z);
1199
- if (ret == 0) goto lab8; /* call plur_owner, line 238 */
1200
838
  if (ret < 0) return ret;
1201
839
  }
1202
- lab8:
1203
840
  z->c = z->l - m9;
1204
841
  }
1205
- { int m10 = z->l - z->c; (void)m10; /* do, line 239 */
842
+ { int m10 = z->l - z->c; (void)m10;
1206
843
  { int ret = r_plural(z);
1207
- if (ret == 0) goto lab9; /* call plural, line 239 */
1208
844
  if (ret < 0) return ret;
1209
845
  }
1210
- lab9:
1211
846
  z->c = z->l - m10;
1212
847
  }
1213
848
  z->c = z->lb;
1214
849
  return 1;
1215
850
  }
1216
851
 
1217
- extern struct SN_env * hungarian_UTF_8_create_env(void) { return SN_create_env(0, 1, 0); }
852
+ extern struct SN_env * hungarian_UTF_8_create_env(void) { return SN_create_env(0, 1); }
1218
853
 
1219
854
  extern void hungarian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
1220
855