//! This file was generated automatically by the Snowball to Go compiler //! http://snowballstem.org/ package english import ( snowballRuntime "github.com/blevesearch/snowballstem" ) var A_0 = []*snowballRuntime.Among{ {Str: "arsen", A: -1, B: -1, F: nil}, {Str: "commun", A: -1, B: -1, F: nil}, {Str: "gener", A: -1, B: -1, F: nil}, } var A_1 = []*snowballRuntime.Among{ {Str: "'", A: -1, B: 1, F: nil}, {Str: "'s'", A: 0, B: 1, F: nil}, {Str: "'s", A: -1, B: 1, F: nil}, } var A_2 = []*snowballRuntime.Among{ {Str: "ied", A: -1, B: 2, F: nil}, {Str: "s", A: -1, B: 3, F: nil}, {Str: "ies", A: 1, B: 2, F: nil}, {Str: "sses", A: 1, B: 1, F: nil}, {Str: "ss", A: 1, B: -1, F: nil}, {Str: "us", A: 1, B: -1, F: nil}, } var A_3 = []*snowballRuntime.Among{ {Str: "", A: -1, B: 3, F: nil}, {Str: "bb", A: 0, B: 2, F: nil}, {Str: "dd", A: 0, B: 2, F: nil}, {Str: "ff", A: 0, B: 2, F: nil}, {Str: "gg", A: 0, B: 2, F: nil}, {Str: "bl", A: 0, B: 1, F: nil}, {Str: "mm", A: 0, B: 2, F: nil}, {Str: "nn", A: 0, B: 2, F: nil}, {Str: "pp", A: 0, B: 2, F: nil}, {Str: "rr", A: 0, B: 2, F: nil}, {Str: "at", A: 0, B: 1, F: nil}, {Str: "tt", A: 0, B: 2, F: nil}, {Str: "iz", A: 0, B: 1, F: nil}, } var A_4 = []*snowballRuntime.Among{ {Str: "ed", A: -1, B: 2, F: nil}, {Str: "eed", A: 0, B: 1, F: nil}, {Str: "ing", A: -1, B: 2, F: nil}, {Str: "edly", A: -1, B: 2, F: nil}, {Str: "eedly", A: 3, B: 1, F: nil}, {Str: "ingly", A: -1, B: 2, F: nil}, } var A_5 = []*snowballRuntime.Among{ {Str: "anci", A: -1, B: 3, F: nil}, {Str: "enci", A: -1, B: 2, F: nil}, {Str: "ogi", A: -1, B: 13, F: nil}, {Str: "li", A: -1, B: 16, F: nil}, {Str: "bli", A: 3, B: 12, F: nil}, {Str: "abli", A: 4, B: 4, F: nil}, {Str: "alli", A: 3, B: 8, F: nil}, {Str: "fulli", A: 3, B: 14, F: nil}, {Str: "lessli", A: 3, B: 15, F: nil}, {Str: "ousli", A: 3, B: 10, F: nil}, {Str: "entli", A: 3, B: 5, F: nil}, {Str: "aliti", A: -1, B: 8, F: nil}, {Str: "biliti", A: -1, B: 12, F: nil}, {Str: "iviti", A: -1, B: 11, F: nil}, {Str: "tional", A: -1, B: 1, F: nil}, {Str: "ational", A: 14, B: 7, F: nil}, {Str: "alism", A: -1, B: 8, F: nil}, {Str: "ation", A: -1, B: 7, F: nil}, {Str: "ization", A: 17, B: 6, F: nil}, {Str: "izer", A: -1, B: 6, F: nil}, {Str: "ator", A: -1, B: 7, F: nil}, {Str: "iveness", A: -1, B: 11, F: nil}, {Str: "fulness", A: -1, B: 9, F: nil}, {Str: "ousness", A: -1, B: 10, F: nil}, } var A_6 = []*snowballRuntime.Among{ {Str: "icate", A: -1, B: 4, F: nil}, {Str: "ative", A: -1, B: 6, F: nil}, {Str: "alize", A: -1, B: 3, F: nil}, {Str: "iciti", A: -1, B: 4, F: nil}, {Str: "ical", A: -1, B: 4, F: nil}, {Str: "tional", A: -1, B: 1, F: nil}, {Str: "ational", A: 5, B: 2, F: nil}, {Str: "ful", A: -1, B: 5, F: nil}, {Str: "ness", A: -1, B: 5, F: nil}, } var A_7 = []*snowballRuntime.Among{ {Str: "ic", A: -1, B: 1, F: nil}, {Str: "ance", A: -1, B: 1, F: nil}, {Str: "ence", A: -1, B: 1, F: nil}, {Str: "able", A: -1, B: 1, F: nil}, {Str: "ible", A: -1, B: 1, F: nil}, {Str: "ate", A: -1, B: 1, F: nil}, {Str: "ive", A: -1, B: 1, F: nil}, {Str: "ize", A: -1, B: 1, F: nil}, {Str: "iti", A: -1, B: 1, F: nil}, {Str: "al", A: -1, B: 1, F: nil}, {Str: "ism", A: -1, B: 1, F: nil}, {Str: "ion", A: -1, B: 2, F: nil}, {Str: "er", A: -1, B: 1, F: nil}, {Str: "ous", A: -1, B: 1, F: nil}, {Str: "ant", A: -1, B: 1, F: nil}, {Str: "ent", A: -1, B: 1, F: nil}, {Str: "ment", A: 15, B: 1, F: nil}, {Str: "ement", A: 16, B: 1, F: nil}, } var A_8 = []*snowballRuntime.Among{ {Str: "e", A: -1, B: 1, F: nil}, {Str: "l", A: -1, B: 2, F: nil}, } var A_9 = []*snowballRuntime.Among{ {Str: "succeed", A: -1, B: -1, F: nil}, {Str: "proceed", A: -1, B: -1, F: nil}, {Str: "exceed", A: -1, B: -1, F: nil}, {Str: "canning", A: -1, B: -1, F: nil}, {Str: "inning", A: -1, B: -1, F: nil}, {Str: "earring", A: -1, B: -1, F: nil}, {Str: "herring", A: -1, B: -1, F: nil}, {Str: "outing", A: -1, B: -1, F: nil}, } var A_10 = []*snowballRuntime.Among{ {Str: "andes", A: -1, B: -1, F: nil}, {Str: "atlas", A: -1, B: -1, F: nil}, {Str: "bias", A: -1, B: -1, F: nil}, {Str: "cosmos", A: -1, B: -1, F: nil}, {Str: "dying", A: -1, B: 3, F: nil}, {Str: "early", A: -1, B: 9, F: nil}, {Str: "gently", A: -1, B: 7, F: nil}, {Str: "howe", A: -1, B: -1, F: nil}, {Str: "idly", A: -1, B: 6, F: nil}, {Str: "lying", A: -1, B: 4, F: nil}, {Str: "news", A: -1, B: -1, F: nil}, {Str: "only", A: -1, B: 10, F: nil}, {Str: "singly", A: -1, B: 11, F: nil}, {Str: "skies", A: -1, B: 2, F: nil}, {Str: "skis", A: -1, B: 1, F: nil}, {Str: "sky", A: -1, B: -1, F: nil}, {Str: "tying", A: -1, B: 5, F: nil}, {Str: "ugly", A: -1, B: 8, F: nil}, } var G_v = []byte{17, 65, 16, 1} var G_v_WXY = []byte{1, 17, 65, 208, 1} var G_valid_LI = []byte{55, 141, 2} type Context struct { b_Y_found bool i_p2 int i_p1 int } func r_prelude(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context // (, line 25 // unset Y_found, line 26 context.b_Y_found = false // do, line 27 var v_1 = env.Cursor lab0: for { // (, line 27 // [, line 27 env.Bra = env.Cursor // literal, line 27 if !env.EqS("'") { break lab0 } // ], line 27 env.Ket = env.Cursor // delete, line 27 if !env.SliceDel() { return false } break lab0 } env.Cursor = v_1 // do, line 28 var v_2 = env.Cursor lab1: for { // (, line 28 // [, line 28 env.Bra = env.Cursor // literal, line 28 if !env.EqS("y") { break lab1 } // ], line 28 env.Ket = env.Cursor // <-, line 28 if !env.SliceFrom("Y") { return false } // set Y_found, line 28 context.b_Y_found = true break lab1 } env.Cursor = v_2 // do, line 29 var v_3 = env.Cursor lab2: for { // repeat, line 29 replab3: for { var v_4 = env.Cursor lab4: for range [2]struct{}{} { // (, line 29 // goto, line 29 golab5: for { var v_5 = env.Cursor lab6: for { // (, line 29 if !env.InGrouping(G_v, 97, 121) { break lab6 } // [, line 29 env.Bra = env.Cursor // literal, line 29 if !env.EqS("y") { break lab6 } // ], line 29 env.Ket = env.Cursor env.Cursor = v_5 break golab5 } env.Cursor = v_5 if env.Cursor >= env.Limit { break lab4 } env.NextChar() } // <-, line 29 if !env.SliceFrom("Y") { return false } // set Y_found, line 29 context.b_Y_found = true continue replab3 } env.Cursor = v_4 break replab3 } break lab2 } env.Cursor = v_3 return true } func r_mark_regions(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context // (, line 32 context.i_p1 = env.Limit context.i_p2 = env.Limit // do, line 35 var v_1 = env.Cursor lab0: for { // (, line 35 // or, line 41 lab1: for { var v_2 = env.Cursor lab2: for { // among, line 36 if env.FindAmong(A_0, context) == 0 { break lab2 } break lab1 } env.Cursor = v_2 // (, line 41 // gopast, line 41 golab3: for { lab4: for { if !env.InGrouping(G_v, 97, 121) { break lab4 } break golab3 } if env.Cursor >= env.Limit { break lab0 } env.NextChar() } // gopast, line 41 golab5: for { lab6: for { if !env.OutGrouping(G_v, 97, 121) { break lab6 } break golab5 } if env.Cursor >= env.Limit { break lab0 } env.NextChar() } break lab1 } // setmark p1, line 42 context.i_p1 = env.Cursor // gopast, line 43 golab7: for { lab8: for { if !env.InGrouping(G_v, 97, 121) { break lab8 } break golab7 } if env.Cursor >= env.Limit { break lab0 } env.NextChar() } // gopast, line 43 golab9: for { lab10: for { if !env.OutGrouping(G_v, 97, 121) { break lab10 } break golab9 } if env.Cursor >= env.Limit { break lab0 } env.NextChar() } // setmark p2, line 43 context.i_p2 = env.Cursor break lab0 } env.Cursor = v_1 return true } func r_shortv(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context // (, line 49 // or, line 51 lab0: for { var v_1 = env.Limit - env.Cursor lab1: for { // (, line 50 if !env.OutGroupingB(G_v_WXY, 89, 121) { break lab1 } if !env.InGroupingB(G_v, 97, 121) { break lab1 } if !env.OutGroupingB(G_v, 97, 121) { break lab1 } break lab0 } env.Cursor = env.Limit - v_1 // (, line 52 if !env.OutGroupingB(G_v, 97, 121) { return false } if !env.InGroupingB(G_v, 97, 121) { return false } // atlimit, line 52 if env.Cursor > env.LimitBackward { return false } break lab0 } return true } func r_R1(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context if !(context.i_p1 <= env.Cursor) { return false } return true } func r_R2(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context if !(context.i_p2 <= env.Cursor) { return false } return true } func r_Step_1a(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 58 // try, line 59 var v_1 = env.Limit - env.Cursor lab0: for { // (, line 59 // [, line 60 env.Ket = env.Cursor // substring, line 60 among_var = env.FindAmongB(A_1, context) if among_var == 0 { env.Cursor = env.Limit - v_1 break lab0 } // ], line 60 env.Bra = env.Cursor if among_var == 0 { env.Cursor = env.Limit - v_1 break lab0 } else if among_var == 1 { // (, line 62 // delete, line 62 if !env.SliceDel() { return false } } break lab0 } // [, line 65 env.Ket = env.Cursor // substring, line 65 among_var = env.FindAmongB(A_2, context) if among_var == 0 { return false } // ], line 65 env.Bra = env.Cursor if among_var == 0 { return false } else if among_var == 1 { // (, line 66 // <-, line 66 if !env.SliceFrom("ss") { return false } } else if among_var == 2 { // (, line 68 // or, line 68 lab1: for { var v_2 = env.Limit - env.Cursor lab2: for { // (, line 68 { // hop, line 68 var c = env.ByteIndexForHop(-(2)) if int32(env.LimitBackward) > c || c > int32(env.Limit) { break lab2 } env.Cursor = int(c) } // <-, line 68 if !env.SliceFrom("i") { return false } break lab1 } env.Cursor = env.Limit - v_2 // <-, line 68 if !env.SliceFrom("ie") { return false } break lab1 } } else if among_var == 3 { // (, line 69 // next, line 69 if env.Cursor <= env.LimitBackward { return false } env.PrevChar() // gopast, line 69 golab3: for { lab4: for { if !env.InGroupingB(G_v, 97, 121) { break lab4 } break golab3 } if env.Cursor <= env.LimitBackward { return false } env.PrevChar() } // delete, line 69 if !env.SliceDel() { return false } } return true } func r_Step_1b(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 74 // [, line 75 env.Ket = env.Cursor // substring, line 75 among_var = env.FindAmongB(A_4, context) if among_var == 0 { return false } // ], line 75 env.Bra = env.Cursor if among_var == 0 { return false } else if among_var == 1 { // (, line 77 // call R1, line 77 if !r_R1(env, context) { return false } // <-, line 77 if !env.SliceFrom("ee") { return false } } else if among_var == 2 { // (, line 79 // test, line 80 var v_1 = env.Limit - env.Cursor // gopast, line 80 golab0: for { lab1: for { if !env.InGroupingB(G_v, 97, 121) { break lab1 } break golab0 } if env.Cursor <= env.LimitBackward { return false } env.PrevChar() } env.Cursor = env.Limit - v_1 // delete, line 80 if !env.SliceDel() { return false } // test, line 81 var v_3 = env.Limit - env.Cursor // substring, line 81 among_var = env.FindAmongB(A_3, context) if among_var == 0 { return false } env.Cursor = env.Limit - v_3 if among_var == 0 { return false } else if among_var == 1 { // (, line 83 { // <+, line 83 var c = env.Cursor bra, ket := env.Cursor, env.Cursor env.Insert(bra, ket, "e") env.Cursor = c } } else if among_var == 2 { // (, line 86 // [, line 86 env.Ket = env.Cursor // next, line 86 if env.Cursor <= env.LimitBackward { return false } env.PrevChar() // ], line 86 env.Bra = env.Cursor // delete, line 86 if !env.SliceDel() { return false } } else if among_var == 3 { // (, line 87 // atmark, line 87 if env.Cursor != context.i_p1 { return false } // test, line 87 var v_4 = env.Limit - env.Cursor // call shortv, line 87 if !r_shortv(env, context) { return false } env.Cursor = env.Limit - v_4 { // <+, line 87 var c = env.Cursor bra, ket := env.Cursor, env.Cursor env.Insert(bra, ket, "e") env.Cursor = c } } } return true } func r_Step_1c(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context // (, line 93 // [, line 94 env.Ket = env.Cursor // or, line 94 lab0: for { var v_1 = env.Limit - env.Cursor lab1: for { // literal, line 94 if !env.EqSB("y") { break lab1 } break lab0 } env.Cursor = env.Limit - v_1 // literal, line 94 if !env.EqSB("Y") { return false } break lab0 } // ], line 94 env.Bra = env.Cursor if !env.OutGroupingB(G_v, 97, 121) { return false } // not, line 95 var v_2 = env.Limit - env.Cursor lab2: for { // atlimit, line 95 if env.Cursor > env.LimitBackward { break lab2 } return false } env.Cursor = env.Limit - v_2 // <-, line 96 if !env.SliceFrom("i") { return false } return true } func r_Step_2(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 99 // [, line 100 env.Ket = env.Cursor // substring, line 100 among_var = env.FindAmongB(A_5, context) if among_var == 0 { return false } // ], line 100 env.Bra = env.Cursor // call R1, line 100 if !r_R1(env, context) { return false } if among_var == 0 { return false } else if among_var == 1 { // (, line 101 // <-, line 101 if !env.SliceFrom("tion") { return false } } else if among_var == 2 { // (, line 102 // <-, line 102 if !env.SliceFrom("ence") { return false } } else if among_var == 3 { // (, line 103 // <-, line 103 if !env.SliceFrom("ance") { return false } } else if among_var == 4 { // (, line 104 // <-, line 104 if !env.SliceFrom("able") { return false } } else if among_var == 5 { // (, line 105 // <-, line 105 if !env.SliceFrom("ent") { return false } } else if among_var == 6 { // (, line 107 // <-, line 107 if !env.SliceFrom("ize") { return false } } else if among_var == 7 { // (, line 109 // <-, line 109 if !env.SliceFrom("ate") { return false } } else if among_var == 8 { // (, line 111 // <-, line 111 if !env.SliceFrom("al") { return false } } else if among_var == 9 { // (, line 112 // <-, line 112 if !env.SliceFrom("ful") { return false } } else if among_var == 10 { // (, line 114 // <-, line 114 if !env.SliceFrom("ous") { return false } } else if among_var == 11 { // (, line 116 // <-, line 116 if !env.SliceFrom("ive") { return false } } else if among_var == 12 { // (, line 118 // <-, line 118 if !env.SliceFrom("ble") { return false } } else if among_var == 13 { // (, line 119 // literal, line 119 if !env.EqSB("l") { return false } // <-, line 119 if !env.SliceFrom("og") { return false } } else if among_var == 14 { // (, line 120 // <-, line 120 if !env.SliceFrom("ful") { return false } } else if among_var == 15 { // (, line 121 // <-, line 121 if !env.SliceFrom("less") { return false } } else if among_var == 16 { // (, line 122 if !env.InGroupingB(G_valid_LI, 99, 116) { return false } // delete, line 122 if !env.SliceDel() { return false } } return true } func r_Step_3(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 126 // [, line 127 env.Ket = env.Cursor // substring, line 127 among_var = env.FindAmongB(A_6, context) if among_var == 0 { return false } // ], line 127 env.Bra = env.Cursor // call R1, line 127 if !r_R1(env, context) { return false } if among_var == 0 { return false } else if among_var == 1 { // (, line 128 // <-, line 128 if !env.SliceFrom("tion") { return false } } else if among_var == 2 { // (, line 129 // <-, line 129 if !env.SliceFrom("ate") { return false } } else if among_var == 3 { // (, line 130 // <-, line 130 if !env.SliceFrom("al") { return false } } else if among_var == 4 { // (, line 132 // <-, line 132 if !env.SliceFrom("ic") { return false } } else if among_var == 5 { // (, line 134 // delete, line 134 if !env.SliceDel() { return false } } else if among_var == 6 { // (, line 136 // call R2, line 136 if !r_R2(env, context) { return false } // delete, line 136 if !env.SliceDel() { return false } } return true } func r_Step_4(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 140 // [, line 141 env.Ket = env.Cursor // substring, line 141 among_var = env.FindAmongB(A_7, context) if among_var == 0 { return false } // ], line 141 env.Bra = env.Cursor // call R2, line 141 if !r_R2(env, context) { return false } if among_var == 0 { return false } else if among_var == 1 { // (, line 144 // delete, line 144 if !env.SliceDel() { return false } } else if among_var == 2 { // (, line 145 // or, line 145 lab0: for { var v_1 = env.Limit - env.Cursor lab1: for { // literal, line 145 if !env.EqSB("s") { break lab1 } break lab0 } env.Cursor = env.Limit - v_1 // literal, line 145 if !env.EqSB("t") { return false } break lab0 } // delete, line 145 if !env.SliceDel() { return false } } return true } func r_Step_5(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 149 // [, line 150 env.Ket = env.Cursor // substring, line 150 among_var = env.FindAmongB(A_8, context) if among_var == 0 { return false } // ], line 150 env.Bra = env.Cursor if among_var == 0 { return false } else if among_var == 1 { // (, line 151 // or, line 151 lab0: for { var v_1 = env.Limit - env.Cursor lab1: for { // call R2, line 151 if !r_R2(env, context) { break lab1 } break lab0 } env.Cursor = env.Limit - v_1 // (, line 151 // call R1, line 151 if !r_R1(env, context) { return false } // not, line 151 var v_2 = env.Limit - env.Cursor lab2: for { // call shortv, line 151 if !r_shortv(env, context) { break lab2 } return false } env.Cursor = env.Limit - v_2 break lab0 } // delete, line 151 if !env.SliceDel() { return false } } else if among_var == 2 { // (, line 152 // call R2, line 152 if !r_R2(env, context) { return false } // literal, line 152 if !env.EqSB("l") { return false } // delete, line 152 if !env.SliceDel() { return false } } return true } func r_exception2(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context // (, line 156 // [, line 158 env.Ket = env.Cursor // substring, line 158 if env.FindAmongB(A_9, context) == 0 { return false } // ], line 158 env.Bra = env.Cursor // atlimit, line 158 if env.Cursor > env.LimitBackward { return false } return true } func r_exception1(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context var among_var int32 // (, line 168 // [, line 170 env.Bra = env.Cursor // substring, line 170 among_var = env.FindAmong(A_10, context) if among_var == 0 { return false } // ], line 170 env.Ket = env.Cursor // atlimit, line 170 if env.Cursor < env.Limit { return false } if among_var == 0 { return false } else if among_var == 1 { // (, line 174 // <-, line 174 if !env.SliceFrom("ski") { return false } } else if among_var == 2 { // (, line 175 // <-, line 175 if !env.SliceFrom("sky") { return false } } else if among_var == 3 { // (, line 176 // <-, line 176 if !env.SliceFrom("die") { return false } } else if among_var == 4 { // (, line 177 // <-, line 177 if !env.SliceFrom("lie") { return false } } else if among_var == 5 { // (, line 178 // <-, line 178 if !env.SliceFrom("tie") { return false } } else if among_var == 6 { // (, line 182 // <-, line 182 if !env.SliceFrom("idl") { return false } } else if among_var == 7 { // (, line 183 // <-, line 183 if !env.SliceFrom("gentl") { return false } } else if among_var == 8 { // (, line 184 // <-, line 184 if !env.SliceFrom("ugli") { return false } } else if among_var == 9 { // (, line 185 // <-, line 185 if !env.SliceFrom("earli") { return false } } else if among_var == 10 { // (, line 186 // <-, line 186 if !env.SliceFrom("onli") { return false } } else if among_var == 11 { // (, line 187 // <-, line 187 if !env.SliceFrom("singl") { return false } } return true } func r_postlude(env *snowballRuntime.Env, ctx interface{}) bool { context := ctx.(*Context) _ = context // (, line 203 // Boolean test Y_found, line 203 if !context.b_Y_found { return false } // repeat, line 203 replab0: for { var v_1 = env.Cursor lab1: for range [2]struct{}{} { // (, line 203 // goto, line 203 golab2: for { var v_2 = env.Cursor lab3: for { // (, line 203 // [, line 203 env.Bra = env.Cursor // literal, line 203 if !env.EqS("Y") { break lab3 } // ], line 203 env.Ket = env.Cursor env.Cursor = v_2 break golab2 } env.Cursor = v_2 if env.Cursor >= env.Limit { break lab1 } env.NextChar() } // <-, line 203 if !env.SliceFrom("y") { return false } continue replab0 } env.Cursor = v_1 break replab0 } return true } func Stem(env *snowballRuntime.Env) bool { var context = &Context{ b_Y_found: false, i_p2: 0, i_p1: 0, } _ = context // (, line 205 // or, line 207 lab0: for { var v_1 = env.Cursor lab1: for { // call exception1, line 207 if !r_exception1(env, context) { break lab1 } break lab0 } env.Cursor = v_1 lab2: for { // not, line 208 var v_2 = env.Cursor lab3: for { { // hop, line 208 var c = env.ByteIndexForHop((3)) if int32(0) > c || c > int32(env.Limit) { break lab3 } env.Cursor = int(c) } break lab2 } env.Cursor = v_2 break lab0 } env.Cursor = v_1 // (, line 208 // do, line 209 var v_3 = env.Cursor lab4: for { // call prelude, line 209 if !r_prelude(env, context) { break lab4 } break lab4 } env.Cursor = v_3 // do, line 210 var v_4 = env.Cursor lab5: for { // call mark_regions, line 210 if !r_mark_regions(env, context) { break lab5 } break lab5 } env.Cursor = v_4 // backwards, line 211 env.LimitBackward = env.Cursor env.Cursor = env.Limit // (, line 211 // do, line 213 var v_5 = env.Limit - env.Cursor lab6: for { // call Step_1a, line 213 if !r_Step_1a(env, context) { break lab6 } break lab6 } env.Cursor = env.Limit - v_5 // or, line 215 lab7: for { var v_6 = env.Limit - env.Cursor lab8: for { // call exception2, line 215 if !r_exception2(env, context) { break lab8 } break lab7 } env.Cursor = env.Limit - v_6 // (, line 215 // do, line 217 var v_7 = env.Limit - env.Cursor lab9: for { // call Step_1b, line 217 if !r_Step_1b(env, context) { break lab9 } break lab9 } env.Cursor = env.Limit - v_7 // do, line 218 var v_8 = env.Limit - env.Cursor lab10: for { // call Step_1c, line 218 if !r_Step_1c(env, context) { break lab10 } break lab10 } env.Cursor = env.Limit - v_8 // do, line 220 var v_9 = env.Limit - env.Cursor lab11: for { // call Step_2, line 220 if !r_Step_2(env, context) { break lab11 } break lab11 } env.Cursor = env.Limit - v_9 // do, line 221 var v_10 = env.Limit - env.Cursor lab12: for { // call Step_3, line 221 if !r_Step_3(env, context) { break lab12 } break lab12 } env.Cursor = env.Limit - v_10 // do, line 222 var v_11 = env.Limit - env.Cursor lab13: for { // call Step_4, line 222 if !r_Step_4(env, context) { break lab13 } break lab13 } env.Cursor = env.Limit - v_11 // do, line 224 var v_12 = env.Limit - env.Cursor lab14: for { // call Step_5, line 224 if !r_Step_5(env, context) { break lab14 } break lab14 } env.Cursor = env.Limit - v_12 break lab7 } env.Cursor = env.LimitBackward // do, line 227 var v_13 = env.Cursor lab15: for { // call postlude, line 227 if !r_postlude(env, context) { break lab15 } break lab15 } env.Cursor = v_13 break lab0 } return true }