From: adam Date: Fri, 14 Jul 2006 02:08:22 +0000 (-0400) Subject: checkpoint X-Git-Tag: tag_for_25-Mar~147 X-Git-Url: http://git.megacz.com/?p=sbp.git;a=commitdiff_plain;h=6e639c9ed89dfda4b14ac4c768e66d25b91f5037 checkpoint darcs-hash:20060714020822-5007d-9c2fd4c5c69dc9f974647b431f9398007b0b3a31.gz --- diff --git a/src/edu/berkeley/sbp/Tree.java b/src/edu/berkeley/sbp/Tree.java index 8e3020d..da0c56c 100644 --- a/src/edu/berkeley/sbp/Tree.java +++ b/src/edu/berkeley/sbp/Tree.java @@ -84,9 +84,14 @@ public class Tree } } - public static class BindingFunctor implements TreeFunctor/*, ToJava*/ { + public static class RawBindingFunctor implements TreeFunctor, ToJava { private Binding _binding; - public BindingFunctor(Binding binding) { + public void toJava(StringBuffer sb) { + sb.append("new Tree.RawBindingFunctor("); + _binding.toJava(sb); + sb.append(")"); + } + public RawBindingFunctor(Binding binding) { this._binding = binding; } public Object invoke(Iterable> t) { @@ -94,4 +99,31 @@ public class Tree } } + public static class BindingFunctor implements TreeFunctor, ToJava { + private Binding _binding; + public BindingFunctor(Binding binding) { + this._binding = binding; + } + public void toJava(StringBuffer sb) { + sb.append("new Tree.BindingFunctor("); + _binding.toJava(sb); + sb.append(")"); + } + public Object invoke(Iterable> t) { + ArrayList ret = new ArrayList(); + for(Tree tc : t) { + if (tc.head() != null && tc.head() instanceof Functor) + ret.add(((Tree.TreeFunctor)tc.head()).invoke(tc.children())); + else if (tc.numChildren() == 0) + ret.add(tc.head()); + else { + System.err.println("FIXME: don't know what to do about " + tc); + ret.add(null); + } + } + Object[] o = (Object[])ret.toArray(new Object[0]); + return _binding.invoke(o); + } + } + } diff --git a/src/edu/berkeley/sbp/bind/Bindable.java b/src/edu/berkeley/sbp/bind/Bindable.java index 7c620c9..ccaa51d 100644 --- a/src/edu/berkeley/sbp/bind/Bindable.java +++ b/src/edu/berkeley/sbp/bind/Bindable.java @@ -29,25 +29,43 @@ public abstract class Bindable implements ToJava { return null; } - public Binding createBinding() { - return new Binding() { - public Object invoke(Object[] o) { - return impose(o); - } - }; - } - public Binding createBinding(final int[] map) { - return new Binding() { - public Object invoke(Object[] o) { - int max = 0; - for(int i=0; i, ToJava { +} + diff --git a/src/edu/berkeley/sbp/meta/AnnotationGrammarBindingResolver.java b/src/edu/berkeley/sbp/meta/AnnotationGrammarBindingResolver.java index a975832..de044d5 100644 --- a/src/edu/berkeley/sbp/meta/AnnotationGrammarBindingResolver.java +++ b/src/edu/berkeley/sbp/meta/AnnotationGrammarBindingResolver.java @@ -52,15 +52,15 @@ public class AnnotationGrammarBindingResolver extends GrammarBindingResolver { p = new Production(suffix, p.elements, p.drops); for(Method m : _allMethods.get(prefix)) - if (new MetaGrammar.TreeBindable(m).isCompatible(p)) - return new MetaGrammar.TreeBindable(m).makeSequence(p); + if (p.isCompatible(m)) + return p.makeSequence(m); for(Class c : _inner.get(prefix)) for(Constructor con : c.getConstructors()) - if (new MetaGrammar.TreeBindable(con).isCompatible(p)) - return new MetaGrammar.TreeBindable(con).makeSequence(p); + if (p.isCompatible(con)) + return p.makeSequence(con); for(Class c : _inner.get(prefix)) - if (new MetaGrammar.TreeBindable(c).isCompatible(p)) - return new MetaGrammar.TreeBindable(c).makeSequence(p); + if (p.isCompatible(c)) + return p.makeSequence(c); return null; diff --git a/src/edu/berkeley/sbp/meta/MetaGrammar.java b/src/edu/berkeley/sbp/meta/MetaGrammar.java index 5772906..d2aae07 100644 --- a/src/edu/berkeley/sbp/meta/MetaGrammar.java +++ b/src/edu/berkeley/sbp/meta/MetaGrammar.java @@ -52,135 +52,6 @@ public class MetaGrammar { p.flush(); os.close(); } - - public static class TreeBindable { - - private Bindable _bindable; - public TreeBindable(Object o) { this(Bindable.create(o)); } - public TreeBindable(Bindable b) { this._bindable = b; } - - private int[] buildSequence(Production p) { - return p.buildSequence(_bindable); - } - - public String getName() { return _bindable.getSimpleName(); } - public bind getBind() { return (bind)_bindable.getAnnotation(bind.class); } - public bind.as getBindAs() { return (bind.as)_bindable.getAnnotation(bind.as.class); } - public String toString() { return _bindable.getSimpleName(); } - public boolean isRaw() { return _bindable.isAnnotationPresent(bind.raw.class); } - - public boolean isCompatible(Production p) { - bind.as t = getBindAs(); - bind b = getBind(); - - if (t != null && - (t.value().equals(p.tag))) - return buildSequence(p)!=null; - - if (t != null && - ((t.value().equals("") && getName().equals(p.tag)))) - return buildSequence(p)!=null; - if (b != null && getName().equals(p.tag)) - return buildSequence(p)!=null; - - if (t != null && - (t.value().equals(p.tag))) - return buildSequence(p)!=null; - if (t != null && - ((t.value().equals("") && getName().equals(p.tag)))) - return buildSequence(p)!=null; - if (b != null && getName().equals(p.tag)) - return buildSequence(p)!=null; - - return false; - } - - public Sequence makeSequence(final Production p) { - - if (_bindable.getArgTypes().length > 0 && - _bindable.getArgTypes()[0] == Input.Region.class) { - Functor func = new Functor() { - public Object invoke(final Input.Region region) { - return - new TreeBindableReducer(buildSequence(p), - _bindable, - isRaw()) { - public Object invoke(Iterable> t) { - ArrayList ret = new ArrayList(); - ret.add(region); - for(Tree tc : t) { - if (tc.head() != null && tc.head() instanceof Functor) - ret.add(((Tree.TreeFunctor)tc.head()).invoke(tc.children())); - else if (tc.numChildren() == 0) - ret.add(tc.head()); - else { - System.err.println("FIXME: don't know what to do about " + tc); - ret.add(null); - } - } - Object[] o = (Object[])ret.toArray(new Object[0]); - int max = 0; - for(int i=0; i, ToJava { - int[] map; - Bindable _bindable; - - public void toJava(StringBuffer sb) { - sb.append("new MetaGrammar.TreeBindableReducer(new int[] {"); - for(int i=0; i> t) { - ArrayList ret = new ArrayList(); - for(Tree tc : t) { - if (tc.head() != null && tc.head() instanceof Functor) - ret.add(((Tree.TreeFunctor)tc.head()).invoke(tc.children())); - else if (tc.numChildren() == 0) - ret.add(tc.head()); - else { - System.err.println("FIXME: don't know what to do about " + tc); - ret.add(null); - } - } - Object[] o = (Object[])ret.toArray(new Object[0]); - return _bindable.createBinding(map).invoke(o); - } - } - public static Union make() { return make(MetaGrammarTree.meta, "s"); } public static Union make(Tree t, String s) { return make(t, s, new AnnotationGrammarBindingResolver(MetaGrammarBindings.class)); } diff --git a/src/edu/berkeley/sbp/meta/MetaGrammarTree.java b/src/edu/berkeley/sbp/meta/MetaGrammarTree.java index 68acf17..1700a5c 100644 --- a/src/edu/berkeley/sbp/meta/MetaGrammarTree.java +++ b/src/edu/berkeley/sbp/meta/MetaGrammarTree.java @@ -45,27 +45,30 @@ class MetaGrammarTree { + + + // DO NOT EDIT STUFF BELOW: IT IS AUTOMATICALLY GENERATED -new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.GrammarNode.class.getConstructor(new Class[] {java.lang.Object[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), +new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.GrammarNode.class.getConstructor(new Class[] {java.lang.Object[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})}), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "G", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "G", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "G", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "G", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "D", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "D", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), @@ -76,9 +79,9 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "D", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "D", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), @@ -89,7 +92,7 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "T", new edu.berkeley.sbp.Tree[] { }), @@ -100,16 +103,16 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "#", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "#", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), @@ -117,17 +120,17 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("question", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("question", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), @@ -135,7 +138,7 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plus", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plus", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), @@ -147,10 +150,10 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "h", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "F", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), @@ -162,17 +165,17 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "h", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })}), new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "T", new edu.berkeley.sbp.Tree[] { }), @@ -183,51 +186,51 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "=", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "=", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "H", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "=", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "=", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "H", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "=", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "=", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "H", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "H", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), @@ -235,17 +238,17 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "|", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "|", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ">", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ">", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("bang", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), @@ -253,10 +256,10 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("starfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("starfollow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), @@ -267,7 +270,7 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), @@ -275,19 +278,19 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ":", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ":", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, ":", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), @@ -298,9 +301,9 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), @@ -311,11 +314,11 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), @@ -326,12 +329,12 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "-", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "-", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, ">", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), @@ -339,10 +342,10 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "x", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), @@ -353,7 +356,7 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), @@ -361,8 +364,8 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "&", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "&", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), @@ -370,9 +373,9 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), @@ -380,9 +383,9 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "&", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "&", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "~", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), @@ -390,46 +393,46 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "-", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "]", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "-", new edu.berkeley.sbp.Tree[] { })})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "]", new edu.berkeley.sbp.Tree[] { })})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "g", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "-", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "-", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ":", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ":", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "T", new edu.berkeley.sbp.Tree[] { }), @@ -449,17 +452,17 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "L", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "L", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, ")", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "{", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "{", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "P", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { }), @@ -470,87 +473,87 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "}", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "}", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "[", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("star", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "[", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("star", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "g", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "]", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "]", new edu.berkeley.sbp.Tree[] { })})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "+", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("arrow", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "*", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "!", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "?", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "!", new edu.berkeley.sbp.Tree[] { })})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "?", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "^", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "^", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("slash", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class,edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "R", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "H", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "S", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ")", new edu.berkeley.sbp.Tree[] { })})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ")", new edu.berkeley.sbp.Tree[] { })})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "~", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("caret", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "~", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "N", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "T", new edu.berkeley.sbp.Tree[] { }), @@ -570,53 +573,53 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "L", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "L", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "l", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "W", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ".", new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class,char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, ".", new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class,char.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "z", new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class,char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "A", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class,char.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "A", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "Z", new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class,char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "0", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class,char.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "0", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "9", new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "_", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "_", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "Q", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "u", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "o", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plus", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plus", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), @@ -627,7 +630,7 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "g", new edu.berkeley.sbp.Tree[] { })})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "E", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "m", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "t", new edu.berkeley.sbp.Tree[] { }), @@ -638,45 +641,45 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 new edu.berkeley.sbp.Tree(null, "i", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "g", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\"", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "c", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "a", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "e", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "d", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })}), new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })}), new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { })}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("c", new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "\\", new edu.berkeley.sbp.Tree[] { })})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "n", new edu.berkeley.sbp.Tree[] { })}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "r", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})}), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, " ", new edu.berkeley.sbp.Tree[] { })})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("lf", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, ")", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("starmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("starmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tag", new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "(", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, ")", new edu.berkeley.sbp.Tree[] { })})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("starmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("starmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "/", new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("star", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})), false), new edu.berkeley.sbp.Tree[] { })})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("star", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.AnonUnionNode.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("tilde", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.CharClass.class.getConstructor(new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Range[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Range.class.getConstructor(new Class[] {char.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.Literal.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("quoted", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("retur", new Class[] {})).createBinding(new int[] {})), new edu.berkeley.sbp.Tree[] { })})})})}), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "s", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})}), - new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0,1}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), + new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalNode.class.getConstructor(new Class[] {java.lang.String.class,edu.berkeley.sbp.meta.MetaGrammarBindings.Seq[][].class})).createBinding(new int[] {0,1})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { }), new edu.berkeley.sbp.Tree(null, "p", new edu.berkeley.sbp.Tree[] { })})}), - new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0}, Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})), false), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})})}) + new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("psx", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.Seq.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("seq2", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode[].class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("plusmax", new Class[] {edu.berkeley.sbp.meta.MetaGrammarBindings.ElementNode.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.NonTerminalReferenceNode.class.getConstructor(new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.BindingFunctor(Bindable.create(edu.berkeley.sbp.meta.MetaGrammarBindings.class.getMethod("word", new Class[] {java.lang.String.class})).createBinding(new int[] {0})), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, new Tree.ArrayBuildingTreeFunctor(), new edu.berkeley.sbp.Tree[] { new edu.berkeley.sbp.Tree(null, "w", new edu.berkeley.sbp.Tree[] { })})})})})})})})})})})})}) // DO NOT EDIT STUFF ABOVE: IT IS AUTOMATICALLY GENERATED ; } catch (Exception e) { @@ -723,3 +726,6 @@ new edu.berkeley.sbp.Tree(null, new MetaGrammar.TreeBindableReducer(new int[] {0 + + + diff --git a/src/edu/berkeley/sbp/meta/Production.java b/src/edu/berkeley/sbp/meta/Production.java index 117eb57..08588d9 100644 --- a/src/edu/berkeley/sbp/meta/Production.java +++ b/src/edu/berkeley/sbp/meta/Production.java @@ -78,4 +78,37 @@ public class Production { } } + public boolean isCompatible(Object o) { return isCompatible(Bindable.create(o)); } + public boolean isCompatible(Bindable _bindable) { + bind.as t = _bindable.getAnnotation(bind.as.class); + bind b = _bindable.getAnnotation(bind.class); + + boolean ok = false; + if (t != null && (t.value().equals(tag))) ok = true; + if (t != null && ((t.value().equals("") && _bindable.getSimpleName().equals(tag)))) ok = true; + if (b != null && _bindable.getSimpleName().equals(tag)) ok = true; + + if (ok) return buildSequence(_bindable)!=null; + + return false; + } + + public Sequence makeSequence(Object o) { return makeSequence(Bindable.create(o)); } + public Sequence makeSequence(final Bindable _bindable) { + + if (_bindable.getArgTypes().length > 0 && + _bindable.getArgTypes()[0] == Input.Region.class) { + Functor func = new Functor() { + int[] map = buildSequence(_bindable); + public Object invoke(final Input.Region region) { return _bindable.createBinding(map, region); } + }; + return Sequence.regionRewritingSequence(func, elements, drops); + } + + if (_bindable.isAnnotationPresent(bind.raw.class)) + return Sequence.rewritingSequence(new Tree.RawBindingFunctor(_bindable.createBinding()), elements, drops); + int[] map = buildSequence(_bindable); + return Sequence.rewritingSequence(new Tree.BindingFunctor(_bindable.createBinding()), elements, drops); + } + }