public boolean stem() {
            int v_1;
            int v_2;
            int v_3;
            int v_4;
                    // (, line 157
                    // do, line 159
                    v_1 = cursor;
                    lab0: do {
                        // call prelude, line 159
                        if (!r_prelude())
                        {
                            break lab0;
                        }
                    } while (false);
                    cursor = v_1;
                    // do, line 160
                    v_2 = cursor;
                    lab1: do {
                        // call mark_regions, line 160
                        if (!r_mark_regions())
                        {
                            break lab1;
                        }
                    } while (false);
                    cursor = v_2;
                    // backwards, line 161
                    limit_backward = cursor; cursor = limit;
                    // do, line 162
                    v_3 = limit - cursor;
                    lab2: do {
                        // call standard_suffix, line 162
                        if (!r_standard_suffix())
                        {
                            break lab2;
                        }
                    } while (false);
                    cursor = limit - v_3;
                    cursor = limit_backward;                    // do, line 163
                    v_4 = cursor;
                    lab3: do {
                        // call postlude, line 163
                        if (!r_postlude())
                        {
                            break lab3;
                        }
                    } while (false);
                    cursor = v_4;
                    return true;
                }