LCOV - differential code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_english.c (source / functions) Coverage Total Hit UBC CBC
Current: Differential Code Coverage HEAD vs 15 Lines: 64.6 % 536 346 190 346
Current Date: 2023-04-08 17:13:01 Functions: 94.4 % 18 17 1 17
Baseline: 15 Line coverage date bins:
Baseline Date: 2023-04-08 15:09:40 (240..) days: 64.6 % 536 346 190 346
Legend: Lines: hit not hit Function coverage date bins:
(240..) days: 94.4 % 18 17 1 17

 Age         Owner                  TLA  Line data    Source code
                                  1                 : /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
                                  2                 : 
                                  3                 : #include "header.h"
                                  4                 : 
                                  5                 : #ifdef __cplusplus
                                  6                 : extern "C" {
                                  7                 : #endif
                                  8                 : extern int english_UTF_8_stem(struct SN_env * z);
                                  9                 : #ifdef __cplusplus
                                 10                 : }
                                 11                 : #endif
                                 12                 : static int r_exception2(struct SN_env * z);
                                 13                 : static int r_exception1(struct SN_env * z);
                                 14                 : static int r_Step_5(struct SN_env * z);
                                 15                 : static int r_Step_4(struct SN_env * z);
                                 16                 : static int r_Step_3(struct SN_env * z);
                                 17                 : static int r_Step_2(struct SN_env * z);
                                 18                 : static int r_Step_1c(struct SN_env * z);
                                 19                 : static int r_Step_1b(struct SN_env * z);
                                 20                 : static int r_Step_1a(struct SN_env * z);
                                 21                 : static int r_R2(struct SN_env * z);
                                 22                 : static int r_R1(struct SN_env * z);
                                 23                 : static int r_shortv(struct SN_env * z);
                                 24                 : static int r_mark_regions(struct SN_env * z);
                                 25                 : static int r_postlude(struct SN_env * z);
                                 26                 : static int r_prelude(struct SN_env * z);
                                 27                 : #ifdef __cplusplus
                                 28                 : extern "C" {
                                 29                 : #endif
                                 30                 : 
                                 31                 : 
                                 32                 : extern struct SN_env * english_UTF_8_create_env(void);
                                 33                 : extern void english_UTF_8_close_env(struct SN_env * z);
                                 34                 : 
                                 35                 : 
                                 36                 : #ifdef __cplusplus
                                 37                 : }
                                 38                 : #endif
                                 39                 : static const symbol s_0_0[5] = { 'a', 'r', 's', 'e', 'n' };
                                 40                 : static const symbol s_0_1[6] = { 'c', 'o', 'm', 'm', 'u', 'n' };
                                 41                 : static const symbol s_0_2[5] = { 'g', 'e', 'n', 'e', 'r' };
                                 42                 : 
                                 43                 : static const struct among a_0[3] =
                                 44                 : {
                                 45                 : { 5, s_0_0, -1, -1, 0},
                                 46                 : { 6, s_0_1, -1, -1, 0},
                                 47                 : { 5, s_0_2, -1, -1, 0}
                                 48                 : };
                                 49                 : 
                                 50                 : static const symbol s_1_0[1] = { '\'' };
                                 51                 : static const symbol s_1_1[3] = { '\'', 's', '\'' };
                                 52                 : static const symbol s_1_2[2] = { '\'', 's' };
                                 53                 : 
                                 54                 : static const struct among a_1[3] =
                                 55                 : {
                                 56                 : { 1, s_1_0, -1, 1, 0},
                                 57                 : { 3, s_1_1, 0, 1, 0},
                                 58                 : { 2, s_1_2, -1, 1, 0}
                                 59                 : };
                                 60                 : 
                                 61                 : static const symbol s_2_0[3] = { 'i', 'e', 'd' };
                                 62                 : static const symbol s_2_1[1] = { 's' };
                                 63                 : static const symbol s_2_2[3] = { 'i', 'e', 's' };
                                 64                 : static const symbol s_2_3[4] = { 's', 's', 'e', 's' };
                                 65                 : static const symbol s_2_4[2] = { 's', 's' };
                                 66                 : static const symbol s_2_5[2] = { 'u', 's' };
                                 67                 : 
                                 68                 : static const struct among a_2[6] =
                                 69                 : {
                                 70                 : { 3, s_2_0, -1, 2, 0},
                                 71                 : { 1, s_2_1, -1, 3, 0},
                                 72                 : { 3, s_2_2, 1, 2, 0},
                                 73                 : { 4, s_2_3, 1, 1, 0},
                                 74                 : { 2, s_2_4, 1, -1, 0},
                                 75                 : { 2, s_2_5, 1, -1, 0}
                                 76                 : };
                                 77                 : 
                                 78                 : static const symbol s_3_1[2] = { 'b', 'b' };
                                 79                 : static const symbol s_3_2[2] = { 'd', 'd' };
                                 80                 : static const symbol s_3_3[2] = { 'f', 'f' };
                                 81                 : static const symbol s_3_4[2] = { 'g', 'g' };
                                 82                 : static const symbol s_3_5[2] = { 'b', 'l' };
                                 83                 : static const symbol s_3_6[2] = { 'm', 'm' };
                                 84                 : static const symbol s_3_7[2] = { 'n', 'n' };
                                 85                 : static const symbol s_3_8[2] = { 'p', 'p' };
                                 86                 : static const symbol s_3_9[2] = { 'r', 'r' };
                                 87                 : static const symbol s_3_10[2] = { 'a', 't' };
                                 88                 : static const symbol s_3_11[2] = { 't', 't' };
                                 89                 : static const symbol s_3_12[2] = { 'i', 'z' };
                                 90                 : 
                                 91                 : static const struct among a_3[13] =
                                 92                 : {
                                 93                 : { 0, 0, -1, 3, 0},
                                 94                 : { 2, s_3_1, 0, 2, 0},
                                 95                 : { 2, s_3_2, 0, 2, 0},
                                 96                 : { 2, s_3_3, 0, 2, 0},
                                 97                 : { 2, s_3_4, 0, 2, 0},
                                 98                 : { 2, s_3_5, 0, 1, 0},
                                 99                 : { 2, s_3_6, 0, 2, 0},
                                100                 : { 2, s_3_7, 0, 2, 0},
                                101                 : { 2, s_3_8, 0, 2, 0},
                                102                 : { 2, s_3_9, 0, 2, 0},
                                103                 : { 2, s_3_10, 0, 1, 0},
                                104                 : { 2, s_3_11, 0, 2, 0},
                                105                 : { 2, s_3_12, 0, 1, 0}
                                106                 : };
                                107                 : 
                                108                 : static const symbol s_4_0[2] = { 'e', 'd' };
                                109                 : static const symbol s_4_1[3] = { 'e', 'e', 'd' };
                                110                 : static const symbol s_4_2[3] = { 'i', 'n', 'g' };
                                111                 : static const symbol s_4_3[4] = { 'e', 'd', 'l', 'y' };
                                112                 : static const symbol s_4_4[5] = { 'e', 'e', 'd', 'l', 'y' };
                                113                 : static const symbol s_4_5[5] = { 'i', 'n', 'g', 'l', 'y' };
                                114                 : 
                                115                 : static const struct among a_4[6] =
                                116                 : {
                                117                 : { 2, s_4_0, -1, 2, 0},
                                118                 : { 3, s_4_1, 0, 1, 0},
                                119                 : { 3, s_4_2, -1, 2, 0},
                                120                 : { 4, s_4_3, -1, 2, 0},
                                121                 : { 5, s_4_4, 3, 1, 0},
                                122                 : { 5, s_4_5, -1, 2, 0}
                                123                 : };
                                124                 : 
                                125                 : static const symbol s_5_0[4] = { 'a', 'n', 'c', 'i' };
                                126                 : static const symbol s_5_1[4] = { 'e', 'n', 'c', 'i' };
                                127                 : static const symbol s_5_2[3] = { 'o', 'g', 'i' };
                                128                 : static const symbol s_5_3[2] = { 'l', 'i' };
                                129                 : static const symbol s_5_4[3] = { 'b', 'l', 'i' };
                                130                 : static const symbol s_5_5[4] = { 'a', 'b', 'l', 'i' };
                                131                 : static const symbol s_5_6[4] = { 'a', 'l', 'l', 'i' };
                                132                 : static const symbol s_5_7[5] = { 'f', 'u', 'l', 'l', 'i' };
                                133                 : static const symbol s_5_8[6] = { 'l', 'e', 's', 's', 'l', 'i' };
                                134                 : static const symbol s_5_9[5] = { 'o', 'u', 's', 'l', 'i' };
                                135                 : static const symbol s_5_10[5] = { 'e', 'n', 't', 'l', 'i' };
                                136                 : static const symbol s_5_11[5] = { 'a', 'l', 'i', 't', 'i' };
                                137                 : static const symbol s_5_12[6] = { 'b', 'i', 'l', 'i', 't', 'i' };
                                138                 : static const symbol s_5_13[5] = { 'i', 'v', 'i', 't', 'i' };
                                139                 : static const symbol s_5_14[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
                                140                 : static const symbol s_5_15[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
                                141                 : static const symbol s_5_16[5] = { 'a', 'l', 'i', 's', 'm' };
                                142                 : static const symbol s_5_17[5] = { 'a', 't', 'i', 'o', 'n' };
                                143                 : static const symbol s_5_18[7] = { 'i', 'z', 'a', 't', 'i', 'o', 'n' };
                                144                 : static const symbol s_5_19[4] = { 'i', 'z', 'e', 'r' };
                                145                 : static const symbol s_5_20[4] = { 'a', 't', 'o', 'r' };
                                146                 : static const symbol s_5_21[7] = { 'i', 'v', 'e', 'n', 'e', 's', 's' };
                                147                 : static const symbol s_5_22[7] = { 'f', 'u', 'l', 'n', 'e', 's', 's' };
                                148                 : static const symbol s_5_23[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
                                149                 : 
                                150                 : static const struct among a_5[24] =
                                151                 : {
                                152                 : { 4, s_5_0, -1, 3, 0},
                                153                 : { 4, s_5_1, -1, 2, 0},
                                154                 : { 3, s_5_2, -1, 13, 0},
                                155                 : { 2, s_5_3, -1, 15, 0},
                                156                 : { 3, s_5_4, 3, 12, 0},
                                157                 : { 4, s_5_5, 4, 4, 0},
                                158                 : { 4, s_5_6, 3, 8, 0},
                                159                 : { 5, s_5_7, 3, 9, 0},
                                160                 : { 6, s_5_8, 3, 14, 0},
                                161                 : { 5, s_5_9, 3, 10, 0},
                                162                 : { 5, s_5_10, 3, 5, 0},
                                163                 : { 5, s_5_11, -1, 8, 0},
                                164                 : { 6, s_5_12, -1, 12, 0},
                                165                 : { 5, s_5_13, -1, 11, 0},
                                166                 : { 6, s_5_14, -1, 1, 0},
                                167                 : { 7, s_5_15, 14, 7, 0},
                                168                 : { 5, s_5_16, -1, 8, 0},
                                169                 : { 5, s_5_17, -1, 7, 0},
                                170                 : { 7, s_5_18, 17, 6, 0},
                                171                 : { 4, s_5_19, -1, 6, 0},
                                172                 : { 4, s_5_20, -1, 7, 0},
                                173                 : { 7, s_5_21, -1, 11, 0},
                                174                 : { 7, s_5_22, -1, 9, 0},
                                175                 : { 7, s_5_23, -1, 10, 0}
                                176                 : };
                                177                 : 
                                178                 : static const symbol s_6_0[5] = { 'i', 'c', 'a', 't', 'e' };
                                179                 : static const symbol s_6_1[5] = { 'a', 't', 'i', 'v', 'e' };
                                180                 : static const symbol s_6_2[5] = { 'a', 'l', 'i', 'z', 'e' };
                                181                 : static const symbol s_6_3[5] = { 'i', 'c', 'i', 't', 'i' };
                                182                 : static const symbol s_6_4[4] = { 'i', 'c', 'a', 'l' };
                                183                 : static const symbol s_6_5[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
                                184                 : static const symbol s_6_6[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
                                185                 : static const symbol s_6_7[3] = { 'f', 'u', 'l' };
                                186                 : static const symbol s_6_8[4] = { 'n', 'e', 's', 's' };
                                187                 : 
                                188                 : static const struct among a_6[9] =
                                189                 : {
                                190                 : { 5, s_6_0, -1, 4, 0},
                                191                 : { 5, s_6_1, -1, 6, 0},
                                192                 : { 5, s_6_2, -1, 3, 0},
                                193                 : { 5, s_6_3, -1, 4, 0},
                                194                 : { 4, s_6_4, -1, 4, 0},
                                195                 : { 6, s_6_5, -1, 1, 0},
                                196                 : { 7, s_6_6, 5, 2, 0},
                                197                 : { 3, s_6_7, -1, 5, 0},
                                198                 : { 4, s_6_8, -1, 5, 0}
                                199                 : };
                                200                 : 
                                201                 : static const symbol s_7_0[2] = { 'i', 'c' };
                                202                 : static const symbol s_7_1[4] = { 'a', 'n', 'c', 'e' };
                                203                 : static const symbol s_7_2[4] = { 'e', 'n', 'c', 'e' };
                                204                 : static const symbol s_7_3[4] = { 'a', 'b', 'l', 'e' };
                                205                 : static const symbol s_7_4[4] = { 'i', 'b', 'l', 'e' };
                                206                 : static const symbol s_7_5[3] = { 'a', 't', 'e' };
                                207                 : static const symbol s_7_6[3] = { 'i', 'v', 'e' };
                                208                 : static const symbol s_7_7[3] = { 'i', 'z', 'e' };
                                209                 : static const symbol s_7_8[3] = { 'i', 't', 'i' };
                                210                 : static const symbol s_7_9[2] = { 'a', 'l' };
                                211                 : static const symbol s_7_10[3] = { 'i', 's', 'm' };
                                212                 : static const symbol s_7_11[3] = { 'i', 'o', 'n' };
                                213                 : static const symbol s_7_12[2] = { 'e', 'r' };
                                214                 : static const symbol s_7_13[3] = { 'o', 'u', 's' };
                                215                 : static const symbol s_7_14[3] = { 'a', 'n', 't' };
                                216                 : static const symbol s_7_15[3] = { 'e', 'n', 't' };
                                217                 : static const symbol s_7_16[4] = { 'm', 'e', 'n', 't' };
                                218                 : static const symbol s_7_17[5] = { 'e', 'm', 'e', 'n', 't' };
                                219                 : 
                                220                 : static const struct among a_7[18] =
                                221                 : {
                                222                 : { 2, s_7_0, -1, 1, 0},
                                223                 : { 4, s_7_1, -1, 1, 0},
                                224                 : { 4, s_7_2, -1, 1, 0},
                                225                 : { 4, s_7_3, -1, 1, 0},
                                226                 : { 4, s_7_4, -1, 1, 0},
                                227                 : { 3, s_7_5, -1, 1, 0},
                                228                 : { 3, s_7_6, -1, 1, 0},
                                229                 : { 3, s_7_7, -1, 1, 0},
                                230                 : { 3, s_7_8, -1, 1, 0},
                                231                 : { 2, s_7_9, -1, 1, 0},
                                232                 : { 3, s_7_10, -1, 1, 0},
                                233                 : { 3, s_7_11, -1, 2, 0},
                                234                 : { 2, s_7_12, -1, 1, 0},
                                235                 : { 3, s_7_13, -1, 1, 0},
                                236                 : { 3, s_7_14, -1, 1, 0},
                                237                 : { 3, s_7_15, -1, 1, 0},
                                238                 : { 4, s_7_16, 15, 1, 0},
                                239                 : { 5, s_7_17, 16, 1, 0}
                                240                 : };
                                241                 : 
                                242                 : static const symbol s_8_0[1] = { 'e' };
                                243                 : static const symbol s_8_1[1] = { 'l' };
                                244                 : 
                                245                 : static const struct among a_8[2] =
                                246                 : {
                                247                 : { 1, s_8_0, -1, 1, 0},
                                248                 : { 1, s_8_1, -1, 2, 0}
                                249                 : };
                                250                 : 
                                251                 : static const symbol s_9_0[7] = { 's', 'u', 'c', 'c', 'e', 'e', 'd' };
                                252                 : static const symbol s_9_1[7] = { 'p', 'r', 'o', 'c', 'e', 'e', 'd' };
                                253                 : static const symbol s_9_2[6] = { 'e', 'x', 'c', 'e', 'e', 'd' };
                                254                 : static const symbol s_9_3[7] = { 'c', 'a', 'n', 'n', 'i', 'n', 'g' };
                                255                 : static const symbol s_9_4[6] = { 'i', 'n', 'n', 'i', 'n', 'g' };
                                256                 : static const symbol s_9_5[7] = { 'e', 'a', 'r', 'r', 'i', 'n', 'g' };
                                257                 : static const symbol s_9_6[7] = { 'h', 'e', 'r', 'r', 'i', 'n', 'g' };
                                258                 : static const symbol s_9_7[6] = { 'o', 'u', 't', 'i', 'n', 'g' };
                                259                 : 
                                260                 : static const struct among a_9[8] =
                                261                 : {
                                262                 : { 7, s_9_0, -1, -1, 0},
                                263                 : { 7, s_9_1, -1, -1, 0},
                                264                 : { 6, s_9_2, -1, -1, 0},
                                265                 : { 7, s_9_3, -1, -1, 0},
                                266                 : { 6, s_9_4, -1, -1, 0},
                                267                 : { 7, s_9_5, -1, -1, 0},
                                268                 : { 7, s_9_6, -1, -1, 0},
                                269                 : { 6, s_9_7, -1, -1, 0}
                                270                 : };
                                271                 : 
                                272                 : static const symbol s_10_0[5] = { 'a', 'n', 'd', 'e', 's' };
                                273                 : static const symbol s_10_1[5] = { 'a', 't', 'l', 'a', 's' };
                                274                 : static const symbol s_10_2[4] = { 'b', 'i', 'a', 's' };
                                275                 : static const symbol s_10_3[6] = { 'c', 'o', 's', 'm', 'o', 's' };
                                276                 : static const symbol s_10_4[5] = { 'd', 'y', 'i', 'n', 'g' };
                                277                 : static const symbol s_10_5[5] = { 'e', 'a', 'r', 'l', 'y' };
                                278                 : static const symbol s_10_6[6] = { 'g', 'e', 'n', 't', 'l', 'y' };
                                279                 : static const symbol s_10_7[4] = { 'h', 'o', 'w', 'e' };
                                280                 : static const symbol s_10_8[4] = { 'i', 'd', 'l', 'y' };
                                281                 : static const symbol s_10_9[5] = { 'l', 'y', 'i', 'n', 'g' };
                                282                 : static const symbol s_10_10[4] = { 'n', 'e', 'w', 's' };
                                283                 : static const symbol s_10_11[4] = { 'o', 'n', 'l', 'y' };
                                284                 : static const symbol s_10_12[6] = { 's', 'i', 'n', 'g', 'l', 'y' };
                                285                 : static const symbol s_10_13[5] = { 's', 'k', 'i', 'e', 's' };
                                286                 : static const symbol s_10_14[4] = { 's', 'k', 'i', 's' };
                                287                 : static const symbol s_10_15[3] = { 's', 'k', 'y' };
                                288                 : static const symbol s_10_16[5] = { 't', 'y', 'i', 'n', 'g' };
                                289                 : static const symbol s_10_17[4] = { 'u', 'g', 'l', 'y' };
                                290                 : 
                                291                 : static const struct among a_10[18] =
                                292                 : {
                                293                 : { 5, s_10_0, -1, -1, 0},
                                294                 : { 5, s_10_1, -1, -1, 0},
                                295                 : { 4, s_10_2, -1, -1, 0},
                                296                 : { 6, s_10_3, -1, -1, 0},
                                297                 : { 5, s_10_4, -1, 3, 0},
                                298                 : { 5, s_10_5, -1, 9, 0},
                                299                 : { 6, s_10_6, -1, 7, 0},
                                300                 : { 4, s_10_7, -1, -1, 0},
                                301                 : { 4, s_10_8, -1, 6, 0},
                                302                 : { 5, s_10_9, -1, 4, 0},
                                303                 : { 4, s_10_10, -1, -1, 0},
                                304                 : { 4, s_10_11, -1, 10, 0},
                                305                 : { 6, s_10_12, -1, 11, 0},
                                306                 : { 5, s_10_13, -1, 2, 0},
                                307                 : { 4, s_10_14, -1, 1, 0},
                                308                 : { 3, s_10_15, -1, -1, 0},
                                309                 : { 5, s_10_16, -1, 5, 0},
                                310                 : { 4, s_10_17, -1, 8, 0}
                                311                 : };
                                312                 : 
                                313                 : static const unsigned char g_v[] = { 17, 65, 16, 1 };
                                314                 : 
                                315                 : static const unsigned char g_v_WXY[] = { 1, 17, 65, 208, 1 };
                                316                 : 
                                317                 : static const unsigned char g_valid_LI[] = { 55, 141, 2 };
                                318                 : 
                                319                 : static const symbol s_0[] = { 'Y' };
                                320                 : static const symbol s_1[] = { 'Y' };
                                321                 : static const symbol s_2[] = { 's', 's' };
                                322                 : static const symbol s_3[] = { 'i' };
                                323                 : static const symbol s_4[] = { 'i', 'e' };
                                324                 : static const symbol s_5[] = { 'e', 'e' };
                                325                 : static const symbol s_6[] = { 'e' };
                                326                 : static const symbol s_7[] = { 'e' };
                                327                 : static const symbol s_8[] = { 'i' };
                                328                 : static const symbol s_9[] = { 't', 'i', 'o', 'n' };
                                329                 : static const symbol s_10[] = { 'e', 'n', 'c', 'e' };
                                330                 : static const symbol s_11[] = { 'a', 'n', 'c', 'e' };
                                331                 : static const symbol s_12[] = { 'a', 'b', 'l', 'e' };
                                332                 : static const symbol s_13[] = { 'e', 'n', 't' };
                                333                 : static const symbol s_14[] = { 'i', 'z', 'e' };
                                334                 : static const symbol s_15[] = { 'a', 't', 'e' };
                                335                 : static const symbol s_16[] = { 'a', 'l' };
                                336                 : static const symbol s_17[] = { 'f', 'u', 'l' };
                                337                 : static const symbol s_18[] = { 'o', 'u', 's' };
                                338                 : static const symbol s_19[] = { 'i', 'v', 'e' };
                                339                 : static const symbol s_20[] = { 'b', 'l', 'e' };
                                340                 : static const symbol s_21[] = { 'o', 'g' };
                                341                 : static const symbol s_22[] = { 'l', 'e', 's', 's' };
                                342                 : static const symbol s_23[] = { 't', 'i', 'o', 'n' };
                                343                 : static const symbol s_24[] = { 'a', 't', 'e' };
                                344                 : static const symbol s_25[] = { 'a', 'l' };
                                345                 : static const symbol s_26[] = { 'i', 'c' };
                                346                 : static const symbol s_27[] = { 's', 'k', 'i' };
                                347                 : static const symbol s_28[] = { 's', 'k', 'y' };
                                348                 : static const symbol s_29[] = { 'd', 'i', 'e' };
                                349                 : static const symbol s_30[] = { 'l', 'i', 'e' };
                                350                 : static const symbol s_31[] = { 't', 'i', 'e' };
                                351                 : static const symbol s_32[] = { 'i', 'd', 'l' };
                                352                 : static const symbol s_33[] = { 'g', 'e', 'n', 't', 'l' };
                                353                 : static const symbol s_34[] = { 'u', 'g', 'l', 'i' };
                                354                 : static const symbol s_35[] = { 'e', 'a', 'r', 'l', 'i' };
                                355                 : static const symbol s_36[] = { 'o', 'n', 'l', 'i' };
                                356                 : static const symbol s_37[] = { 's', 'i', 'n', 'g', 'l' };
                                357                 : static const symbol s_38[] = { 'y' };
                                358                 : 
  779 peter                     359 CBC        3131 : static int r_prelude(struct SN_env * z) {
                                360            3131 :     z->I[2] = 0;
                                361            3131 :     {   int c1 = z->c;
                                362            3131 :         z->bra = z->c;
                                363            3131 :         if (z->c == z->l || z->p[z->c] != '\'') goto lab0;
 1658 tgl                       364 UBC           0 :         z->c++;
  779 peter                     365               0 :         z->ket = z->c;
                                366               0 :         {   int ret = slice_del(z);
 5710 tgl                       367               0 :             if (ret < 0) return ret;
                                368                 :         }
                                369               0 :     lab0:
 5710 tgl                       370 CBC        3131 :         z->c = c1;
                                371                 :     }
  779 peter                     372            3131 :     {   int c2 = z->c;
                                373            3131 :         z->bra = z->c;
                                374            3131 :         if (z->c == z->l || z->p[z->c] != 'y') goto lab1;
 1658 tgl                       375              21 :         z->c++;
  779 peter                     376              21 :         z->ket = z->c;
                                377              21 :         {   int ret = slice_from_s(z, 1, s_0);
 5710 tgl                       378              21 :             if (ret < 0) return ret;
                                379                 :         }
  779 peter                     380              21 :         z->I[2] = 1;
 5710 tgl                       381            3131 :     lab1:
                                382            3131 :         z->c = c2;
                                383                 :     }
  779 peter                     384            3131 :     {   int c3 = z->c;
                                385             243 :         while(1) {
                                386            3374 :             int c4 = z->c;
                                387           14582 :             while(1) {
 5710 tgl                       388           17956 :                 int c5 = z->c;
  779 peter                     389           17956 :                 if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab4;
                                390            5724 :                 z->bra = z->c;
                                391            5724 :                 if (z->c == z->l || z->p[z->c] != 'y') goto lab4;
 1658 tgl                       392             243 :                 z->c++;
  779 peter                     393             243 :                 z->ket = z->c;
 5710 tgl                       394             243 :                 z->c = c5;
                                395             243 :                 break;
                                396           17713 :             lab4:
                                397           17713 :                 z->c = c5;
  779 peter                     398           17713 :                 {   int ret = skip_utf8(z->p, z->c, z->l, 1);
 5710 tgl                       399           17713 :                     if (ret < 0) goto lab3;
  779 peter                     400           14582 :                     z->c = ret;
                                401                 :                 }
                                402                 :             }
                                403             243 :             {   int ret = slice_from_s(z, 1, s_1);
 5710 tgl                       404             243 :                 if (ret < 0) return ret;
                                405                 :             }
  779 peter                     406             243 :             z->I[2] = 1;
 5710 tgl                       407             243 :             continue;
                                408            3131 :         lab3:
                                409            3131 :             z->c = c4;
                                410            3131 :             break;
                                411                 :         }
                                412            3131 :         z->c = c3;
                                413                 :     }
                                414            3131 :     return 1;
                                415                 : }
                                416                 : 
  779 peter                     417            3131 : static int r_mark_regions(struct SN_env * z) {
                                418            3131 :     z->I[1] = z->l;
                                419            3131 :     z->I[0] = z->l;
                                420            3131 :     {   int c1 = z->c;
                                421            3131 :         {   int c2 = z->c;
                                422            3131 :             if (z->c + 4 >= z->l || z->p[z->c + 4] >> 5 != 3 || !((2375680 >> (z->p[z->c + 4] & 0x1f)) & 1)) goto lab2;
 1658 tgl                       423             517 :             if (!(find_among(z, a_0, 3))) goto lab2;
 5710 tgl                       424 UBC           0 :             goto lab1;
 5710 tgl                       425 CBC        3131 :         lab2:
                                426            3131 :             z->c = c2;
                                427                 :             {   
                                428            3131 :                 int ret = out_grouping_U(z, g_v, 97, 121, 1);
                                429            3131 :                 if (ret < 0) goto lab0;
                                430            2795 :                 z->c += ret;
                                431                 :             }
                                432                 :             {   
                                433            2795 :                 int ret = in_grouping_U(z, g_v, 97, 121, 1);
                                434            2795 :                 if (ret < 0) goto lab0;
                                435            2503 :                 z->c += ret;
                                436                 :             }
                                437                 :         }
                                438            2503 :     lab1:
  779 peter                     439            2503 :         z->I[1] = z->c;
                                440                 :         {   
 5710 tgl                       441            2503 :             int ret = out_grouping_U(z, g_v, 97, 121, 1);
                                442            2503 :             if (ret < 0) goto lab0;
                                443            1369 :             z->c += ret;
                                444                 :         }
                                445                 :         {   
                                446            1369 :             int ret = in_grouping_U(z, g_v, 97, 121, 1);
                                447            1369 :             if (ret < 0) goto lab0;
                                448            1102 :             z->c += ret;
                                449                 :         }
  779 peter                     450            1102 :         z->I[0] = z->c;
 5710 tgl                       451            3131 :     lab0:
                                452            3131 :         z->c = c1;
                                453                 :     }
                                454            3131 :     return 1;
                                455                 : }
                                456                 : 
  779 peter                     457             218 : static int r_shortv(struct SN_env * z) {
                                458             218 :     {   int m1 = z->l - z->c; (void)m1;
                                459             218 :         if (out_grouping_b_U(z, g_v_WXY, 89, 121, 0)) goto lab1;
                                460             218 :         if (in_grouping_b_U(z, g_v, 97, 121, 0)) goto lab1;
                                461             116 :         if (out_grouping_b_U(z, g_v, 97, 121, 0)) goto lab1;
 5710 tgl                       462              33 :         goto lab0;
                                463             185 :     lab1:
                                464             185 :         z->c = z->l - m1;
  779 peter                     465             185 :         if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
                                466             185 :         if (in_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
                                467              83 :         if (z->c > z->lb) return 0;
                                468                 :     }
 5710 tgl                       469              54 : lab0:
                                470              87 :     return 1;
                                471                 : }
                                472                 : 
  779 peter                     473             303 : static int r_R1(struct SN_env * z) {
                                474             303 :     if (!(z->I[1] <= z->c)) return 0;
 5710 tgl                       475             218 :     return 1;
                                476                 : }
                                477                 : 
  779 peter                     478             865 : static int r_R2(struct SN_env * z) {
                                479             865 :     if (!(z->I[0] <= z->c)) return 0;
 5710 tgl                       480             166 :     return 1;
                                481                 : }
                                482                 : 
  779 peter                     483            3131 : static int r_Step_1a(struct SN_env * z) {
                                484                 :     int among_var;
                                485            3131 :     {   int m1 = z->l - z->c; (void)m1;
                                486            3131 :         z->ket = z->c;
                                487            3131 :         if (z->c <= z->lb || (z->p[z->c - 1] != 39 && z->p[z->c - 1] != 115)) { z->c = z->l - m1; goto lab0; }
 1658 tgl                       488             149 :         if (!(find_among_b(z, a_1, 3))) { z->c = z->l - m1; goto lab0; }
  779 peter                     489 UBC           0 :         z->bra = z->c;
                                490               0 :         {   int ret = slice_del(z);
 1658 tgl                       491               0 :             if (ret < 0) return ret;
                                492                 :         }
 5710                           493               0 :     lab0:
                                494                 :         ;
                                495                 :     }
  779 peter                     496 CBC        3131 :     z->ket = z->c;
                                497            3131 :     if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 115)) return 0;
 1658 tgl                       498             395 :     among_var = find_among_b(z, a_2, 6);
 5710                           499             395 :     if (!(among_var)) return 0;
  779 peter                     500             149 :     z->bra = z->c;
                                501             149 :     switch (among_var) {
 5710 tgl                       502 UBC           0 :         case 1:
  779 peter                     503               0 :             {   int ret = slice_from_s(z, 2, s_2);
 5710 tgl                       504               0 :                 if (ret < 0) return ret;
                                505                 :             }
                                506               0 :             break;
                                507               0 :         case 2:
  779 peter                     508               0 :             {   int m2 = z->l - z->c; (void)m2;
                                509               0 :                 {   int ret = skip_b_utf8(z->p, z->c, z->lb, 2);
 5710 tgl                       510               0 :                     if (ret < 0) goto lab2;
 1658                           511               0 :                     z->c = ret;
                                512                 :                 }
  779 peter                     513               0 :                 {   int ret = slice_from_s(z, 1, s_3);
 5710 tgl                       514               0 :                     if (ret < 0) return ret;
                                515                 :                 }
                                516               0 :                 goto lab1;
                                517               0 :             lab2:
 1658                           518               0 :                 z->c = z->l - m2;
  779 peter                     519               0 :                 {   int ret = slice_from_s(z, 2, s_4);
 5710 tgl                       520               0 :                     if (ret < 0) return ret;
                                521                 :                 }
                                522                 :             }
                                523               0 :         lab1:
                                524               0 :             break;
 5710 tgl                       525 CBC         122 :         case 3:
  779 peter                     526             122 :             {   int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
 5710 tgl                       527             122 :                 if (ret < 0) return 0;
  779 peter                     528             122 :                 z->c = ret;
                                529                 :             }
                                530                 :             {   
 5710 tgl                       531             122 :                 int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
                                532             122 :                 if (ret < 0) return 0;
                                533             119 :                 z->c -= ret;
                                534                 :             }
  779 peter                     535             119 :             {   int ret = slice_del(z);
 5710 tgl                       536             119 :                 if (ret < 0) return ret;
                                537                 :             }
                                538             119 :             break;
                                539                 :     }
                                540             146 :     return 1;
                                541                 : }
                                542                 : 
  779 peter                     543            3131 : static int r_Step_1b(struct SN_env * z) {
                                544                 :     int among_var;
                                545            3131 :     z->ket = z->c;
                                546            3131 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((33554576 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
 1658 tgl                       547             571 :     among_var = find_among_b(z, a_4, 6);
 5710                           548             571 :     if (!(among_var)) return 0;
  779 peter                     549             194 :     z->bra = z->c;
                                550             194 :     switch (among_var) {
 5710 tgl                       551 UBC           0 :         case 1:
  779 peter                     552               0 :             {   int ret = r_R1(z);
 1658 tgl                       553               0 :                 if (ret <= 0) return ret;
                                554                 :             }
  779 peter                     555               0 :             {   int ret = slice_from_s(z, 2, s_5);
 5710 tgl                       556               0 :                 if (ret < 0) return ret;
                                557                 :             }
                                558               0 :             break;
 5710 tgl                       559 CBC         194 :         case 2:
  779 peter                     560             194 :             {   int m_test1 = z->l - z->c;
                                561                 :                 {   
 5710 tgl                       562             194 :                     int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
                                563             194 :                     if (ret < 0) return 0;
                                564             194 :                     z->c -= ret;
                                565                 :                 }
 1658                           566             194 :                 z->c = z->l - m_test1;
                                567                 :             }
  779 peter                     568             194 :             {   int ret = slice_del(z);
 5710 tgl                       569             194 :                 if (ret < 0) return ret;
                                570                 :             }
  779 peter                     571             194 :             {   int m_test2 = z->l - z->c;
                                572             194 :                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
 1658 tgl                       573             162 :                 among_var = find_among_b(z, a_3, 13);
 5710                           574             194 :                 if (!(among_var)) return 0;
 1658                           575             194 :                 z->c = z->l - m_test2;
                                576                 :             }
                                577                 :             switch (among_var) {
 5710 tgl                       578 UBC           0 :                 case 1:
                                579                 :                     {   int ret;
 1658                           580               0 :                         {   int saved_c = z->c;
  779 peter                     581               0 :                             ret = insert_s(z, z->c, z->c, 1, s_6);
 1658 tgl                       582               0 :                             z->c = saved_c;
                                583                 :                         }
 5710                           584               0 :                         if (ret < 0) return ret;
                                585                 :                     }
                                586               0 :                     break;
 5710 tgl                       587 CBC          18 :                 case 2:
  779 peter                     588              18 :                     z->ket = z->c;
                                589              18 :                     {   int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
 5710 tgl                       590              18 :                         if (ret < 0) return 0;
  779 peter                     591              18 :                         z->c = ret;
                                592                 :                     }
                                593              18 :                     z->bra = z->c;
                                594              18 :                     {   int ret = slice_del(z);
 5710 tgl                       595              18 :                         if (ret < 0) return ret;
                                596                 :                     }
                                597              18 :                     break;
                                598             176 :                 case 3:
  779 peter                     599             176 :                     if (z->c != z->I[1]) return 0;
                                600              29 :                     {   int m_test3 = z->l - z->c;
                                601              29 :                         {   int ret = r_shortv(z);
 1658 tgl                       602              29 :                             if (ret <= 0) return ret;
                                603                 :                         }
                                604               3 :                         z->c = z->l - m_test3;
                                605                 :                     }
                                606                 :                     {   int ret;
                                607               3 :                         {   int saved_c = z->c;
  779 peter                     608               3 :                             ret = insert_s(z, z->c, z->c, 1, s_7);
 1658 tgl                       609               3 :                             z->c = saved_c;
                                610                 :                         }
 5710                           611               3 :                         if (ret < 0) return ret;
                                612                 :                     }
                                613               3 :                     break;
                                614                 :             }
                                615              21 :             break;
                                616                 :     }
                                617              21 :     return 1;
                                618                 : }
                                619                 : 
  779 peter                     620            3131 : static int r_Step_1c(struct SN_env * z) {
                                621            3131 :     z->ket = z->c;
                                622            3131 :     {   int m1 = z->l - z->c; (void)m1;
                                623            3131 :         if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
 1658 tgl                       624             177 :         z->c--;
 5710                           625             177 :         goto lab0;
                                626            2954 :     lab1:
                                627            2954 :         z->c = z->l - m1;
  779 peter                     628            2954 :         if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
 1658 tgl                       629             243 :         z->c--;
                                630                 :     }
 5710                           631             420 : lab0:
  779 peter                     632             420 :     z->bra = z->c;
                                633             420 :     if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
                                634                 :     
                                635             177 :     if (z->c > z->lb) goto lab2;
 1658 tgl                       636 UBC           0 :     return 0;
 1658 tgl                       637 CBC         177 : lab2:
  779 peter                     638             177 :     {   int ret = slice_from_s(z, 1, s_8);
 5710 tgl                       639             177 :         if (ret < 0) return ret;
                                640                 :     }
                                641             177 :     return 1;
                                642                 : }
                                643                 : 
  779 peter                     644            3131 : static int r_Step_2(struct SN_env * z) {
                                645                 :     int among_var;
                                646            3131 :     z->ket = z->c;
                                647            3131 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
 1658 tgl                       648             965 :     among_var = find_among_b(z, a_5, 24);
 5710                           649             965 :     if (!(among_var)) return 0;
  779 peter                     650              29 :     z->bra = z->c;
                                651              29 :     {   int ret = r_R1(z);
 1658 tgl                       652              29 :         if (ret <= 0) return ret;
                                653                 :     }
  779 peter                     654              29 :     switch (among_var) {
 5710 tgl                       655 UBC           0 :         case 1:
  779 peter                     656               0 :             {   int ret = slice_from_s(z, 4, s_9);
 5710 tgl                       657               0 :                 if (ret < 0) return ret;
                                658                 :             }
                                659               0 :             break;
                                660               0 :         case 2:
  779 peter                     661               0 :             {   int ret = slice_from_s(z, 4, s_10);
 5710 tgl                       662               0 :                 if (ret < 0) return ret;
                                663                 :             }
                                664               0 :             break;
                                665               0 :         case 3:
  779 peter                     666               0 :             {   int ret = slice_from_s(z, 4, s_11);
 5710 tgl                       667               0 :                 if (ret < 0) return ret;
                                668                 :             }
                                669               0 :             break;
                                670               0 :         case 4:
  779 peter                     671               0 :             {   int ret = slice_from_s(z, 4, s_12);
 5710 tgl                       672               0 :                 if (ret < 0) return ret;
                                673                 :             }
                                674               0 :             break;
                                675               0 :         case 5:
  779 peter                     676               0 :             {   int ret = slice_from_s(z, 3, s_13);
 5710 tgl                       677               0 :                 if (ret < 0) return ret;
                                678                 :             }
                                679               0 :             break;
                                680               0 :         case 6:
  779 peter                     681               0 :             {   int ret = slice_from_s(z, 3, s_14);
 5710 tgl                       682               0 :                 if (ret < 0) return ret;
                                683                 :             }
                                684               0 :             break;
 5710 tgl                       685 CBC          23 :         case 7:
  779 peter                     686              23 :             {   int ret = slice_from_s(z, 3, s_15);
 5710 tgl                       687              23 :                 if (ret < 0) return ret;
                                688                 :             }
                                689              23 :             break;
                                690               6 :         case 8:
  779 peter                     691               6 :             {   int ret = slice_from_s(z, 2, s_16);
 5710 tgl                       692               6 :                 if (ret < 0) return ret;
                                693                 :             }
                                694               6 :             break;
 5710 tgl                       695 UBC           0 :         case 9:
  779 peter                     696               0 :             {   int ret = slice_from_s(z, 3, s_17);
 5710 tgl                       697               0 :                 if (ret < 0) return ret;
                                698                 :             }
                                699               0 :             break;
                                700               0 :         case 10:
  779 peter                     701               0 :             {   int ret = slice_from_s(z, 3, s_18);
 5710 tgl                       702               0 :                 if (ret < 0) return ret;
                                703                 :             }
                                704               0 :             break;
                                705               0 :         case 11:
  779 peter                     706               0 :             {   int ret = slice_from_s(z, 3, s_19);
 5710 tgl                       707               0 :                 if (ret < 0) return ret;
                                708                 :             }
                                709               0 :             break;
                                710               0 :         case 12:
  779 peter                     711               0 :             {   int ret = slice_from_s(z, 3, s_20);
 5710 tgl                       712               0 :                 if (ret < 0) return ret;
                                713                 :             }
                                714               0 :             break;
                                715               0 :         case 13:
  779 peter                     716               0 :             if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
 1658 tgl                       717               0 :             z->c--;
  779 peter                     718               0 :             {   int ret = slice_from_s(z, 2, s_21);
 5710 tgl                       719               0 :                 if (ret < 0) return ret;
                                720                 :             }
                                721               0 :             break;
                                722               0 :         case 14:
  779 peter                     723               0 :             {   int ret = slice_from_s(z, 4, s_22);
 5710 tgl                       724               0 :                 if (ret < 0) return ret;
                                725                 :             }
                                726               0 :             break;
                                727               0 :         case 15:
  779 peter                     728               0 :             if (in_grouping_b_U(z, g_valid_LI, 99, 116, 0)) return 0;
                                729               0 :             {   int ret = slice_del(z);
 5710 tgl                       730               0 :                 if (ret < 0) return ret;
                                731                 :             }
                                732               0 :             break;
                                733                 :     }
 5710 tgl                       734 CBC          29 :     return 1;
                                735                 : }
                                736                 : 
  779 peter                     737            3131 : static int r_Step_3(struct SN_env * z) {
                                738                 :     int among_var;
                                739            3131 :     z->ket = z->c;
                                740            3131 :     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
 1658 tgl                       741             710 :     among_var = find_among_b(z, a_6, 9);
 5710                           742             710 :     if (!(among_var)) return 0;
  779 peter                     743 UBC           0 :     z->bra = z->c;
                                744               0 :     {   int ret = r_R1(z);
 1658 tgl                       745               0 :         if (ret <= 0) return ret;
                                746                 :     }
  779 peter                     747               0 :     switch (among_var) {
 5710 tgl                       748               0 :         case 1:
  779 peter                     749               0 :             {   int ret = slice_from_s(z, 4, s_23);
 5710 tgl                       750               0 :                 if (ret < 0) return ret;
                                751                 :             }
                                752               0 :             break;
                                753               0 :         case 2:
  779 peter                     754               0 :             {   int ret = slice_from_s(z, 3, s_24);
 5710 tgl                       755               0 :                 if (ret < 0) return ret;
                                756                 :             }
                                757               0 :             break;
                                758               0 :         case 3:
  779 peter                     759               0 :             {   int ret = slice_from_s(z, 2, s_25);
 5710 tgl                       760               0 :                 if (ret < 0) return ret;
                                761                 :             }
                                762               0 :             break;
                                763               0 :         case 4:
  779 peter                     764               0 :             {   int ret = slice_from_s(z, 2, s_26);
 5710 tgl                       765               0 :                 if (ret < 0) return ret;
                                766                 :             }
                                767               0 :             break;
                                768               0 :         case 5:
  779 peter                     769               0 :             {   int ret = slice_del(z);
 5710 tgl                       770               0 :                 if (ret < 0) return ret;
                                771                 :             }
                                772               0 :             break;
                                773               0 :         case 6:
  779 peter                     774               0 :             {   int ret = r_R2(z);
 1658 tgl                       775               0 :                 if (ret <= 0) return ret;
                                776                 :             }
  779 peter                     777               0 :             {   int ret = slice_del(z);
 5710 tgl                       778               0 :                 if (ret < 0) return ret;
                                779                 :             }
                                780               0 :             break;
                                781                 :     }
                                782               0 :     return 1;
                                783                 : }
                                784                 : 
  779 peter                     785 CBC        3131 : static int r_Step_4(struct SN_env * z) {
                                786                 :     int among_var;
                                787            3131 :     z->ket = z->c;
                                788            3131 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1864232 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
 1658 tgl                       789            1711 :     among_var = find_among_b(z, a_7, 18);
 5710                           790            1711 :     if (!(among_var)) return 0;
  779 peter                     791             424 :     z->bra = z->c;
                                792             424 :     {   int ret = r_R2(z);
 1658 tgl                       793             424 :         if (ret <= 0) return ret;
                                794                 :     }
  779 peter                     795              44 :     switch (among_var) {
 5710 tgl                       796              44 :         case 1:
  779 peter                     797              44 :             {   int ret = slice_del(z);
 5710 tgl                       798              44 :                 if (ret < 0) return ret;
                                799                 :             }
                                800              44 :             break;
 5710 tgl                       801 UBC           0 :         case 2:
  779 peter                     802               0 :             {   int m1 = z->l - z->c; (void)m1;
                                803               0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
 1658 tgl                       804               0 :                 z->c--;
 5710                           805               0 :                 goto lab0;
                                806               0 :             lab1:
                                807               0 :                 z->c = z->l - m1;
  779 peter                     808               0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
 1658 tgl                       809               0 :                 z->c--;
                                810                 :             }
 5710                           811               0 :         lab0:
  779 peter                     812               0 :             {   int ret = slice_del(z);
 5710 tgl                       813               0 :                 if (ret < 0) return ret;
                                814                 :             }
                                815               0 :             break;
                                816                 :     }
 5710 tgl                       817 CBC          44 :     return 1;
                                818                 : }
                                819                 : 
  779 peter                     820            3131 : static int r_Step_5(struct SN_env * z) {
                                821                 :     int among_var;
                                822            3131 :     z->ket = z->c;
                                823            3131 :     if (z->c <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) return 0;
 1658 tgl                       824             441 :     among_var = find_among_b(z, a_8, 2);
 5710                           825             441 :     if (!(among_var)) return 0;
  779 peter                     826             441 :     z->bra = z->c;
                                827             441 :     switch (among_var) {
 5710 tgl                       828             393 :         case 1:
  779 peter                     829             393 :             {   int m1 = z->l - z->c; (void)m1;
                                830             393 :                 {   int ret = r_R2(z);
 1658 tgl                       831             393 :                     if (ret == 0) goto lab1;
 5710                           832             119 :                     if (ret < 0) return ret;
                                833                 :                 }
                                834             119 :                 goto lab0;
                                835             274 :             lab1:
                                836             274 :                 z->c = z->l - m1;
  779 peter                     837             274 :                 {   int ret = r_R1(z);
 1658 tgl                       838             274 :                     if (ret <= 0) return ret;
                                839                 :                 }
  779 peter                     840             189 :                 {   int m2 = z->l - z->c; (void)m2;
                                841             189 :                     {   int ret = r_shortv(z);
 1658 tgl                       842             189 :                         if (ret == 0) goto lab2;
 5710                           843              84 :                         if (ret < 0) return ret;
                                844                 :                     }
                                845              84 :                     return 0;
                                846             105 :                 lab2:
                                847             105 :                     z->c = z->l - m2;
                                848                 :                 }
                                849                 :             }
                                850             224 :         lab0:
  779 peter                     851             224 :             {   int ret = slice_del(z);
 5710 tgl                       852             224 :                 if (ret < 0) return ret;
                                853                 :             }
                                854             224 :             break;
                                855              48 :         case 2:
  779 peter                     856              48 :             {   int ret = r_R2(z);
 1658 tgl                       857              48 :                 if (ret <= 0) return ret;
                                858                 :             }
  779 peter                     859               3 :             if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
 1658 tgl                       860 UBC           0 :             z->c--;
  779 peter                     861               0 :             {   int ret = slice_del(z);
 5710 tgl                       862               0 :                 if (ret < 0) return ret;
                                863                 :             }
                                864               0 :             break;
                                865                 :     }
 5710 tgl                       866 CBC         224 :     return 1;
                                867                 : }
                                868                 : 
  779 peter                     869            3131 : static int r_exception2(struct SN_env * z) {
                                870            3131 :     z->ket = z->c;
                                871            3131 :     if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
 1658 tgl                       872             206 :     if (!(find_among_b(z, a_9, 8))) return 0;
  779 peter                     873 UBC           0 :     z->bra = z->c;
                                874               0 :     if (z->c > z->lb) return 0;
 5710 tgl                       875               0 :     return 1;
                                876                 : }
                                877                 : 
  779 peter                     878 CBC        3401 : static int r_exception1(struct SN_env * z) {
                                879                 :     int among_var;
                                880            3401 :     z->bra = z->c;
                                881            3401 :     if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((42750482 >> (z->p[z->c + 2] & 0x1f)) & 1)) return 0;
 1658 tgl                       882            1491 :     among_var = find_among(z, a_10, 18);
 5710                           883            1491 :     if (!(among_var)) return 0;
  779 peter                     884              18 :     z->ket = z->c;
                                885              18 :     if (z->c < z->l) return 0;
                                886              18 :     switch (among_var) {
 5710 tgl                       887 UBC           0 :         case 1:
  779 peter                     888               0 :             {   int ret = slice_from_s(z, 3, s_27);
 5710 tgl                       889               0 :                 if (ret < 0) return ret;
                                890                 :             }
                                891               0 :             break;
 5710 tgl                       892 CBC          18 :         case 2:
  779 peter                     893              18 :             {   int ret = slice_from_s(z, 3, s_28);
 5710 tgl                       894              18 :                 if (ret < 0) return ret;
                                895                 :             }
                                896              18 :             break;
 5710 tgl                       897 UBC           0 :         case 3:
  779 peter                     898               0 :             {   int ret = slice_from_s(z, 3, s_29);
 5710 tgl                       899               0 :                 if (ret < 0) return ret;
                                900                 :             }
                                901               0 :             break;
                                902               0 :         case 4:
  779 peter                     903               0 :             {   int ret = slice_from_s(z, 3, s_30);
 5710 tgl                       904               0 :                 if (ret < 0) return ret;
                                905                 :             }
                                906               0 :             break;
                                907               0 :         case 5:
  779 peter                     908               0 :             {   int ret = slice_from_s(z, 3, s_31);
 5710 tgl                       909               0 :                 if (ret < 0) return ret;
                                910                 :             }
                                911               0 :             break;
                                912               0 :         case 6:
  779 peter                     913               0 :             {   int ret = slice_from_s(z, 3, s_32);
 5710 tgl                       914               0 :                 if (ret < 0) return ret;
                                915                 :             }
                                916               0 :             break;
                                917               0 :         case 7:
  779 peter                     918               0 :             {   int ret = slice_from_s(z, 5, s_33);
 5710 tgl                       919               0 :                 if (ret < 0) return ret;
                                920                 :             }
                                921               0 :             break;
                                922               0 :         case 8:
  779 peter                     923               0 :             {   int ret = slice_from_s(z, 4, s_34);
 5710 tgl                       924               0 :                 if (ret < 0) return ret;
                                925                 :             }
                                926               0 :             break;
                                927               0 :         case 9:
  779 peter                     928               0 :             {   int ret = slice_from_s(z, 5, s_35);
 5710 tgl                       929               0 :                 if (ret < 0) return ret;
                                930                 :             }
                                931               0 :             break;
                                932               0 :         case 10:
  779 peter                     933               0 :             {   int ret = slice_from_s(z, 4, s_36);
 5710 tgl                       934               0 :                 if (ret < 0) return ret;
                                935                 :             }
                                936               0 :             break;
                                937               0 :         case 11:
  779 peter                     938               0 :             {   int ret = slice_from_s(z, 5, s_37);
 5710 tgl                       939               0 :                 if (ret < 0) return ret;
                                940                 :             }
                                941               0 :             break;
                                942                 :     }
 5710 tgl                       943 CBC          18 :     return 1;
                                944                 : }
                                945                 : 
  779 peter                     946            3131 : static int r_postlude(struct SN_env * z) {
                                947            3131 :     if (!(z->I[2])) return 0;
                                948             264 :     while(1) {
                                949             528 :         int c1 = z->c;
                                950             813 :         while(1) {
 5710 tgl                       951            1341 :             int c2 = z->c;
  779 peter                     952            1341 :             z->bra = z->c;
                                953            1341 :             if (z->c == z->l || z->p[z->c] != 'Y') goto lab1;
 1658 tgl                       954             264 :             z->c++;
  779 peter                     955             264 :             z->ket = z->c;
 5710 tgl                       956             264 :             z->c = c2;
                                957             264 :             break;
                                958            1077 :         lab1:
                                959            1077 :             z->c = c2;
  779 peter                     960            1077 :             {   int ret = skip_utf8(z->p, z->c, z->l, 1);
 5710 tgl                       961            1077 :                 if (ret < 0) goto lab0;
  779 peter                     962             813 :                 z->c = ret;
                                963                 :             }
                                964                 :         }
                                965             264 :         {   int ret = slice_from_s(z, 1, s_38);
 5710 tgl                       966             264 :             if (ret < 0) return ret;
                                967                 :         }
                                968             264 :         continue;
                                969             264 :     lab0:
                                970             264 :         z->c = c1;
                                971             264 :         break;
                                972                 :     }
                                973             264 :     return 1;
                                974                 : }
                                975                 : 
  779 peter                     976            3401 : extern int english_UTF_8_stem(struct SN_env * z) {
                                977            3401 :     {   int c1 = z->c;
                                978            3401 :         {   int ret = r_exception1(z);
 1658 tgl                       979            3401 :             if (ret == 0) goto lab1;
 5710                           980              18 :             if (ret < 0) return ret;
                                981                 :         }
                                982              18 :         goto lab0;
                                983            3383 :     lab1:
                                984            3383 :         z->c = c1;
  779 peter                     985            3383 :         {   int c2 = z->c;
                                986            3383 :             {   int ret = skip_utf8(z->p, z->c, z->l, 3);
 5710 tgl                       987            3383 :                 if (ret < 0) goto lab3;
 1658                           988            3131 :                 z->c = ret;
                                989                 :             }
 5710                           990            3131 :             goto lab2;
                                991             252 :         lab3:
                                992             252 :             z->c = c2;
                                993                 :         }
                                994             252 :         goto lab0;
                                995            3131 :     lab2:
                                996            3131 :         z->c = c1;
                                997                 :         
  779 peter                     998            3131 :         {   int ret = r_prelude(z);
 1658 tgl                       999            3131 :             if (ret < 0) return ret;
                               1000                 :         }
                               1001                 :         
  779 peter                    1002            3131 :         {   int ret = r_mark_regions(z);
 1658 tgl                      1003            3131 :             if (ret < 0) return ret;
                               1004                 :         }
  779 peter                    1005            3131 :         z->lb = z->c; z->c = z->l;
                               1006                 : 
                               1007            3131 :         {   int m3 = z->l - z->c; (void)m3;
                               1008            3131 :             {   int ret = r_Step_1a(z);
 5710 tgl                      1009            3131 :                 if (ret < 0) return ret;
                               1010                 :             }
 1658                          1011            3131 :             z->c = z->l - m3;
                               1012                 :         }
  779 peter                    1013            3131 :         {   int m4 = z->l - z->c; (void)m4;
                               1014            3131 :             {   int ret = r_exception2(z);
 1035                          1015            3131 :                 if (ret == 0) goto lab5;
 5710 tgl                      1016 UBC           0 :                 if (ret < 0) return ret;
                               1017                 :             }
 1035 peter                    1018               0 :             goto lab4;
 1035 peter                    1019 CBC        3131 :         lab5:
 1658 tgl                      1020            3131 :             z->c = z->l - m4;
  779 peter                    1021            3131 :             {   int m5 = z->l - z->c; (void)m5;
                               1022            3131 :                 {   int ret = r_Step_1b(z);
 5710 tgl                      1023            3131 :                     if (ret < 0) return ret;
                               1024                 :                 }
 1658                          1025            3131 :                 z->c = z->l - m5;
                               1026                 :             }
  779 peter                    1027            3131 :             {   int m6 = z->l - z->c; (void)m6;
                               1028            3131 :                 {   int ret = r_Step_1c(z);
 5710 tgl                      1029            3131 :                     if (ret < 0) return ret;
                               1030                 :                 }
 1658                          1031            3131 :                 z->c = z->l - m6;
                               1032                 :             }
  779 peter                    1033            3131 :             {   int m7 = z->l - z->c; (void)m7;
                               1034            3131 :                 {   int ret = r_Step_2(z);
 5710 tgl                      1035            3131 :                     if (ret < 0) return ret;
                               1036                 :                 }
 1658                          1037            3131 :                 z->c = z->l - m7;
                               1038                 :             }
  779 peter                    1039            3131 :             {   int m8 = z->l - z->c; (void)m8;
                               1040            3131 :                 {   int ret = r_Step_3(z);
 5710 tgl                      1041            3131 :                     if (ret < 0) return ret;
                               1042                 :                 }
 1658                          1043            3131 :                 z->c = z->l - m8;
                               1044                 :             }
  779 peter                    1045            3131 :             {   int m9 = z->l - z->c; (void)m9;
                               1046            3131 :                 {   int ret = r_Step_4(z);
 5710 tgl                      1047            3131 :                     if (ret < 0) return ret;
                               1048                 :                 }
 1658                          1049            3131 :                 z->c = z->l - m9;
                               1050                 :             }
  779 peter                    1051            3131 :             {   int m10 = z->l - z->c; (void)m10;
                               1052            3131 :                 {   int ret = r_Step_5(z);
 5710 tgl                      1053            3131 :                     if (ret < 0) return ret;
                               1054                 :                 }
 1658                          1055            3131 :                 z->c = z->l - m10;
                               1056                 :             }
                               1057                 :         }
 1035 peter                    1058            3131 :     lab4:
 5710 tgl                      1059            3131 :         z->c = z->lb;
  779 peter                    1060            3131 :         {   int c11 = z->c;
                               1061            3131 :             {   int ret = r_postlude(z);
 5710 tgl                      1062            3131 :                 if (ret < 0) return ret;
                               1063                 :             }
 1658                          1064            3131 :             z->c = c11;
                               1065                 :         }
                               1066                 :     }
 5710                          1067            3401 : lab0:
                               1068            3401 :     return 1;
                               1069                 : }
                               1070                 : 
  779 peter                    1071              19 : extern struct SN_env * english_UTF_8_create_env(void) { return SN_create_env(0, 3); }
                               1072                 : 
 5710 tgl                      1073 UBC           0 : extern void english_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
                               1074                 : 
        

Generated by: LCOV version v1.16-55-g56c0a2a