0
0
bleve/analysis/lang/ru/snowball/stem_Unicode.go
2017-06-05 18:01:01 +05:00

738 lines
19 KiB
Go

//! This file was generated automatically by the Snowball to Go compiler
//! http://snowballstem.org/
package snowball
import (
snowballRuntime "github.com/snowballstem/snowball/go"
)
var A_0 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u0432\u0448\u0438\u0441\u044C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0432\u0448\u0438\u0441\u044C", A: 0, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0432\u0448\u0438\u0441\u044C", A: 0, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0432", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0432", A: 3, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0432", A: 3, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0432\u0448\u0438", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0432\u0448\u0438", A: 6, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0432\u0448\u0438", A: 6, B: 2, F: nil},
}
var A_1 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u0435\u043C\u0443", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u043C\u0443", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0445", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0445", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0443\u044E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044E\u044E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u044E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u044E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044F\u044F", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0430\u044F", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043C\u0438", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043C\u0438", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0439", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0439", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0439", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u0439", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0433\u043E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u0433\u043E", A: -1, B: 1, F: nil},
}
var A_2 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u0432\u0448", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0432\u0448", A: 0, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0432\u0448", A: 0, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0449", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044E\u0449", A: 3, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0443\u044E\u0449", A: 4, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043D\u043D", A: -1, B: 1, F: nil},
}
var A_3 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u0441\u044C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0441\u044F", A: -1, B: 1, F: nil},
}
var A_4 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u044B\u0442", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u044E\u0442", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0443\u044E\u0442", A: 1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u044F\u0442", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0442", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0443\u0435\u0442", A: 4, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0442", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043D\u044B", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043D\u044B", A: 7, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0442\u044C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u0442\u044C", A: 9, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0442\u044C", A: 9, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0448\u044C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0448\u044C", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u044E", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0443\u044E", A: 14, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043B\u0430", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043B\u0430", A: 16, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043B\u0430", A: 16, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043D\u0430", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043D\u0430", A: 19, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0442\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0442\u0435", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0439\u0442\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0443\u0439\u0442\u0435", A: 23, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0439\u0442\u0435", A: 23, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043B\u0438", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043B\u0438", A: 26, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043B\u0438", A: 26, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0439", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0443\u0439", A: 29, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0439", A: 29, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043B", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043B", A: 32, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043B", A: 32, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043C", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043C", A: -1, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043D", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043D", A: 38, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043B\u043E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B\u043B\u043E", A: 40, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u0438\u043B\u043E", A: 40, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043D\u043E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043D\u043E", A: 43, B: 2, F: nil},
&snowballRuntime.Among{Str: "\u043D\u043D\u043E", A: 43, B: 1, F: nil},
}
var A_5 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u0443", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044F\u0445", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u044F\u0445", A: 1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0430\u0445", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044B", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044E", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044C\u044E", A: 6, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u044E", A: 6, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044F", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044C\u044F", A: 9, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u044F", A: 9, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0430", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0432", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u0432", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044C\u0435", A: 15, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0435", A: 15, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0438", A: 18, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0438", A: 18, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044F\u043C\u0438", A: 18, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u044F\u043C\u0438", A: 21, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0430\u043C\u0438", A: 18, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0439", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0439", A: 24, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0435\u0439", A: 25, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0439", A: 24, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u0439", A: 24, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044F\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u044F\u043C", A: 29, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0430\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0435\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u0438\u0435\u043C", A: 32, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u043C", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E", A: -1, B: 1, F: nil},
}
var A_6 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u043E\u0441\u0442", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043E\u0441\u0442\u044C", A: -1, B: 1, F: nil},
}
var A_7 = []*snowballRuntime.Among{
&snowballRuntime.Among{Str: "\u0435\u0439\u0448", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u044C", A: -1, B: 3, F: nil},
&snowballRuntime.Among{Str: "\u0435\u0439\u0448\u0435", A: -1, B: 1, F: nil},
&snowballRuntime.Among{Str: "\u043D", A: -1, B: 2, F: nil},
}
var G_v = []byte{33, 65, 8, 232}
type Context struct {
i_p2 int
i_pV int
}
func r_mark_regions(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
// (, line 57
context.i_pV = env.Limit
context.i_p2 = env.Limit
// do, line 61
var v_1 = env.Cursor
lab0:
for {
// (, line 61
// gopast, line 62
golab1:
for {
lab2:
for {
if !env.InGrouping(G_v, 1072, 1103) {
break lab2
}
break golab1
}
if env.Cursor >= env.Limit {
break lab0
}
env.NextChar()
}
// setmark pV, line 62
context.i_pV = env.Cursor
// gopast, line 62
golab3:
for {
lab4:
for {
if !env.OutGrouping(G_v, 1072, 1103) {
break lab4
}
break golab3
}
if env.Cursor >= env.Limit {
break lab0
}
env.NextChar()
}
// gopast, line 63
golab5:
for {
lab6:
for {
if !env.InGrouping(G_v, 1072, 1103) {
break lab6
}
break golab5
}
if env.Cursor >= env.Limit {
break lab0
}
env.NextChar()
}
// gopast, line 63
golab7:
for {
lab8:
for {
if !env.OutGrouping(G_v, 1072, 1103) {
break lab8
}
break golab7
}
if env.Cursor >= env.Limit {
break lab0
}
env.NextChar()
}
// setmark p2, line 63
context.i_p2 = env.Cursor
break lab0
}
env.Cursor = v_1
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_perfective_gerund(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 71
// [, line 72
env.Ket = env.Cursor
// substring, line 72
among_var = env.FindAmongB(A_0, context)
if among_var == 0 {
return false
}
// ], line 72
env.Bra = env.Cursor
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 76
// or, line 76
lab0:
for {
var v_1 = env.Limit - env.Cursor
lab1:
for {
// literal, line 76
if !env.EqSB("\u0430") {
break lab1
}
break lab0
}
env.Cursor = env.Limit - v_1
// literal, line 76
if !env.EqSB("\u044F") {
return false
}
break lab0
}
// delete, line 76
if !env.SliceDel() {
return false
}
} else if among_var == 2 {
// (, line 83
// delete, line 83
if !env.SliceDel() {
return false
}
}
return true
}
func r_adjective(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 87
// [, line 88
env.Ket = env.Cursor
// substring, line 88
among_var = env.FindAmongB(A_1, context)
if among_var == 0 {
return false
}
// ], line 88
env.Bra = env.Cursor
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 97
// delete, line 97
if !env.SliceDel() {
return false
}
}
return true
}
func r_adjectival(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 101
// call adjective, line 102
if !r_adjective(env, context) {
return false
}
// try, line 109
var v_1 = env.Limit - env.Cursor
lab0:
for {
// (, line 109
// [, line 110
env.Ket = env.Cursor
// substring, line 110
among_var = env.FindAmongB(A_2, context)
if among_var == 0 {
env.Cursor = env.Limit - v_1
break lab0
}
// ], line 110
env.Bra = env.Cursor
if among_var == 0 {
env.Cursor = env.Limit - v_1
break lab0
} else if among_var == 1 {
// (, line 115
// or, line 115
lab1:
for {
var v_2 = env.Limit - env.Cursor
lab2:
for {
// literal, line 115
if !env.EqSB("\u0430") {
break lab2
}
break lab1
}
env.Cursor = env.Limit - v_2
// literal, line 115
if !env.EqSB("\u044F") {
env.Cursor = env.Limit - v_1
break lab0
}
break lab1
}
// delete, line 115
if !env.SliceDel() {
return false
}
} else if among_var == 2 {
// (, line 122
// delete, line 122
if !env.SliceDel() {
return false
}
}
break lab0
}
return true
}
func r_reflexive(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 128
// [, line 129
env.Ket = env.Cursor
// substring, line 129
among_var = env.FindAmongB(A_3, context)
if among_var == 0 {
return false
}
// ], line 129
env.Bra = env.Cursor
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 132
// delete, line 132
if !env.SliceDel() {
return false
}
}
return true
}
func r_verb(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 136
// [, line 137
env.Ket = env.Cursor
// substring, line 137
among_var = env.FindAmongB(A_4, context)
if among_var == 0 {
return false
}
// ], line 137
env.Bra = env.Cursor
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 143
// or, line 143
lab0:
for {
var v_1 = env.Limit - env.Cursor
lab1:
for {
// literal, line 143
if !env.EqSB("\u0430") {
break lab1
}
break lab0
}
env.Cursor = env.Limit - v_1
// literal, line 143
if !env.EqSB("\u044F") {
return false
}
break lab0
}
// delete, line 143
if !env.SliceDel() {
return false
}
} else if among_var == 2 {
// (, line 151
// delete, line 151
if !env.SliceDel() {
return false
}
}
return true
}
func r_noun(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 159
// [, line 160
env.Ket = env.Cursor
// substring, line 160
among_var = env.FindAmongB(A_5, context)
if among_var == 0 {
return false
}
// ], line 160
env.Bra = env.Cursor
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 167
// delete, line 167
if !env.SliceDel() {
return false
}
}
return true
}
func r_derivational(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 175
// [, line 176
env.Ket = env.Cursor
// substring, line 176
among_var = env.FindAmongB(A_6, context)
if among_var == 0 {
return false
}
// ], line 176
env.Bra = env.Cursor
// call R2, line 176
if !r_R2(env, context) {
return false
}
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 179
// delete, line 179
if !env.SliceDel() {
return false
}
}
return true
}
func r_tidy_up(env *snowballRuntime.Env, ctx interface{}) bool {
context := ctx.(*Context)
_ = context
var among_var int32
// (, line 183
// [, line 184
env.Ket = env.Cursor
// substring, line 184
among_var = env.FindAmongB(A_7, context)
if among_var == 0 {
return false
}
// ], line 184
env.Bra = env.Cursor
if among_var == 0 {
return false
} else if among_var == 1 {
// (, line 188
// delete, line 188
if !env.SliceDel() {
return false
}
// [, line 189
env.Ket = env.Cursor
// literal, line 189
if !env.EqSB("\u043D") {
return false
}
// ], line 189
env.Bra = env.Cursor
// literal, line 189
if !env.EqSB("\u043D") {
return false
}
// delete, line 189
if !env.SliceDel() {
return false
}
} else if among_var == 2 {
// (, line 192
// literal, line 192
if !env.EqSB("\u043D") {
return false
}
// delete, line 192
if !env.SliceDel() {
return false
}
} else if among_var == 3 {
// (, line 194
// delete, line 194
if !env.SliceDel() {
return false
}
}
return true
}
func Stem(env *snowballRuntime.Env) bool {
var context = &Context{
i_p2: 0,
i_pV: 0,
}
_ = context
// (, line 199
// do, line 201
var v_1 = env.Cursor
lab0:
for {
// call mark_regions, line 201
if !r_mark_regions(env, context) {
break lab0
}
break lab0
}
env.Cursor = v_1
// backwards, line 202
env.LimitBackward = env.Cursor
env.Cursor = env.Limit
// setlimit, line 202
var v_2 = env.Limit - env.Cursor
// tomark, line 202
if env.Cursor < context.i_pV {
return false
}
env.Cursor = context.i_pV
var v_3 = env.LimitBackward
env.LimitBackward = env.Cursor
env.Cursor = env.Limit - v_2
// (, line 202
// do, line 203
var v_4 = env.Limit - env.Cursor
lab1:
for {
// (, line 203
// or, line 204
lab2:
for {
var v_5 = env.Limit - env.Cursor
lab3:
for {
// call perfective_gerund, line 204
if !r_perfective_gerund(env, context) {
break lab3
}
break lab2
}
env.Cursor = env.Limit - v_5
// (, line 205
// try, line 205
var v_6 = env.Limit - env.Cursor
lab4:
for {
// call reflexive, line 205
if !r_reflexive(env, context) {
env.Cursor = env.Limit - v_6
break lab4
}
break lab4
}
// or, line 206
lab5:
for {
var v_7 = env.Limit - env.Cursor
lab6:
for {
// call adjectival, line 206
if !r_adjectival(env, context) {
break lab6
}
break lab5
}
env.Cursor = env.Limit - v_7
lab7:
for {
// call verb, line 206
if !r_verb(env, context) {
break lab7
}
break lab5
}
env.Cursor = env.Limit - v_7
// call noun, line 206
if !r_noun(env, context) {
break lab1
}
break lab5
}
break lab2
}
break lab1
}
env.Cursor = env.Limit - v_4
// try, line 209
var v_8 = env.Limit - env.Cursor
lab8:
for {
// (, line 209
// [, line 209
env.Ket = env.Cursor
// literal, line 209
if !env.EqSB("\u0438") {
env.Cursor = env.Limit - v_8
break lab8
}
// ], line 209
env.Bra = env.Cursor
// delete, line 209
if !env.SliceDel() {
return false
}
break lab8
}
// do, line 212
var v_9 = env.Limit - env.Cursor
lab9:
for {
// call derivational, line 212
if !r_derivational(env, context) {
break lab9
}
break lab9
}
env.Cursor = env.Limit - v_9
// do, line 213
var v_10 = env.Limit - env.Cursor
lab10:
for {
// call tidy_up, line 213
if !r_tidy_up(env, context) {
break lab10
}
break lab10
}
env.Cursor = env.Limit - v_10
env.LimitBackward = v_3
env.Cursor = env.LimitBackward
return true
}