isomorfeus-ferret 0.12.2 → 0.12.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (125) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +612 -612
  3. data/README.md +80 -44
  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_search.c +14 -2
  7. data/ext/isomorfeus_ferret_ext/frb_store.c +34 -5
  8. data/ext/isomorfeus_ferret_ext/frt_posh.h +11 -19
  9. data/ext/isomorfeus_ferret_ext/frt_q_parser.c +1844 -1911
  10. data/ext/isomorfeus_ferret_ext/frt_q_phrase.c +12 -15
  11. data/ext/isomorfeus_ferret_ext/frt_scanner.c +1 -0
  12. data/ext/isomorfeus_ferret_ext/frt_scanner_mb.c +1 -0
  13. data/ext/isomorfeus_ferret_ext/frt_scanner_utf8.c +1 -0
  14. data/ext/isomorfeus_ferret_ext/frt_search.h +1 -1
  15. data/ext/isomorfeus_ferret_ext/libstemmer.c +14 -11
  16. data/ext/isomorfeus_ferret_ext/libstemmer.h +4 -9
  17. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_basque.c +1167 -0
  18. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_basque.h +6 -0
  19. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_catalan.c +1433 -0
  20. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_catalan.h +6 -0
  21. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_danish.c +120 -143
  22. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_danish.h +1 -2
  23. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_dutch.c +217 -237
  24. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_dutch.h +1 -1
  25. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_english.c +377 -432
  26. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_english.h +1 -1
  27. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_finnish.c +298 -342
  28. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_finnish.h +1 -2
  29. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_french.c +530 -524
  30. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_french.h +1 -1
  31. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_german.c +201 -214
  32. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_german.h +1 -1
  33. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_hungarian.c +1 -1
  34. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_indonesian.c +394 -0
  35. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_indonesian.h +6 -0
  36. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_irish.c +457 -0
  37. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_irish.h +6 -0
  38. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_italian.c +396 -439
  39. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_italian.h +1 -1
  40. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_norwegian.c +104 -128
  41. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_norwegian.h +1 -1
  42. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_porter.c +242 -273
  43. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_porter.h +1 -1
  44. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_portuguese.c +406 -461
  45. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_portuguese.h +1 -2
  46. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_spanish.c +405 -456
  47. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_spanish.h +1 -1
  48. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_swedish.c +108 -126
  49. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_1_swedish.h +1 -1
  50. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_hungarian.c +849 -0
  51. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_hungarian.h +6 -0
  52. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_romanian.c +373 -405
  53. data/ext/isomorfeus_ferret_ext/stem_ISO_8859_2_romanian.h +1 -1
  54. data/ext/isomorfeus_ferret_ext/stem_KOI8_R_russian.c +288 -305
  55. data/ext/isomorfeus_ferret_ext/stem_KOI8_R_russian.h +1 -1
  56. data/ext/isomorfeus_ferret_ext/stem_UTF_8_arabic.c +1651 -0
  57. data/ext/isomorfeus_ferret_ext/stem_UTF_8_arabic.h +6 -0
  58. data/ext/isomorfeus_ferret_ext/stem_UTF_8_armenian.c +546 -0
  59. data/ext/isomorfeus_ferret_ext/stem_UTF_8_armenian.h +6 -0
  60. data/ext/isomorfeus_ferret_ext/stem_UTF_8_basque.c +1171 -0
  61. data/ext/isomorfeus_ferret_ext/stem_UTF_8_basque.h +6 -0
  62. data/ext/isomorfeus_ferret_ext/stem_UTF_8_catalan.c +1436 -0
  63. data/ext/isomorfeus_ferret_ext/stem_UTF_8_catalan.h +6 -0
  64. data/ext/isomorfeus_ferret_ext/stem_UTF_8_danish.c +121 -141
  65. data/ext/isomorfeus_ferret_ext/stem_UTF_8_danish.h +1 -1
  66. data/ext/isomorfeus_ferret_ext/stem_UTF_8_dutch.c +221 -241
  67. data/ext/isomorfeus_ferret_ext/stem_UTF_8_dutch.h +1 -1
  68. data/ext/isomorfeus_ferret_ext/stem_UTF_8_english.c +381 -431
  69. data/ext/isomorfeus_ferret_ext/stem_UTF_8_english.h +1 -1
  70. data/ext/isomorfeus_ferret_ext/stem_UTF_8_finnish.c +300 -345
  71. data/ext/isomorfeus_ferret_ext/stem_UTF_8_finnish.h +1 -1
  72. data/ext/isomorfeus_ferret_ext/stem_UTF_8_french.c +518 -511
  73. data/ext/isomorfeus_ferret_ext/stem_UTF_8_french.h +1 -1
  74. data/ext/isomorfeus_ferret_ext/stem_UTF_8_german.c +201 -209
  75. data/ext/isomorfeus_ferret_ext/stem_UTF_8_german.h +1 -1
  76. data/ext/isomorfeus_ferret_ext/stem_UTF_8_greek.c +3660 -0
  77. data/ext/isomorfeus_ferret_ext/stem_UTF_8_greek.h +6 -0
  78. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hindi.c +309 -0
  79. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hindi.h +6 -0
  80. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hungarian.c +306 -671
  81. data/ext/isomorfeus_ferret_ext/stem_UTF_8_hungarian.h +1 -1
  82. data/ext/isomorfeus_ferret_ext/stem_UTF_8_indonesian.c +394 -0
  83. data/ext/isomorfeus_ferret_ext/stem_UTF_8_indonesian.h +6 -0
  84. data/ext/isomorfeus_ferret_ext/stem_UTF_8_irish.c +457 -0
  85. data/ext/isomorfeus_ferret_ext/stem_UTF_8_irish.h +6 -0
  86. data/ext/isomorfeus_ferret_ext/stem_UTF_8_italian.c +400 -442
  87. data/ext/isomorfeus_ferret_ext/stem_UTF_8_italian.h +1 -1
  88. data/ext/isomorfeus_ferret_ext/stem_UTF_8_lithuanian.c +824 -0
  89. data/ext/isomorfeus_ferret_ext/stem_UTF_8_lithuanian.h +6 -0
  90. data/ext/isomorfeus_ferret_ext/stem_UTF_8_nepali.c +408 -0
  91. data/ext/isomorfeus_ferret_ext/stem_UTF_8_nepali.h +6 -0
  92. data/ext/isomorfeus_ferret_ext/stem_UTF_8_norwegian.c +105 -127
  93. data/ext/isomorfeus_ferret_ext/stem_UTF_8_norwegian.h +1 -1
  94. data/ext/isomorfeus_ferret_ext/stem_UTF_8_porter.c +245 -276
  95. data/ext/isomorfeus_ferret_ext/stem_UTF_8_porter.h +1 -1
  96. data/ext/isomorfeus_ferret_ext/stem_UTF_8_portuguese.c +409 -464
  97. data/ext/isomorfeus_ferret_ext/stem_UTF_8_portuguese.h +1 -1
  98. data/ext/isomorfeus_ferret_ext/stem_UTF_8_romanian.c +376 -408
  99. data/ext/isomorfeus_ferret_ext/stem_UTF_8_romanian.h +1 -1
  100. data/ext/isomorfeus_ferret_ext/stem_UTF_8_russian.c +272 -287
  101. data/ext/isomorfeus_ferret_ext/stem_UTF_8_russian.h +1 -1
  102. data/ext/isomorfeus_ferret_ext/stem_UTF_8_serbian.c +6530 -0
  103. data/ext/isomorfeus_ferret_ext/stem_UTF_8_serbian.h +6 -0
  104. data/ext/isomorfeus_ferret_ext/stem_UTF_8_spanish.c +407 -458
  105. data/ext/isomorfeus_ferret_ext/stem_UTF_8_spanish.h +1 -1
  106. data/ext/isomorfeus_ferret_ext/stem_UTF_8_swedish.c +110 -125
  107. data/ext/isomorfeus_ferret_ext/stem_UTF_8_swedish.h +1 -1
  108. data/ext/isomorfeus_ferret_ext/stem_UTF_8_tamil.c +1865 -0
  109. data/ext/isomorfeus_ferret_ext/stem_UTF_8_tamil.h +6 -0
  110. data/ext/isomorfeus_ferret_ext/stem_UTF_8_turkish.c +698 -806
  111. data/ext/isomorfeus_ferret_ext/stem_UTF_8_turkish.h +1 -1
  112. data/ext/isomorfeus_ferret_ext/stem_UTF_8_yiddish.c +1220 -0
  113. data/ext/isomorfeus_ferret_ext/stem_UTF_8_yiddish.h +6 -0
  114. data/ext/isomorfeus_ferret_ext/stem_api.c +1 -9
  115. data/ext/isomorfeus_ferret_ext/stem_api.h +1 -3
  116. data/ext/isomorfeus_ferret_ext/stem_header.h +30 -26
  117. data/ext/isomorfeus_ferret_ext/stem_modules.h +113 -26
  118. data/ext/isomorfeus_ferret_ext/stem_modules.txt +18 -5
  119. data/ext/isomorfeus_ferret_ext/stem_utilities.c +167 -132
  120. data/ext/isomorfeus_ferret_ext/test.c +7 -1
  121. data/ext/isomorfeus_ferret_ext/test_search.c +0 -1
  122. data/lib/isomorfeus/ferret/index/index.rb +1 -1
  123. data/lib/isomorfeus/ferret/version.rb +1 -1
  124. metadata +43 -7
  125. data/ext/isomorfeus_ferret_ext/q_parser.y +0 -1366
@@ -0,0 +1,824 @@
1
+ /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
2
+
3
+ #include "stem_header.h"
4
+
5
+ static int r_fix_conflicts(struct SN_env * z);
6
+ static int r_fix_gd(struct SN_env * z);
7
+ static int r_fix_chdz(struct SN_env * z);
8
+ static int r_step1(struct SN_env * z);
9
+ static int r_R1(struct SN_env * z);
10
+ static int r_step2(struct SN_env * z);
11
+
12
+ extern int lithuanian_UTF_8_stem(struct SN_env * z);
13
+
14
+ extern struct SN_env * lithuanian_UTF_8_create_env(void);
15
+ extern void lithuanian_UTF_8_close_env(struct SN_env * z);
16
+
17
+ static const symbol s_0_0[1] = { 'a' };
18
+ static const symbol s_0_1[2] = { 'i', 'a' };
19
+ static const symbol s_0_2[4] = { 'e', 'r', 'i', 'a' };
20
+ static const symbol s_0_3[4] = { 'o', 's', 'n', 'a' };
21
+ static const symbol s_0_4[5] = { 'i', 'o', 's', 'n', 'a' };
22
+ static const symbol s_0_5[5] = { 'u', 'o', 's', 'n', 'a' };
23
+ static const symbol s_0_6[6] = { 'i', 'u', 'o', 's', 'n', 'a' };
24
+ static const symbol s_0_7[4] = { 'y', 's', 'n', 'a' };
25
+ static const symbol s_0_8[5] = { 0xC4, 0x97, 's', 'n', 'a' };
26
+ static const symbol s_0_9[1] = { 'e' };
27
+ static const symbol s_0_10[2] = { 'i', 'e' };
28
+ static const symbol s_0_11[4] = { 'e', 'n', 'i', 'e' };
29
+ static const symbol s_0_12[4] = { 'e', 'r', 'i', 'e' };
30
+ static const symbol s_0_13[3] = { 'o', 'j', 'e' };
31
+ static const symbol s_0_14[4] = { 'i', 'o', 'j', 'e' };
32
+ static const symbol s_0_15[3] = { 'u', 'j', 'e' };
33
+ static const symbol s_0_16[4] = { 'i', 'u', 'j', 'e' };
34
+ static const symbol s_0_17[3] = { 'y', 'j', 'e' };
35
+ static const symbol s_0_18[5] = { 'e', 'n', 'y', 'j', 'e' };
36
+ static const symbol s_0_19[5] = { 'e', 'r', 'y', 'j', 'e' };
37
+ static const symbol s_0_20[4] = { 0xC4, 0x97, 'j', 'e' };
38
+ static const symbol s_0_21[3] = { 'a', 'm', 'e' };
39
+ static const symbol s_0_22[4] = { 'i', 'a', 'm', 'e' };
40
+ static const symbol s_0_23[4] = { 's', 'i', 'm', 'e' };
41
+ static const symbol s_0_24[3] = { 'o', 'm', 'e' };
42
+ static const symbol s_0_25[4] = { 0xC4, 0x97, 'm', 'e' };
43
+ static const symbol s_0_26[7] = { 't', 'u', 'm', 0xC4, 0x97, 'm', 'e' };
44
+ static const symbol s_0_27[3] = { 'o', 's', 'e' };
45
+ static const symbol s_0_28[4] = { 'i', 'o', 's', 'e' };
46
+ static const symbol s_0_29[4] = { 'u', 'o', 's', 'e' };
47
+ static const symbol s_0_30[5] = { 'i', 'u', 'o', 's', 'e' };
48
+ static const symbol s_0_31[3] = { 'y', 's', 'e' };
49
+ static const symbol s_0_32[5] = { 'e', 'n', 'y', 's', 'e' };
50
+ static const symbol s_0_33[5] = { 'e', 'r', 'y', 's', 'e' };
51
+ static const symbol s_0_34[4] = { 0xC4, 0x97, 's', 'e' };
52
+ static const symbol s_0_35[3] = { 'a', 't', 'e' };
53
+ static const symbol s_0_36[4] = { 'i', 'a', 't', 'e' };
54
+ static const symbol s_0_37[3] = { 'i', 't', 'e' };
55
+ static const symbol s_0_38[4] = { 'k', 'i', 't', 'e' };
56
+ static const symbol s_0_39[4] = { 's', 'i', 't', 'e' };
57
+ static const symbol s_0_40[3] = { 'o', 't', 'e' };
58
+ static const symbol s_0_41[4] = { 't', 'u', 't', 'e' };
59
+ static const symbol s_0_42[4] = { 0xC4, 0x97, 't', 'e' };
60
+ static const symbol s_0_43[7] = { 't', 'u', 'm', 0xC4, 0x97, 't', 'e' };
61
+ static const symbol s_0_44[1] = { 'i' };
62
+ static const symbol s_0_45[2] = { 'a', 'i' };
63
+ static const symbol s_0_46[3] = { 'i', 'a', 'i' };
64
+ static const symbol s_0_47[5] = { 'e', 'r', 'i', 'a', 'i' };
65
+ static const symbol s_0_48[2] = { 'e', 'i' };
66
+ static const symbol s_0_49[5] = { 't', 'u', 'm', 'e', 'i' };
67
+ static const symbol s_0_50[2] = { 'k', 'i' };
68
+ static const symbol s_0_51[3] = { 'i', 'm', 'i' };
69
+ static const symbol s_0_52[5] = { 'e', 'r', 'i', 'm', 'i' };
70
+ static const symbol s_0_53[3] = { 'u', 'm', 'i' };
71
+ static const symbol s_0_54[4] = { 'i', 'u', 'm', 'i' };
72
+ static const symbol s_0_55[2] = { 's', 'i' };
73
+ static const symbol s_0_56[3] = { 'a', 's', 'i' };
74
+ static const symbol s_0_57[4] = { 'i', 'a', 's', 'i' };
75
+ static const symbol s_0_58[3] = { 'e', 's', 'i' };
76
+ static const symbol s_0_59[4] = { 'i', 'e', 's', 'i' };
77
+ static const symbol s_0_60[5] = { 's', 'i', 'e', 's', 'i' };
78
+ static const symbol s_0_61[3] = { 'i', 's', 'i' };
79
+ static const symbol s_0_62[4] = { 'a', 'i', 's', 'i' };
80
+ static const symbol s_0_63[4] = { 'e', 'i', 's', 'i' };
81
+ static const symbol s_0_64[7] = { 't', 'u', 'm', 'e', 'i', 's', 'i' };
82
+ static const symbol s_0_65[4] = { 'u', 'i', 's', 'i' };
83
+ static const symbol s_0_66[3] = { 'o', 's', 'i' };
84
+ static const symbol s_0_67[6] = { 0xC4, 0x97, 'j', 'o', 's', 'i' };
85
+ static const symbol s_0_68[4] = { 'u', 'o', 's', 'i' };
86
+ static const symbol s_0_69[5] = { 'i', 'u', 'o', 's', 'i' };
87
+ static const symbol s_0_70[6] = { 's', 'i', 'u', 'o', 's', 'i' };
88
+ static const symbol s_0_71[3] = { 'u', 's', 'i' };
89
+ static const symbol s_0_72[4] = { 'a', 'u', 's', 'i' };
90
+ static const symbol s_0_73[7] = { 0xC4, 0x8D, 'i', 'a', 'u', 's', 'i' };
91
+ static const symbol s_0_74[4] = { 0xC4, 0x85, 's', 'i' };
92
+ static const symbol s_0_75[4] = { 0xC4, 0x97, 's', 'i' };
93
+ static const symbol s_0_76[4] = { 0xC5, 0xB3, 's', 'i' };
94
+ static const symbol s_0_77[5] = { 't', 0xC5, 0xB3, 's', 'i' };
95
+ static const symbol s_0_78[2] = { 't', 'i' };
96
+ static const symbol s_0_79[4] = { 'e', 'n', 't', 'i' };
97
+ static const symbol s_0_80[4] = { 'i', 'n', 't', 'i' };
98
+ static const symbol s_0_81[3] = { 'o', 't', 'i' };
99
+ static const symbol s_0_82[4] = { 'i', 'o', 't', 'i' };
100
+ static const symbol s_0_83[4] = { 'u', 'o', 't', 'i' };
101
+ static const symbol s_0_84[5] = { 'i', 'u', 'o', 't', 'i' };
102
+ static const symbol s_0_85[4] = { 'a', 'u', 't', 'i' };
103
+ static const symbol s_0_86[5] = { 'i', 'a', 'u', 't', 'i' };
104
+ static const symbol s_0_87[3] = { 'y', 't', 'i' };
105
+ static const symbol s_0_88[4] = { 0xC4, 0x97, 't', 'i' };
106
+ static const symbol s_0_89[7] = { 't', 'e', 'l', 0xC4, 0x97, 't', 'i' };
107
+ static const symbol s_0_90[6] = { 'i', 'n', 0xC4, 0x97, 't', 'i' };
108
+ static const symbol s_0_91[7] = { 't', 'e', 'r', 0xC4, 0x97, 't', 'i' };
109
+ static const symbol s_0_92[2] = { 'u', 'i' };
110
+ static const symbol s_0_93[3] = { 'i', 'u', 'i' };
111
+ static const symbol s_0_94[5] = { 'e', 'n', 'i', 'u', 'i' };
112
+ static const symbol s_0_95[2] = { 'o', 'j' };
113
+ static const symbol s_0_96[3] = { 0xC4, 0x97, 'j' };
114
+ static const symbol s_0_97[1] = { 'k' };
115
+ static const symbol s_0_98[2] = { 'a', 'm' };
116
+ static const symbol s_0_99[3] = { 'i', 'a', 'm' };
117
+ static const symbol s_0_100[3] = { 'i', 'e', 'm' };
118
+ static const symbol s_0_101[2] = { 'i', 'm' };
119
+ static const symbol s_0_102[3] = { 's', 'i', 'm' };
120
+ static const symbol s_0_103[2] = { 'o', 'm' };
121
+ static const symbol s_0_104[3] = { 't', 'u', 'm' };
122
+ static const symbol s_0_105[3] = { 0xC4, 0x97, 'm' };
123
+ static const symbol s_0_106[6] = { 't', 'u', 'm', 0xC4, 0x97, 'm' };
124
+ static const symbol s_0_107[2] = { 'a', 'n' };
125
+ static const symbol s_0_108[2] = { 'o', 'n' };
126
+ static const symbol s_0_109[3] = { 'i', 'o', 'n' };
127
+ static const symbol s_0_110[2] = { 'u', 'n' };
128
+ static const symbol s_0_111[3] = { 'i', 'u', 'n' };
129
+ static const symbol s_0_112[3] = { 0xC4, 0x97, 'n' };
130
+ static const symbol s_0_113[1] = { 'o' };
131
+ static const symbol s_0_114[2] = { 'i', 'o' };
132
+ static const symbol s_0_115[4] = { 'e', 'n', 'i', 'o' };
133
+ static const symbol s_0_116[4] = { 0xC4, 0x97, 'j', 'o' };
134
+ static const symbol s_0_117[2] = { 'u', 'o' };
135
+ static const symbol s_0_118[1] = { 's' };
136
+ static const symbol s_0_119[2] = { 'a', 's' };
137
+ static const symbol s_0_120[3] = { 'i', 'a', 's' };
138
+ static const symbol s_0_121[2] = { 'e', 's' };
139
+ static const symbol s_0_122[3] = { 'i', 'e', 's' };
140
+ static const symbol s_0_123[2] = { 'i', 's' };
141
+ static const symbol s_0_124[3] = { 'a', 'i', 's' };
142
+ static const symbol s_0_125[4] = { 'i', 'a', 'i', 's' };
143
+ static const symbol s_0_126[6] = { 't', 'u', 'm', 'e', 'i', 's' };
144
+ static const symbol s_0_127[4] = { 'i', 'm', 'i', 's' };
145
+ static const symbol s_0_128[6] = { 'e', 'n', 'i', 'm', 'i', 's' };
146
+ static const symbol s_0_129[4] = { 'o', 'm', 'i', 's' };
147
+ static const symbol s_0_130[5] = { 'i', 'o', 'm', 'i', 's' };
148
+ static const symbol s_0_131[4] = { 'u', 'm', 'i', 's' };
149
+ static const symbol s_0_132[5] = { 0xC4, 0x97, 'm', 'i', 's' };
150
+ static const symbol s_0_133[4] = { 'e', 'n', 'i', 's' };
151
+ static const symbol s_0_134[4] = { 'a', 's', 'i', 's' };
152
+ static const symbol s_0_135[4] = { 'y', 's', 'i', 's' };
153
+ static const symbol s_0_136[3] = { 'a', 'm', 's' };
154
+ static const symbol s_0_137[4] = { 'i', 'a', 'm', 's' };
155
+ static const symbol s_0_138[4] = { 'i', 'e', 'm', 's' };
156
+ static const symbol s_0_139[3] = { 'i', 'm', 's' };
157
+ static const symbol s_0_140[5] = { 'e', 'n', 'i', 'm', 's' };
158
+ static const symbol s_0_141[5] = { 'e', 'r', 'i', 'm', 's' };
159
+ static const symbol s_0_142[3] = { 'o', 'm', 's' };
160
+ static const symbol s_0_143[4] = { 'i', 'o', 'm', 's' };
161
+ static const symbol s_0_144[3] = { 'u', 'm', 's' };
162
+ static const symbol s_0_145[4] = { 0xC4, 0x97, 'm', 's' };
163
+ static const symbol s_0_146[3] = { 'e', 'n', 's' };
164
+ static const symbol s_0_147[2] = { 'o', 's' };
165
+ static const symbol s_0_148[3] = { 'i', 'o', 's' };
166
+ static const symbol s_0_149[3] = { 'u', 'o', 's' };
167
+ static const symbol s_0_150[4] = { 'i', 'u', 'o', 's' };
168
+ static const symbol s_0_151[3] = { 'e', 'r', 's' };
169
+ static const symbol s_0_152[2] = { 'u', 's' };
170
+ static const symbol s_0_153[3] = { 'a', 'u', 's' };
171
+ static const symbol s_0_154[4] = { 'i', 'a', 'u', 's' };
172
+ static const symbol s_0_155[3] = { 'i', 'u', 's' };
173
+ static const symbol s_0_156[2] = { 'y', 's' };
174
+ static const symbol s_0_157[4] = { 'e', 'n', 'y', 's' };
175
+ static const symbol s_0_158[4] = { 'e', 'r', 'y', 's' };
176
+ static const symbol s_0_159[3] = { 0xC4, 0x85, 's' };
177
+ static const symbol s_0_160[4] = { 'i', 0xC4, 0x85, 's' };
178
+ static const symbol s_0_161[3] = { 0xC4, 0x97, 's' };
179
+ static const symbol s_0_162[5] = { 'a', 'm', 0xC4, 0x97, 's' };
180
+ static const symbol s_0_163[6] = { 'i', 'a', 'm', 0xC4, 0x97, 's' };
181
+ static const symbol s_0_164[5] = { 'i', 'm', 0xC4, 0x97, 's' };
182
+ static const symbol s_0_165[6] = { 'k', 'i', 'm', 0xC4, 0x97, 's' };
183
+ static const symbol s_0_166[6] = { 's', 'i', 'm', 0xC4, 0x97, 's' };
184
+ static const symbol s_0_167[5] = { 'o', 'm', 0xC4, 0x97, 's' };
185
+ static const symbol s_0_168[6] = { 0xC4, 0x97, 'm', 0xC4, 0x97, 's' };
186
+ static const symbol s_0_169[9] = { 't', 'u', 'm', 0xC4, 0x97, 'm', 0xC4, 0x97, 's' };
187
+ static const symbol s_0_170[5] = { 'a', 't', 0xC4, 0x97, 's' };
188
+ static const symbol s_0_171[6] = { 'i', 'a', 't', 0xC4, 0x97, 's' };
189
+ static const symbol s_0_172[6] = { 's', 'i', 't', 0xC4, 0x97, 's' };
190
+ static const symbol s_0_173[5] = { 'o', 't', 0xC4, 0x97, 's' };
191
+ static const symbol s_0_174[6] = { 0xC4, 0x97, 't', 0xC4, 0x97, 's' };
192
+ static const symbol s_0_175[9] = { 't', 'u', 'm', 0xC4, 0x97, 't', 0xC4, 0x97, 's' };
193
+ static const symbol s_0_176[3] = { 0xC5, 0xAB, 's' };
194
+ static const symbol s_0_177[3] = { 0xC4, 0xAF, 's' };
195
+ static const symbol s_0_178[4] = { 't', 0xC5, 0xB3, 's' };
196
+ static const symbol s_0_179[2] = { 'a', 't' };
197
+ static const symbol s_0_180[3] = { 'i', 'a', 't' };
198
+ static const symbol s_0_181[2] = { 'i', 't' };
199
+ static const symbol s_0_182[3] = { 's', 'i', 't' };
200
+ static const symbol s_0_183[2] = { 'o', 't' };
201
+ static const symbol s_0_184[3] = { 0xC4, 0x97, 't' };
202
+ static const symbol s_0_185[6] = { 't', 'u', 'm', 0xC4, 0x97, 't' };
203
+ static const symbol s_0_186[1] = { 'u' };
204
+ static const symbol s_0_187[2] = { 'a', 'u' };
205
+ static const symbol s_0_188[3] = { 'i', 'a', 'u' };
206
+ static const symbol s_0_189[5] = { 0xC4, 0x8D, 'i', 'a', 'u' };
207
+ static const symbol s_0_190[2] = { 'i', 'u' };
208
+ static const symbol s_0_191[4] = { 'e', 'n', 'i', 'u' };
209
+ static const symbol s_0_192[3] = { 's', 'i', 'u' };
210
+ static const symbol s_0_193[1] = { 'y' };
211
+ static const symbol s_0_194[2] = { 0xC4, 0x85 };
212
+ static const symbol s_0_195[3] = { 'i', 0xC4, 0x85 };
213
+ static const symbol s_0_196[2] = { 0xC4, 0x97 };
214
+ static const symbol s_0_197[2] = { 0xC4, 0x99 };
215
+ static const symbol s_0_198[2] = { 0xC4, 0xAF };
216
+ static const symbol s_0_199[4] = { 'e', 'n', 0xC4, 0xAF };
217
+ static const symbol s_0_200[4] = { 'e', 'r', 0xC4, 0xAF };
218
+ static const symbol s_0_201[2] = { 0xC5, 0xB3 };
219
+ static const symbol s_0_202[3] = { 'i', 0xC5, 0xB3 };
220
+ static const symbol s_0_203[4] = { 'e', 'r', 0xC5, 0xB3 };
221
+
222
+ static const struct among a_0[204] =
223
+ {
224
+ { 1, s_0_0, -1, -1, 0},
225
+ { 2, s_0_1, 0, -1, 0},
226
+ { 4, s_0_2, 1, -1, 0},
227
+ { 4, s_0_3, 0, -1, 0},
228
+ { 5, s_0_4, 3, -1, 0},
229
+ { 5, s_0_5, 3, -1, 0},
230
+ { 6, s_0_6, 5, -1, 0},
231
+ { 4, s_0_7, 0, -1, 0},
232
+ { 5, s_0_8, 0, -1, 0},
233
+ { 1, s_0_9, -1, -1, 0},
234
+ { 2, s_0_10, 9, -1, 0},
235
+ { 4, s_0_11, 10, -1, 0},
236
+ { 4, s_0_12, 10, -1, 0},
237
+ { 3, s_0_13, 9, -1, 0},
238
+ { 4, s_0_14, 13, -1, 0},
239
+ { 3, s_0_15, 9, -1, 0},
240
+ { 4, s_0_16, 15, -1, 0},
241
+ { 3, s_0_17, 9, -1, 0},
242
+ { 5, s_0_18, 17, -1, 0},
243
+ { 5, s_0_19, 17, -1, 0},
244
+ { 4, s_0_20, 9, -1, 0},
245
+ { 3, s_0_21, 9, -1, 0},
246
+ { 4, s_0_22, 21, -1, 0},
247
+ { 4, s_0_23, 9, -1, 0},
248
+ { 3, s_0_24, 9, -1, 0},
249
+ { 4, s_0_25, 9, -1, 0},
250
+ { 7, s_0_26, 25, -1, 0},
251
+ { 3, s_0_27, 9, -1, 0},
252
+ { 4, s_0_28, 27, -1, 0},
253
+ { 4, s_0_29, 27, -1, 0},
254
+ { 5, s_0_30, 29, -1, 0},
255
+ { 3, s_0_31, 9, -1, 0},
256
+ { 5, s_0_32, 31, -1, 0},
257
+ { 5, s_0_33, 31, -1, 0},
258
+ { 4, s_0_34, 9, -1, 0},
259
+ { 3, s_0_35, 9, -1, 0},
260
+ { 4, s_0_36, 35, -1, 0},
261
+ { 3, s_0_37, 9, -1, 0},
262
+ { 4, s_0_38, 37, -1, 0},
263
+ { 4, s_0_39, 37, -1, 0},
264
+ { 3, s_0_40, 9, -1, 0},
265
+ { 4, s_0_41, 9, -1, 0},
266
+ { 4, s_0_42, 9, -1, 0},
267
+ { 7, s_0_43, 42, -1, 0},
268
+ { 1, s_0_44, -1, -1, 0},
269
+ { 2, s_0_45, 44, -1, 0},
270
+ { 3, s_0_46, 45, -1, 0},
271
+ { 5, s_0_47, 46, -1, 0},
272
+ { 2, s_0_48, 44, -1, 0},
273
+ { 5, s_0_49, 48, -1, 0},
274
+ { 2, s_0_50, 44, -1, 0},
275
+ { 3, s_0_51, 44, -1, 0},
276
+ { 5, s_0_52, 51, -1, 0},
277
+ { 3, s_0_53, 44, -1, 0},
278
+ { 4, s_0_54, 53, -1, 0},
279
+ { 2, s_0_55, 44, -1, 0},
280
+ { 3, s_0_56, 55, -1, 0},
281
+ { 4, s_0_57, 56, -1, 0},
282
+ { 3, s_0_58, 55, -1, 0},
283
+ { 4, s_0_59, 58, -1, 0},
284
+ { 5, s_0_60, 59, -1, 0},
285
+ { 3, s_0_61, 55, -1, 0},
286
+ { 4, s_0_62, 61, -1, 0},
287
+ { 4, s_0_63, 61, -1, 0},
288
+ { 7, s_0_64, 63, -1, 0},
289
+ { 4, s_0_65, 61, -1, 0},
290
+ { 3, s_0_66, 55, -1, 0},
291
+ { 6, s_0_67, 66, -1, 0},
292
+ { 4, s_0_68, 66, -1, 0},
293
+ { 5, s_0_69, 68, -1, 0},
294
+ { 6, s_0_70, 69, -1, 0},
295
+ { 3, s_0_71, 55, -1, 0},
296
+ { 4, s_0_72, 71, -1, 0},
297
+ { 7, s_0_73, 72, -1, 0},
298
+ { 4, s_0_74, 55, -1, 0},
299
+ { 4, s_0_75, 55, -1, 0},
300
+ { 4, s_0_76, 55, -1, 0},
301
+ { 5, s_0_77, 76, -1, 0},
302
+ { 2, s_0_78, 44, -1, 0},
303
+ { 4, s_0_79, 78, -1, 0},
304
+ { 4, s_0_80, 78, -1, 0},
305
+ { 3, s_0_81, 78, -1, 0},
306
+ { 4, s_0_82, 81, -1, 0},
307
+ { 4, s_0_83, 81, -1, 0},
308
+ { 5, s_0_84, 83, -1, 0},
309
+ { 4, s_0_85, 78, -1, 0},
310
+ { 5, s_0_86, 85, -1, 0},
311
+ { 3, s_0_87, 78, -1, 0},
312
+ { 4, s_0_88, 78, -1, 0},
313
+ { 7, s_0_89, 88, -1, 0},
314
+ { 6, s_0_90, 88, -1, 0},
315
+ { 7, s_0_91, 88, -1, 0},
316
+ { 2, s_0_92, 44, -1, 0},
317
+ { 3, s_0_93, 92, -1, 0},
318
+ { 5, s_0_94, 93, -1, 0},
319
+ { 2, s_0_95, -1, -1, 0},
320
+ { 3, s_0_96, -1, -1, 0},
321
+ { 1, s_0_97, -1, -1, 0},
322
+ { 2, s_0_98, -1, -1, 0},
323
+ { 3, s_0_99, 98, -1, 0},
324
+ { 3, s_0_100, -1, -1, 0},
325
+ { 2, s_0_101, -1, -1, 0},
326
+ { 3, s_0_102, 101, -1, 0},
327
+ { 2, s_0_103, -1, -1, 0},
328
+ { 3, s_0_104, -1, -1, 0},
329
+ { 3, s_0_105, -1, -1, 0},
330
+ { 6, s_0_106, 105, -1, 0},
331
+ { 2, s_0_107, -1, -1, 0},
332
+ { 2, s_0_108, -1, -1, 0},
333
+ { 3, s_0_109, 108, -1, 0},
334
+ { 2, s_0_110, -1, -1, 0},
335
+ { 3, s_0_111, 110, -1, 0},
336
+ { 3, s_0_112, -1, -1, 0},
337
+ { 1, s_0_113, -1, -1, 0},
338
+ { 2, s_0_114, 113, -1, 0},
339
+ { 4, s_0_115, 114, -1, 0},
340
+ { 4, s_0_116, 113, -1, 0},
341
+ { 2, s_0_117, 113, -1, 0},
342
+ { 1, s_0_118, -1, -1, 0},
343
+ { 2, s_0_119, 118, -1, 0},
344
+ { 3, s_0_120, 119, -1, 0},
345
+ { 2, s_0_121, 118, -1, 0},
346
+ { 3, s_0_122, 121, -1, 0},
347
+ { 2, s_0_123, 118, -1, 0},
348
+ { 3, s_0_124, 123, -1, 0},
349
+ { 4, s_0_125, 124, -1, 0},
350
+ { 6, s_0_126, 123, -1, 0},
351
+ { 4, s_0_127, 123, -1, 0},
352
+ { 6, s_0_128, 127, -1, 0},
353
+ { 4, s_0_129, 123, -1, 0},
354
+ { 5, s_0_130, 129, -1, 0},
355
+ { 4, s_0_131, 123, -1, 0},
356
+ { 5, s_0_132, 123, -1, 0},
357
+ { 4, s_0_133, 123, -1, 0},
358
+ { 4, s_0_134, 123, -1, 0},
359
+ { 4, s_0_135, 123, -1, 0},
360
+ { 3, s_0_136, 118, -1, 0},
361
+ { 4, s_0_137, 136, -1, 0},
362
+ { 4, s_0_138, 118, -1, 0},
363
+ { 3, s_0_139, 118, -1, 0},
364
+ { 5, s_0_140, 139, -1, 0},
365
+ { 5, s_0_141, 139, -1, 0},
366
+ { 3, s_0_142, 118, -1, 0},
367
+ { 4, s_0_143, 142, -1, 0},
368
+ { 3, s_0_144, 118, -1, 0},
369
+ { 4, s_0_145, 118, -1, 0},
370
+ { 3, s_0_146, 118, -1, 0},
371
+ { 2, s_0_147, 118, -1, 0},
372
+ { 3, s_0_148, 147, -1, 0},
373
+ { 3, s_0_149, 147, -1, 0},
374
+ { 4, s_0_150, 149, -1, 0},
375
+ { 3, s_0_151, 118, -1, 0},
376
+ { 2, s_0_152, 118, -1, 0},
377
+ { 3, s_0_153, 152, -1, 0},
378
+ { 4, s_0_154, 153, -1, 0},
379
+ { 3, s_0_155, 152, -1, 0},
380
+ { 2, s_0_156, 118, -1, 0},
381
+ { 4, s_0_157, 156, -1, 0},
382
+ { 4, s_0_158, 156, -1, 0},
383
+ { 3, s_0_159, 118, -1, 0},
384
+ { 4, s_0_160, 159, -1, 0},
385
+ { 3, s_0_161, 118, -1, 0},
386
+ { 5, s_0_162, 161, -1, 0},
387
+ { 6, s_0_163, 162, -1, 0},
388
+ { 5, s_0_164, 161, -1, 0},
389
+ { 6, s_0_165, 164, -1, 0},
390
+ { 6, s_0_166, 164, -1, 0},
391
+ { 5, s_0_167, 161, -1, 0},
392
+ { 6, s_0_168, 161, -1, 0},
393
+ { 9, s_0_169, 168, -1, 0},
394
+ { 5, s_0_170, 161, -1, 0},
395
+ { 6, s_0_171, 170, -1, 0},
396
+ { 6, s_0_172, 161, -1, 0},
397
+ { 5, s_0_173, 161, -1, 0},
398
+ { 6, s_0_174, 161, -1, 0},
399
+ { 9, s_0_175, 174, -1, 0},
400
+ { 3, s_0_176, 118, -1, 0},
401
+ { 3, s_0_177, 118, -1, 0},
402
+ { 4, s_0_178, 118, -1, 0},
403
+ { 2, s_0_179, -1, -1, 0},
404
+ { 3, s_0_180, 179, -1, 0},
405
+ { 2, s_0_181, -1, -1, 0},
406
+ { 3, s_0_182, 181, -1, 0},
407
+ { 2, s_0_183, -1, -1, 0},
408
+ { 3, s_0_184, -1, -1, 0},
409
+ { 6, s_0_185, 184, -1, 0},
410
+ { 1, s_0_186, -1, -1, 0},
411
+ { 2, s_0_187, 186, -1, 0},
412
+ { 3, s_0_188, 187, -1, 0},
413
+ { 5, s_0_189, 188, -1, 0},
414
+ { 2, s_0_190, 186, -1, 0},
415
+ { 4, s_0_191, 190, -1, 0},
416
+ { 3, s_0_192, 190, -1, 0},
417
+ { 1, s_0_193, -1, -1, 0},
418
+ { 2, s_0_194, -1, -1, 0},
419
+ { 3, s_0_195, 194, -1, 0},
420
+ { 2, s_0_196, -1, -1, 0},
421
+ { 2, s_0_197, -1, -1, 0},
422
+ { 2, s_0_198, -1, -1, 0},
423
+ { 4, s_0_199, 198, -1, 0},
424
+ { 4, s_0_200, 198, -1, 0},
425
+ { 2, s_0_201, -1, -1, 0},
426
+ { 3, s_0_202, 201, -1, 0},
427
+ { 4, s_0_203, 201, -1, 0}
428
+ };
429
+
430
+ static const symbol s_1_0[3] = { 'i', 'n', 'g' };
431
+ static const symbol s_1_1[2] = { 'a', 'j' };
432
+ static const symbol s_1_2[3] = { 'i', 'a', 'j' };
433
+ static const symbol s_1_3[3] = { 'i', 'e', 'j' };
434
+ static const symbol s_1_4[2] = { 'o', 'j' };
435
+ static const symbol s_1_5[3] = { 'i', 'o', 'j' };
436
+ static const symbol s_1_6[3] = { 'u', 'o', 'j' };
437
+ static const symbol s_1_7[4] = { 'i', 'u', 'o', 'j' };
438
+ static const symbol s_1_8[3] = { 'a', 'u', 'j' };
439
+ static const symbol s_1_9[3] = { 0xC4, 0x85, 'j' };
440
+ static const symbol s_1_10[4] = { 'i', 0xC4, 0x85, 'j' };
441
+ static const symbol s_1_11[3] = { 0xC4, 0x97, 'j' };
442
+ static const symbol s_1_12[3] = { 0xC5, 0xB3, 'j' };
443
+ static const symbol s_1_13[4] = { 'i', 0xC5, 0xB3, 'j' };
444
+ static const symbol s_1_14[2] = { 'o', 'k' };
445
+ static const symbol s_1_15[3] = { 'i', 'o', 'k' };
446
+ static const symbol s_1_16[3] = { 'i', 'u', 'k' };
447
+ static const symbol s_1_17[5] = { 'u', 'l', 'i', 'u', 'k' };
448
+ static const symbol s_1_18[6] = { 'u', 0xC4, 0x8D, 'i', 'u', 'k' };
449
+ static const symbol s_1_19[4] = { 'i', 0xC5, 0xA1, 'k' };
450
+ static const symbol s_1_20[3] = { 'i', 'u', 'l' };
451
+ static const symbol s_1_21[2] = { 'y', 'l' };
452
+ static const symbol s_1_22[3] = { 0xC4, 0x97, 'l' };
453
+ static const symbol s_1_23[2] = { 'a', 'm' };
454
+ static const symbol s_1_24[3] = { 'd', 'a', 'm' };
455
+ static const symbol s_1_25[3] = { 'j', 'a', 'm' };
456
+ static const symbol s_1_26[4] = { 'z', 'g', 'a', 'n' };
457
+ static const symbol s_1_27[3] = { 'a', 'i', 'n' };
458
+ static const symbol s_1_28[3] = { 'e', 's', 'n' };
459
+ static const symbol s_1_29[2] = { 'o', 'p' };
460
+ static const symbol s_1_30[3] = { 'i', 'o', 'p' };
461
+ static const symbol s_1_31[3] = { 'i', 'a', 's' };
462
+ static const symbol s_1_32[3] = { 'i', 'e', 's' };
463
+ static const symbol s_1_33[3] = { 'a', 'i', 's' };
464
+ static const symbol s_1_34[4] = { 'i', 'a', 'i', 's' };
465
+ static const symbol s_1_35[2] = { 'o', 's' };
466
+ static const symbol s_1_36[3] = { 'i', 'o', 's' };
467
+ static const symbol s_1_37[3] = { 'u', 'o', 's' };
468
+ static const symbol s_1_38[4] = { 'i', 'u', 'o', 's' };
469
+ static const symbol s_1_39[3] = { 'a', 'u', 's' };
470
+ static const symbol s_1_40[4] = { 'i', 'a', 'u', 's' };
471
+ static const symbol s_1_41[3] = { 0xC4, 0x85, 's' };
472
+ static const symbol s_1_42[4] = { 'i', 0xC4, 0x85, 's' };
473
+ static const symbol s_1_43[3] = { 0xC4, 0x99, 's' };
474
+ static const symbol s_1_44[7] = { 'u', 't', 0xC4, 0x97, 'a', 'i', 't' };
475
+ static const symbol s_1_45[3] = { 'a', 'n', 't' };
476
+ static const symbol s_1_46[4] = { 'i', 'a', 'n', 't' };
477
+ static const symbol s_1_47[5] = { 's', 'i', 'a', 'n', 't' };
478
+ static const symbol s_1_48[3] = { 'i', 'n', 't' };
479
+ static const symbol s_1_49[2] = { 'o', 't' };
480
+ static const symbol s_1_50[3] = { 'u', 'o', 't' };
481
+ static const symbol s_1_51[4] = { 'i', 'u', 'o', 't' };
482
+ static const symbol s_1_52[2] = { 'y', 't' };
483
+ static const symbol s_1_53[3] = { 0xC4, 0x97, 't' };
484
+ static const symbol s_1_54[5] = { 'y', 'k', 0xC5, 0xA1, 't' };
485
+ static const symbol s_1_55[3] = { 'i', 'a', 'u' };
486
+ static const symbol s_1_56[3] = { 'd', 'a', 'v' };
487
+ static const symbol s_1_57[2] = { 's', 'v' };
488
+ static const symbol s_1_58[3] = { 0xC5, 0xA1, 'v' };
489
+ static const symbol s_1_59[6] = { 'y', 'k', 0xC5, 0xA1, 0xC4, 0x8D };
490
+ static const symbol s_1_60[2] = { 0xC4, 0x99 };
491
+ static const symbol s_1_61[5] = { 0xC4, 0x97, 'j', 0xC4, 0x99 };
492
+
493
+ static const struct among a_1[62] =
494
+ {
495
+ { 3, s_1_0, -1, -1, 0},
496
+ { 2, s_1_1, -1, -1, 0},
497
+ { 3, s_1_2, 1, -1, 0},
498
+ { 3, s_1_3, -1, -1, 0},
499
+ { 2, s_1_4, -1, -1, 0},
500
+ { 3, s_1_5, 4, -1, 0},
501
+ { 3, s_1_6, 4, -1, 0},
502
+ { 4, s_1_7, 6, -1, 0},
503
+ { 3, s_1_8, -1, -1, 0},
504
+ { 3, s_1_9, -1, -1, 0},
505
+ { 4, s_1_10, 9, -1, 0},
506
+ { 3, s_1_11, -1, -1, 0},
507
+ { 3, s_1_12, -1, -1, 0},
508
+ { 4, s_1_13, 12, -1, 0},
509
+ { 2, s_1_14, -1, -1, 0},
510
+ { 3, s_1_15, 14, -1, 0},
511
+ { 3, s_1_16, -1, -1, 0},
512
+ { 5, s_1_17, 16, -1, 0},
513
+ { 6, s_1_18, 16, -1, 0},
514
+ { 4, s_1_19, -1, -1, 0},
515
+ { 3, s_1_20, -1, -1, 0},
516
+ { 2, s_1_21, -1, -1, 0},
517
+ { 3, s_1_22, -1, -1, 0},
518
+ { 2, s_1_23, -1, -1, 0},
519
+ { 3, s_1_24, 23, -1, 0},
520
+ { 3, s_1_25, 23, -1, 0},
521
+ { 4, s_1_26, -1, -1, 0},
522
+ { 3, s_1_27, -1, -1, 0},
523
+ { 3, s_1_28, -1, -1, 0},
524
+ { 2, s_1_29, -1, -1, 0},
525
+ { 3, s_1_30, 29, -1, 0},
526
+ { 3, s_1_31, -1, -1, 0},
527
+ { 3, s_1_32, -1, -1, 0},
528
+ { 3, s_1_33, -1, -1, 0},
529
+ { 4, s_1_34, 33, -1, 0},
530
+ { 2, s_1_35, -1, -1, 0},
531
+ { 3, s_1_36, 35, -1, 0},
532
+ { 3, s_1_37, 35, -1, 0},
533
+ { 4, s_1_38, 37, -1, 0},
534
+ { 3, s_1_39, -1, -1, 0},
535
+ { 4, s_1_40, 39, -1, 0},
536
+ { 3, s_1_41, -1, -1, 0},
537
+ { 4, s_1_42, 41, -1, 0},
538
+ { 3, s_1_43, -1, -1, 0},
539
+ { 7, s_1_44, -1, -1, 0},
540
+ { 3, s_1_45, -1, -1, 0},
541
+ { 4, s_1_46, 45, -1, 0},
542
+ { 5, s_1_47, 46, -1, 0},
543
+ { 3, s_1_48, -1, -1, 0},
544
+ { 2, s_1_49, -1, -1, 0},
545
+ { 3, s_1_50, 49, -1, 0},
546
+ { 4, s_1_51, 50, -1, 0},
547
+ { 2, s_1_52, -1, -1, 0},
548
+ { 3, s_1_53, -1, -1, 0},
549
+ { 5, s_1_54, -1, -1, 0},
550
+ { 3, s_1_55, -1, -1, 0},
551
+ { 3, s_1_56, -1, -1, 0},
552
+ { 2, s_1_57, -1, -1, 0},
553
+ { 3, s_1_58, -1, -1, 0},
554
+ { 6, s_1_59, -1, -1, 0},
555
+ { 2, s_1_60, -1, -1, 0},
556
+ { 5, s_1_61, 60, -1, 0}
557
+ };
558
+
559
+ static const symbol s_2_0[5] = { 'o', 'j', 'i', 'm', 'e' };
560
+ static const symbol s_2_1[6] = { 0xC4, 0x97, 'j', 'i', 'm', 'e' };
561
+ static const symbol s_2_2[5] = { 'a', 'v', 'i', 'm', 'e' };
562
+ static const symbol s_2_3[5] = { 'o', 'k', 'a', 't', 'e' };
563
+ static const symbol s_2_4[4] = { 'a', 'i', 't', 'e' };
564
+ static const symbol s_2_5[4] = { 'u', 'o', 't', 'e' };
565
+ static const symbol s_2_6[5] = { 'a', 's', 'i', 'u', 's' };
566
+ static const symbol s_2_7[7] = { 'o', 'k', 'a', 't', 0xC4, 0x97, 's' };
567
+ static const symbol s_2_8[6] = { 'a', 'i', 't', 0xC4, 0x97, 's' };
568
+ static const symbol s_2_9[6] = { 'u', 'o', 't', 0xC4, 0x97, 's' };
569
+ static const symbol s_2_10[4] = { 'e', 's', 'i', 'u' };
570
+
571
+ static const struct among a_2[11] =
572
+ {
573
+ { 5, s_2_0, -1, 7, 0},
574
+ { 6, s_2_1, -1, 3, 0},
575
+ { 5, s_2_2, -1, 6, 0},
576
+ { 5, s_2_3, -1, 8, 0},
577
+ { 4, s_2_4, -1, 1, 0},
578
+ { 4, s_2_5, -1, 2, 0},
579
+ { 5, s_2_6, -1, 5, 0},
580
+ { 7, s_2_7, -1, 8, 0},
581
+ { 6, s_2_8, -1, 1, 0},
582
+ { 6, s_2_9, -1, 2, 0},
583
+ { 4, s_2_10, -1, 4, 0}
584
+ };
585
+
586
+ static const symbol s_3_0[2] = { 0xC4, 0x8D };
587
+ static const symbol s_3_1[3] = { 'd', 0xC5, 0xBE };
588
+
589
+ static const struct among a_3[2] =
590
+ {
591
+ { 2, s_3_0, -1, 1, 0},
592
+ { 3, s_3_1, -1, 2, 0}
593
+ };
594
+
595
+ static const symbol s_4_0[2] = { 'g', 'd' };
596
+
597
+ static const struct among a_4[1] =
598
+ {
599
+ { 2, s_4_0, -1, 1, 0}
600
+ };
601
+
602
+ static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 64, 1, 0, 64, 0, 0, 0, 0, 0, 0, 0, 4, 4 };
603
+
604
+ static const symbol s_0[] = { 'a', 'i', 't', 0xC4, 0x97 };
605
+ static const symbol s_1[] = { 'u', 'o', 't', 0xC4, 0x97 };
606
+ static const symbol s_2[] = { 0xC4, 0x97, 'j', 'i', 'm', 'a', 's' };
607
+ static const symbol s_3[] = { 'e', 's', 'y', 's' };
608
+ static const symbol s_4[] = { 'a', 's', 'y', 's' };
609
+ static const symbol s_5[] = { 'a', 'v', 'i', 'm', 'a', 's' };
610
+ static const symbol s_6[] = { 'o', 'j', 'i', 'm', 'a', 's' };
611
+ static const symbol s_7[] = { 'o', 'k', 'a', 't', 0xC4, 0x97 };
612
+ static const symbol s_8[] = { 't' };
613
+ static const symbol s_9[] = { 'd' };
614
+ static const symbol s_10[] = { 'g' };
615
+
616
+ static int r_R1(struct SN_env * z) {
617
+ if (!(z->I[0] <= z->c)) return 0;
618
+ return 1;
619
+ }
620
+
621
+ static int r_step1(struct SN_env * z) {
622
+
623
+ { int mlimit1;
624
+ if (z->c < z->I[0]) return 0;
625
+ mlimit1 = z->lb; z->lb = z->I[0];
626
+ z->ket = z->c;
627
+ if (!(find_among_b(z, a_0, 204))) { z->lb = mlimit1; return 0; }
628
+ z->bra = z->c;
629
+ z->lb = mlimit1;
630
+ }
631
+ { int ret = r_R1(z);
632
+ if (ret <= 0) return ret;
633
+ }
634
+ { int ret = slice_del(z);
635
+ if (ret < 0) return ret;
636
+ }
637
+ return 1;
638
+ }
639
+
640
+ static int r_step2(struct SN_env * z) {
641
+ while(1) {
642
+ int m1 = z->l - z->c; (void)m1;
643
+
644
+ { int mlimit2;
645
+ if (z->c < z->I[0]) goto lab0;
646
+ mlimit2 = z->lb; z->lb = z->I[0];
647
+ z->ket = z->c;
648
+ if (!(find_among_b(z, a_1, 62))) { z->lb = mlimit2; goto lab0; }
649
+ z->bra = z->c;
650
+ z->lb = mlimit2;
651
+ }
652
+ { int ret = slice_del(z);
653
+ if (ret < 0) return ret;
654
+ }
655
+ continue;
656
+ lab0:
657
+ z->c = z->l - m1;
658
+ break;
659
+ }
660
+ return 1;
661
+ }
662
+
663
+ static int r_fix_conflicts(struct SN_env * z) {
664
+ int among_var;
665
+ z->ket = z->c;
666
+ if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2621472 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
667
+ among_var = find_among_b(z, a_2, 11);
668
+ if (!(among_var)) return 0;
669
+ z->bra = z->c;
670
+ switch (among_var) {
671
+ case 1:
672
+ { int ret = slice_from_s(z, 5, s_0);
673
+ if (ret < 0) return ret;
674
+ }
675
+ break;
676
+ case 2:
677
+ { int ret = slice_from_s(z, 5, s_1);
678
+ if (ret < 0) return ret;
679
+ }
680
+ break;
681
+ case 3:
682
+ { int ret = slice_from_s(z, 7, s_2);
683
+ if (ret < 0) return ret;
684
+ }
685
+ break;
686
+ case 4:
687
+ { int ret = slice_from_s(z, 4, s_3);
688
+ if (ret < 0) return ret;
689
+ }
690
+ break;
691
+ case 5:
692
+ { int ret = slice_from_s(z, 4, s_4);
693
+ if (ret < 0) return ret;
694
+ }
695
+ break;
696
+ case 6:
697
+ { int ret = slice_from_s(z, 6, s_5);
698
+ if (ret < 0) return ret;
699
+ }
700
+ break;
701
+ case 7:
702
+ { int ret = slice_from_s(z, 6, s_6);
703
+ if (ret < 0) return ret;
704
+ }
705
+ break;
706
+ case 8:
707
+ { int ret = slice_from_s(z, 6, s_7);
708
+ if (ret < 0) return ret;
709
+ }
710
+ break;
711
+ }
712
+ return 1;
713
+ }
714
+
715
+ static int r_fix_chdz(struct SN_env * z) {
716
+ int among_var;
717
+ z->ket = z->c;
718
+ if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 141 && z->p[z->c - 1] != 190)) return 0;
719
+ among_var = find_among_b(z, a_3, 2);
720
+ if (!(among_var)) return 0;
721
+ z->bra = z->c;
722
+ switch (among_var) {
723
+ case 1:
724
+ { int ret = slice_from_s(z, 1, s_8);
725
+ if (ret < 0) return ret;
726
+ }
727
+ break;
728
+ case 2:
729
+ { int ret = slice_from_s(z, 1, s_9);
730
+ if (ret < 0) return ret;
731
+ }
732
+ break;
733
+ }
734
+ return 1;
735
+ }
736
+
737
+ static int r_fix_gd(struct SN_env * z) {
738
+ z->ket = z->c;
739
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] != 100) return 0;
740
+ if (!(find_among_b(z, a_4, 1))) return 0;
741
+ z->bra = z->c;
742
+ { int ret = slice_from_s(z, 1, s_10);
743
+ if (ret < 0) return ret;
744
+ }
745
+ return 1;
746
+ }
747
+
748
+ extern int lithuanian_UTF_8_stem(struct SN_env * z) {
749
+ z->I[0] = z->l;
750
+ { int c1 = z->c;
751
+ { int c2 = z->c;
752
+ { int c_test3 = z->c;
753
+ if (z->c == z->l || z->p[z->c] != 'a') { z->c = c2; goto lab1; }
754
+ z->c++;
755
+ z->c = c_test3;
756
+ }
757
+ if (!(len_utf8(z->p) > 6)) { z->c = c2; goto lab1; }
758
+ { int ret = skip_utf8(z->p, z->c, z->l, 1);
759
+ if (ret < 0) { z->c = c2; goto lab1; }
760
+ z->c = ret;
761
+ }
762
+ lab1:
763
+ ;
764
+ }
765
+ {
766
+ int ret = out_grouping_U(z, g_v, 97, 371, 1);
767
+ if (ret < 0) goto lab0;
768
+ z->c += ret;
769
+ }
770
+ {
771
+ int ret = in_grouping_U(z, g_v, 97, 371, 1);
772
+ if (ret < 0) goto lab0;
773
+ z->c += ret;
774
+ }
775
+ z->I[0] = z->c;
776
+ lab0:
777
+ z->c = c1;
778
+ }
779
+ z->lb = z->c; z->c = z->l;
780
+
781
+ { int m4 = z->l - z->c; (void)m4;
782
+ { int ret = r_fix_conflicts(z);
783
+ if (ret < 0) return ret;
784
+ }
785
+ z->c = z->l - m4;
786
+ }
787
+ { int m5 = z->l - z->c; (void)m5;
788
+ { int ret = r_step1(z);
789
+ if (ret < 0) return ret;
790
+ }
791
+ z->c = z->l - m5;
792
+ }
793
+ { int m6 = z->l - z->c; (void)m6;
794
+ { int ret = r_fix_chdz(z);
795
+ if (ret < 0) return ret;
796
+ }
797
+ z->c = z->l - m6;
798
+ }
799
+ { int m7 = z->l - z->c; (void)m7;
800
+ { int ret = r_step2(z);
801
+ if (ret < 0) return ret;
802
+ }
803
+ z->c = z->l - m7;
804
+ }
805
+ { int m8 = z->l - z->c; (void)m8;
806
+ { int ret = r_fix_chdz(z);
807
+ if (ret < 0) return ret;
808
+ }
809
+ z->c = z->l - m8;
810
+ }
811
+ { int m9 = z->l - z->c; (void)m9;
812
+ { int ret = r_fix_gd(z);
813
+ if (ret < 0) return ret;
814
+ }
815
+ z->c = z->l - m9;
816
+ }
817
+ z->c = z->lb;
818
+ return 1;
819
+ }
820
+
821
+ extern struct SN_env * lithuanian_UTF_8_create_env(void) { return SN_create_env(0, 1); }
822
+
823
+ extern void lithuanian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
824
+