private boolean r_Step_4() {
            int among_var;
            int v_1;
            // (, line 129
            // [, line 130
            ket = cursor;
            // substring, line 130
            among_var = find_among_b(a_6, 18);
            if (among_var == 0)
            {
                return false;
            }
            // ], line 130
            bra = cursor;
            // call R2, line 130
            if (!r_R2())
            {
                return false;
            }
            switch(among_var) {
                case 0:
                    return false;
                case 1:
                    // (, line 133
                    // delete, line 133
                    slice_del();
                    break;
                case 2:
                    // (, line 134
                    // or, line 134
                    lab0: do {
                        v_1 = limit - cursor;
                        lab1: do {
                            // literal, line 134
                            if (!(eq_s_b(1, "s")))
                            {
                                break lab1;
                            }
                            break lab0;
                        } while (false);
                        cursor = limit - v_1;
                        // literal, line 134
                        if (!(eq_s_b(1, "t")))
                        {
                            return false;
                        }
                    } while (false);
                    // delete, line 134
                    slice_del();
                    break;
            }
            return true;
        }