extern int italian_stem(struct SN_env * z) {
    {   int c = z->c; /* do, line 181 */
        if (!r_prelude(z)) goto lab0; /* call prelude, line 181 */
    lab0:
        z->c = c;
    }
    {   int c = z->c; /* do, line 182 */
        if (!r_mark_regions(z)) goto lab1; /* call mark_regions, line 182 */
    lab1:
        z->c = c;
    }
    z->lb = z->c; z->c = z->l; /* backwards, line 183 */

    {   int m = z->l - z->c; /* do, line 184 */
        if (!r_attached_pronoun(z)) goto lab2; /* call attached_pronoun, line 184 */
    lab2:
        z->c = z->l - m;
    }
    {   int m = z->l - z->c; /* do, line 185 */
        {   int m = z->l - z->c; /* or, line 185 */
            if (!r_standard_suffix(z)) goto lab5; /* call standard_suffix, line 185 */
            goto lab4;
        lab5:
            z->c = z->l - m;
            if (!r_verb_suffix(z)) goto lab3; /* call verb_suffix, line 185 */
        }
    lab4:
    lab3:
        z->c = z->l - m;
    }
    {   int m = z->l - z->c; /* do, line 186 */
        if (!r_vowel_suffix(z)) goto lab6; /* call vowel_suffix, line 186 */
    lab6:
        z->c = z->l - m;
    }
    z->c = z->lb;
    {   int c = z->c; /* do, line 188 */
        if (!r_postlude(z)) goto lab7; /* call postlude, line 188 */
    lab7:
        z->c = c;
    }
    return 1;
}
extern int italian_ISO_8859_1_stem(struct SN_env * z) {
    {   int c = z->c; /* do, line 182 */
        {   int ret = r_prelude(z);
            if (ret == 0) goto lab0; /* call prelude, line 182 */
            if (ret < 0) return ret;
        }
    lab0:
        z->c = c;
    }
    {   int c = z->c; /* do, line 183 */
        {   int ret = r_mark_regions(z);
            if (ret == 0) goto lab1; /* call mark_regions, line 183 */
            if (ret < 0) return ret;
        }
    lab1:
        z->c = c;
    }
    z->lb = z->c; z->c = z->l; /* backwards, line 184 */

    {   int m = z->l - z->c; (void) m; /* do, line 185 */
        {   int ret = r_attached_pronoun(z);
            if (ret == 0) goto lab2; /* call attached_pronoun, line 185 */
            if (ret < 0) return ret;
        }
    lab2:
        z->c = z->l - m;
    }
    {   int m = z->l - z->c; (void) m; /* do, line 186 */
        {   int m = z->l - z->c; (void) m; /* or, line 186 */
            {   int ret = r_standard_suffix(z);
                if (ret == 0) goto lab5; /* call standard_suffix, line 186 */
                if (ret < 0) return ret;
            }
            goto lab4;
        lab5:
            z->c = z->l - m;
            {   int ret = r_verb_suffix(z);
                if (ret == 0) goto lab3; /* call verb_suffix, line 186 */
                if (ret < 0) return ret;
            }
        }
    lab4:
    lab3:
        z->c = z->l - m;
    }
    {   int m = z->l - z->c; (void) m; /* do, line 187 */
        {   int ret = r_vowel_suffix(z);
            if (ret == 0) goto lab6; /* call vowel_suffix, line 187 */
            if (ret < 0) return ret;
        }
    lab6:
        z->c = z->l - m;
    }
    z->c = z->lb;
    {   int c = z->c; /* do, line 189 */
        {   int ret = r_postlude(z);
            if (ret == 0) goto lab7; /* call postlude, line 189 */
            if (ret < 0) return ret;
        }
    lab7:
        z->c = c;
    }
    return 1;
}