diff --git a/src/runtime/javascript/editor-grammar/EditorEng.gf b/src/runtime/javascript/editor-grammar/EditorEng.gf index 95ad0eabd..a7161e641 100644 --- a/src/runtime/javascript/editor-grammar/EditorEng.gf +++ b/src/runtime/javascript/editor-grammar/EditorEng.gf @@ -55,7 +55,7 @@ lin DefPlDet = DetQuant DefArt NumPl ; lin Command v d n = UttImpSg PPos (ImpVP (ComplSlash (SlashV2a (mkV2 v)) (DetCN d (UseN n)))) ; CommandAdj v d a n = UttImpSg PPos (ImpVP (ComplSlash (SlashV2a (mkV2 v)) (DetCN d (AdjCN (PositA a) (UseN n))))) ; - ErrorMessage a n = UttNP (MassNP (AdjCN (PositA (mkA "random")) (UseN n))) ; + ErrorMessage a n = UttNP (DetCN (DetQuant no_Quant NumPl) (AdjCN (PositA a) (UseN n))) ; Label n = UttNP (MassNP (UseN n)) ; RandomlyCommand v d n = UttImpSg PPos (ImpVP (AdvVP (ComplSlash (SlashV2a (mkV2 v)) (DetCN d (UseN n))) (PrepNP (mkPrep "at") (MassNP (UseN (mkN "random")))))) ; SingleWordCommand v = UttImpSg PPos (ImpVP (UseV v)) ; diff --git a/src/runtime/javascript/editorGrammar.js b/src/runtime/javascript/editorGrammar.js index cf2114073..93b59572b 100644 --- a/src/runtime/javascript/editorGrammar.js +++ b/src/runtime/javascript/editorGrammar.js @@ -1 +1 @@ -var Editor = new GFGrammar(new GFAbstract("S",{Available: new Type([], "Adjective"), Bulgarian: new Type([], "Noun"), Command: new Type(["Verb", "Determiner", "Noun"], "Sentence"), CommandAdj: new Type(["Verb", "Determiner", "Adjective", "Noun"], "Sentence"), Copy: new Type([], "Verb"), Cut: new Type([], "Verb"), Danish: new Type([], "Noun"), DefPlDet: new Type([], "Determiner"), DefSgDet: new Type([], "Determiner"), Delete: new Type([], "Verb"), English: new Type([], "Noun"), Enter: new Type([], "Verb"), ErrorMessage: new Type(["Adjective", "Noun"], "Sentence"), Finnish: new Type([], "Noun"), Float_N: new Type([], "Noun"), French: new Type([], "Noun"), German: new Type([], "Noun"), IndefPlDet: new Type([], "Determiner"), IndefSgDet: new Type([], "Determiner"), Integer_N: new Type([], "Noun"), Italian: new Type([], "Noun"), Label: new Type(["Noun"], "Sentence"), Language: new Type([], "Noun"), Next: new Type([], "Adjective"), Node: new Type([], "Noun"), Norwegian: new Type([], "Noun"), Page: new Type([], "Noun"), Parse: new Type([], "Verb"), Paste: new Type([], "Verb"), Previous: new Type([], "Adjective"), RandomlyCommand: new Type(["Verb", "Determiner", "Noun"], "Sentence"), Redo: new Type([], "Verb"), Refine: new Type([], "Verb"), Refinement: new Type([], "Noun"), Replace: new Type([], "Verb"), Russian: new Type([], "Noun"), Select: new Type([], "Verb"), Show: new Type([], "Verb"), SingleWordCommand: new Type(["Verb"], "Sentence"), Spanish: new Type([], "Noun"), String_N: new Type([], "Noun"), Swedish: new Type([], "Noun"), Tree: new Type([], "Noun"), Undo: new Type([], "Verb"), Wrap: new Type([], "Verb"), Wrapper: new Type([], "Noun")}),{EditorEng: new GFConcrete({},{Available: function(cs){return new Arr(new Arr(new Str("available"), new Str("available"), new Str("available's"), Editor.concretes["EditorEng"].rule("_0", cs), Editor.concretes["EditorEng"].rule("_0", cs), new Seq(new Str("more"), new Str("available's")), Editor.concretes["EditorEng"].rule("_2", cs), Editor.concretes["EditorEng"].rule("_2", cs), new Seq(new Str("most"), new Str("available's")), new Str("availablely")));}, Bulgarian: function(cs){return new Arr(new Arr(new Suffix("Bulgarian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Bulgarians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Command: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs), Editor.concretes["EditorEng"].rule("_18", cs), Editor.concretes["EditorEng"].rule("_22", cs)));}, CommandAdj: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs),(new Arr(new Seq((new Arr(Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs))).sel(Editor.concretes["EditorEng"].rule("_27", cs).sel(cs[3].sel(new Int(1)))), Editor.concretes["EditorEng"].rule("_31", cs).sel(new Int(0)).sel(new Int(1))), new Seq(Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_31", cs).sel(new Int(1)).sel(new Int(1))))).sel(Editor.concretes["EditorEng"].rule("_16", cs)), Editor.concretes["EditorEng"].rule("_22", cs)));}, Copy: function(cs){return new Arr(new Suffix("cop", new Arr(new Str("y"), new Str("ies"), new Str("ied"), new Str("ying"), new Str("ied"))), new Int(1));}, Cut: function(cs){return new Arr(new Suffix("cut", new Arr(new Str(""), new Str("s"), new Str("ted"), new Str("ting"), new Str("ted"))), new Int(1));}, Danish: function(cs){return new Arr(new Arr(new Suffix("Danish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Danishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, DefPlDet: function(cs){return new Arr(new Str("the"), new Int(1), new Suffix("the", new Arr(new Str("y"), new Str("m"), new Str("irs"))));}, DefSgDet: function(cs){return new Arr(new Str("the"), new Int(0), new Suffix("it", new Arr(new Str(""), new Str(""), new Str("s"))));}, Delete: function(cs){return new Arr(new Suffix("delet", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, English: function(cs){return new Arr(new Arr(new Suffix("English", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Englishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Enter: function(cs){return new Arr(new Suffix("enter", new Arr(new Str(""), new Str("s"), new Str("red"), new Str("ring"), new Str("red"))), new Int(1));}, ErrorMessage: function(cs){return new Arr(new Seq((new Arr(new Str("random"), new Str("random"), new Str("random"), new Str("random"), new Str("random"), new Str("random"), new Str("random"), new Str("random"))).sel(Editor.concretes["EditorEng"].rule("_27", cs).sel(Editor.concretes["EditorEng"].rule("_16", cs))), Editor.concretes["EditorEng"].rule("_14", cs).sel(new Int(0)).sel(new Int(0))));}, Finnish: function(cs){return new Arr(new Arr(new Suffix("Finnish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Finnishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Float_N: function(cs){return new Arr(new Arr(new Suffix("float", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("floats", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, French: function(cs){return new Arr(new Arr(new Suffix("French", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Frenches", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, German: function(cs){return new Arr(new Arr(new Suffix("German", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Germans", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, IndefPlDet: function(cs){return new Arr(Editor.concretes["EditorEng"].rule("_19", cs), new Int(1), new Suffix("ones", Editor.concretes["EditorEng"].rule("_8", cs)));}, IndefSgDet: function(cs){return new Arr(new Str("a"), new Int(0), new Suffix("one", Editor.concretes["EditorEng"].rule("_6", cs)));}, Integer_N: function(cs){return new Arr(new Arr(new Suffix("integer", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("integers", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Italian: function(cs){return new Arr(new Arr(new Suffix("Italian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Italians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Label: function(cs){return new Arr(Editor.concretes["EditorEng"].rule("_13", cs).sel(new Int(0)));}, Language: function(cs){return new Arr(new Arr(new Suffix("language", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("languages", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Next: function(cs){return new Arr(new Suffix("next", new Arr(new Str(""), new Str(""), new Str("'s"), new Str("er"), new Str("er"), new Str("er's"), new Str("est"), new Str("est"), new Str("est's"), new Str("ly"))));}, Node: function(cs){return new Arr(new Arr(new Suffix("node", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("nodes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Norwegian: function(cs){return new Arr(new Arr(new Suffix("Norwegian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Norwegians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Page: function(cs){return new Arr(new Arr(new Suffix("page", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("pages", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Parse: function(cs){return new Arr(new Suffix("pars", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Paste: function(cs){return new Arr(new Suffix("past", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Previous: function(cs){return new Arr(new Arr(new Str("previous"), new Str("previous"), new Str("previous'"), Editor.concretes["EditorEng"].rule("_128", cs), Editor.concretes["EditorEng"].rule("_128", cs), new Seq(new Str("more"), new Str("previous'")), Editor.concretes["EditorEng"].rule("_130", cs), Editor.concretes["EditorEng"].rule("_130", cs), new Seq(new Str("most"), new Str("previous'")), new Str("previously")));}, RandomlyCommand: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs), Editor.concretes["EditorEng"].rule("_18", cs), Editor.concretes["EditorEng"].rule("_22", cs), new Str("at"), new Str("random")));}, Redo: function(cs){return new Arr(new Suffix("redo", Editor.concretes["EditorEng"].rule("_136", cs)), new Int(1));}, Refine: function(cs){return new Arr(new Suffix("refin", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Refinement: function(cs){return new Arr(new Arr(new Suffix("refinement", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("refinements", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Replace: function(cs){return new Arr(new Suffix("replac", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Russian: function(cs){return new Arr(new Arr(new Suffix("Russian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Russians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Select: function(cs){return new Arr(new Suffix("select", Editor.concretes["EditorEng"].rule("_151", cs)), new Int(1));}, Show: function(cs){return new Arr(new Suffix("show", Editor.concretes["EditorEng"].rule("_151", cs)), new Int(1));}, SingleWordCommand: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_22", cs)));}, Spanish: function(cs){return new Arr(new Arr(new Suffix("Spanish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Spanishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, String_N: function(cs){return new Arr(new Arr(new Suffix("string", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("strings", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Swedish: function(cs){return new Arr(new Arr(new Suffix("Swedish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Swedishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Tree: function(cs){return new Arr(new Arr(new Suffix("tree", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("trees", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Undo: function(cs){return new Arr(new Suffix("undo", Editor.concretes["EditorEng"].rule("_136", cs)), new Int(1));}, Wrap: function(cs){return new Arr(new Suffix("wrap", new Arr(new Str(""), new Str("s"), new Str("ped"), new Str("ping"), new Str("ped"))), new Int(1));}, Wrapper: function(cs){return new Arr(new Arr(new Suffix("wrapper", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("wrappers", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, _0: function(cs){return new Seq(new Str("more"), new Str("available"));}, _12: function(cs){return cs[0].sel(new Int(0));}, _128: function(cs){return new Seq(new Str("more"), new Str("previous"));}, _13: function(cs){return Editor.concretes["EditorEng"].rule("_12", cs).sel(new Int(0));}, _130: function(cs){return new Seq(new Str("most"), new Str("previous"));}, _136: function(cs){return new Arr(new Str(""), new Str("es"), new Str("ed"), new Str("ing"), new Str("ed"));}, _14: function(cs){return cs[1].sel(new Int(0));}, _15: function(cs){return cs[2].sel(new Int(0));}, _151: function(cs){return new Arr(new Str(""), new Str("s"), new Str("ed"), new Str("ing"), new Str("ed"));}, _16: function(cs){return cs[1].sel(new Int(1));}, _17: function(cs){return Editor.concretes["EditorEng"].rule("_15", cs).sel(Editor.concretes["EditorEng"].rule("_16", cs));}, _18: function(cs){return Editor.concretes["EditorEng"].rule("_17", cs).sel(new Int(1));}, _185: function(cs){return new Arr(cs[0], cs[0], cs[0]);}, _19: function(cs){return new Seq();}, _2: function(cs){return new Seq(new Str("most"), new Str("available"));}, _20: function(cs){return new Arr(new Str("yourself"), Editor.concretes["EditorEng"].rule("_19", cs));}, _21: function(cs){return cs[0].sel(new Int(1));}, _22: function(cs){return Editor.concretes["EditorEng"].rule("_20", cs).sel(Editor.concretes["EditorEng"].rule("_21", cs));}, _25: function(cs){return Editor.concretes["EditorEng"].rule("_15", cs).sel(new Int(0));}, _27: function(cs){return new Arr(new Int(4), new Int(5), new Int(6));}, _31: function(cs){return cs[3].sel(new Int(0));}, _58: function(cs){return new Arr(new Str("e"), new Str("es"), new Str("ed"), new Str("ing"), new Str("ed"));}, _6: function(cs){return new Arr(new Str(""), new Str(""), new Str("'s"));}, _8: function(cs){return new Arr(new Str(""), new Str(""), new Str("'"));}, Adjective: function(cs){return new Arr(new Arr(cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0]));}, Determiner: function(cs){return new Arr(cs[0], new Int(0), Editor.concretes["EditorEng"].rule("_185", cs));}, Noun: function(cs){return new Arr(new Arr(Editor.concretes["EditorEng"].rule("_185", cs), Editor.concretes["EditorEng"].rule("_185", cs)), new Int(0));}, Sentence: function(cs){return new Arr(cs[0]);}, Verb: function(cs){return new Arr(new Arr(cs[0], cs[0], cs[0], cs[0], cs[0]), new Int(0));}, "Int": function(cs){return new Arr(cs[0]);}, "Float": function(cs){return new Arr(cs[0]);}, "String": function(cs){return new Arr(cs[0]);}}, new Parser({0:[new Rule(0,[]), new Rule(29,[]), new Rule(35,[])], 1:[new Rule(14,[]), new Rule(24,[])], 2:[new Rule(13,[]), new Rule(23,[])], 3:[new Rule(1,[]), new Rule(12,[]), new Rule(16,[]), new Rule(19,[]), new Rule(20,[]), new Rule(21,[]), new Rule(22,[]), new Rule(25,[]), new Rule(26,[]), new Rule(28,[]), new Rule(30,[]), new Rule(31,[]), new Rule(32,[]), new Rule(42,[]), new Rule(44,[]), new Rule(49,[]), new Rule(50,[]), new Rule(51,[]), new Rule(52,[]), new Rule(55,[])], 6:[new Rule(2,[7, 1, 10]), new Rule(3,[8, 1, 10]), new Rule(4,[7, 2, 10]), new Rule(5,[8, 2, 10]), new Rule(6,[7, 1, 0, 10]), new Rule(7,[8, 1, 0, 10]), new Rule(8,[7, 2, 0, 10]), new Rule(9,[8, 2, 0, 10]), new Rule(18,[0, 10]), new Rule(27,[10]), new Rule(36,[7, 1, 10]), new Rule(37,[8, 1, 10]), new Rule(38,[7, 2, 10]), new Rule(39,[8, 2, 10]), new Rule(47,[7]), new Rule(48,[8])], 8:[new Rule(10,[]), new Rule(11,[]), new Rule(15,[]), new Rule(17,[]), new Rule(33,[]), new Rule(34,[]), new Rule(40,[]), new Rule(41,[]), new Rule(43,[]), new Rule(45,[]), new Rule(46,[]), new Rule(53,[]), new Rule(54,[])], 10:[new Coerce(3), new Coerce(4), new Coerce(5)]},[new FFun("Available",[6, 5, 4, 4, 3, 2, 2, 1, 0, 0]), new FFun("Bulgarian",[10, 9, 9, 8, 7, 7]), new FFun("Command",[11]), new FFun("Command",[12]), new FFun("Command",[13]), new FFun("Command",[14]), new FFun("CommandAdj",[15]), new FFun("CommandAdj",[16]), new FFun("CommandAdj",[17]), new FFun("CommandAdj",[18]), new FFun("Copy",[21, 22, 21, 20, 19]), new FFun("Cut",[25, 26, 25, 24, 23]), new FFun("Danish",[30, 29, 29, 28, 27, 27]), new FFun("DefPlDet",[34, 33, 32, 31]), new FFun("DefSgDet",[36, 35, 35, 31]), new FFun("Delete",[39, 40, 39, 38, 37]), new FFun("English",[44, 43, 43, 42, 41, 41]), new FFun("Enter",[47, 48, 47, 46, 45]), new FFun("ErrorMessage",[49]), new FFun("Finnish",[53, 52, 52, 51, 50, 50]), new FFun("Float_N",[57, 56, 56, 55, 54, 54]), new FFun("French",[61, 60, 60, 59, 58, 58]), new FFun("German",[65, 64, 64, 63, 62, 62]), new FFun("IndefPlDet",[68, 67, 67, 66]), new FFun("IndefSgDet",[71, 70, 70, 69]), new FFun("Integer_N",[75, 74, 74, 73, 72, 72]), new FFun("Italian",[79, 78, 78, 77, 76, 76]), new FFun("Label",[80]), new FFun("Language",[84, 83, 83, 82, 81, 81]), new FFun("Next",[91, 90, 89, 89, 88, 87, 87, 86, 85, 85]), new FFun("Node",[95, 94, 94, 93, 92, 92]), new FFun("Norwegian",[99, 98, 98, 97, 96, 96]), new FFun("Page",[103, 102, 102, 101, 100, 100]), new FFun("Parse",[106, 107, 106, 105, 104]), new FFun("Paste",[110, 111, 110, 109, 108]), new FFun("Previous",[118, 117, 116, 116, 115, 114, 114, 113, 112, 112]), new FFun("RandomlyCommand",[119]), new FFun("RandomlyCommand",[120]), new FFun("RandomlyCommand",[121]), new FFun("RandomlyCommand",[122]), new FFun("Redo",[125, 126, 125, 124, 123]), new FFun("Refine",[129, 130, 129, 128, 127]), new FFun("Refinement",[134, 133, 133, 132, 131, 131]), new FFun("Replace",[137, 138, 137, 136, 135]), new FFun("Russian",[142, 141, 141, 140, 139, 139]), new FFun("Select",[145, 146, 145, 144, 143]), new FFun("Show",[149, 150, 149, 148, 147]), new FFun("SingleWordCommand",[151]), new FFun("SingleWordCommand",[152]), new FFun("Spanish",[156, 155, 155, 154, 153, 153]), new FFun("String_N",[160, 159, 159, 158, 157, 157]), new FFun("Swedish",[164, 163, 163, 162, 161, 161]), new FFun("Tree",[168, 167, 167, 166, 165, 165]), new FFun("Undo",[171, 172, 171, 170, 169]), new FFun("Wrap",[175, 176, 175, 174, 173]), new FFun("Wrapper",[180, 179, 179, 178, 177, 177])],[[new KS("available")],[new KS("available's")],[new KS("more", "available")],[new KS("more", "available's")],[new KS("most", "available")],[new KS("most", "available's")],[new KS("availablely")],[new KS("Bulgarian")],[new KS("Bulgarian's")],[new KS("Bulgarians")],[new KS("Bulgarians'")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4)],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1)],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 4), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 4)],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 1), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 1)],[new KS("copy")],[new KS("copies")],[new KS("copied")],[new KS("copying")],[new KS("cut")],[new KS("cuts")],[new KS("cutted")],[new KS("cutting")],[new KS("Danish")],[new KS("Danish's")],[new KS("Danishes")],[new KS("Danishes'")],[new KS("the")],[new KS("they")],[new KS("them")],[new KS("theirs")],[new KS("it")],[new KS("its")],[new KS("delete")],[new KS("deletes")],[new KS("deleted")],[new KS("deleting")],[new KS("English")],[new KS("English's")],[new KS("Englishes")],[new KS("Englishes'")],[new KS("enter")],[new KS("enters")],[new KS("enterred")],[new KS("enterring")],[new KS("random"), new Arg(1, 5)],[new KS("Finnish")],[new KS("Finnish's")],[new KS("Finnishes")],[new KS("Finnishes'")],[new KS("float")],[new KS("float's")],[new KS("floats")],[new KS("floats'")],[new KS("French")],[new KS("French's")],[new KS("Frenches")],[new KS("Frenches'")],[new KS("German")],[new KS("German's")],[new KS("Germans")],[new KS("Germans'")],[],[new KS("ones")],[new KS("ones'")],[new KP(["a"],[new Alt(["a"],["eu", "Eu", "uni", "up"]), new Alt(["an"],["un"]), new Alt(["an"],["a", "e", "i", "o", "A", "E", "I", "O"])])],[new KS("one")],[new KS("one's")],[new KS("integer")],[new KS("integer's")],[new KS("integers")],[new KS("integers'")],[new KS("Italian")],[new KS("Italian's")],[new KS("Italians")],[new KS("Italians'")],[new Arg(0, 5)],[new KS("language")],[new KS("language's")],[new KS("languages")],[new KS("languages'")],[new KS("next")],[new KS("next's")],[new KS("nexter")],[new KS("nexter's")],[new KS("nextest")],[new KS("nextest's")],[new KS("nextly")],[new KS("node")],[new KS("node's")],[new KS("nodes")],[new KS("nodes'")],[new KS("Norwegian")],[new KS("Norwegian's")],[new KS("Norwegians")],[new KS("Norwegians'")],[new KS("page")],[new KS("page's")],[new KS("pages")],[new KS("pages'")],[new KS("parse")],[new KS("parses")],[new KS("parsed")],[new KS("parsing")],[new KS("paste")],[new KS("pastes")],[new KS("pasted")],[new KS("pasting")],[new KS("previous")],[new KS("previous'")],[new KS("more", "previous")],[new KS("more", "previous'")],[new KS("most", "previous")],[new KS("most", "previous'")],[new KS("previously")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4), new KS("yourself", "at", "random")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4), new KS("at", "random")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1), new KS("yourself", "at", "random")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1), new KS("at", "random")],[new KS("redo")],[new KS("redoes")],[new KS("redoed")],[new KS("redoing")],[new KS("refine")],[new KS("refines")],[new KS("refined")],[new KS("refining")],[new KS("refinement")],[new KS("refinement's")],[new KS("refinements")],[new KS("refinements'")],[new KS("replace")],[new KS("replaces")],[new KS("replaced")],[new KS("replacing")],[new KS("Russian")],[new KS("Russian's")],[new KS("Russians")],[new KS("Russians'")],[new KS("select")],[new KS("selects")],[new KS("selected")],[new KS("selecting")],[new KS("show")],[new KS("shows")],[new KS("showed")],[new KS("showing")],[new Arg(0, 4), new KS("yourself")],[new Arg(0, 4)],[new KS("Spanish")],[new KS("Spanish's")],[new KS("Spanishes")],[new KS("Spanishes'")],[new KS("string")],[new KS("string's")],[new KS("strings")],[new KS("strings'")],[new KS("Swedish")],[new KS("Swedish's")],[new KS("Swedishes")],[new KS("Swedishes'")],[new KS("tree")],[new KS("tree's")],[new KS("trees")],[new KS("trees'")],[new KS("undo")],[new KS("undoes")],[new KS("undoed")],[new KS("undoing")],[new KS("wrap")],[new KS("wraps")],[new KS("wrapped")],[new KS("wrapping")],[new KS("wrapper")],[new KS("wrapper's")],[new KS("wrappers")],[new KS("wrappers'")]],{Adjective:{s: 0, e: 0}, Determiner:{s: 1, e: 2}, Float:{s: -3, e: -3}, Int:{s: -2, e: -2}, Noun:{s: 3, e: 5}, Sentence:{s: 6, e: 6}, String:{s: -1, e: -1}, Verb:{s: 7, e: 8}, __gfVar:{s: -4, e: -4}}, 11))}); +var Editor = new GFGrammar(new GFAbstract("S",{Available: new Type([], "Adjective"), Bulgarian: new Type([], "Noun"), Command: new Type(["Verb", "Determiner", "Noun"], "Sentence"), CommandAdj: new Type(["Verb", "Determiner", "Adjective", "Noun"], "Sentence"), Copy: new Type([], "Verb"), Cut: new Type([], "Verb"), Danish: new Type([], "Noun"), DefPlDet: new Type([], "Determiner"), DefSgDet: new Type([], "Determiner"), Delete: new Type([], "Verb"), English: new Type([], "Noun"), Enter: new Type([], "Verb"), ErrorMessage: new Type(["Adjective", "Noun"], "Sentence"), Finnish: new Type([], "Noun"), Float_N: new Type([], "Noun"), French: new Type([], "Noun"), German: new Type([], "Noun"), IndefPlDet: new Type([], "Determiner"), IndefSgDet: new Type([], "Determiner"), Integer_N: new Type([], "Noun"), Italian: new Type([], "Noun"), Label: new Type(["Noun"], "Sentence"), Language: new Type([], "Noun"), Next: new Type([], "Adjective"), Node: new Type([], "Noun"), Norwegian: new Type([], "Noun"), Page: new Type([], "Noun"), Parse: new Type([], "Verb"), Paste: new Type([], "Verb"), Previous: new Type([], "Adjective"), RandomlyCommand: new Type(["Verb", "Determiner", "Noun"], "Sentence"), Redo: new Type([], "Verb"), Refine: new Type([], "Verb"), Refinement: new Type([], "Noun"), Replace: new Type([], "Verb"), Russian: new Type([], "Noun"), Select: new Type([], "Verb"), Show: new Type([], "Verb"), SingleWordCommand: new Type(["Verb"], "Sentence"), Spanish: new Type([], "Noun"), String_N: new Type([], "Noun"), Swedish: new Type([], "Noun"), Tree: new Type([], "Noun"), Undo: new Type([], "Verb"), Wrap: new Type([], "Verb"), Wrapper: new Type([], "Noun")}),{EditorEng: new GFConcrete({},{Available: function(cs){return new Arr(new Arr(new Str("available"), new Str("available"), new Str("available's"), Editor.concretes["EditorEng"].rule("_0", cs), Editor.concretes["EditorEng"].rule("_0", cs), new Seq(new Str("more"), new Str("available's")), Editor.concretes["EditorEng"].rule("_2", cs), Editor.concretes["EditorEng"].rule("_2", cs), new Seq(new Str("most"), new Str("available's")), new Str("availablely")));}, Bulgarian: function(cs){return new Arr(new Arr(new Suffix("Bulgarian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Bulgarians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Command: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs), Editor.concretes["EditorEng"].rule("_18", cs), Editor.concretes["EditorEng"].rule("_22", cs)));}, CommandAdj: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs),(new Arr(new Seq((new Arr(Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_25", cs))).sel((new Arr(new Int(4), new Int(5), new Int(6))).sel(cs[3].sel(new Int(1)))), Editor.concretes["EditorEng"].rule("_31", cs).sel(new Int(0)).sel(new Int(1))), new Seq(Editor.concretes["EditorEng"].rule("_25", cs), Editor.concretes["EditorEng"].rule("_31", cs).sel(new Int(1)).sel(new Int(1))))).sel(Editor.concretes["EditorEng"].rule("_16", cs)), Editor.concretes["EditorEng"].rule("_22", cs)));}, Copy: function(cs){return new Arr(new Suffix("cop", new Arr(new Str("y"), new Str("ies"), new Str("ied"), new Str("ying"), new Str("ied"))), new Int(1));}, Cut: function(cs){return new Arr(new Suffix("cut", new Arr(new Str(""), new Str("s"), new Str("ted"), new Str("ting"), new Str("ted"))), new Int(1));}, Danish: function(cs){return new Arr(new Arr(new Suffix("Danish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Danishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, DefPlDet: function(cs){return new Arr(new Str("the"), new Int(1), new Suffix("the", new Arr(new Str("y"), new Str("m"), new Str("irs"))));}, DefSgDet: function(cs){return new Arr(new Str("the"), new Int(0), new Suffix("it", new Arr(new Str(""), new Str(""), new Str("s"))));}, Delete: function(cs){return new Arr(new Suffix("delet", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, English: function(cs){return new Arr(new Arr(new Suffix("English", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Englishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Enter: function(cs){return new Arr(new Suffix("enter", new Arr(new Str(""), new Str("s"), new Str("red"), new Str("ring"), new Str("red"))), new Int(1));}, ErrorMessage: function(cs){return new Arr(new Seq(new Str("no"), Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs).sel(new Int(1)).sel(new Int(0))));}, Finnish: function(cs){return new Arr(new Arr(new Suffix("Finnish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Finnishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Float_N: function(cs){return new Arr(new Arr(new Suffix("float", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("floats", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, French: function(cs){return new Arr(new Arr(new Suffix("French", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Frenches", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, German: function(cs){return new Arr(new Arr(new Suffix("German", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Germans", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, IndefPlDet: function(cs){return new Arr(Editor.concretes["EditorEng"].rule("_19", cs), new Int(1), new Suffix("ones", Editor.concretes["EditorEng"].rule("_8", cs)));}, IndefSgDet: function(cs){return new Arr(new Str("a"), new Int(0), new Suffix("one", Editor.concretes["EditorEng"].rule("_6", cs)));}, Integer_N: function(cs){return new Arr(new Arr(new Suffix("integer", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("integers", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Italian: function(cs){return new Arr(new Arr(new Suffix("Italian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Italians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Label: function(cs){return new Arr(Editor.concretes["EditorEng"].rule("_13", cs).sel(new Int(0)));}, Language: function(cs){return new Arr(new Arr(new Suffix("language", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("languages", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Next: function(cs){return new Arr(new Suffix("next", new Arr(new Str(""), new Str(""), new Str("'s"), new Str("er"), new Str("er"), new Str("er's"), new Str("est"), new Str("est"), new Str("est's"), new Str("ly"))));}, Node: function(cs){return new Arr(new Arr(new Suffix("node", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("nodes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Norwegian: function(cs){return new Arr(new Arr(new Suffix("Norwegian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Norwegians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Page: function(cs){return new Arr(new Arr(new Suffix("page", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("pages", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Parse: function(cs){return new Arr(new Suffix("pars", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Paste: function(cs){return new Arr(new Suffix("past", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Previous: function(cs){return new Arr(new Arr(new Str("previous"), new Str("previous"), new Str("previous'"), Editor.concretes["EditorEng"].rule("_125", cs), Editor.concretes["EditorEng"].rule("_125", cs), new Seq(new Str("more"), new Str("previous'")), Editor.concretes["EditorEng"].rule("_127", cs), Editor.concretes["EditorEng"].rule("_127", cs), new Seq(new Str("most"), new Str("previous'")), new Str("previously")));}, RandomlyCommand: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_14", cs), Editor.concretes["EditorEng"].rule("_18", cs), Editor.concretes["EditorEng"].rule("_22", cs), new Str("at"), new Str("random")));}, Redo: function(cs){return new Arr(new Suffix("redo", Editor.concretes["EditorEng"].rule("_133", cs)), new Int(1));}, Refine: function(cs){return new Arr(new Suffix("refin", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Refinement: function(cs){return new Arr(new Arr(new Suffix("refinement", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("refinements", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Replace: function(cs){return new Arr(new Suffix("replac", Editor.concretes["EditorEng"].rule("_58", cs)), new Int(1));}, Russian: function(cs){return new Arr(new Arr(new Suffix("Russian", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Russians", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Select: function(cs){return new Arr(new Suffix("select", Editor.concretes["EditorEng"].rule("_148", cs)), new Int(1));}, Show: function(cs){return new Arr(new Suffix("show", Editor.concretes["EditorEng"].rule("_148", cs)), new Int(1));}, SingleWordCommand: function(cs){return new Arr(new Seq(Editor.concretes["EditorEng"].rule("_13", cs), Editor.concretes["EditorEng"].rule("_22", cs)));}, Spanish: function(cs){return new Arr(new Arr(new Suffix("Spanish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Spanishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, String_N: function(cs){return new Arr(new Arr(new Suffix("string", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("strings", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Swedish: function(cs){return new Arr(new Arr(new Suffix("Swedish", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("Swedishes", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Tree: function(cs){return new Arr(new Arr(new Suffix("tree", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("trees", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, Undo: function(cs){return new Arr(new Suffix("undo", Editor.concretes["EditorEng"].rule("_133", cs)), new Int(1));}, Wrap: function(cs){return new Arr(new Suffix("wrap", new Arr(new Str(""), new Str("s"), new Str("ped"), new Str("ping"), new Str("ped"))), new Int(1));}, Wrapper: function(cs){return new Arr(new Arr(new Suffix("wrapper", Editor.concretes["EditorEng"].rule("_6", cs)), new Suffix("wrappers", Editor.concretes["EditorEng"].rule("_8", cs))), new Int(0));}, _0: function(cs){return new Seq(new Str("more"), new Str("available"));}, _12: function(cs){return cs[0].sel(new Int(0));}, _125: function(cs){return new Seq(new Str("more"), new Str("previous"));}, _127: function(cs){return new Seq(new Str("most"), new Str("previous"));}, _13: function(cs){return Editor.concretes["EditorEng"].rule("_12", cs).sel(new Int(0));}, _133: function(cs){return new Arr(new Str(""), new Str("es"), new Str("ed"), new Str("ing"), new Str("ed"));}, _14: function(cs){return cs[1].sel(new Int(0));}, _148: function(cs){return new Arr(new Str(""), new Str("s"), new Str("ed"), new Str("ing"), new Str("ed"));}, _15: function(cs){return cs[2].sel(new Int(0));}, _16: function(cs){return cs[1].sel(new Int(1));}, _17: function(cs){return Editor.concretes["EditorEng"].rule("_15", cs).sel(Editor.concretes["EditorEng"].rule("_16", cs));}, _18: function(cs){return Editor.concretes["EditorEng"].rule("_17", cs).sel(new Int(1));}, _182: function(cs){return new Arr(cs[0], cs[0], cs[0]);}, _19: function(cs){return new Seq();}, _2: function(cs){return new Seq(new Str("most"), new Str("available"));}, _20: function(cs){return new Arr(new Str("yourself"), Editor.concretes["EditorEng"].rule("_19", cs));}, _21: function(cs){return cs[0].sel(new Int(1));}, _22: function(cs){return Editor.concretes["EditorEng"].rule("_20", cs).sel(Editor.concretes["EditorEng"].rule("_21", cs));}, _25: function(cs){return Editor.concretes["EditorEng"].rule("_15", cs).sel(new Int(0));}, _31: function(cs){return cs[3].sel(new Int(0));}, _58: function(cs){return new Arr(new Str("e"), new Str("es"), new Str("ed"), new Str("ing"), new Str("ed"));}, _6: function(cs){return new Arr(new Str(""), new Str(""), new Str("'s"));}, _8: function(cs){return new Arr(new Str(""), new Str(""), new Str("'"));}, Adjective: function(cs){return new Arr(new Arr(cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0], cs[0]));}, Determiner: function(cs){return new Arr(cs[0], new Int(0), Editor.concretes["EditorEng"].rule("_182", cs));}, Noun: function(cs){return new Arr(new Arr(Editor.concretes["EditorEng"].rule("_182", cs), Editor.concretes["EditorEng"].rule("_182", cs)), new Int(0));}, Sentence: function(cs){return new Arr(cs[0]);}, Verb: function(cs){return new Arr(new Arr(cs[0], cs[0], cs[0], cs[0], cs[0]), new Int(0));}, "Int": function(cs){return new Arr(cs[0]);}, "Float": function(cs){return new Arr(cs[0]);}, "String": function(cs){return new Arr(cs[0]);}}, new Parser({0:[new Rule(0,[]), new Rule(29,[]), new Rule(35,[])], 1:[new Rule(14,[]), new Rule(24,[])], 2:[new Rule(13,[]), new Rule(23,[])], 3:[new Rule(1,[]), new Rule(12,[]), new Rule(16,[]), new Rule(19,[]), new Rule(20,[]), new Rule(21,[]), new Rule(22,[]), new Rule(25,[]), new Rule(26,[]), new Rule(28,[]), new Rule(30,[]), new Rule(31,[]), new Rule(32,[]), new Rule(42,[]), new Rule(44,[]), new Rule(49,[]), new Rule(50,[]), new Rule(51,[]), new Rule(52,[]), new Rule(55,[])], 6:[new Rule(2,[7, 1, 10]), new Rule(3,[8, 1, 10]), new Rule(4,[7, 2, 10]), new Rule(5,[8, 2, 10]), new Rule(6,[7, 1, 0, 10]), new Rule(7,[8, 1, 0, 10]), new Rule(8,[7, 2, 0, 10]), new Rule(9,[8, 2, 0, 10]), new Rule(18,[0, 10]), new Rule(27,[10]), new Rule(36,[7, 1, 10]), new Rule(37,[8, 1, 10]), new Rule(38,[7, 2, 10]), new Rule(39,[8, 2, 10]), new Rule(47,[7]), new Rule(48,[8])], 8:[new Rule(10,[]), new Rule(11,[]), new Rule(15,[]), new Rule(17,[]), new Rule(33,[]), new Rule(34,[]), new Rule(40,[]), new Rule(41,[]), new Rule(43,[]), new Rule(45,[]), new Rule(46,[]), new Rule(53,[]), new Rule(54,[])], 10:[new Coerce(3), new Coerce(4), new Coerce(5)]},[new FFun("Available",[6, 5, 4, 4, 3, 2, 2, 1, 0, 0]), new FFun("Bulgarian",[10, 9, 9, 8, 7, 7]), new FFun("Command",[11]), new FFun("Command",[12]), new FFun("Command",[13]), new FFun("Command",[14]), new FFun("CommandAdj",[15]), new FFun("CommandAdj",[16]), new FFun("CommandAdj",[17]), new FFun("CommandAdj",[18]), new FFun("Copy",[21, 22, 21, 20, 19]), new FFun("Cut",[25, 26, 25, 24, 23]), new FFun("Danish",[30, 29, 29, 28, 27, 27]), new FFun("DefPlDet",[34, 33, 32, 31]), new FFun("DefSgDet",[36, 35, 35, 31]), new FFun("Delete",[39, 40, 39, 38, 37]), new FFun("English",[44, 43, 43, 42, 41, 41]), new FFun("Enter",[47, 48, 47, 46, 45]), new FFun("ErrorMessage",[49]), new FFun("Finnish",[53, 52, 52, 51, 50, 50]), new FFun("Float_N",[57, 56, 56, 55, 54, 54]), new FFun("French",[61, 60, 60, 59, 58, 58]), new FFun("German",[65, 64, 64, 63, 62, 62]), new FFun("IndefPlDet",[68, 67, 67, 66]), new FFun("IndefSgDet",[71, 70, 70, 69]), new FFun("Integer_N",[75, 74, 74, 73, 72, 72]), new FFun("Italian",[79, 78, 78, 77, 76, 76]), new FFun("Label",[80]), new FFun("Language",[84, 83, 83, 82, 81, 81]), new FFun("Next",[91, 90, 89, 89, 88, 87, 87, 86, 85, 85]), new FFun("Node",[95, 94, 94, 93, 92, 92]), new FFun("Norwegian",[99, 98, 98, 97, 96, 96]), new FFun("Page",[103, 102, 102, 101, 100, 100]), new FFun("Parse",[106, 107, 106, 105, 104]), new FFun("Paste",[110, 111, 110, 109, 108]), new FFun("Previous",[118, 117, 116, 116, 115, 114, 114, 113, 112, 112]), new FFun("RandomlyCommand",[119]), new FFun("RandomlyCommand",[120]), new FFun("RandomlyCommand",[121]), new FFun("RandomlyCommand",[122]), new FFun("Redo",[125, 126, 125, 124, 123]), new FFun("Refine",[129, 130, 129, 128, 127]), new FFun("Refinement",[134, 133, 133, 132, 131, 131]), new FFun("Replace",[137, 138, 137, 136, 135]), new FFun("Russian",[142, 141, 141, 140, 139, 139]), new FFun("Select",[145, 146, 145, 144, 143]), new FFun("Show",[149, 150, 149, 148, 147]), new FFun("SingleWordCommand",[151]), new FFun("SingleWordCommand",[152]), new FFun("Spanish",[156, 155, 155, 154, 153, 153]), new FFun("String_N",[160, 159, 159, 158, 157, 157]), new FFun("Swedish",[164, 163, 163, 162, 161, 161]), new FFun("Tree",[168, 167, 167, 166, 165, 165]), new FFun("Undo",[171, 172, 171, 170, 169]), new FFun("Wrap",[175, 176, 175, 174, 173]), new FFun("Wrapper",[180, 179, 179, 178, 177, 177])],[[new KS("available")],[new KS("available's")],[new KS("more", "available")],[new KS("more", "available's")],[new KS("most", "available")],[new KS("most", "available's")],[new KS("availablely")],[new KS("Bulgarian")],[new KS("Bulgarian's")],[new KS("Bulgarians")],[new KS("Bulgarians'")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4)],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1)],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 4), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 4)],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 1), new KS("yourself")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 9), new Arg(3, 1)],[new KS("copy")],[new KS("copies")],[new KS("copied")],[new KS("copying")],[new KS("cut")],[new KS("cuts")],[new KS("cutted")],[new KS("cutting")],[new KS("Danish")],[new KS("Danish's")],[new KS("Danishes")],[new KS("Danishes'")],[new KS("the")],[new KS("they")],[new KS("them")],[new KS("theirs")],[new KS("it")],[new KS("its")],[new KS("delete")],[new KS("deletes")],[new KS("deleted")],[new KS("deleting")],[new KS("English")],[new KS("English's")],[new KS("Englishes")],[new KS("Englishes'")],[new KS("enter")],[new KS("enters")],[new KS("enterred")],[new KS("enterring")],[new KS("no"), new Arg(0, 9), new Arg(1, 2)],[new KS("Finnish")],[new KS("Finnish's")],[new KS("Finnishes")],[new KS("Finnishes'")],[new KS("float")],[new KS("float's")],[new KS("floats")],[new KS("floats'")],[new KS("French")],[new KS("French's")],[new KS("Frenches")],[new KS("Frenches'")],[new KS("German")],[new KS("German's")],[new KS("Germans")],[new KS("Germans'")],[],[new KS("ones")],[new KS("ones'")],[new KP(["a"],[new Alt(["a"],["eu", "Eu", "uni", "up"]), new Alt(["an"],["un"]), new Alt(["an"],["a", "e", "i", "o", "A", "E", "I", "O"])])],[new KS("one")],[new KS("one's")],[new KS("integer")],[new KS("integer's")],[new KS("integers")],[new KS("integers'")],[new KS("Italian")],[new KS("Italian's")],[new KS("Italians")],[new KS("Italians'")],[new Arg(0, 5)],[new KS("language")],[new KS("language's")],[new KS("languages")],[new KS("languages'")],[new KS("next")],[new KS("next's")],[new KS("nexter")],[new KS("nexter's")],[new KS("nextest")],[new KS("nextest's")],[new KS("nextly")],[new KS("node")],[new KS("node's")],[new KS("nodes")],[new KS("nodes'")],[new KS("Norwegian")],[new KS("Norwegian's")],[new KS("Norwegians")],[new KS("Norwegians'")],[new KS("page")],[new KS("page's")],[new KS("pages")],[new KS("pages'")],[new KS("parse")],[new KS("parses")],[new KS("parsed")],[new KS("parsing")],[new KS("paste")],[new KS("pastes")],[new KS("pasted")],[new KS("pasting")],[new KS("previous")],[new KS("previous'")],[new KS("more", "previous")],[new KS("more", "previous'")],[new KS("most", "previous")],[new KS("most", "previous'")],[new KS("previously")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4), new KS("yourself", "at", "random")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 4), new KS("at", "random")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1), new KS("yourself", "at", "random")],[new Arg(0, 4), new Arg(1, 3), new Arg(2, 1), new KS("at", "random")],[new KS("redo")],[new KS("redoes")],[new KS("redoed")],[new KS("redoing")],[new KS("refine")],[new KS("refines")],[new KS("refined")],[new KS("refining")],[new KS("refinement")],[new KS("refinement's")],[new KS("refinements")],[new KS("refinements'")],[new KS("replace")],[new KS("replaces")],[new KS("replaced")],[new KS("replacing")],[new KS("Russian")],[new KS("Russian's")],[new KS("Russians")],[new KS("Russians'")],[new KS("select")],[new KS("selects")],[new KS("selected")],[new KS("selecting")],[new KS("show")],[new KS("shows")],[new KS("showed")],[new KS("showing")],[new Arg(0, 4), new KS("yourself")],[new Arg(0, 4)],[new KS("Spanish")],[new KS("Spanish's")],[new KS("Spanishes")],[new KS("Spanishes'")],[new KS("string")],[new KS("string's")],[new KS("strings")],[new KS("strings'")],[new KS("Swedish")],[new KS("Swedish's")],[new KS("Swedishes")],[new KS("Swedishes'")],[new KS("tree")],[new KS("tree's")],[new KS("trees")],[new KS("trees'")],[new KS("undo")],[new KS("undoes")],[new KS("undoed")],[new KS("undoing")],[new KS("wrap")],[new KS("wraps")],[new KS("wrapped")],[new KS("wrapping")],[new KS("wrapper")],[new KS("wrapper's")],[new KS("wrappers")],[new KS("wrappers'")]],{Adjective:{s: 0, e: 0}, Determiner:{s: 1, e: 2}, Float:{s: -3, e: -3}, Int:{s: -2, e: -2}, Noun:{s: 3, e: 5}, Sentence:{s: 6, e: 6}, String:{s: -1, e: -1}, Verb:{s: 7, e: 8}, __gfVar:{s: -4, e: -4}}, 11))});