diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 8525489a09b..7234586e7a1 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -93,7 +93,7 @@ jobs:
tests (buildjet-4vcpu-ubuntu-2204-arm)
ttl: 15
- - name: Deploy
+ - name: Deploy shaded jar
if: startsWith(github.ref, 'refs/tags/v')
uses: usethesource/releases-maven-action@v1
with:
@@ -105,6 +105,19 @@ jobs:
ssh-username: ${{ secrets.RELEASE_SSH_USERNAME }}
ssh-private-key: ${{ secrets.RELEASE_SSH_PRIVATE_KEY }}
+ - name: Deploy unshaded jar
+ if: startsWith(github.ref, 'refs/tags/v')
+ uses: usethesource/releases-maven-action@v1
+ with:
+ maven-username: ${{ secrets.RELEASE_MAVEN_USERNAME }}
+ maven-password: ${{ secrets.RELEASE_MAVEN_PASSWORD }}
+ maven-local-port: ${{ secrets.RELEASE_MAVEN_LOCAL_PORT }}
+ ssh-hostname: ${{ secrets.RELEASE_SSH_SERVER }}
+ ssh-known-host: ${{ secrets.RELEASE_SSH_KNOWN_HOSTS }}
+ ssh-username: ${{ secrets.RELEASE_SSH_USERNAME }}
+ ssh-private-key: ${{ secrets.RELEASE_SSH_PRIVATE_KEY }}
+ maven-options: -Punshaded
+
- name: Prepare Draft Release
uses: softprops/action-gh-release@v2
if: startsWith(github.ref, 'refs/tags/')
diff --git a/pom.xml b/pom.xml
index 56d23205047..84c21dea631 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,12 +3,12 @@
org.rascalmpl
rascal
- 0.40.12-SNAPSHOT
+ 0.41.0-RC3-SNAPSHOT
jar
scm:git:ssh://git@github.com/usethesource/rascal.git
- v0.40.10
+ v0.41.0-RC1
@@ -29,10 +29,11 @@
UTF-8
7.5.0
+ 3.9.9
org.rascalmpl.shell.RascalShell
- 2
+ 3
11
- 0.28.4
+ 0.28.9-BOOT1
3.27.0
@@ -104,7 +105,7 @@
org.codehaus.mojo
buildnumber-maven-plugin
- 3.2.0
+ 3.2.1
validate
@@ -169,7 +170,8 @@
package
-
+
@@ -212,7 +214,7 @@
org.apache.maven.plugins
maven-surefire-plugin
- 3.3.1
+ 3.5.2
test
@@ -260,7 +262,7 @@
org.apache.maven.plugins
maven-dependency-plugin
- 3.7.1
+ 3.8.1
@@ -276,7 +278,7 @@
org.apache.maven.plugins
maven-release-plugin
- 3.1.0
+ 3.1.1
v@{project.version}
-Drascal.compile.skip -Drascal.tutor.skip -DskipTests
@@ -285,7 +287,7 @@
org.codehaus.mojo
license-maven-plugin
- 2.4.0
+ 2.5.0
download-licenses
@@ -317,10 +319,15 @@
org/rascalmpl/uri/resolvers.config
- io/usethesource/vallang/type/types.config
-
+
+ io/usethesource/vallang/type/types.config
+
+
+ META-INF/sisu/javax.inject.Named
+
+
false
@@ -444,22 +451,22 @@
org.apache.commons
commons-compress
- 1.26.1
+ 1.27.1
com.github.luben
zstd-jni
- 1.5.5-11
+ 1.5.6-8
commons-codec
commons-codec
- 1.17.0
+ 1.17.1
com.google.code.gson
gson
- 2.10.1
+ 2.11.0
org.jline
@@ -494,7 +501,7 @@
org.yaml
snakeyaml
- 2.2
+ 2.3
org.jsoup
@@ -534,7 +541,105 @@
com.ibm.icu
icu4j
- 74.2
+ 76.1
+
+
+ org.apache.maven
+ maven-embedder
+ ${maven-version}
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.8.1
+
+
+ org.slf4j
+ slf4j-nop
+ 1.7.36
+
+
+ org.apache.maven
+ maven-compat
+ ${maven-version}
+
+
+ org.apache.maven
+ maven-core
+ ${maven-version}
+
+
+ unshaded
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 3.6.0
+
+
+ package
+
+ shade
+
+
+
+
+
+ rascal
+ org.rascalmpl.shell.RascalShell
+ ${project.version}
+ http://www.usethesource.io
+
+
+
+
+
+ org.fusesource.jansi
+ org.rascalmpl.fusesource.jansi
+
+ org.fusesource.jansi.internal.*
+
+
+
+ jline
+ org.rascalmpl.jline
+
+
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INF/*.DSA
+ META-INF/*.RSA
+
+
+
+
+
+ jline:*
+
+
+ unshaded
+ true
+
+
+
+
+
+ org.codehaus.mojo
+ license-maven-plugin
+
+ true
+
+
+
+
+
+
+
+
diff --git a/src/org/rascalmpl/ast/Assignable.java b/src/org/rascalmpl/ast/Assignable.java
index f788d12dd99..08187f7fa0e 100644
--- a/src/org/rascalmpl/ast/Assignable.java
+++ b/src/org/rascalmpl/ast/Assignable.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Assignable extends AbstractAST {
public Assignable(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Assignment.java b/src/org/rascalmpl/ast/Assignment.java
index da782d56554..7e0e90af453 100644
--- a/src/org/rascalmpl/ast/Assignment.java
+++ b/src/org/rascalmpl/ast/Assignment.java
@@ -59,6 +59,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
}
diff --git a/src/org/rascalmpl/ast/Backslash.java b/src/org/rascalmpl/ast/Backslash.java
index 895f2234aa3..7e1505d1ab5 100644
--- a/src/org/rascalmpl/ast/Backslash.java
+++ b/src/org/rascalmpl/ast/Backslash.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Backslash extends AbstractAST {
public Backslash(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Body.java b/src/org/rascalmpl/ast/Body.java
index 3effa7850bb..aa9d4994e85 100644
--- a/src/org/rascalmpl/ast/Body.java
+++ b/src/org/rascalmpl/ast/Body.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Body extends AbstractAST {
public Body(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/BooleanLiteral.java b/src/org/rascalmpl/ast/BooleanLiteral.java
index 1cfd8c6ff7b..f1528b1bc94 100644
--- a/src/org/rascalmpl/ast/BooleanLiteral.java
+++ b/src/org/rascalmpl/ast/BooleanLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class BooleanLiteral extends AbstractAST {
public BooleanLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Case.java b/src/org/rascalmpl/ast/Case.java
index 58a630fce1c..4eb6ea99c98 100644
--- a/src/org/rascalmpl/ast/Case.java
+++ b/src/org/rascalmpl/ast/Case.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Case extends AbstractAST {
public Case(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/CaseInsensitiveStringConstant.java b/src/org/rascalmpl/ast/CaseInsensitiveStringConstant.java
index 67299d54d42..8006993d3f9 100644
--- a/src/org/rascalmpl/ast/CaseInsensitiveStringConstant.java
+++ b/src/org/rascalmpl/ast/CaseInsensitiveStringConstant.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class CaseInsensitiveStringConstant extends AbstractAST {
public CaseInsensitiveStringConstant(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Catch.java b/src/org/rascalmpl/ast/Catch.java
index 72ed585f8bb..99fd970b524 100644
--- a/src/org/rascalmpl/ast/Catch.java
+++ b/src/org/rascalmpl/ast/Catch.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Catch extends AbstractAST {
public Catch(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Char.java b/src/org/rascalmpl/ast/Char.java
index a12bbeb145e..c89bfe3c285 100644
--- a/src/org/rascalmpl/ast/Char.java
+++ b/src/org/rascalmpl/ast/Char.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Char extends AbstractAST {
public Char(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Class.java b/src/org/rascalmpl/ast/Class.java
index 55ed38b53c2..4c59d040929 100644
--- a/src/org/rascalmpl/ast/Class.java
+++ b/src/org/rascalmpl/ast/Class.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Class extends AbstractAST {
public Class(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Command.java b/src/org/rascalmpl/ast/Command.java
index b8013000c4c..bb22f4a1fa1 100644
--- a/src/org/rascalmpl/ast/Command.java
+++ b/src/org/rascalmpl/ast/Command.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Command extends AbstractAST {
public Command(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Commands.java b/src/org/rascalmpl/ast/Commands.java
index 14e54d09e7b..5afdffa035a 100644
--- a/src/org/rascalmpl/ast/Commands.java
+++ b/src/org/rascalmpl/ast/Commands.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Commands extends AbstractAST {
public Commands(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Comment.java b/src/org/rascalmpl/ast/Comment.java
index ca75e5c6b09..fba5214745b 100644
--- a/src/org/rascalmpl/ast/Comment.java
+++ b/src/org/rascalmpl/ast/Comment.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Comment extends AbstractAST {
public Comment(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Comprehension.java b/src/org/rascalmpl/ast/Comprehension.java
index dea51bfa20f..b1a9844f280 100644
--- a/src/org/rascalmpl/ast/Comprehension.java
+++ b/src/org/rascalmpl/ast/Comprehension.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Comprehension extends AbstractAST {
public Comprehension(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Concrete.java b/src/org/rascalmpl/ast/Concrete.java
index da0cb966c60..74ee3ea1569 100644
--- a/src/org/rascalmpl/ast/Concrete.java
+++ b/src/org/rascalmpl/ast/Concrete.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Concrete extends AbstractAST {
public Concrete(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ConcreteHole.java b/src/org/rascalmpl/ast/ConcreteHole.java
index e55351a4a17..2db935ed8bf 100644
--- a/src/org/rascalmpl/ast/ConcreteHole.java
+++ b/src/org/rascalmpl/ast/ConcreteHole.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ConcreteHole extends AbstractAST {
public ConcreteHole(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ConcretePart.java b/src/org/rascalmpl/ast/ConcretePart.java
index eb02e797939..1565ed34c37 100644
--- a/src/org/rascalmpl/ast/ConcretePart.java
+++ b/src/org/rascalmpl/ast/ConcretePart.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ConcretePart extends AbstractAST {
public ConcretePart(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/DataTypeSelector.java b/src/org/rascalmpl/ast/DataTypeSelector.java
index 3bbfb132185..ee86a169438 100644
--- a/src/org/rascalmpl/ast/DataTypeSelector.java
+++ b/src/org/rascalmpl/ast/DataTypeSelector.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class DataTypeSelector extends AbstractAST {
public DataTypeSelector(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/DateAndTime.java b/src/org/rascalmpl/ast/DateAndTime.java
index 25ed7a410b8..1edc5392933 100644
--- a/src/org/rascalmpl/ast/DateAndTime.java
+++ b/src/org/rascalmpl/ast/DateAndTime.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class DateAndTime extends AbstractAST {
public DateAndTime(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/DatePart.java b/src/org/rascalmpl/ast/DatePart.java
index 708989571c2..271f84a1602 100644
--- a/src/org/rascalmpl/ast/DatePart.java
+++ b/src/org/rascalmpl/ast/DatePart.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class DatePart extends AbstractAST {
public DatePart(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/DateTimeLiteral.java b/src/org/rascalmpl/ast/DateTimeLiteral.java
index da62de20006..9afbbdc3c1b 100644
--- a/src/org/rascalmpl/ast/DateTimeLiteral.java
+++ b/src/org/rascalmpl/ast/DateTimeLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class DateTimeLiteral extends AbstractAST {
public DateTimeLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/DecimalIntegerLiteral.java b/src/org/rascalmpl/ast/DecimalIntegerLiteral.java
index 9c307588fa2..87b314c8228 100644
--- a/src/org/rascalmpl/ast/DecimalIntegerLiteral.java
+++ b/src/org/rascalmpl/ast/DecimalIntegerLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class DecimalIntegerLiteral extends AbstractAST {
public DecimalIntegerLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Declaration.java b/src/org/rascalmpl/ast/Declaration.java
index a6215312b2f..72a4f94a4db 100644
--- a/src/org/rascalmpl/ast/Declaration.java
+++ b/src/org/rascalmpl/ast/Declaration.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Declaration extends AbstractAST {
public Declaration(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Declarator.java b/src/org/rascalmpl/ast/Declarator.java
index 9467d93bb1f..17ec58070a6 100644
--- a/src/org/rascalmpl/ast/Declarator.java
+++ b/src/org/rascalmpl/ast/Declarator.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Declarator extends AbstractAST {
public Declarator(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Expression.java b/src/org/rascalmpl/ast/Expression.java
index 9d066321bfa..1babdf54a65 100644
--- a/src/org/rascalmpl/ast/Expression.java
+++ b/src/org/rascalmpl/ast/Expression.java
@@ -33,13 +33,6 @@ public boolean hasArguments() {
public java.util.List getArguments() {
throw new UnsupportedOperationException();
}
- public boolean hasElements() {
- return false;
- }
-
- public java.util.List getElements() {
- throw new UnsupportedOperationException();
- }
public boolean hasElements0() {
return false;
}
@@ -6395,15 +6388,15 @@ public boolean isTuple() {
}
static public class Tuple extends Expression {
- // Production: sig("Tuple",[arg("java.util.List\","elements")],breakable=false)
+ // Production: sig("Tuple",[arg("java.util.List\","elements0")],breakable=false)
- private final java.util.List elements;
+ private final java.util.List elements0;
- public Tuple(ISourceLocation src, IConstructor node , java.util.List elements) {
+ public Tuple(ISourceLocation src, IConstructor node , java.util.List elements0) {
super(src, node);
- this.elements = elements;
+ this.elements0 = elements0;
}
@Override
@@ -6423,7 +6416,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
}
ISourceLocation $l;
- for (AbstractAST $elem : elements) {
+ for (AbstractAST $elem : elements0) {
$l = $elem.getLocation();
if ($l.hasLineColumn() && $l.getBeginLine() <= $line && $l.getEndLine() >= $line) {
$elem.addForLineNumber($line, $result);
@@ -6441,28 +6434,28 @@ public boolean equals(Object o) {
return false;
}
Tuple tmp = (Tuple) o;
- return true && tmp.elements.equals(this.elements) ;
+ return true && tmp.elements0.equals(this.elements0) ;
}
@Override
public int hashCode() {
- return 599 + 863 * elements.hashCode() ;
+ return 599 + 863 * elements0.hashCode() ;
}
@Override
- public java.util.List getElements() {
- return this.elements;
+ public java.util.List getElements0() {
+ return this.elements0;
}
@Override
- public boolean hasElements() {
+ public boolean hasElements0() {
return true;
}
@Override
public Object clone() {
- return newInstance(getClass(), src, (IConstructor) null , clone(elements));
+ return newInstance(getClass(), src, (IConstructor) null , clone(elements0));
}
}
diff --git a/src/org/rascalmpl/ast/Field.java b/src/org/rascalmpl/ast/Field.java
index 89b3a911606..18cf8c303c3 100644
--- a/src/org/rascalmpl/ast/Field.java
+++ b/src/org/rascalmpl/ast/Field.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Field extends AbstractAST {
public Field(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Formals.java b/src/org/rascalmpl/ast/Formals.java
index cd70229d2a7..1a9595c0311 100644
--- a/src/org/rascalmpl/ast/Formals.java
+++ b/src/org/rascalmpl/ast/Formals.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Formals extends AbstractAST {
public Formals(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/FunctionBody.java b/src/org/rascalmpl/ast/FunctionBody.java
index 06ffd6a4295..60c54218830 100644
--- a/src/org/rascalmpl/ast/FunctionBody.java
+++ b/src/org/rascalmpl/ast/FunctionBody.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class FunctionBody extends AbstractAST {
public FunctionBody(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/FunctionDeclaration.java b/src/org/rascalmpl/ast/FunctionDeclaration.java
index 9d08b3ffcdc..8fd452a5527 100644
--- a/src/org/rascalmpl/ast/FunctionDeclaration.java
+++ b/src/org/rascalmpl/ast/FunctionDeclaration.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class FunctionDeclaration extends AbstractAST {
public FunctionDeclaration(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/FunctionModifiers.java b/src/org/rascalmpl/ast/FunctionModifiers.java
index aaa8cb7a298..70a886497e2 100644
--- a/src/org/rascalmpl/ast/FunctionModifiers.java
+++ b/src/org/rascalmpl/ast/FunctionModifiers.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class FunctionModifiers extends AbstractAST {
public FunctionModifiers(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/FunctionType.java b/src/org/rascalmpl/ast/FunctionType.java
index 2bc28c8d57c..defc97638e1 100644
--- a/src/org/rascalmpl/ast/FunctionType.java
+++ b/src/org/rascalmpl/ast/FunctionType.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class FunctionType extends AbstractAST {
public FunctionType(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Header.java b/src/org/rascalmpl/ast/Header.java
index b178d595d10..64bce1b112e 100644
--- a/src/org/rascalmpl/ast/Header.java
+++ b/src/org/rascalmpl/ast/Header.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Header extends AbstractAST {
public Header(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/HexIntegerLiteral.java b/src/org/rascalmpl/ast/HexIntegerLiteral.java
index ac94bb9e314..e7f248973df 100644
--- a/src/org/rascalmpl/ast/HexIntegerLiteral.java
+++ b/src/org/rascalmpl/ast/HexIntegerLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class HexIntegerLiteral extends AbstractAST {
public HexIntegerLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Import.java b/src/org/rascalmpl/ast/Import.java
index 963496ddd0c..1853df9e1d2 100644
--- a/src/org/rascalmpl/ast/Import.java
+++ b/src/org/rascalmpl/ast/Import.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Import extends AbstractAST {
public Import(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ImportedModule.java b/src/org/rascalmpl/ast/ImportedModule.java
index af154a37ae9..82a122881da 100644
--- a/src/org/rascalmpl/ast/ImportedModule.java
+++ b/src/org/rascalmpl/ast/ImportedModule.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ImportedModule extends AbstractAST {
public ImportedModule(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/IntegerLiteral.java b/src/org/rascalmpl/ast/IntegerLiteral.java
index 3ec7b5ccd64..b36a0229034 100644
--- a/src/org/rascalmpl/ast/IntegerLiteral.java
+++ b/src/org/rascalmpl/ast/IntegerLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class IntegerLiteral extends AbstractAST {
public IntegerLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/JustDate.java b/src/org/rascalmpl/ast/JustDate.java
index da6ce01b29a..fda759a189b 100644
--- a/src/org/rascalmpl/ast/JustDate.java
+++ b/src/org/rascalmpl/ast/JustDate.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class JustDate extends AbstractAST {
public JustDate(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/JustTime.java b/src/org/rascalmpl/ast/JustTime.java
index d9e5ff6bb57..1f8d3d9510d 100644
--- a/src/org/rascalmpl/ast/JustTime.java
+++ b/src/org/rascalmpl/ast/JustTime.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class JustTime extends AbstractAST {
public JustTime(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/KeywordArgument_Expression.java b/src/org/rascalmpl/ast/KeywordArgument_Expression.java
index e1c033d723c..0c70e0f32c0 100644
--- a/src/org/rascalmpl/ast/KeywordArgument_Expression.java
+++ b/src/org/rascalmpl/ast/KeywordArgument_Expression.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class KeywordArgument_Expression extends AbstractAST {
public KeywordArgument_Expression(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/KeywordFormal.java b/src/org/rascalmpl/ast/KeywordFormal.java
index df5a8153b28..f8f8aecdf6e 100644
--- a/src/org/rascalmpl/ast/KeywordFormal.java
+++ b/src/org/rascalmpl/ast/KeywordFormal.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class KeywordFormal extends AbstractAST {
public KeywordFormal(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/LAYOUT.java b/src/org/rascalmpl/ast/LAYOUT.java
index 87ab1d4cdb9..8b17a784034 100644
--- a/src/org/rascalmpl/ast/LAYOUT.java
+++ b/src/org/rascalmpl/ast/LAYOUT.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class LAYOUT extends AbstractAST {
public LAYOUT(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Literal.java b/src/org/rascalmpl/ast/Literal.java
index 8dffd3bce3d..945fa6fc57d 100644
--- a/src/org/rascalmpl/ast/Literal.java
+++ b/src/org/rascalmpl/ast/Literal.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Literal extends AbstractAST {
public Literal(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/LocalVariableDeclaration.java b/src/org/rascalmpl/ast/LocalVariableDeclaration.java
index 3b9d5d036da..ffc7efd7b1e 100644
--- a/src/org/rascalmpl/ast/LocalVariableDeclaration.java
+++ b/src/org/rascalmpl/ast/LocalVariableDeclaration.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class LocalVariableDeclaration extends AbstractAST {
public LocalVariableDeclaration(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/LocationLiteral.java b/src/org/rascalmpl/ast/LocationLiteral.java
index 6a24f8a5bb1..041da56636d 100644
--- a/src/org/rascalmpl/ast/LocationLiteral.java
+++ b/src/org/rascalmpl/ast/LocationLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class LocationLiteral extends AbstractAST {
public LocationLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Mapping_Expression.java b/src/org/rascalmpl/ast/Mapping_Expression.java
index 437cc71e9cd..dccc2dcf9df 100644
--- a/src/org/rascalmpl/ast/Mapping_Expression.java
+++ b/src/org/rascalmpl/ast/Mapping_Expression.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Mapping_Expression extends AbstractAST {
public Mapping_Expression(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/MidPathChars.java b/src/org/rascalmpl/ast/MidPathChars.java
index 5e7ed0e8061..4145eac9a3f 100644
--- a/src/org/rascalmpl/ast/MidPathChars.java
+++ b/src/org/rascalmpl/ast/MidPathChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class MidPathChars extends AbstractAST {
public MidPathChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/MidProtocolChars.java b/src/org/rascalmpl/ast/MidProtocolChars.java
index b2df3a9bddb..a3180b84691 100644
--- a/src/org/rascalmpl/ast/MidProtocolChars.java
+++ b/src/org/rascalmpl/ast/MidProtocolChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class MidProtocolChars extends AbstractAST {
public MidProtocolChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/MidStringChars.java b/src/org/rascalmpl/ast/MidStringChars.java
index e9a85ebfe9c..74c3f6c55be 100644
--- a/src/org/rascalmpl/ast/MidStringChars.java
+++ b/src/org/rascalmpl/ast/MidStringChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class MidStringChars extends AbstractAST {
public MidStringChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Module.java b/src/org/rascalmpl/ast/Module.java
index f34c2db632c..b3b8333ac7d 100644
--- a/src/org/rascalmpl/ast/Module.java
+++ b/src/org/rascalmpl/ast/Module.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Module extends AbstractAST {
public Module(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ModuleActuals.java b/src/org/rascalmpl/ast/ModuleActuals.java
index 3f86dfe8020..8011982b649 100644
--- a/src/org/rascalmpl/ast/ModuleActuals.java
+++ b/src/org/rascalmpl/ast/ModuleActuals.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ModuleActuals extends AbstractAST {
public ModuleActuals(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ModuleParameters.java b/src/org/rascalmpl/ast/ModuleParameters.java
index 27dc09b6e49..1e5649d5506 100644
--- a/src/org/rascalmpl/ast/ModuleParameters.java
+++ b/src/org/rascalmpl/ast/ModuleParameters.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ModuleParameters extends AbstractAST {
public ModuleParameters(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Name.java b/src/org/rascalmpl/ast/Name.java
index 59ce8ef0b57..0a4afd5622e 100644
--- a/src/org/rascalmpl/ast/Name.java
+++ b/src/org/rascalmpl/ast/Name.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Name extends AbstractAST {
public Name(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/NamedBackslash.java b/src/org/rascalmpl/ast/NamedBackslash.java
index 7da661cfe0e..2c7c8486b2c 100644
--- a/src/org/rascalmpl/ast/NamedBackslash.java
+++ b/src/org/rascalmpl/ast/NamedBackslash.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class NamedBackslash extends AbstractAST {
public NamedBackslash(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/NamedRegExp.java b/src/org/rascalmpl/ast/NamedRegExp.java
index abbf237103b..8a881ec2f37 100644
--- a/src/org/rascalmpl/ast/NamedRegExp.java
+++ b/src/org/rascalmpl/ast/NamedRegExp.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class NamedRegExp extends AbstractAST {
public NamedRegExp(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Nonterminal.java b/src/org/rascalmpl/ast/Nonterminal.java
index 5ba62961226..a11370447bc 100644
--- a/src/org/rascalmpl/ast/Nonterminal.java
+++ b/src/org/rascalmpl/ast/Nonterminal.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Nonterminal extends AbstractAST {
public Nonterminal(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/NonterminalLabel.java b/src/org/rascalmpl/ast/NonterminalLabel.java
index ce65ab2ca62..e5ebcd267f8 100644
--- a/src/org/rascalmpl/ast/NonterminalLabel.java
+++ b/src/org/rascalmpl/ast/NonterminalLabel.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class NonterminalLabel extends AbstractAST {
public NonterminalLabel(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/OctalIntegerLiteral.java b/src/org/rascalmpl/ast/OctalIntegerLiteral.java
index a2d78342e54..a7051419a85 100644
--- a/src/org/rascalmpl/ast/OctalIntegerLiteral.java
+++ b/src/org/rascalmpl/ast/OctalIntegerLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class OctalIntegerLiteral extends AbstractAST {
public OctalIntegerLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/OptionalComma.java b/src/org/rascalmpl/ast/OptionalComma.java
index ad6629b15cf..46e968d4f88 100644
--- a/src/org/rascalmpl/ast/OptionalComma.java
+++ b/src/org/rascalmpl/ast/OptionalComma.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class OptionalComma extends AbstractAST {
public OptionalComma(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Output.java b/src/org/rascalmpl/ast/Output.java
index ab628813d85..201c007470c 100644
--- a/src/org/rascalmpl/ast/Output.java
+++ b/src/org/rascalmpl/ast/Output.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Output extends AbstractAST {
public Output(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Parameters.java b/src/org/rascalmpl/ast/Parameters.java
index af45b8106b8..8a0e49b8982 100644
--- a/src/org/rascalmpl/ast/Parameters.java
+++ b/src/org/rascalmpl/ast/Parameters.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Parameters extends AbstractAST {
public Parameters(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PathChars.java b/src/org/rascalmpl/ast/PathChars.java
index 5e907ea3276..7326fa172a5 100644
--- a/src/org/rascalmpl/ast/PathChars.java
+++ b/src/org/rascalmpl/ast/PathChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PathChars extends AbstractAST {
public PathChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PathPart.java b/src/org/rascalmpl/ast/PathPart.java
index b6f2f193638..6df0cc5dc2c 100644
--- a/src/org/rascalmpl/ast/PathPart.java
+++ b/src/org/rascalmpl/ast/PathPart.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PathPart extends AbstractAST {
public PathPart(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PathTail.java b/src/org/rascalmpl/ast/PathTail.java
index 030dfc33cb6..f17eb658c16 100644
--- a/src/org/rascalmpl/ast/PathTail.java
+++ b/src/org/rascalmpl/ast/PathTail.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PathTail extends AbstractAST {
public PathTail(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PatternWithAction.java b/src/org/rascalmpl/ast/PatternWithAction.java
index 5f6b071b4a6..32148f04e9f 100644
--- a/src/org/rascalmpl/ast/PatternWithAction.java
+++ b/src/org/rascalmpl/ast/PatternWithAction.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PatternWithAction extends AbstractAST {
public PatternWithAction(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PostPathChars.java b/src/org/rascalmpl/ast/PostPathChars.java
index 3f273241737..31f23639b5e 100644
--- a/src/org/rascalmpl/ast/PostPathChars.java
+++ b/src/org/rascalmpl/ast/PostPathChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PostPathChars extends AbstractAST {
public PostPathChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PostProtocolChars.java b/src/org/rascalmpl/ast/PostProtocolChars.java
index 3e775de0cc0..ce3bf9d31e0 100644
--- a/src/org/rascalmpl/ast/PostProtocolChars.java
+++ b/src/org/rascalmpl/ast/PostProtocolChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PostProtocolChars extends AbstractAST {
public PostProtocolChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PostStringChars.java b/src/org/rascalmpl/ast/PostStringChars.java
index b719a84b76c..6301a7d4d4d 100644
--- a/src/org/rascalmpl/ast/PostStringChars.java
+++ b/src/org/rascalmpl/ast/PostStringChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PostStringChars extends AbstractAST {
public PostStringChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PrePathChars.java b/src/org/rascalmpl/ast/PrePathChars.java
index 0c86270344b..6cf11cc5c64 100644
--- a/src/org/rascalmpl/ast/PrePathChars.java
+++ b/src/org/rascalmpl/ast/PrePathChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PrePathChars extends AbstractAST {
public PrePathChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PreProtocolChars.java b/src/org/rascalmpl/ast/PreProtocolChars.java
index 5b700c5c03a..f9843b4daf5 100644
--- a/src/org/rascalmpl/ast/PreProtocolChars.java
+++ b/src/org/rascalmpl/ast/PreProtocolChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PreProtocolChars extends AbstractAST {
public PreProtocolChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/PreStringChars.java b/src/org/rascalmpl/ast/PreStringChars.java
index ed50845089a..830c72df34c 100644
--- a/src/org/rascalmpl/ast/PreStringChars.java
+++ b/src/org/rascalmpl/ast/PreStringChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class PreStringChars extends AbstractAST {
public PreStringChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Prod.java b/src/org/rascalmpl/ast/Prod.java
index 37611e8bb62..1aa1429bcfc 100644
--- a/src/org/rascalmpl/ast/Prod.java
+++ b/src/org/rascalmpl/ast/Prod.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Prod extends AbstractAST {
public Prod(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ProtocolChars.java b/src/org/rascalmpl/ast/ProtocolChars.java
index b5e92e32dcb..07f05a1da01 100644
--- a/src/org/rascalmpl/ast/ProtocolChars.java
+++ b/src/org/rascalmpl/ast/ProtocolChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ProtocolChars extends AbstractAST {
public ProtocolChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ProtocolPart.java b/src/org/rascalmpl/ast/ProtocolPart.java
index 33589231448..cd3c2e2f57b 100644
--- a/src/org/rascalmpl/ast/ProtocolPart.java
+++ b/src/org/rascalmpl/ast/ProtocolPart.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ProtocolPart extends AbstractAST {
public ProtocolPart(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ProtocolTail.java b/src/org/rascalmpl/ast/ProtocolTail.java
index 2d12da06d1d..998d84b41d6 100644
--- a/src/org/rascalmpl/ast/ProtocolTail.java
+++ b/src/org/rascalmpl/ast/ProtocolTail.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ProtocolTail extends AbstractAST {
public ProtocolTail(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/QualifiedName.java b/src/org/rascalmpl/ast/QualifiedName.java
index dc4464e1012..81a3a4e4483 100644
--- a/src/org/rascalmpl/ast/QualifiedName.java
+++ b/src/org/rascalmpl/ast/QualifiedName.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class QualifiedName extends AbstractAST {
public QualifiedName(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Range.java b/src/org/rascalmpl/ast/Range.java
index 1b1af11ab46..9d4c51e7096 100644
--- a/src/org/rascalmpl/ast/Range.java
+++ b/src/org/rascalmpl/ast/Range.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Range extends AbstractAST {
public Range(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/RationalLiteral.java b/src/org/rascalmpl/ast/RationalLiteral.java
index a5e1870905f..3a61a3f5f33 100644
--- a/src/org/rascalmpl/ast/RationalLiteral.java
+++ b/src/org/rascalmpl/ast/RationalLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class RationalLiteral extends AbstractAST {
public RationalLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/RealLiteral.java b/src/org/rascalmpl/ast/RealLiteral.java
index a66f76ae255..45c66e80dfe 100644
--- a/src/org/rascalmpl/ast/RealLiteral.java
+++ b/src/org/rascalmpl/ast/RealLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class RealLiteral extends AbstractAST {
public RealLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/RegExp.java b/src/org/rascalmpl/ast/RegExp.java
index f64243e779c..eedd0e4f523 100644
--- a/src/org/rascalmpl/ast/RegExp.java
+++ b/src/org/rascalmpl/ast/RegExp.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class RegExp extends AbstractAST {
public RegExp(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/RegExpLiteral.java b/src/org/rascalmpl/ast/RegExpLiteral.java
index 601af8e55ac..ba16b72ae1c 100644
--- a/src/org/rascalmpl/ast/RegExpLiteral.java
+++ b/src/org/rascalmpl/ast/RegExpLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class RegExpLiteral extends AbstractAST {
public RegExpLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/RegExpModifier.java b/src/org/rascalmpl/ast/RegExpModifier.java
index f4167508c52..99d86aa434e 100644
--- a/src/org/rascalmpl/ast/RegExpModifier.java
+++ b/src/org/rascalmpl/ast/RegExpModifier.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class RegExpModifier extends AbstractAST {
public RegExpModifier(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Renaming.java b/src/org/rascalmpl/ast/Renaming.java
index 53e52fe7ae5..cc8eaefc2e3 100644
--- a/src/org/rascalmpl/ast/Renaming.java
+++ b/src/org/rascalmpl/ast/Renaming.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Renaming extends AbstractAST {
public Renaming(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Renamings.java b/src/org/rascalmpl/ast/Renamings.java
index f810476c32d..39d63478ecc 100644
--- a/src/org/rascalmpl/ast/Renamings.java
+++ b/src/org/rascalmpl/ast/Renamings.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Renamings extends AbstractAST {
public Renamings(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Replacement.java b/src/org/rascalmpl/ast/Replacement.java
index f25210ee074..61219bd2cc7 100644
--- a/src/org/rascalmpl/ast/Replacement.java
+++ b/src/org/rascalmpl/ast/Replacement.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Replacement extends AbstractAST {
public Replacement(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/ShellCommand.java b/src/org/rascalmpl/ast/ShellCommand.java
index ef17f31e239..e2b7b69f1da 100644
--- a/src/org/rascalmpl/ast/ShellCommand.java
+++ b/src/org/rascalmpl/ast/ShellCommand.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class ShellCommand extends AbstractAST {
public ShellCommand(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
@@ -72,6 +73,8 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
+
}
@Override
@@ -79,6 +82,7 @@ public boolean equals(Object o) {
if (!(o instanceof Clear)) {
return false;
}
+ Clear tmp = (Clear) o;
return true ;
}
@@ -198,6 +202,8 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
+
}
@Override
@@ -205,6 +211,7 @@ public boolean equals(Object o) {
if (!(o instanceof Help)) {
return false;
}
+ Help tmp = (Help) o;
return true ;
}
@@ -250,6 +257,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
}
@@ -258,6 +266,7 @@ public boolean equals(Object o) {
if (!(o instanceof History)) {
return false;
}
+ History tmp = (History) o;
return true ;
}
@@ -303,6 +312,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
}
@@ -311,6 +321,7 @@ public boolean equals(Object o) {
if (!(o instanceof ListDeclarations)) {
return false;
}
+ ListDeclarations tmp = (ListDeclarations) o;
return true ;
}
@@ -356,6 +367,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
}
@@ -364,6 +376,7 @@ public boolean equals(Object o) {
if (!(o instanceof ListModules)) {
return false;
}
+ ListModules tmp = (ListModules) o;
return true ;
}
@@ -409,6 +422,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
}
@@ -417,6 +431,7 @@ public boolean equals(Object o) {
if (!(o instanceof Quit)) {
return false;
}
+ Quit tmp = (Quit) o;
return true ;
}
@@ -555,6 +570,7 @@ protected void addForLineNumber(int $line, java.util.List $result)
if (getLocation().getBeginLine() == $line) {
$result.add(this);
}
+ ISourceLocation $l;
}
@@ -563,6 +579,7 @@ public boolean equals(Object o) {
if (!(o instanceof Test)) {
return false;
}
+ Test tmp = (Test) o;
return true ;
}
diff --git a/src/org/rascalmpl/ast/Signature.java b/src/org/rascalmpl/ast/Signature.java
index f37477bfc7d..67c16d9a3b0 100644
--- a/src/org/rascalmpl/ast/Signature.java
+++ b/src/org/rascalmpl/ast/Signature.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Signature extends AbstractAST {
public Signature(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StringCharacter.java b/src/org/rascalmpl/ast/StringCharacter.java
index 08705c4676c..710fa8f7501 100644
--- a/src/org/rascalmpl/ast/StringCharacter.java
+++ b/src/org/rascalmpl/ast/StringCharacter.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StringCharacter extends AbstractAST {
public StringCharacter(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StringConstant.java b/src/org/rascalmpl/ast/StringConstant.java
index 82736794f4e..d4ac3288e17 100644
--- a/src/org/rascalmpl/ast/StringConstant.java
+++ b/src/org/rascalmpl/ast/StringConstant.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StringConstant extends AbstractAST {
public StringConstant(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StringLiteral.java b/src/org/rascalmpl/ast/StringLiteral.java
index bbbffc4b378..fad93712024 100644
--- a/src/org/rascalmpl/ast/StringLiteral.java
+++ b/src/org/rascalmpl/ast/StringLiteral.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StringLiteral extends AbstractAST {
public StringLiteral(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StringMiddle.java b/src/org/rascalmpl/ast/StringMiddle.java
index 33b42b74620..1eb963084cd 100644
--- a/src/org/rascalmpl/ast/StringMiddle.java
+++ b/src/org/rascalmpl/ast/StringMiddle.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StringMiddle extends AbstractAST {
public StringMiddle(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StringTail.java b/src/org/rascalmpl/ast/StringTail.java
index 4410f8fb504..5020467cbf9 100644
--- a/src/org/rascalmpl/ast/StringTail.java
+++ b/src/org/rascalmpl/ast/StringTail.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StringTail extends AbstractAST {
public StringTail(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StringTemplate.java b/src/org/rascalmpl/ast/StringTemplate.java
index e1d8594e52b..5dc7be9140a 100644
--- a/src/org/rascalmpl/ast/StringTemplate.java
+++ b/src/org/rascalmpl/ast/StringTemplate.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StringTemplate extends AbstractAST {
public StringTemplate(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/StructuredType.java b/src/org/rascalmpl/ast/StructuredType.java
index 009f49a8048..16cf2840974 100644
--- a/src/org/rascalmpl/ast/StructuredType.java
+++ b/src/org/rascalmpl/ast/StructuredType.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class StructuredType extends AbstractAST {
public StructuredType(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/SyntaxDefinition.java b/src/org/rascalmpl/ast/SyntaxDefinition.java
index d8eff7ad7ec..55f99a56e2b 100644
--- a/src/org/rascalmpl/ast/SyntaxDefinition.java
+++ b/src/org/rascalmpl/ast/SyntaxDefinition.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class SyntaxDefinition extends AbstractAST {
public SyntaxDefinition(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Tag.java b/src/org/rascalmpl/ast/Tag.java
index ffa55d9c280..e2615d2a30f 100644
--- a/src/org/rascalmpl/ast/Tag.java
+++ b/src/org/rascalmpl/ast/Tag.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Tag extends AbstractAST {
public Tag(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/TagString.java b/src/org/rascalmpl/ast/TagString.java
index 7579d8e65e5..ef1899a6a21 100644
--- a/src/org/rascalmpl/ast/TagString.java
+++ b/src/org/rascalmpl/ast/TagString.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class TagString extends AbstractAST {
public TagString(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Tags.java b/src/org/rascalmpl/ast/Tags.java
index 70b8508098b..f4cf57584a6 100644
--- a/src/org/rascalmpl/ast/Tags.java
+++ b/src/org/rascalmpl/ast/Tags.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Tags extends AbstractAST {
public Tags(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/TimePartNoTZ.java b/src/org/rascalmpl/ast/TimePartNoTZ.java
index 5384545a587..18e43c9bbf5 100644
--- a/src/org/rascalmpl/ast/TimePartNoTZ.java
+++ b/src/org/rascalmpl/ast/TimePartNoTZ.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class TimePartNoTZ extends AbstractAST {
public TimePartNoTZ(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/TimeZonePart.java b/src/org/rascalmpl/ast/TimeZonePart.java
index 962c1cd1454..814c39ce8c7 100644
--- a/src/org/rascalmpl/ast/TimeZonePart.java
+++ b/src/org/rascalmpl/ast/TimeZonePart.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class TimeZonePart extends AbstractAST {
public TimeZonePart(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Toplevel.java b/src/org/rascalmpl/ast/Toplevel.java
index 7955b991910..199e99f8689 100644
--- a/src/org/rascalmpl/ast/Toplevel.java
+++ b/src/org/rascalmpl/ast/Toplevel.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Toplevel extends AbstractAST {
public Toplevel(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Type.java b/src/org/rascalmpl/ast/Type.java
index 90cbe05b8d1..abdf2c89d3d 100644
--- a/src/org/rascalmpl/ast/Type.java
+++ b/src/org/rascalmpl/ast/Type.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Type extends AbstractAST {
public Type(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/TypeArg.java b/src/org/rascalmpl/ast/TypeArg.java
index 596aa3b9ba2..d340caba1a6 100644
--- a/src/org/rascalmpl/ast/TypeArg.java
+++ b/src/org/rascalmpl/ast/TypeArg.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class TypeArg extends AbstractAST {
public TypeArg(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/TypeVar.java b/src/org/rascalmpl/ast/TypeVar.java
index b11e998b3de..34164dfd19d 100644
--- a/src/org/rascalmpl/ast/TypeVar.java
+++ b/src/org/rascalmpl/ast/TypeVar.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class TypeVar extends AbstractAST {
public TypeVar(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/URLChars.java b/src/org/rascalmpl/ast/URLChars.java
index c4579c5dd50..ab016bf9a01 100644
--- a/src/org/rascalmpl/ast/URLChars.java
+++ b/src/org/rascalmpl/ast/URLChars.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class URLChars extends AbstractAST {
public URLChars(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/UnicodeEscape.java b/src/org/rascalmpl/ast/UnicodeEscape.java
index 3b958f7f271..21170244124 100644
--- a/src/org/rascalmpl/ast/UnicodeEscape.java
+++ b/src/org/rascalmpl/ast/UnicodeEscape.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class UnicodeEscape extends AbstractAST {
public UnicodeEscape(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/UserType.java b/src/org/rascalmpl/ast/UserType.java
index 41c7f7177ff..69a206d97e2 100644
--- a/src/org/rascalmpl/ast/UserType.java
+++ b/src/org/rascalmpl/ast/UserType.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class UserType extends AbstractAST {
public UserType(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Variable.java b/src/org/rascalmpl/ast/Variable.java
index aa3806b13f0..6e768417d22 100644
--- a/src/org/rascalmpl/ast/Variable.java
+++ b/src/org/rascalmpl/ast/Variable.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Variable extends AbstractAST {
public Variable(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Variant.java b/src/org/rascalmpl/ast/Variant.java
index 9ea54e5d50d..119a76ac9cc 100644
--- a/src/org/rascalmpl/ast/Variant.java
+++ b/src/org/rascalmpl/ast/Variant.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Variant extends AbstractAST {
public Variant(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/ast/Visit.java b/src/org/rascalmpl/ast/Visit.java
index 4c9723b0951..f2cedfe32ab 100644
--- a/src/org/rascalmpl/ast/Visit.java
+++ b/src/org/rascalmpl/ast/Visit.java
@@ -19,6 +19,7 @@
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.ISourceLocation;
+@SuppressWarnings(value = {"unused"})
public abstract class Visit extends AbstractAST {
public Visit(ISourceLocation src, IConstructor node) {
super(src /* we forget node on purpose */);
diff --git a/src/org/rascalmpl/exceptions/RascalStackOverflowError.java b/src/org/rascalmpl/exceptions/RascalStackOverflowError.java
new file mode 100644
index 00000000000..cecee677b0d
--- /dev/null
+++ b/src/org/rascalmpl/exceptions/RascalStackOverflowError.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2024 CWI
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+
+ * * Jurgen J. Vinju - Jurgen.Vinju@cwi.nl - CWI
+*******************************************************************************/
+package org.rascalmpl.exceptions;
+
+import org.rascalmpl.ast.AbstractAST;
+import org.rascalmpl.interpreter.env.Environment;
+
+/**
+ * This class captures the runtime state of the interpreter at the moment
+ * we detect a java StackOverflowError. Since we can not use any stack depth
+ * at that moment to create a real Throw exception, we only copy the deepest
+ * environment and wrap it in here. Later on the level of the REPL, when the
+ * stack is completely unrolled, we can convert the stack trace to a Rascal trace.
+ */
+public class RascalStackOverflowError extends RuntimeException {
+ private static final long serialVersionUID = -3947588548271683963L;
+ private final Environment deepestEnvironment;
+ private final AbstractAST currentAST;
+
+ public RascalStackOverflowError(AbstractAST current, Environment deepest) {
+ this.deepestEnvironment = deepest;
+ this.currentAST = current;
+ }
+
+ public Throw makeThrow() {
+ StackTrace trace = new StackTrace();
+ Environment env = deepestEnvironment;
+
+ while (env != null) {
+ trace.add(env.getLocation(), env.getName());
+ env = env.getCallerScope();
+ }
+
+ return RuntimeExceptionFactory.stackOverflow(currentAST, trace);
+ }
+
+ public Environment getEnvironment() {
+ return deepestEnvironment;
+ }
+}
diff --git a/src/org/rascalmpl/exceptions/RuntimeExceptionFactory.java b/src/org/rascalmpl/exceptions/RuntimeExceptionFactory.java
index 50c37b54b61..2e54b541f5d 100644
--- a/src/org/rascalmpl/exceptions/RuntimeExceptionFactory.java
+++ b/src/org/rascalmpl/exceptions/RuntimeExceptionFactory.java
@@ -649,6 +649,13 @@ public static Throw noSuchKey(IValue v, AbstractAST ast, StackTrace trace) {
public static Throw parseError(ISourceLocation loc) {
return new Throw(VF.constructor(ParseError, loc));
}
+
+ public static Throw jsonParseError(ISourceLocation loc, String cause, String path) {
+ return new Throw(VF.constructor(ParseError, loc)
+ .asWithKeywordParameters().setParameter("reason", VF.string(cause))
+ .asWithKeywordParameters().setParameter("path", VF.string(path)));
+ }
+
public static Throw parseError(ISourceLocation loc, AbstractAST ast, StackTrace trace) {
return new Throw(VF.constructor(ParseError, loc), ast != null ? ast.getLocation() : null, trace);
diff --git a/src/org/rascalmpl/interpreter/result/ConcreteSyntaxResult.java b/src/org/rascalmpl/interpreter/result/ConcreteSyntaxResult.java
index dc2d0bd7bc4..cefae41e28e 100644
--- a/src/org/rascalmpl/interpreter/result/ConcreteSyntaxResult.java
+++ b/src/org/rascalmpl/interpreter/result/ConcreteSyntaxResult.java
@@ -247,6 +247,15 @@ protected Result equalToConcreteSyntax(ConcreteSyntaxResult that) {
return bool(true, ctx);
}
+ if (TreeAdapter.isCycle(left) && TreeAdapter.isCycle(right)) {
+ IConstructor type1 = TreeAdapter.getCycleType(left);
+ IConstructor type2 = TreeAdapter.getCycleType(right);
+ int length1 = TreeAdapter.getCycleLength(left);
+ int length2 = TreeAdapter.getCycleLength(right);
+
+ return bool(type1.equals(type2) && length1 == length2, ctx);
+ }
+
return bool(false, ctx);
}
diff --git a/src/org/rascalmpl/interpreter/result/ConstructorFunction.java b/src/org/rascalmpl/interpreter/result/ConstructorFunction.java
index b7d602b6635..0b7fa2d8631 100644
--- a/src/org/rascalmpl/interpreter/result/ConstructorFunction.java
+++ b/src/org/rascalmpl/interpreter/result/ConstructorFunction.java
@@ -160,7 +160,7 @@ public Result computeDefaultKeywordParameter(String label, IConstructor
}
else {
Expression def = getKeywordParameterDefaults().get(kwparam);
- IValue res = def.interpret(eval).value;
+ IValue res = def.interpret(eval).getValue();
if (!res.getType().isSubtypeOf(kwType)) {
throw new UnexpectedKeywordArgumentType(kwparam, kwType, res.getType(), ctx.getCurrentAST());
diff --git a/src/org/rascalmpl/interpreter/utils/IResourceLocationProvider.java b/src/org/rascalmpl/interpreter/utils/IResourceLocationProvider.java
index 4721bbb4391..36b5521f36c 100644
--- a/src/org/rascalmpl/interpreter/utils/IResourceLocationProvider.java
+++ b/src/org/rascalmpl/interpreter/utils/IResourceLocationProvider.java
@@ -4,6 +4,14 @@
import io.usethesource.vallang.ISourceLocation;
+/**
+ * This is a injected configuration parameter of a Rascal run-time
+ * environment like IRascalMonitor and IDEServices. The goal is
+ * to find all the file names that have the given `fileName` in
+ * the current run-time environment. For compiled Rascal this would
+ * be ClassLoader.findResources, while for the interpreter it is
+ * typically a search through all the roots of the source folders.
+ */
public interface IResourceLocationProvider {
Set findResources(String fileName);
}
diff --git a/src/org/rascalmpl/interpreter/utils/IUPTRAstToSymbolConstructor.java b/src/org/rascalmpl/interpreter/utils/IUPTRAstToSymbolConstructor.java
index 900708bace3..3d7485eb447 100644
--- a/src/org/rascalmpl/interpreter/utils/IUPTRAstToSymbolConstructor.java
+++ b/src/org/rascalmpl/interpreter/utils/IUPTRAstToSymbolConstructor.java
@@ -109,7 +109,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
if (name.equals("seq")) {
IList list = vf.list();
Expression.List arg = (List) x.getArguments().get(0);
- for (Expression y: arg.getElements()) {
+ for (Expression y: arg.getElements0()) {
list = list.append(y.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_Seq, list);
@@ -124,7 +124,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
if (name.equals("alt")) {
ISet set = vf.set();
Expression.Set arg = (Set) x.getArguments().get(0);
- for(Expression y: arg.getElements()){
+ for(Expression y: arg.getElements0()){
set = set.insert(y.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_Alt, set);
@@ -134,7 +134,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
java.util.List args = x.getArguments();
IConstructor head = args.get(0).accept(this);
IList rest = vf.list();
- for (Expression arg: ((Expression.List)args.get(1)).getElements()) {
+ for (Expression arg: ((Expression.List)args.get(1)).getElements0()) {
rest = rest.append(arg.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_Tuple, head, rest);
@@ -171,7 +171,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
IConstructor arg = x.getArguments().get(0).accept(this);
Expression.List args = (Expression.List) x.getArguments().get(1);
IList seps = vf.list();
- for (Expression elem: args.getElements()) {
+ for (Expression elem: args.getElements0()) {
seps = seps.append(elem.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_IterStarSeps, arg, seps);
@@ -181,7 +181,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
IConstructor arg = x.getArguments().get(0).accept(this);
Expression.List args = (Expression.List) x.getArguments().get(1);
IList seps = vf.list();
- for (Expression elem: args.getElements()) {
+ for (Expression elem: args.getElements0()) {
seps = seps.append(elem.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_IterSeps, arg, seps);
@@ -192,7 +192,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
StringConstant.Lexical sort = (org.rascalmpl.ast.StringConstant.Lexical)
x.getArguments().get(0).getLiteral().getStringLiteral().getConstant();
IList rest = vf.list();
- for (Expression arg: ((Expression.List)args.get(1)).getElements()) {
+ for (Expression arg: ((Expression.List)args.get(1)).getElements0()) {
rest = rest.append(arg.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_ParameterizedSort, vf.string(sort.getString()), rest);
@@ -209,7 +209,7 @@ public IConstructor visitExpressionCallOrTree(CallOrTree x) {
if (name.equals("char-class")) {
java.util.List args = x.getArguments();
IList ranges = vf.list();
- for (Expression arg: ((Expression.List)args.get(0)).getElements()) {
+ for (Expression arg: ((Expression.List)args.get(0)).getElements0()) {
ranges = ranges.append(arg.accept(this));
}
return vf.constructor(RascalValueFactory.Symbol_CharClass, ranges);
diff --git a/src/org/rascalmpl/interpreter/utils/JavaBridge.java b/src/org/rascalmpl/interpreter/utils/JavaBridge.java
index bfe2049dd53..19d56eb810e 100644
--- a/src/org/rascalmpl/interpreter/utils/JavaBridge.java
+++ b/src/org/rascalmpl/interpreter/utils/JavaBridge.java
@@ -46,6 +46,7 @@
import org.rascalmpl.exceptions.JavaCompilation;
import org.rascalmpl.exceptions.JavaMethodLink;
import org.rascalmpl.exceptions.RuntimeExceptionFactory;
+import org.rascalmpl.ideservices.BasicIDEServices;
import org.rascalmpl.ideservices.IDEServices;
import org.rascalmpl.interpreter.Configuration;
import org.rascalmpl.interpreter.IEvaluator;
@@ -440,7 +441,7 @@ else if (formals[i].isAssignableFrom(IDEServices.class)) {
args[i] = (IDEServices) monitor;
}
else {
- throw new IllegalArgumentException("no IDE services are available in this environment");
+ args[i] = new BasicIDEServices(err, monitor);
}
}
else if (formals[i].isAssignableFrom(IResourceLocationProvider.class)) {
diff --git a/src/org/rascalmpl/library/Content.rsc b/src/org/rascalmpl/library/Content.rsc
index 28be88bbe94..da8c75ef72e 100644
--- a/src/org/rascalmpl/library/Content.rsc
+++ b/src/org/rascalmpl/library/Content.rsc
@@ -2,9 +2,10 @@
@synopsis{Content provides access to the content server of the Rascal terminal for viewing interactive HTML output.}
module Content
+import lang::json::IO;
@synopsis{Content wraps the HTTP Request/Response API to support interactive visualization types
-on the terminal ((RascalShell)).}
+on the terminal.}
@description{
Values wrapped in a `Content` wrapper will be displayed by interactive
Rascal applications such as the IDE, the REPL terminal and the documentation pages.
@@ -80,30 +81,33 @@ which involves a handy, automatic, encoding of Rascal values into json values.
data Response
= response(Status status, str mimeType, map[str,str] header, str content)
| fileResponse(loc file, str mimeType, map[str,str] header)
- | jsonResponse(Status status, map[str,str] header, value val, str dateTimeFormat = "yyyy-MM-dd\'T\'HH:mm:ss\'Z\'")
+ | jsonResponse(Status status, map[str,str] header, value val, str dateTimeFormat = "yyyy-MM-dd\'T\'HH:mm:ss\'Z\'", JSONFormatter[value] formatter = str (value _) { fail; }, bool explicitConstructorNames=false, bool explicitDataTypes=false)
;
-
@synopsis{Utility to quickly render a string as HTML content}
Response response(str content, map[str,str] header = ()) = response(ok(), "text/html", header, content);
-
@synopsis{Utility to quickly report an HTTP error with a user-defined message}
Response response(Status status, str explanation, map[str,str] header = ()) = response(status, "text/plain", header, explanation);
-
@synopsis{Utility to quickly make a plaintext response.}
Response plain(str text) = response(ok(), "text/plain", (), text);
-
@synopsis{Utility to serve a file from any source location.}
Response response(loc f, map[str,str] header = ()) = fileResponse(f, mimeTypes[f.extension]?"text/plain", header);
+@synopsis{Utility to quickly serve any rascal value as a json text.}
+@benefits{
+This comes in handy for asynchronous HTTP requests from Javascript clients. Rascal Values are
+fully transformed to their respective JSON serialized form before being communicated over HTTP.
+}
+default Response response(value val, map[str,str] header = ()) = jsonResponse(ok(), header, val);
-@synopsis{Utility to quickly serve any rascal value as a json text. This comes in handy for
-asynchronous HTTP requests from Javascript.}
-default Response response(value val, map[str,str] header = ()) = jsonResponse(ok(), header, val);
-
+@synopsis{Utility to quickly serve any rascal value as a json text, formatting data-types on-the-fly using a `formatter` function}
+@benefits{
+Fast way of producing JSON strings for embedded DSLs on the Rascal side.
+}
+Response response(value val, JSONFormatter[value] formatter, map[str,str] header = ()) = jsonResponse(ok(), header, val, formatter=formatter);
@synopsis{Encoding of HTTP status}
data Status
diff --git a/src/org/rascalmpl/library/IO.rsc b/src/org/rascalmpl/library/IO.rsc
index 47eb70e19f9..06f119c06ed 100644
--- a/src/org/rascalmpl/library/IO.rsc
+++ b/src/org/rascalmpl/library/IO.rsc
@@ -571,7 +571,7 @@ public java str readBase64(loc file, bool includePadding=true)
throws PathNotFound, IO;
@deprecated{
-Use readBase64 instead. Uuencode was a misnomer.
+Use readBase64 instead.
}
public str uuencode(loc file) = readBase64(file);
@@ -583,7 +583,7 @@ public java void writeBase64(loc file, str content)
throws PathNotFound, IO;
@deprecated{
-Use writeBase64 instead. Uudecode was a misnomer.
+Use writeBase64 instead.
}
public void uudecode(loc file, str content) = writeBase64(file, content);
@@ -712,7 +712,7 @@ public java str createLink(str title, str target);
@javaClass{org.rascalmpl.library.Prelude}
@deprecated{
- use `readBase64` instead.
+Use `readBase64` instead.
}
public java str toBase64(loc file, bool includePadding=true)
throws PathNotFound, IO;
@@ -721,14 +721,14 @@ throws PathNotFound, IO;
java void copy(loc source, loc target, bool recursive=false, bool overwrite=true) throws IO;
@deprecated{
-use the `copy` function instead
+Use the `copy` function instead
}
void copyFile(loc source, loc target) {
copy(source, target, recursive=false, overwrite=true);
}
@deprecated{
-use the `copy` function instead
+Use the `copy` function instead
}
void copyDirectory(loc source, loc target) {
copy(source, target, recursive=true, overwrite=true);
diff --git a/src/org/rascalmpl/library/List.rsc b/src/org/rascalmpl/library/List.rsc
index e8c86ba18df..7d81d546a67 100644
--- a/src/org/rascalmpl/library/List.rsc
+++ b/src/org/rascalmpl/library/List.rsc
@@ -96,10 +96,17 @@ dup([3, 1, 5, 3, 1, 7, 1, 2]);
list[&T] dup(list[&T] lst)
= ([] | (ix in it) ? it : it + [ix] | &T ix <- lst);
-@deprecated{
-use the indexing instead
-}
@javaClass{org.rascalmpl.library.Prelude}
+@synopsis{A function that implements `lst[index]`}
+@description{
+The expression `lst[index]` has the same semantics as calling `elementAt(index)`.
+}
+@benefits{
+* ((elementAt)) can be passed a function argument.
+}
+@pitfalls{
+* `lst[index]` is significantly faster than `elementAt(index)`
+}
java &T elementAt(list[&T] lst, int index);
@@ -420,7 +427,7 @@ list[&T] mix(list[&T] l, list[&T] r){
sizeL = size(l);
sizeR = size(r);
minSize = sizeL < sizeR ? sizeL : sizeR;
- return [elementAt(l,i),elementAt(r,i)| i <- [0 .. minSize]] + drop(sizeR,l) + drop(sizeL,r);
+ return [l[i],r[i] | i <- [0 .. minSize]] + drop(sizeR,l) + drop(sizeL,r);
}
@synopsis{Compute all permutations of a list.}
@@ -433,9 +440,10 @@ permutations([1,2,3]);
set[list[&T]] permutations(list[&T] lst) =
permutationsBag(distribution(lst));
-private set[list[&T]] permutationsBag(map[&T element, int occurs] b) =
- isEmpty(b) ? {[]} :
- { [e] + rest | e <- b, rest <- permutationsBag(removeFromBag(b,e))};
+private set[list[&T]] permutationsBag(map[&T element, int occurs] b)
+ = isEmpty(b)
+ ? {[]}
+ : { [e] + rest | e <- b, rest <- permutationsBag(removeFromBag(b,e))};
@synopsis{Pop top element from list, return a tuple.}
@@ -481,9 +489,11 @@ push("eagle", ["zebra", "elephant", "snake", "owl"]);
list[&T] push(&T elem, list[&T] lst) = [elem] + lst;
-@synopsis{Apply a function to successive elements of list and combine the results (__deprecated__).}
+@synopsis{Apply a function to successive elements of list and combine the results.}
@description{
Apply the function `fn` to successive elements of list `lst` starting with `unit`.
+The function application `reducer(lst, add, 0)` has the same semantics
+as the expression `(0 | add(it, e) | e <- lst)`.
}
@examples{
```rascal-shell
@@ -493,30 +503,23 @@ reducer([10, 20, 30, 40], add, 0);
```
}
@benefits{
-
+* reducer can be passed as a function argument
}
@pitfalls{
-:::warning
-This function is *deprecated*, use a reducer expression instead. E.g. `(init | f(it, e) | e <- lst)`.
-:::
-}
-&T reducer(list[&T] lst, &T (&T, &T) fn, &T unit)
-{
- &T result = unit;
- for(&T elm <- lst){
- result = fn(result, elm);
- }
- return result;
+* a reducer expression can be a lot faster
+* reducer expressions are more versatile (allowing multiple generators and filters)
}
+&T reducer(list[&T] lst, &T (&T, &T) fn, &T unit)
+ = (unit | fn(it, elm) | elm <- lst);
-list[&T] remove(list[&T] lst, int indexToDelete) =
- [ lst[i] | i <- index(lst), i != indexToDelete ];
+list[&T] remove(list[&T] lst, int indexToDelete)
+ = [ lst[i] | i <- index(lst), i != indexToDelete ];
-private map[&T element, int occurs] removeFromBag(map[&T element, int occurs] b, &T el) =
- removeFromBag(b,el,1);
+private map[&T element, int occurs] removeFromBag(map[&T element, int occurs] b, &T el)
+ = removeFromBag(b,el,1);
-private map[&T element, int occurs] removeFromBag(map[&T element, int occurs] b, &T el, int nr) =
- !(b[el] ?) ? b : (b[el] <= nr ? b - (el : b[el]) : b + (el : b[el] - nr));
+private map[&T element, int occurs] removeFromBag(map[&T element, int occurs] b, &T el, int nr)
+ = !(b[el] ?) ? b : (b[el] <= nr ? b - (el : b[el]) : b + (el : b[el] - nr));
@synopsis{Reverse a list.}
@@ -845,9 +848,7 @@ l = [10,20,30,40];
s = {*l};
```
}
-@deprecated{
-Please use {*myList} instead.
-}
+
@javaClass{org.rascalmpl.library.Prelude}
java set[&T] toSet(list[&T] lst);
diff --git a/src/org/rascalmpl/library/Prelude.java b/src/org/rascalmpl/library/Prelude.java
index 24ec1db3ede..2224a6c39ac 100644
--- a/src/org/rascalmpl/library/Prelude.java
+++ b/src/org/rascalmpl/library/Prelude.java
@@ -263,7 +263,7 @@ public IValue incrementDays(IDateTime dt, IInteger n)
return incrementDate(dt, Calendar.DAY_OF_MONTH, "days", n);
}
- private String getTZString(int hourOffset, int minuteOffset) {
+ public static String getTZString(int hourOffset, int minuteOffset) {
String tzString = "GMT" +
((hourOffset < 0 || (0 == hourOffset && minuteOffset < 0)) ? "-" : "+") +
String.format("%02d",hourOffset >= 0 ? hourOffset : hourOffset * -1) +
@@ -629,7 +629,7 @@ private Calendar getCalendarForTime(IDateTime inputTime) {
}
}
- private Calendar getCalendarForDateTime(IDateTime inputDateTime) {
+ public static Calendar getCalendarForDateTime(IDateTime inputDateTime) {
if (inputDateTime.isDateTime()) {
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone(getTZString(inputDateTime.getTimezoneOffsetHours(),inputDateTime.getTimezoneOffsetMinutes())),Locale.getDefault());
cal.setLenient(false);
@@ -4110,9 +4110,9 @@ public IBool isOverlapping(ISourceLocation first, ISourceLocation second) {
if (first.hasOffsetLength()) {
if (second.hasOffsetLength()) {
int firstStart = first.getOffset();
- int firstEnd = firstStart + first.getLength();
+ int firstEnd = firstStart + first.getLength() - 1; // Inclusive
int secondStart = second.getOffset();
- int secondEnd = secondStart + second.getLength();
+ int secondEnd = secondStart + second.getLength() - 1; // Inclusive
return values.bool(
(firstStart <= secondStart && secondStart <= firstEnd)
diff --git a/src/org/rascalmpl/library/Set.rsc b/src/org/rascalmpl/library/Set.rsc
index 10e0f819cdd..729b96ea4c0 100644
--- a/src/org/rascalmpl/library/Set.rsc
+++ b/src/org/rascalmpl/library/Set.rsc
@@ -218,7 +218,7 @@ power1({1,2,3,4});
}
public set[set[&T]] power1(set[&T] st) = power(st) - {{}};
-@synopsis{Apply a function to successive elements of a set and combine the results (__deprecated__).}
+@synopsis{Apply a function to successive elements of a set and combine the results.}
@description{
Apply the function `fn` to successive elements of set `s` starting with `unit`.
}
@@ -229,11 +229,7 @@ int add(int x, int y) { return x + y; }
reducer({10, 20, 30, 40}, add, 0);
```
}
-@pitfalls{
-:::warning
-This function is *deprecated*, use a reducer expression instead, such as `(init | fn(it,e) | e <- st)`.
-:::
-}
+@deprecated{Use a reducer expression instead, such as `(init | fn(it,e) | e <- st)`.}
public &T reducer(set[&T] st, &T (&T,&T) fn, &T unit) =
(unit | fn(it,elm) | elm <- st);
diff --git a/src/org/rascalmpl/library/String.rsc b/src/org/rascalmpl/library/String.rsc
index de466de5272..132c288a987 100644
--- a/src/org/rascalmpl/library/String.rsc
+++ b/src/org/rascalmpl/library/String.rsc
@@ -20,6 +20,7 @@ module String
extend Exception;
import List;
+import ParseTree;
@synopsis{All functions in this module that have a charset parameter use this as default.}
private str DEFAULT_CHARSET = "UTF-8";
@@ -519,11 +520,46 @@ for the allowed syntax in `charSet`.
```rascal-shell
import String;
squeeze("hello", "el");
+// the other squeeze function uses character class types instead:
+squeeze("hello", "el") == squeeze("hello", #[el]);
```
}
@javaClass{org.rascalmpl.library.Prelude}
+@deprecated{Use the other squeence function that accepts Rascal character class syntax.}
public java str squeeze(str src, str charSet);
+@synopsis{Squeeze repeated occurrences of characters.}
+@description{
+Squeeze repeated occurrences in `src` of characters, if they are a member of `&CharClass`, removed.
+
+* `src` is any string
+* `&CharClass` is a reified character class type such as `[a-z]` (a type that is a subtype of the class of all characters `![]`)
+* To pass in a char-class type used the type reifier operator: `#[a-z]` or `#![]`
+}
+@benefits{
+* to squeeze all characters use the universal character class: `#![]` (the negation of the empty class).
+* this function is type-safe; you can only pass in correct reified character classes like `#[A-Za-z]`.
+}
+@pitfalls{
+* `![]` excludes the 0'th unicode character, so we can not squeeze the unicode codepoint `0` using this function.
+If you really need to squeeze 0 then it's best to write your own:
+```rascal
+visit (x) {
+ case /+/ => "\a00" when dot == "\a00"
+}
+````
+* Do not confuse the character `0` (codepoint 48) with the zero codepoint: `#[0] != #[\a00]`
+}
+@examples{
+```rascal-shell
+import String;
+squeeze("hello", #[el]);
+```
+}
+public str squeeze(str src, type[&CharClass] _:type[![]] _) = visit(src) {
+ case /+/ => c
+ when &CharClass _ := Tree::char(charAt(c, 0))
+};
@synopsis{Split a string into a list of strings based on a literal separator.}
@@ -588,7 +624,7 @@ private java str format(str s, str dir, int n, str pad);
@synopsis{Determine if a string matches the given (Java-syntax) regular expression.}
@javaClass{org.rascalmpl.library.Prelude}
@deprecated{
-use `/re/ := s` instead
+Use `/re/ := s` instead
}
public java bool rexpMatch(str s, str re);
@@ -605,7 +641,7 @@ toLocation("http://grammarware.net");
toLocation("document.xml");
```
}
-@deprecated{Use ((Location::locFromWindowsPath)) for example. The current function does not handle all the different intricasies of path notation.}
+@deprecated{Use ((Location::locFromWindowsPath)) for example; toLocation does not handle all intricasies of path notation.}
public loc toLocation(str s) = (/\:\/\// := s) ? |://| : |cwd:///|;
diff --git a/src/org/rascalmpl/library/Type.rsc b/src/org/rascalmpl/library/Type.rsc
index 840e18dd60a..3ccc265062c 100644
--- a/src/org/rascalmpl/library/Type.rsc
+++ b/src/org/rascalmpl/library/Type.rsc
@@ -133,9 +133,9 @@ public Production choice(Symbol s, set[Production] choices) {
} else {
// TODO: this does not work in interpreter and typechecker crashes on it (both related to the splicing)
//return choice(s, { *(choice(Symbol t, set[Production] b) := ch ? b : {ch}) | ch <- choices });
- changed = false;
- new_choices = {};
- for (ch <- choices) {
+ bool changed = false;
+ set[Production] new_choices = {};
+ for (Production ch <- choices) {
if (choice(Symbol _, set[Production] b) := ch) {
changed = true;
new_choices += b;
diff --git a/src/org/rascalmpl/library/analysis/diff/edits/TextEdits.rsc b/src/org/rascalmpl/library/analysis/diff/edits/TextEdits.rsc
index 55cf05f948b..11c0c71e1d7 100644
--- a/src/org/rascalmpl/library/analysis/diff/edits/TextEdits.rsc
+++ b/src/org/rascalmpl/library/analysis/diff/edits/TextEdits.rsc
@@ -1,5 +1,33 @@
+@license{
+Copyright (c) 2022, NWO-I Centrum Wiskunde & Informatica (CWI)
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+}
+@synopsis{Intermediate representation for file creation, removal and changing, including textual (string) rewriting.}
+@description{
+((DocumentEdit))s can be produced by source-to-source transformation tools, and then executed
+via ((executeDocumentEdits)) in the REPL or ((applyDocumentsEdits)) by the IDE.
+}
+@benefits{
+* Document edits can be attached to ((data:CodeAction))s and error ((util::IDEServices-Message))s, to achieve interactive
+source code rewriting utilities.
+* Document edits can be tested via ((executeDocumentEdits))
+* Document edits can be "high fidelity", avoiding unnecessary damage to a source text.
+}
+@pitfalls{
+* Code edits depend on a specific state of the source file that may be transient while editing. Use the ((CodeAction)) interface
+to avoid racing for the state of the source file.
+}
module analysis::diff::edits::TextEdits
+@synopsis{File changing operations}
data DocumentEdit
= removed(loc file)
| created(loc file)
@@ -7,9 +35,32 @@ data DocumentEdit
| changed(loc file, list[TextEdit] edits)
;
+@synopsis{Shorthand for file changes.}
+DocumentEdit changed(list[TextEdit] edits:[replace(loc l, str _), *_])
+ = changed(l.top, edits);
+
+@synopsis{String rewriting operations}
+@description{
+The core operation is to replace a substring with another.
+The replace operator uses a `loc` value to point to a range inside a string,
+and a `str` as its replacement.
+}
data TextEdit
- = replace(loc range, str replacement)
- ;
+ = replace(loc range, str replacement);
+
+@synopsis{Deletion is replacement with an empty string.}
+TextEdit delete(loc range)
+ = replace(range, "");
-TextEdit delete(loc range) = replace(range, "");
+@synopsis{Inserting before a given range.}
+TextEdit insertBefore(loc range, str insertion, str separator=" ")
+ = (range.begin?)
+ ? replace(range.top(range.offset, 0, range.begin, range.begin), "")
+ : replace(range.top(range.offset, 0), "");
+@synopsis{Inserting after a given range.}
+TextEdit insertAfter(loc range, str insertion, str separator=" ")
+ = (range.end?)
+ ? replace(range.top(range.offset + range.length, 0, range.end, range.end), "")
+ : replace(range.top(range.offset + range.length, 0), "");
+
diff --git a/src/org/rascalmpl/library/analysis/graphs/Graph.rsc b/src/org/rascalmpl/library/analysis/graphs/Graph.rsc
index dc9301f5c3a..c10bbc51c2e 100644
--- a/src/org/rascalmpl/library/analysis/graphs/Graph.rsc
+++ b/src/org/rascalmpl/library/analysis/graphs/Graph.rsc
@@ -289,3 +289,6 @@ reduction's worst case complexity is in the same order as transitive closure its
* reduces cyclic sub-graphs to "empty"
}
Graph[&T] transitiveReduction(Graph[&T] g) = g - (g o g+);
+
+@synopsis{Select the short-cut edges, the ones that transitively close at least two other edges.}
+Graph[&T] transitiveEdges(Graph[&T] g) = g o g+;
diff --git a/src/org/rascalmpl/library/analysis/m3/AST.rsc b/src/org/rascalmpl/library/analysis/m3/AST.rsc
index f18332f3858..2003d19c893 100644
--- a/src/org/rascalmpl/library/analysis/m3/AST.rsc
+++ b/src/org/rascalmpl/library/analysis/m3/AST.rsc
@@ -86,7 +86,7 @@ data Expression(
TypeSymbol typ = \unresolved()
);
-@synopsis{Uniform name for everything that is an _type_ in programming languages syntax: int, void, List, ...}
+@synopsis{Uniform name for everything that is an _type_ in programming languages syntax: `int`, `void`, `List`}
@description{
Instances of the Type type represent the _syntax_ of types in programming languages.
diff --git a/src/org/rascalmpl/library/analysis/m3/Core.rsc b/src/org/rascalmpl/library/analysis/m3/Core.rsc
index 3bdda576649..2864cd79252 100644
--- a/src/org/rascalmpl/library/analysis/m3/Core.rsc
+++ b/src/org/rascalmpl/library/analysis/m3/Core.rsc
@@ -236,7 +236,7 @@ M3 modifyM3(loc id, list[M3] models, value (&T,&T) fun) {
bool isEmpty(M3 model) = model.id.scheme == "unknown";
-@deprecated{does not make much sense since containment usually contains only logical locations..}
+@deprecated{Does not make much sense since containment usually contains only logical locations.}
set[loc] files(M3 model) {
todo = top(model.containment);
done = {};
diff --git a/src/org/rascalmpl/library/lang/box/util/Box2Text.rsc b/src/org/rascalmpl/library/lang/box/util/Box2Text.rsc
index 275c48e5bfb..b2f113d8c7f 100644
--- a/src/org/rascalmpl/library/lang/box/util/Box2Text.rsc
+++ b/src/org/rascalmpl/library/lang/box/util/Box2Text.rsc
@@ -11,8 +11,8 @@
@description{
The input to Box2Text is a hierarchy of "Boxes" represented by the Box algebraic data-type.
These boxes put hard and soft relative positioning constraints on the embedded text fragments, and
-there is the global soft constraints of the width of the screen (or the paper). Box2Text can also
-add markup for syntax highlighting in either ANSI plaintext encoding, HTML font tags or LaTex macros.
+there is the global soft constraints of the width of the screen (or the paper).
+
This implementation is a port from ASF+SDF to Rascal. The ASF+SDF implementation was published as
"From Box to Tex:An algebraic approach to the construction of documentation tools" by Mark van den Brand
@@ -62,6 +62,9 @@ format(H([L("if"), H([L("("), L("true"), L(")")], hs=0), HOV([L("W") | i <- [
format(H([L("if"), H([L("("), L("true"), L(")")], hs=0), HV([L("W") | i <- [0..30]])]))
```
}
+@pitfalls{
+* Box2text does not have highlighting features anymore; you can use ((util::Highlight)) for this instead.
+}
module lang::box::util::Box2Text
import util::Math;
diff --git a/src/org/rascalmpl/library/lang/csv/IO.rsc b/src/org/rascalmpl/library/lang/csv/IO.rsc
index 7431d9c645f..9780d127ec5 100644
--- a/src/org/rascalmpl/library/lang/csv/IO.rsc
+++ b/src/org/rascalmpl/library/lang/csv/IO.rsc
@@ -101,7 +101,7 @@ R1 = readCSV(|lib://rascal/org/rascalmpl/library/lang/csv/examples/ex1.csv|, sep
public java value readCSV(loc location, bool header = true, str separator = ",", str encoding = "UTF8");
@deprecated{
-use the readCSV with keyword parameters
+Use readCSV with keyword parameters
}
public value readCSV(loc location, map[str,str] options) {
return readCSV(location, header = ((options["header"]?"true") == "true"), separator = options["separator"]?",");
diff --git a/src/org/rascalmpl/library/lang/html5/DOM.rsc b/src/org/rascalmpl/library/lang/html5/DOM.rsc
index f8bfd0cbd2d..79127968a1d 100644
--- a/src/org/rascalmpl/library/lang/html5/DOM.rsc
+++ b/src/org/rascalmpl/library/lang/html5/DOM.rsc
@@ -3,7 +3,6 @@
module lang::html5::DOM
import List;
-import Content;
@synopsis{Generic representation for all HTML tag types.}
@description{
@@ -459,7 +458,4 @@ str toString(HTML5Node x) {
attrs = { k | HTML5Attr k <- x.kids };
kids = [ k | value k <- x.kids, !(HTML5Attr _ := k) ];
return nodeToString(x.name, attrs, kids);
-}
-
-@synopsis{convenience function to render the HTML5Node dom tree in the browser}
-public Content serve(HTML5Node x) = html(toString(x));
+}
\ No newline at end of file
diff --git a/src/org/rascalmpl/library/lang/json/Factory.java b/src/org/rascalmpl/library/lang/json/Factory.java
deleted file mode 100644
index ef2c12b958e..00000000000
--- a/src/org/rascalmpl/library/lang/json/Factory.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package org.rascalmpl.library.lang.json;
-
-import io.usethesource.vallang.type.Type;
-import io.usethesource.vallang.type.TypeFactory;
-import io.usethesource.vallang.type.TypeStore;
-
-public class Factory {
- private static final TypeFactory tf = TypeFactory.getInstance();
- private static final TypeStore json = new TypeStore();
-
- public static final Type JSON = tf.abstractDataType(json, "JSON");
-
- public static final Type JSON_null = tf.constructor(json, JSON, "null");
-
- public static final Type JSON_object = tf.constructor(json, JSON, "object",
- tf.mapType(tf.stringType(), JSON), "properties");
-
- public static final Type JSON_array = tf.constructor(json, JSON, "array",
- tf.listType(JSON), "values");
-
- public static final Type JSON_number = tf.constructor(json, JSON, "number", tf.realType(), "n");
- public static final Type JSON_string = tf.constructor(json, JSON, "string", tf.stringType(), "s");
- public static final Type JSON_boolean = tf.constructor(json, JSON, "boolean", tf.boolType(), "b");
-
- public static final Type JSON_ivalue = tf.constructor(json, JSON, "ivalue", tf.valueType(), "v");
-
-
-
-}
diff --git a/src/org/rascalmpl/library/lang/json/IO.java b/src/org/rascalmpl/library/lang/json/IO.java
index 6cecd64debc..c96dd763cb0 100644
--- a/src/org/rascalmpl/library/lang/json/IO.java
+++ b/src/org/rascalmpl/library/lang/json/IO.java
@@ -19,114 +19,89 @@
import java.io.StringReader;
import java.io.StringWriter;
import java.nio.charset.Charset;
-
+import java.util.Map;
+import java.util.stream.Collectors;
import org.rascalmpl.debug.IRascalMonitor;
import org.rascalmpl.exceptions.RuntimeExceptionFactory;
-import org.rascalmpl.library.lang.json.internal.IValueAdapter;
-import org.rascalmpl.library.lang.json.internal.JSONReadingTypeVisitor;
import org.rascalmpl.library.lang.json.internal.JsonValueReader;
import org.rascalmpl.library.lang.json.internal.JsonValueWriter;
+import org.rascalmpl.types.ReifiedType;
import org.rascalmpl.types.TypeReifier;
import org.rascalmpl.uri.URIResolverRegistry;
import org.rascalmpl.uri.URIUtil;
+import org.rascalmpl.values.IRascalValueFactory;
+import org.rascalmpl.values.functions.IFunction;
import io.usethesource.vallang.IBool;
import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.IInteger;
+import io.usethesource.vallang.IMap;
import io.usethesource.vallang.ISourceLocation;
import io.usethesource.vallang.IString;
+import io.usethesource.vallang.ITuple;
import io.usethesource.vallang.IValue;
-import io.usethesource.vallang.IValueFactory;
import io.usethesource.vallang.type.Type;
import io.usethesource.vallang.type.TypeStore;
-import com.google.gson.FieldNamingPolicy;
-import com.google.gson.Gson;
-import com.google.gson.GsonBuilder;
-import com.google.gson.reflect.TypeToken;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
-import com.ibm.icu.text.DateFormat;
public class IO {
- private final IValueFactory values;
+ private final IRascalValueFactory values;
private final IRascalMonitor monitor;
- public IO(IValueFactory values, IRascalMonitor monitor) {
+ public IO(IRascalValueFactory values, IRascalMonitor monitor) {
super();
this.values = values;
this.monitor = monitor;
}
-
- public IString toJSON(IValue value) {
- return toJSON(value, this.values.bool(false));
- }
-
- public IString toJSON(IValue value, IBool compact) {
- IValueAdapter adap = new IValueAdapter(compact.getValue());
- Gson gson = new GsonBuilder()
- .registerTypeAdapter(IValue.class, adap)
- .enableComplexMapKeySerialization()
- .setDateFormat(DateFormat.LONG)
- .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)
- .setVersion(1.0)
- .disableHtmlEscaping()
- .create();
- try {
- String json = gson.toJson(value, new TypeToken() {}.getType());
- return values.string(json);
- } catch (Exception e) {
- throw RuntimeExceptionFactory.io(values.string(e.getMessage()), null, null);
- }
- }
-
- public IValue fromJSON(IValue type, IString src) {
- TypeStore store = new TypeStore();
- Type start = new TypeReifier(values).valueToType((IConstructor) type, store);
- Gson gson = new GsonBuilder()
- .enableComplexMapKeySerialization()
- .setDateFormat(DateFormat.LONG)
- .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)
- .setVersion(1.0)
- .create();
- Object obj = gson.fromJson(src.getValue(), Object.class);
- try {
- return JSONReadingTypeVisitor.read(obj, values, store, start);
- }
- catch (IOException e) {
- throw RuntimeExceptionFactory.io(values.string(e.getMessage()), null, null);
- }
- }
-
-
- public IValue readJSON(IValue type, ISourceLocation loc, IString dateTimeFormat, IBool lenient, IBool trackOrigins) {
+ public IValue readJSON(IValue type, ISourceLocation loc, IString dateTimeFormat, IBool lenient, IBool trackOrigins, IFunction parsers, IMap nulls, IBool explicitConstructorNames, IBool explicitDataTypes) {
TypeStore store = new TypeStore();
Type start = new TypeReifier(values).valueToType((IConstructor) type, store);
+ if (parsers.getType() instanceof ReifiedType && parsers.getType().getTypeParameters().getFieldType(0).isTop()) {
+ // ignore the default parser
+ parsers = null;
+ }
+
try (JsonReader in = new JsonReader(URIResolverRegistry.getInstance().getCharacterReader(loc))) {
in.setLenient(lenient.getValue());
return new JsonValueReader(values, store, monitor, trackOrigins.getValue() ? loc : null)
.setCalendarFormat(dateTimeFormat.getValue())
+ .setParsers(parsers)
+ .setNulls(unreify(nulls))
+ .setExplicitConstructorNames(explicitConstructorNames.getValue())
+ .setExplicitDataTypes(explicitDataTypes.getValue())
.read(in, start);
}
catch (IOException e) {
throw RuntimeExceptionFactory.io(values.string(e.getMessage()), null, null);
}
catch (NullPointerException e) {
- e.printStackTrace();
- throw RuntimeExceptionFactory.io(values.string("NPE"), null, null);
+ throw RuntimeExceptionFactory.io(values.string("NPE in error handling code"), null, null);
}
}
- public IValue parseJSON(IValue type, IString src, IString dateTimeFormat, IBool lenient, IBool trackOrigins) {
+ private Map unreify(IMap nulls) {
+ var tr = new TypeReifier(values);
+ return nulls.stream()
+ .map(t -> (ITuple) t)
+ .collect(Collectors.toMap(t -> tr.valueToType((IConstructor) t.get(0)), t -> t.get(1)));
+ }
+
+ public IValue parseJSON(IValue type, IString src, IString dateTimeFormat, IBool lenient, IBool trackOrigins, IFunction parsers, IMap nulls, IBool explicitConstructorNames, IBool explicitDataTypes) {
TypeStore store = new TypeStore();
Type start = new TypeReifier(values).valueToType((IConstructor) type, store);
-
+
try (JsonReader in = new JsonReader(new StringReader(src.getValue()))) {
in.setLenient(lenient.getValue());
return new JsonValueReader(values, store, monitor, trackOrigins.getValue() ? URIUtil.rootLocation("unknown") : null)
.setCalendarFormat(dateTimeFormat.getValue())
+ .setParsers(parsers)
+ .setNulls(unreify(nulls))
+ .setExplicitConstructorNames(explicitConstructorNames.getValue())
+ .setExplicitDataTypes(explicitDataTypes.getValue())
.read(in, start);
}
catch (IOException e) {
@@ -137,7 +112,7 @@ public IValue parseJSON(IValue type, IString src, IString dateTimeFormat, IBool
}
}
- public void writeJSON(ISourceLocation loc, IValue value, IBool unpackedLocations, IString dateTimeFormat, IBool dateTimeAsInt, IInteger indent, IBool dropOrigins) {
+ public void writeJSON(ISourceLocation loc, IValue value, IBool unpackedLocations, IString dateTimeFormat, IBool dateTimeAsInt, IInteger indent, IBool dropOrigins, IFunction formatter, IBool explicitConstructorNames, IBool explicitDataTypes) {
try (JsonWriter out = new JsonWriter(new OutputStreamWriter(URIResolverRegistry.getInstance().getOutputStream(loc, false), Charset.forName("UTF8")))) {
if (indent.intValue() > 0) {
out.setIndent(" ".substring(0, indent.intValue() % 9));
@@ -148,13 +123,16 @@ public void writeJSON(ISourceLocation loc, IValue value, IBool unpackedLocations
.setDatesAsInt(dateTimeAsInt.getValue())
.setUnpackedLocations(unpackedLocations.getValue())
.setDropOrigins(dropOrigins.getValue())
+ .setFormatters(formatter)
+ .setExplicitConstructorNames(explicitConstructorNames.getValue())
+ .setExplicitDataTypes(explicitDataTypes.getValue())
.write(out, value);
} catch (IOException e) {
throw RuntimeExceptionFactory.io(values.string(e.getMessage()), null, null);
}
}
- public IString asJSON(IValue value, IBool unpackedLocations, IString dateTimeFormat, IBool dateTimeAsInt, IInteger indent, IBool dropOrigins) {
+ public IString asJSON(IValue value, IBool unpackedLocations, IString dateTimeFormat, IBool dateTimeAsInt, IInteger indent, IBool dropOrigins, IFunction formatter, IBool explicitConstructorNames, IBool explicitDataTypes) {
StringWriter string = new StringWriter();
try (JsonWriter out = new JsonWriter(string)) {
@@ -166,6 +144,9 @@ public IString asJSON(IValue value, IBool unpackedLocations, IString dateTimeFor
.setDatesAsInt(dateTimeAsInt.getValue())
.setUnpackedLocations(unpackedLocations.getValue())
.setDropOrigins(dropOrigins.getValue())
+ .setFormatters(formatter)
+ .setExplicitConstructorNames(explicitConstructorNames.getValue())
+ .setExplicitDataTypes(explicitDataTypes.getValue())
.write(out, value);
return values.string(string.toString());
@@ -173,7 +154,4 @@ public IString asJSON(IValue value, IBool unpackedLocations, IString dateTimeFor
throw RuntimeExceptionFactory.io(values.string(e.getMessage()), null, null);
}
}
-
-
-
}
diff --git a/src/org/rascalmpl/library/lang/json/IO.rsc b/src/org/rascalmpl/library/lang/json/IO.rsc
index 463c8f299c4..f66f2457deb 100644
--- a/src/org/rascalmpl/library/lang/json/IO.rsc
+++ b/src/org/rascalmpl/library/lang/json/IO.rsc
@@ -5,59 +5,204 @@
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
}
-@synopsis{(De)serialization of JSON values.}
+@synopsis{Serialization of Rascal values to JSON format and deserialization back from JSON format to Rascal values.}
@contributor{Jurgen J. Vinju - Jurgen.Vinju@cwi.nl - CWI}
@contributor{Mark Hills - Mark.Hills@cwi.nl (CWI)}
@contributor{Arnold Lankamp - Arnold.Lankamp@cwi.nl}
@contributor{Tijs van der Storm - storm@cwi.nl (CWI)}
@contributor{Davy Landman - landman@cwi.nl (CWI)}
+@description{
+The pairs ((asJSON)):((parseJSON)) and ((writeJSON)):((readJSON)) are both bi-directional
+transformations between serializable Rascal values (all except function instances) and JSON strings.
+The ((asJSON)) and ((parseJSON)) work on `str` representations, while ((writeJSON)) and ((readJSON))
+stream to/from files directly.
-module lang::json::IO
-
-@javaClass{org.rascalmpl.library.lang.json.IO}
-@deprecated{
-use writeJSON
+The basic principle of the bi-directional mapping is that constructors of algebraic data-types
+map one-to-one to JSON object notation, and vice versa. The other builtin Rascal data-structures
+are judiciously mapped to objects and arrays, and strings, etc. The goal is that their representation
+is natural on the receiving end (e.g. TypeScript, Javascript and Python code), without sacrificing
+on the naturalness of the Rascal representation.
}
-public java str toJSON(value v);
+@pitfalls{
+* ((asJSON)) and ((writeJSON)) are not isomorphisms. They are homomorphisms that choose
+JSON arrays or JSON objects for multiple different kinds of Rascal values. For example
+maps and nodes and ADT's are all mapped to JSON object notation (homonyms).
+* JSON is a serialization format that does not deal with programming language numerical
+encodings such as `double`, `float`` or `long`. ((writeJSON)) and ((asJSON)) might write numbers
+beyond the limits and beyond the accuracy of what the other programming language can deal with.
+You can expect errors at the time when the other language (Javascript, Python, TypeScript) reads these numbers from JSON.
+}
+@benefits{
+* Using the `expected`` type arguments of ((parseJSON)) and ((readJSON)) the homonyms created by ((asJSON)) and ((writeJSON)) can be converted back to their
+original Rascal structures. If the expected type contains only _concrete types_, and no _abstract types_ then
+then pairs ((asJSON))/((parseJSON)) and ((writeJSON))/((readJSON)) are isomorphic.
+ * The _abstract types_ are `value`, `node`, `num` or any composite type that contains it. `Maybe[value]` is an example of an abstract type.
+ * The _concrete types_ are all types which are not _abstract types_. `Maybe[int]` is an example of a concrete type.
+ * Run-time values always have concrete types, while variables in code often have abstract types.
+* If you provide `value` or `node` as an expected type, you will always get a useful representation
+on the Rascal side. It is not guaranteed to be the same representation as before.
+* ((readJSON)) and ((parseJSON)) can read numbers beyond the bounds of normal `int`, `long` and `doubles`. As
+long as the number is syntactically correct, they will bind to the right Rascal number representation.
+}
+@examples{
+This example demonstrates serializing:
+* constructors without parameters as "enums"
+* constructors with both positional fields and keyword fields
+* datetime serialization
+* integer serialization
+```rascal-shell
+import lang::json::IO;
+data Size = xxs() | xs() | s() | m() | l() | xl() | xxl();
+data Person
+ = person(str firstName, str lastName, datetime birth, int height=0, Size size = m());
+example = person("Santa", "Class", height=175, size=xxl());
+asJSON(example, dateTimeFormat="YYYY-MM-DD");
+```
-@javaClass{org.rascalmpl.library.lang.json.IO}
-@deprecated{
-use asJSON
+On the way back we can also track origins for constructors:
+```rascal-shell,continue
+parseJSON(#Person, example, trackOrigins=true)
+```
}
-public java str toJSON(value v, bool compact);
+module lang::json::IO
-@javaClass{org.rascalmpl.library.lang.json.IO}
-@deprecated{
-use readJSON
+import util::Maybe;
+import Exception;
+
+@synopsis{JSON parse errors have more information than general parse errors}
+@description{
+* `location` is the place where the parsing got stuck (going from left to right).
+* `cause` is a factual diagnosis of what was expected at that position, versus what was found.
+* `path` is a path query string into the JSON value from the root down to the leaf where the error was detected.
}
-public java &T fromJSON(type[&T] typ, str src);
+data RuntimeException(str cause="", str path="");
+
+private str DEFAULT_DATETIME_FORMAT = "yyyy-MM-dd\'T\'HH:mm:ssZ";
@javaClass{org.rascalmpl.library.lang.json.IO}
-@synopsis{reads JSON values from a stream
+@synopsis{reads JSON values from a stream}
+@description{
In general the translation behaves as follows:
- * Objects translate to map[str,value] by default, unless a node is expected (properties are then translated to keyword fields)
- * Arrays translate to lists by default, or to a set if that is expected or a tuple if that is expected. Arrays may also be interpreted as constructors or nodes (see below)
- * Booleans translate to bools
- * If the expected type provided is a datetime then an int instant is mapped and if a string is found then the dateTimeFormat parameter will be used to configure the parsing of a date-time string
- * If the expected type provided is an ADT then this reader will try to "parse" each object as a constructor for that ADT. It helps if there is only one constructor for that ADT. Positional parameters will be mapped by name as well as keyword parameters.
- * If the expected type provided is a node then it will construct a node named "object" and map the fields to keyword fields.
- * If num, int, real or rat are expected both strings and number values are mapped
- * If loc is expected than strings which look like URI are parsed (containing :/) or a file:/// URI is build, or if an object is found each separate field of
- a location object is read from the respective properties: { scheme : str, authority: str?, path: str?, fragment: str?, query: str?, offset: int, length: int, begin: [bl, bc], end: [el, ec]}}
-java &T readJSON(type[&T] expected, loc src, str dateTimeFormat = "yyyy-MM-dd\'T\'HH:mm:ssZZZZZ", bool lenient=false, bool trackOrigins=false);
+* Objects translate to map[str,value] by default, unless a node is expected (properties are then translated to keyword fields)
+* Arrays translate to lists by default, or to a set if that is expected or a tuple if that is expected. Arrays may also be interpreted as constructors or nodes (see below)
+* Booleans translate to bools
+* If the expected type provided is a datetime then an int instant is mapped and if a string is found then the dateTimeFormat parameter will be used to configure the parsing of a date-time string
+* If the expected type provided is an ADT then this reader will try to "parse" each object as a constructor for that ADT. It helps if there is only one constructor for that ADT. Positional parameters will be mapped by name as well as keyword parameters.
+* If the expected type provided is a node then it will construct a node named "object" and map the fields to keyword fields.
+* If num, int, real or rat are expected both strings and number values are mapped
+* If loc is expected than strings which look like URI are parsed (containing :/) or a file:/// URI is build, or if an object is found each separate field of
+ a location object is read from the respective properties: { scheme : str, authority: str?, path: str?, fragment: str?, query: str?, offset: int, length: int, begin: [bl, bc], end: [el, ec]}
+* Go to ((JSONParser)) to find out how to use the optional `parsers` parameter.
+* if the parser finds a `null` JSON value, it will lookup in the `nulls` map based on the currently expected type which value to return, or throw an exception otherwise.
+First the expected type is used as a literal lookup, and then each value is tested if the current type is a subtype of it.
+}
+java &T readJSON(
+ type[&T] expected,
+ loc src,
+ str dateTimeFormat = DEFAULT_DATETIME_FORMAT,
+ bool lenient=false,
+ bool trackOrigins=false,
+ JSONParser[value] parser = (type[value] _, str _) { throw ""; },
+ map [type[value] forType, value nullValue] nulls = defaultJSONNULLValues,
+ bool explicitConstructorNames = false,
+ bool explicitDataTypes = false
+);
+
+public map[type[value] forType, value nullValue] defaultJSONNULLValues = (
+ #Maybe[value] : nothing(),
+ #node : "null"(),
+ #int : -1,
+ #real : -1.0,
+ #rat : -1r1,
+ #value : "null"(),
+ #str : "",
+ #list[value] : [],
+ #set[value] : {},
+ #map[value,value] : (),
+ #loc : |unknown:///|
+);
@javaClass{org.rascalmpl.library.lang.json.IO}
-@synopsis{parses JSON values from a string
+@synopsis{parses JSON values from a string.
In general the translation behaves as the same as for ((readJSON)).}
-java &T parseJSON(type[&T] expected, str src, str dateTimeFormat = "yyyy-MM-dd\'T\'HH:mm:ssZZZZZ", bool lenient=false, bool trackOrigins=false);
+java &T parseJSON(
+ type[&T] expected,
+ str src,
+ str dateTimeFormat = DEFAULT_DATETIME_FORMAT,
+ bool lenient=false,
+ bool trackOrigins=false,
+ JSONParser[value] parser = (type[value] _, str _) { throw ""; },
+ map[type[value] forType, value nullValue] nulls = defaultJSONNULLValues,
+ bool explicitConstructorNames = false,
+ bool explicitDataTypes = false
+);
@javaClass{org.rascalmpl.library.lang.json.IO}
-@synopsis{writes `val` to the location `target`}
+@synopsis{Serializes a value as a JSON string and stream it}
@description{
- If `dateTimeAsInt` is set to `true`, the dateTime values are converted to an int that represents the number of milliseconds from 1970-01-01T00:00Z.
- If `indent` is set to a number greater than 0, the JSON file will be formatted with `indent` number of spaces as indentation.
+This function tries to map Rascal values to JSON values in a natural way.
+In particular it tries to create a value that has the same number of recursive levels,
+such that one constructor maps to one object. The serialization is typically _lossy_ since
+JSON values by default do not explicitly encode the class or constructor while Rascal data types do.
+
+If you need the names of constructors or data-types in your result, then use the parameters:
+* `explicitConstructorNames=true` will store the name of every constructor in a field `_constructor`
+* `explicitDataTypes=true` will store the name of the ADT in a field called `_type`
+* Check out ((JSONFormatter)) on how to use the `formatters` parameter
+* The `dateTimeFormat` parameter dictates how `datetime` values will be printed.
+* The `unpackedLocations` parameter will produce an object with many fields for every property of a `loc` value, but
+if set to false a `loc` will be printed as a string.
+}
+@pitfalls{
+* It is understood that Rascal's number types have arbitrary precision, but this is not supported by the JSON writer.
+As such when an `int` is printed that does not fit into a JVM `long`, there will be truncation to the lower 64 bits.
+For `real` numbers that are larger than JVM's double you get "negative infinity" or "positive infinity" as a result.
}
-java void writeJSON(loc target, value val, bool unpackedLocations=false, str dateTimeFormat="yyyy-MM-dd\'T\'HH:mm:ssZZZZZ", bool dateTimeAsInt=false, int indent=0, bool dropOrigins=true);
+java void writeJSON(loc target, value val,
+ bool unpackedLocations=false,
+ str dateTimeFormat=DEFAULT_DATETIME_FORMAT,
+ bool dateTimeAsInt=false,
+ int indent=0,
+ bool dropOrigins=true,
+ JSONFormatter[value] formatter = str (value _) { fail; },
+ bool explicitConstructorNames=false,
+ bool explicitDataTypes=false
+);
@javaClass{org.rascalmpl.library.lang.json.IO}
-java str asJSON(value val, bool unpackedLocations=false, str dateTimeFormat="yyyy-MM-dd\'T\'HH:mm:ssZZZZZ", bool dateTimeAsInt=false, int indent = 0, bool dropOrigins=true);
+@synopsis{Does what ((writeJSON)) does but serializes to a string instead of a location target.}
+@synopsis{Serializes a value as a JSON string and stores it as a string}
+@description{
+This function uses `writeJSON` and stores the result in a string.
+}
+java str asJSON(value val, bool unpackedLocations=false, str dateTimeFormat=DEFAULT_DATETIME_FORMAT, bool dateTimeAsInt=false, int indent = 0, bool dropOrigins=true, JSONFormatter[value] formatter = str (value _) { fail; }, bool explicitConstructorNames=false, bool explicitDataTypes=false);
+
+@synopsis{((writeJSON)) and ((asJSON)) uses `Formatter` functions to flatten structured data to strings, on-demand}
+@description{
+A JSONFormatter can be passed to the ((writeJSON)) and ((asJSON)) functions. When/if the type matches an algebraic data-type
+to be serialized, then it is applied and the resulting string is serialized to the JSON stream instead of the structured data.
+
+The goal of JSONFormat and its dual JSONParser is to bridge the gap between string-based JSON encodings and typical
+Rascal algebraic combinators.
+}
+alias JSONFormatter[&T] = str (&T);
+
+@synopsis{((readJSON)) and ((parseJSON)) use JSONParser functions to turn unstructured data into structured data.}
+@description{
+A parser JSONParser can be passed to ((readJSON)) and ((parseJSON)). When the reader expects an algebraic data-type
+or a syntax type, but the input at that moment is a JSON string, then the parser is called on that string (after string.trim()).
+
+The resulting data constructor is put into the resulting value instead of a normal string.
+
+The goal of JSONParser and its dual JSONFormatter is to bridge the gap between string-based JSON encodings and typical
+Rascal algebraic combinators.
+}
+@benefits{
+* Use parsers to create more structure than JSON provides.
+}
+@pitfalls{
+* The `type[&T]` argument is called dynamically by the JSON reader; it does not contain the
+grammar. It does encode the expected type of the parse result.
+* The expected types can only be `data` types, not syntax types.
+}
+alias JSONParser[&T] = &T (type[&T], str);
\ No newline at end of file
diff --git a/src/org/rascalmpl/library/lang/json/internal/IValueAdapter.java b/src/org/rascalmpl/library/lang/json/internal/IValueAdapter.java
deleted file mode 100644
index 2cf2c78d2b9..00000000000
--- a/src/org/rascalmpl/library/lang/json/internal/IValueAdapter.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package org.rascalmpl.library.lang.json.internal;
-
-import java.io.IOException;
-
-import io.usethesource.vallang.IValue;
-
-import com.google.gson.TypeAdapter;
-import com.google.gson.stream.JsonReader;
-import com.google.gson.stream.JsonWriter;
-
-public class IValueAdapter extends TypeAdapter {
- private final boolean compact;
-
- @Override
- public void write(JsonWriter out, IValue value) throws IOException {
- value.accept(new JSONWritingValueVisitor(out, compact));
- }
-
- @Override
- public IValue read(JsonReader in) throws IOException {
- throw new AssertionError("should not be used");
- }
-
- public IValueAdapter(boolean compact) {
- this.compact = compact;
- }
-}
diff --git a/src/org/rascalmpl/library/lang/json/internal/JSONReadingTypeVisitor.java b/src/org/rascalmpl/library/lang/json/internal/JSONReadingTypeVisitor.java
deleted file mode 100644
index bd867b68f0e..00000000000
--- a/src/org/rascalmpl/library/lang/json/internal/JSONReadingTypeVisitor.java
+++ /dev/null
@@ -1,713 +0,0 @@
-package org.rascalmpl.library.lang.json.internal;
-
-import static org.rascalmpl.library.lang.json.Factory.JSON;
-import static org.rascalmpl.library.lang.json.Factory.JSON_array;
-import static org.rascalmpl.library.lang.json.Factory.JSON_boolean;
-import static org.rascalmpl.library.lang.json.Factory.JSON_ivalue;
-import static org.rascalmpl.library.lang.json.Factory.JSON_null;
-import static org.rascalmpl.library.lang.json.Factory.JSON_number;
-import static org.rascalmpl.library.lang.json.Factory.JSON_object;
-import static org.rascalmpl.library.lang.json.Factory.JSON_string;
-
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.Stack;
-
-import org.rascalmpl.interpreter.asserts.NotYetImplemented;
-import org.rascalmpl.types.NonTerminalType;
-import org.rascalmpl.values.RascalValueFactory;
-
-import io.usethesource.vallang.IBool;
-import io.usethesource.vallang.IConstructor;
-import io.usethesource.vallang.IDateTime;
-import io.usethesource.vallang.IExternalValue;
-import io.usethesource.vallang.IInteger;
-import io.usethesource.vallang.IList;
-import io.usethesource.vallang.IListWriter;
-import io.usethesource.vallang.IMap;
-import io.usethesource.vallang.IMapWriter;
-import io.usethesource.vallang.INode;
-import io.usethesource.vallang.IRational;
-import io.usethesource.vallang.IReal;
-import io.usethesource.vallang.ISet;
-import io.usethesource.vallang.ISetWriter;
-import io.usethesource.vallang.ISourceLocation;
-import io.usethesource.vallang.IString;
-import io.usethesource.vallang.ITuple;
-import io.usethesource.vallang.IValue;
-import io.usethesource.vallang.IValueFactory;
-import io.usethesource.vallang.IWithKeywordParameters;
-import io.usethesource.vallang.type.ITypeVisitor;
-import io.usethesource.vallang.type.Type;
-import io.usethesource.vallang.type.TypeFactory;
-import io.usethesource.vallang.type.TypeStore;
-import io.usethesource.vallang.visitors.IValueVisitor;
-
-@SuppressWarnings("rawtypes")
-public class JSONReadingTypeVisitor implements ITypeVisitor {
-
- private static final TypeFactory tf = TypeFactory.getInstance();
- private final IValueFactory vf;
- private final TypeStore ts;
- private final Stack stack;
-
- public static IValue read(Object obj, IValueFactory vf, TypeStore ts, Type t) throws IOException {
- JSONReadingTypeVisitor v = new JSONReadingTypeVisitor(obj, vf, ts);
- return v.read(t);
- }
-
- private JSONReadingTypeVisitor(Object obj, IValueFactory vf, TypeStore ts) {
- this.stack = new Stack();
- this.stack.push(obj);
- this.vf = vf;
- this.ts = ts;
- }
-
- private IValue read(Type type) throws IOException {
- while (type.isAliased()) {
- type = type.getAliased();
- }
-
- if (type == tf.valueType()) {
- return visitValue(type);
- }
-
- if (type == tf.numberType()) {
- return visitNumber(type);
- }
-
- if (type == JSON) {
- return readPlainJSON();
- }
-
- // NB: why not treat isNode same as isNumber:
- // because nodes have values, but nums do not.
-
- stack.push(contents()); // skip tag
- IValue v = type.accept(this);
- stack.pop();
- return v;
- }
-
-
- private String tag() {
- assert stack.peek() instanceof List && ((List)stack.peek()).size() == 2;
- List m = (List)stack.peek();
- return (String) m.get(0);
- }
-
- private Object contents() {
- assert stack.peek() instanceof List && ((List)stack.peek()).size() == 2;
- List m = (List)stack.peek();
- return m.get(1);
- }
-
- @Override
- public IValue visitReal(Type type) throws IOException {
- return vf.real(((Double)stack.peek()).doubleValue());
- }
-
- @Override
- public IValue visitInteger(Type type) throws IOException {
- return vf.integer(((Double)stack.peek()).longValue());
- }
-
- @Override
- public IValue visitRational(Type type) throws IOException {
- // [ num, denom ]
- List l = (List)stack.peek();
- long num = ((Double)l.get(0)).longValue();
- long den = ((Double)l.get(1)).longValue();
- return vf.rational(num, den);
- }
-
- private Type elementType(Type t) {
- return t.isTop() ? tf.valueType() : t.getElementType();
- }
-
- private Type keyType(Type t) {
- return t.isTop() ? tf.valueType() : t.getKeyType();
- }
-
- private Type valueType(Type t) {
- return t.isTop() ? tf.valueType() : t.getValueType();
- }
-
- @Override
- public IValue visitList(Type type) throws IOException {
- IListWriter w = vf.listWriter();
- List l = (List)stack.peek();
- for (Object e: l) {
- stack.push(e);
- w.append(read(elementType(type)));
- stack.pop();
- }
- return w.done();
- }
-
- @Override
- public IValue visitMap(Type type) throws IOException {
- // [ [k, v], ... ]
- IMapWriter w = vf.mapWriter();
- List l = (List)stack.peek();
- for (Object e: l) {
- List pair = (List)e;
- stack.push(pair.get(0));
- IValue k = read(keyType(type));
- stack.pop();
- stack.push(pair.get(1));
- IValue v = read(valueType(type));
- stack.pop();
- w.put(k, v);
- }
- return w.done();
- }
-
- @Override
- public IValue visitNumber(Type type) throws IOException {
- IValue value = null;
- String tag = tag();
- stack.push(contents());
- switch (tag) {
- case "int":
- value = visitInteger(type);
- break;
- case "real":
- value = visitReal(type);
- break;
- case "rat":
- value = visitRational(type);
- break;
- default:
- throw new IOException("invalid tag for num: " + tag);
- }
- stack.pop();
- return value;
- }
-
- @Override
- public IValue visitAlias(Type type) throws IOException {
- throw new AssertionError("alias normalization should happen in read()");
- }
-
- @Override
- public IValue visitFunction(Type type) throws IOException {
- throw new AssertionError("can not deserialize functions from JSON");
- }
-
- @Override
- public IValue visitSet(Type type) throws IOException {
- ISetWriter w = vf.setWriter();
- List l = (List)stack.peek();
- for (Object e: l) {
- stack.push(e);
- w.insert(read(elementType(type)));
- stack.pop();
- }
- return w.done();
- }
-
- @Override
- public IValue visitSourceLocation(Type type) throws IOException {
- String scheme = null;
- String authority = null;
- String path = null;
- String fragment = "";
- String query = "";
- int offset = -1;
- int length = -1;
- int beginLine = -1;
- int endLine = -1;
- int beginColumn = -1;
- int endColumn = -1;
-
- Map m = (Map)stack.peek();
- for (Object k: m.keySet()) {
- String name = (String)k;
- switch (name) {
- case "scheme":
- scheme = (String)m.get(name);
- break;
- case "authority":
- authority = (String)m.get(name);
- break;
- case "path":
- path = (String)m.get(name);
- break;
- case "fragment":
- fragment = (String)m.get(name);
- break;
- case "query":
- query = (String)m.get(name);
- break;
- case "offset":
- offset = ((Double)m.get(name)).intValue();
- break;
- case "length":
- length = ((Double)m.get(name)).intValue();
- break;
- case "beginLine":
- beginLine = ((Double)m.get(name)).intValue();
- break;
- case "endLine":
- endLine = ((Double)m.get(name)).intValue();
- break;
- case "beginColumn":
- beginColumn = ((Double)m.get(name)).intValue();
- break;
- case "endColumn":
- endColumn = ((Double)m.get(name)).intValue();
- break;
- default:
- throw new IOException(
- "invalid property name in SourceLocation serialization: "
- + name);
- }
- }
- try {
- ISourceLocation top = vf.sourceLocation(scheme, authority, path, query, fragment);
- if (offset != -1 && length != -1 && beginLine != -1 && endLine != -1 && beginColumn != -1 && endColumn != -1) {
- return vf.sourceLocation(top, offset, length, beginLine, endLine, beginColumn, endColumn);
- }
- else if (offset != -1 && length != -1) {
- return vf.sourceLocation(top, offset, length);
- }
- else {
- return top;
- }
- } catch (URISyntaxException e) {
- throw new IOException(e);
- }
- }
-
- @Override
- public IValue visitString(Type type) throws IOException {
- return vf.string((String)stack.peek());
- }
-
- @Override
- public IValue visitNode(Type type) throws IOException {
- // ["name", [ ... ] ]
-
- List l = (List)stack.peek();
-
- String name = (String)l.get(0);
- int arity = ((Double)l.get(1)).intValue();
-
- List argsList = (List) l.get(2);
-
- IValue[] args = new IValue[arity];
- for (int i = 0; i < arity; i++) {
- stack.push(argsList.get(i));
- args[i] = read(tf.valueType());
- stack.pop();
- }
-
- Map kwargs = null;
- if (l.size() > 3) {
- kwargs = new HashMap<>();
- Map kw = (Map)l.get(3);
- for (Object k: kw.keySet()) {
- String label = (String)k;
- stack.push(kw.get(label));
- kwargs.put(label, fixupTypeOfNodeValues(read(tf.valueType())));
- stack.pop();
- }
- }
-
- if (kwargs != null) {
- return vf.node(name, args, kwargs);
- }
- return vf.node(name, args);
- }
-
- private IValue fixupTypeOfNodeValues(IValue input) {
- return input.accept(new IValueVisitor() {
-
- @Override
- public IValue visitList(IList o) throws RuntimeException {
- List elements = new ArrayList(o.length());
- for (IValue e : o) {
- elements.add(e.accept(this));
- }
- IListWriter writer = vf.listWriter();
- writer.appendAll(elements);
- return writer.done();
- }
-
- @Override
- public IValue visitSet(ISet o) throws RuntimeException {
- List elements = new ArrayList(o.size());
- for (IValue e : o) {
- elements.add(e.accept(this));
- }
- ISetWriter writer = vf.setWriter();
- writer.insertAll(elements);
- return writer.done();
- }
-
- @Override
- public IValue visitTuple(ITuple o) throws RuntimeException {
- IValue[] elements = new IValue[o.arity()];
- Type[] types = new Type[o.arity()];
- for (int i = 0; i < elements.length; i++) {
- elements[i] = o.get(i).accept(this);
- types[i] = elements[i].getType();
- }
-
- return vf.tuple(elements);
- }
-
- @Override
- public IValue visitNode(INode o) throws RuntimeException {
- IValue[] children = new IValue[o.arity()];
- for (int i = 0; i < children.length; i++) {
- children[i] = o.get(i).accept(this);
- }
- if (o.mayHaveKeywordParameters()) {
- IWithKeywordParameters extends INode> okw = o.asWithKeywordParameters();
- Map oldKwParams = okw.getParameters();
- Map kwParams = new HashMap<>(oldKwParams.size());
- for (String key : oldKwParams.keySet()) {
- kwParams.put(key, oldKwParams.get(key).accept(this));
-
- }
- return vf.node(o.getName(), children, kwParams);
- }
-
- return vf.node(o.getName(), children);
- }
-
- @Override
- public IValue visitMap(IMap o) throws RuntimeException {
- Iterator> entries = o.entryIterator();
- Map newEntries = new HashMap<>(o.size());
- while (entries.hasNext()) {
- Entry ent = entries.next();
- newEntries.put(ent.getKey().accept(this), ent.getValue().accept(this));
- }
-
- IMapWriter writer = vf.mapWriter();
- writer.putAll(newEntries);
- return writer.done();
- }
-
- @Override
- public IValue visitConstructor(IConstructor o)
- throws RuntimeException {
- throw new NotYetImplemented("Constructors are not yet implemented");
- }
-
- @Override
- public IValue visitString(IString o) throws RuntimeException {
- return o;
- }
-
- @Override
- public IValue visitReal(IReal o) throws RuntimeException {
- return o;
- }
-
- @Override
- public IValue visitRational(IRational o) throws RuntimeException {
- return o;
- }
-
-
-
- @Override
- public IValue visitSourceLocation(ISourceLocation o)
- throws RuntimeException {
- return o;
- }
-
-
- @Override
- public IValue visitInteger(IInteger o) throws RuntimeException {
- return o;
- }
-
- @Override
- public IValue visitBoolean(IBool boolValue) throws RuntimeException {
- return boolValue;
- }
-
- @Override
- public IValue visitExternal(IExternalValue externalValue)
- throws RuntimeException {
- return externalValue;
- }
-
- @Override
- public IValue visitDateTime(IDateTime o) throws RuntimeException {
- return o;
- }
- });
- }
-
- @Override
- public IValue visitConstructor(Type type) throws IOException {
- throw new NotYetImplemented("constructor types");
- }
-
- @Override
- public IValue visitAbstractData(Type type) throws IOException {
- // [ "name", [ ... ], { ... } }
-
- if (type == JSON) {
- return readPlainJSON();
- }
-
- List l = (List)stack.peek();
- String name = (String)l.get(0);
- int arity = ((Double)l.get(1)).intValue();
-
- Set ctors = ts.lookupConstructor(type, name);
- Type ctor = null;
- for (Type t: ctors) {
- if (t.getArity() == arity) {
- ctor = t;
- break;
- }
- }
-
- if (ctor == null) {
- throw new IOException("no constructor " + name + "/" + arity+ " in " + type);
- }
-
- List argsList = (List) l.get(2);
-
- IValue[] args = new IValue[arity];
- for (int i = 0; i < arity; i++) {
- stack.push(argsList.get(i));
- args[i] = read(ctor.getFieldType(i));
- stack.pop();
- }
-
- Map kwargs = null;
- Map kwformals = ts.getKeywordParameters(ctor);
-
- if (kwformals.size() > 0 && l.size() > 3) {
- kwargs = new HashMap<>();
- Map kw = (Map)l.get(3);
- for (Object k: kw.keySet()) {
- String label = (String)k;
- Type kwType = kwformals.get(label);
- if (kwType == null) {
- // TODO: JV added this, kwType could be null
- kwType = tf.valueType();
- }
- stack.push(kw.get(label));
- kwargs.put(label, read(kwType));
- stack.pop();
- }
- }
-
- if (kwargs != null) {
- return vf.constructor(ctor, args, kwargs);
- }
-
- return vf.constructor(ctor, args);
- }
-
-
- private IValue readPlainJSON() throws IOException {
- return convertToIValue(stack.peek());
- }
-
- private IValue convertToIValue(Object obj) throws IOException {
- if (obj == null) {
- return vf.constructor(JSON_null);
- }
- if (obj instanceof Double) {
- return vf.constructor(JSON_number, vf.real(((Double)obj).doubleValue()));
- }
- if (obj instanceof Boolean) {
- return vf.constructor(JSON_boolean, vf.bool(((Boolean)obj).booleanValue()));
- }
- if (obj instanceof String) {
- return vf.constructor(JSON_string, vf.string((String)obj));
- }
- if (obj instanceof Map) {
- Map map = (Map)obj;
- if (map.keySet().size() == 1) {
- for (Object k: map.keySet()) {
- if (k.equals("#value")) {
- stack.push(map.get(k));
- IValue v = read(tf.valueType());
- stack.pop();
- return vf.constructor(JSON_ivalue, v);
- }
- }
- }
- IMapWriter w = vf.mapWriter();
- for (Object k: map.keySet()) {
- w.put(vf.string((String) k), convertToIValue(map.get(k)));
- }
- return vf.constructor(JSON_object, w.done());
- }
- if (obj instanceof List) {
- IListWriter w = vf.listWriter();
- for (Object k: (List)obj) {
- w.append(convertToIValue(k));
- }
- return vf.constructor(JSON_array, w.done());
- }
-
- throw new AssertionError("unhandled generic JSON object: " + obj);
- }
-
- @Override
- public IValue visitTuple(Type type) throws IOException {
- List l = (List)stack.peek();
-
- if (type.isTop()) {
- IValue[] args = new IValue[l.size()];
- for (int i = 0; i < l.size(); i++) {
- stack.push(l.get(i));
- args[i] = read(tf.valueType());
- stack.pop();
- }
- return vf.tuple(args);
- }
-
- IValue args[] = new IValue[type.getArity()];
- for (int i = 0; i < l.size(); i++) {
- stack.push(l.get(i));
- args[i] = read(type.getFieldType(i));
- stack.pop();
- }
- return vf.tuple(args);
- }
-
- @Override
- public IValue visitValue(Type type) throws IOException {
- String tag = tag();
- IValue value = null;
- stack.push(contents());
- switch (tag) {
- case "cons":
- value = visitNode(type);
- break;
- case "node":
- value = visitNode(type);
- break;
- case "int":
- value = visitInteger(type);
- break;
- case "rat":
- value = visitRational(type);
- break;
- case "real":
- value = visitReal(type);
- break;
- case "loc":
- value = visitSourceLocation(type);
- break;
- case "datetime":
- value = visitDateTime(type);
- break;
- case "bool":
- value = visitBool(type);
- break;
- case "list":
- value = visitList(type);
- break;
- case "set":
- value = visitSet(type);
- break;
- case "map":
- value = visitMap(type);
- break;
- case "str":
- value = visitString(type);
- break;
- case "tuple":
- value = visitTuple(type);
- break;
- default:
- throw new IOException("invalid tag for value: " + tag);
- }
- stack.pop();
- return value;
- }
-
- @Override
- public IValue visitDateTime(Type type) throws IOException {
- // {datetime: { }}
- int year = -1;
- int monthOfYear = -1;
- int dayOfMonth = -1;
-
- int hourOfDay = -1;
- int minuteOfHour = -1;
- int secondOfMinute = -1;
- int millisecondsOfSecond = -1;
- int timezoneOffsetHours = -99;
- int timezoneOffsetMinutes = -99;
-
- Map m = (Map)stack.peek();
-
- for (Object k: m.keySet()) {
- String fld = (String)k;
- int n = ((Double)m.get(fld)).intValue();
- switch (fld) {
- case "year": year = n; break;
- case "monthOfYear": monthOfYear = n; break;
- case "dayOfMonth": dayOfMonth = n; break;
- case "hourOfDay": hourOfDay = n; break;
- case "minuteOfHour": minuteOfHour = n; break;
- case "secondOfMinute": secondOfMinute = n; break;
- case "millisecondsOfSecond": millisecondsOfSecond = n; break;
- case "timezoneOffsetHours": timezoneOffsetHours = n; break;
- case "timezoneOffsetMinutes": timezoneOffsetMinutes = n; break;
- default: throw new IOException("invalid field for date time: " + fld);
- }
- }
-
- if (year != -1 && monthOfYear != -1 && dayOfMonth != -1 && hourOfDay != -1
- && minuteOfHour != -1 && secondOfMinute != -1 && millisecondsOfSecond != -1
- && timezoneOffsetHours != -99 && timezoneOffsetMinutes != -99) {
- return vf.datetime(year, monthOfYear, dayOfMonth, hourOfDay, minuteOfHour, secondOfMinute, millisecondsOfSecond, timezoneOffsetHours, timezoneOffsetMinutes);
- }
- if (year != -1 && monthOfYear != -1 && dayOfMonth != -1 && hourOfDay != -1
- && minuteOfHour != -1 && secondOfMinute != -1 && millisecondsOfSecond != -1) {
- return vf.datetime(year, monthOfYear, dayOfMonth, hourOfDay, minuteOfHour, secondOfMinute, millisecondsOfSecond);
- }
- if (year != -1 && monthOfYear != -1 && dayOfMonth != -1) {
- return vf.date(year, monthOfYear, dayOfMonth);
- }
- throw new IOException("insufficient fields for making a datetime value");
- }
-
- @Override
- public IValue visitVoid(Type type) throws IOException {
- throw new AssertionError("cannot read values of type void");
- }
-
- @Override
- public IValue visitBool(Type type) throws IOException {
- return vf.bool((Boolean)stack.peek());
- }
-
- @Override
- public IValue visitParameter(Type type) throws IOException {
- throw new AssertionError("parameter types should have been bound");
- }
-
- @Override
- public IValue visitExternal(Type type) throws IOException {
- if (type instanceof NonTerminalType) {
- return RascalValueFactory.Tree.accept(this);
- }
- throw new IOException("cannot deserialize external values");
- }
-
-}
\ No newline at end of file
diff --git a/src/org/rascalmpl/library/lang/json/internal/JSONWritingValueVisitor.java b/src/org/rascalmpl/library/lang/json/internal/JSONWritingValueVisitor.java
deleted file mode 100644
index 19c91fcb576..00000000000
--- a/src/org/rascalmpl/library/lang/json/internal/JSONWritingValueVisitor.java
+++ /dev/null
@@ -1,453 +0,0 @@
-package org.rascalmpl.library.lang.json.internal;
-
-import java.io.IOException;
-
-import org.rascalmpl.exceptions.RuntimeExceptionFactory;
-import org.rascalmpl.library.lang.json.Factory;
-import io.usethesource.vallang.IBool;
-import io.usethesource.vallang.IConstructor;
-import io.usethesource.vallang.IDateTime;
-import io.usethesource.vallang.IExternalValue;
-import io.usethesource.vallang.IInteger;
-import io.usethesource.vallang.IList;
-import io.usethesource.vallang.IMap;
-import io.usethesource.vallang.INode;
-import io.usethesource.vallang.IRational;
-import io.usethesource.vallang.IReal;
-import io.usethesource.vallang.ISet;
-import io.usethesource.vallang.ISourceLocation;
-import io.usethesource.vallang.IString;
-import io.usethesource.vallang.ITuple;
-import io.usethesource.vallang.IValue;
-import io.usethesource.vallang.IWithKeywordParameters;
-import io.usethesource.vallang.impl.fields.ConstructorWithKeywordParametersFacade;
-import io.usethesource.vallang.visitors.IValueVisitor;
-
-import com.google.gson.stream.JsonWriter;
-
-public class JSONWritingValueVisitor implements IValueVisitor {
-
- private final JsonWriter out;
-
- private final boolean compact;
-
- public JSONWritingValueVisitor(JsonWriter out, boolean compact) {
- this.out = out;
- this.compact = compact;
- }
-
- public static void write(JsonWriter out, IValue value, boolean compact)
- throws IOException {
- value.accept(new JSONWritingValueVisitor(out, compact));
- }
-
- public static void write(JsonWriter out, IValue value)
- throws IOException {
- write(out, value, false);
- }
-
- @Override
- public Void visitReal(IReal value) throws IOException {
- // {real: n}
- if (compact) {
- out.value(value.doubleValue());
- } else {
- out.beginArray()
- .value("real")
- .value(value.doubleValue())
- .endArray();
- }
- return null;
- }
-
- @Override
- public Void visitInteger(IInteger value) throws IOException {
- // {int: n}
- if (compact) {
- out.value(value.intValue());
- } else {
- out.beginArray()
- .value("int")
- .value(((IInteger) value).intValue())
- .endArray();
- }
- return null;
- }
-
- @Override
- public Void visitRational(IRational value) throws IOException {
- // {rat: [n, d] }
- if (!compact) {
- out.beginArray()
- .value("rat");
- }
-
- out.beginArray()
- .value(((IRational) value).numerator().longValue())
- .value(((IRational) value).denominator().longValue())
- .endArray();
-
- if (!compact) {
- out.endArray();
- }
- return null;
- }
-
- @Override
- public Void visitList(IList value) throws IOException {
- // {list: [ ... ] }
- if (compact) {
- out.beginArray();
- for (IValue v : (IList) value) {
- write(out, v, compact);
- }
- out.endArray();
- }
- else
- {
- out.beginArray()
- .value("list")
- .beginArray();
- for (IValue v : (IList) value) {
- write(out, v);
- }
- out.endArray()
- .endArray();
- }
- return null;
- }
-
- @Override
- public Void visitMap(IMap value) throws IOException {
- // {map: [ [k, v], [k, v] ] }
- if (compact) {
- out.beginObject();
- for (IValue k : (IMap) value) {
- if (k.getType().isString()) {
- String s = ((IString) k).getValue();
- out.name(s);
- write(out, ((IMap) value).get(k), compact);
- } else
- throw new IOException("Not possible to translate: " + value);
- }
- out.endObject();
- } else {
- out.beginArray()
- .value("map")
- .beginArray();
- for (IValue k : (IMap) value) {
- out.beginArray();
- write(out, k);
- write(out, ((IMap) value).get(k));
- out.endArray();
- }
- out.endArray()
- .endArray();
- }
- return null;
- }
-
- @Override
- public Void visitSet(ISet value) throws IOException {
- if (compact) {
- out.beginArray();
- for (IValue v : (ISet) value) {
- write(out, v, compact);
- }
- out.endArray();
- } else {
- // {set: [.... ]}
- out.beginArray();
- out.value("set");
- out.beginArray();
- for (IValue v : (ISet) value) {
- write(out, v);
- }
- out.endArray();
- out.endArray();
- }
- return null;
- }
-
- @Override
- public Void visitSourceLocation(ISourceLocation value) throws IOException {
- // {loc: {...} }
- if (!compact) {
- out.beginArray();
- out.value("loc");
- }
-
- out.beginObject();
- ISourceLocation loc = (ISourceLocation) value;
-
- out.name("scheme");
- out.value(loc.getScheme());
-
- if (loc.hasAuthority()) {
- out.name("authority");
- out.value(loc.getAuthority());
- }
- if (loc.hasPath()) {
- out.name("path");
- out.value(loc.getPath());
- }
- if (loc.hasFragment()) {
- out.name("fragment");
- out.value(loc.getFragment());
- }
- if (loc.hasQuery()) {
- out.name("query");
- out.value(loc.getQuery());
- }
-
- if (loc.hasOffsetLength()) {
- out.name("offset");
- out.value(loc.getOffset());
- out.name("length");
- out.value(loc.getLength());
- }
-
- if (loc.hasLineColumn()) {
- out.name("beginLine");
- out.value(loc.getBeginLine());
- out.name("endLine");
- out.value(loc.getEndLine());
- out.name("beginColumn");
- out.value(loc.getBeginColumn());
- out.name("endColumn");
- out.value(loc.getEndColumn());
- }
-
- out.endObject();
-
- if (!compact) {
- out.endArray();
- }
-
- return null;
- }
-
- @Override
- public Void visitString(IString value) throws IOException {
- if (compact) {
- out.value(((IString) value).getValue());
- } else {
- out.beginArray()
- .value("str")
- .value(((IString) value).getValue())
- .endArray();
- }
- return null;
- }
-
- @Override
- public Void visitNode(INode value) throws IOException {
- // ["node", ["name", arity, [...]] ]
- if (compact) {
- throw RuntimeExceptionFactory.illegalTypeArgument(value.toString(),
- null, null, "cannot serialize node types");
- } else {
- out.beginArray();
- out.value("node");
- out.beginArray();
- INode n = (INode) value;
- out.value(n.getName());
- out.value(n.arity());
- out.beginArray();
- for (IValue v : n.getChildren()) {
- write(out, v);
- }
- out.endArray();
-
- if (value.mayHaveKeywordParameters()) {
- IWithKeywordParameters extends INode> kw = value.asWithKeywordParameters();
- if (kw.hasParameters()) {
- out.beginObject();
- for (String k : kw.getParameterNames()) {
- out.name(k);
- write(out, kw.getParameter(k));
- }
- out.endObject();
- }
- }
-
- out.endArray();
- out.endArray();
- }
- return null;
- }
-
- @Override
- public Void visitConstructor(IConstructor value) throws IOException {
- if (compact) {
- throw RuntimeExceptionFactory.illegalTypeArgument(value.toString(),
- null, null, "cannot serialize constructor types");
- }
- else {
- if (value.getType().getAbstractDataType() == Factory.JSON) {
- return writePlainJSON(value);
- }
-
-
- // ["cons", ["name", arity, [...], { }]]
- out.beginArray();
- out.value("cons");
- out.beginArray();
- out.value(value.getName());
- out.value(value.arity());
- out.beginArray();
- for (IValue v : value.getChildren()) {
- write(out, v);
- }
- out.endArray();
-
- //if (!value.asAnnotatable().hasAnnotations()) {
- // temp hack
- if (value instanceof ConstructorWithKeywordParametersFacade) {
- IWithKeywordParameters extends INode> kw = value.asWithKeywordParameters();
- if (kw.hasParameters()) {
- out.beginObject();
- for (String k : kw.getParameterNames()) {
- out.name(k);
- write(out, kw.getParameter(k));
- }
- out.endObject();
-
- }
- }
-// }
-
- out.endArray();
-
- out.endArray();
- }
- return null;
- }
-
- private Void writePlainJSON(IConstructor value) throws IndexOutOfBoundsException, IOException {
- switch (value.getName()) {
- case "null":
- out.nullValue();
- break;
- case "object":
- IMap props = (IMap) value.get(0);
- out.beginObject();
- for (IValue k: props) {
- out.name(((IString)k).getValue());
- writePlainJSON((IConstructor) props.get(k));
- }
- out.endObject();
- break;
- case "array":
- IList vals = (IList) value.get(0);
- out.beginArray();
- for (IValue v: vals) {
- writePlainJSON((IConstructor) v);
- }
- out.endArray();
- break;
- case "number":
- out.value(((IReal)value.get(0)).doubleValue());
- break;
- case "string":
- out.value(((IString)value.get(0)).getValue());
- break;
- case "boolean":
- out.value(((IBool)value.get(0)).getValue());
- break;
- case "ivalue":
- out.beginObject();
- out.name("#value");
- value.get(0).accept(this);
- out.endObject();
- break;
- default:
- throw new IOException("invalid JSON constructor " + value);
- }
- return null;
- }
-
- @Override
- public Void visitTuple(ITuple value) throws IOException {
- // {tuple: [ ... ]}
- if (compact) {
- throw RuntimeExceptionFactory.illegalTypeArgument(value.toString(),
- null, null, "cannot serialize tuple types");
-
- } else {
- out.beginArray()
- .value("tuple");
- out.beginArray();
- ITuple t = (ITuple) value;
- for (int i = 0; i < t.arity(); i++) {
- write(out, t.get(i));
- }
- out.endArray();
- out.endArray();
- }
- return null;
- }
-
-
-
- @Override
- public Void visitBoolean(IBool value) throws IOException {
- // {bool: ..}
- if (compact) {
- out.value(((IBool) value).getValue());
- } else {
- out.beginArray()
- .value("bool")
- .value(((IBool) value).getValue())
- .endArray();
- }
- return null;
- }
-
-
- @Override
- public Void visitExternal(IExternalValue value) throws IOException {
- throw RuntimeExceptionFactory.illegalTypeArgument(value.toString(),
- null, null, "cannot serialize external types");
- }
-
- @Override
- public Void visitDateTime(IDateTime value) throws IOException {
- // {datetime: { }}
- if (compact) {
- throw RuntimeExceptionFactory.illegalTypeArgument(value.toString(),
- null, null, "cannot serialize datetime types");
- } else {
- IDateTime dt = (IDateTime) value;
- out.beginArray();
- out.value("datetime");
- out.beginObject();
- if (dt.isDate() || dt.isDateTime()) {
- out.name("year");
- out.value(dt.getYear());
- out.name("monthOfYear");
- out.value(dt.getMonthOfYear());
- out.name("dayOfMonth");
- out.value(dt.getDayOfMonth());
-
- }
- if (dt.isTime() || dt.isDateTime()) {
- out.name("hourOfDay");
- out.value(dt.getHourOfDay());
- out.name("minuteOfHour");
- out.value(dt.getMinuteOfHour());
- out.name("secondOfMinute");
- out.value(dt.getSecondOfMinute());
- out.name("millisecondsOfSecond");
- out.value(dt.getMillisecondsOfSecond());
- out.name("timezoneOffsetHours");
- out.value(dt.getTimezoneOffsetHours());
- out.name("timezoneOffsetMinutes");
- out.value(dt.getTimezoneOffsetMinutes());
- }
- out.endObject();
- out.endArray();
- }
- return null;
- }
-}
diff --git a/src/org/rascalmpl/library/lang/json/internal/JsonValueReader.java b/src/org/rascalmpl/library/lang/json/internal/JsonValueReader.java
index 23b64f81606..f10aa19aebc 100644
--- a/src/org/rascalmpl/library/lang/json/internal/JsonValueReader.java
+++ b/src/org/rascalmpl/library/lang/json/internal/JsonValueReader.java
@@ -12,6 +12,7 @@
*/
package org.rascalmpl.library.lang.json.internal;
+import java.io.EOFException;
import java.io.IOException;
import java.io.StringReader;
import java.lang.invoke.MethodHandles;
@@ -20,19 +21,28 @@
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
-
import org.rascalmpl.debug.IRascalMonitor;
+import org.rascalmpl.exceptions.RuntimeExceptionFactory;
+import org.rascalmpl.exceptions.Throw;
+import org.rascalmpl.types.ReifiedType;
import org.rascalmpl.uri.URIUtil;
+import org.rascalmpl.values.IRascalValueFactory;
+import org.rascalmpl.values.functions.IFunction;
+import org.rascalmpl.values.maybe.UtilMaybe;
+
+import io.usethesource.vallang.IConstructor;
import io.usethesource.vallang.IInteger;
import io.usethesource.vallang.IListWriter;
import io.usethesource.vallang.IMapWriter;
import io.usethesource.vallang.ISetWriter;
import io.usethesource.vallang.ISourceLocation;
+import io.usethesource.vallang.IString;
import io.usethesource.vallang.IValue;
import io.usethesource.vallang.IValueFactory;
import io.usethesource.vallang.io.StandardTextReader;
@@ -41,628 +51,931 @@
import io.usethesource.vallang.type.TypeFactory;
import io.usethesource.vallang.type.TypeStore;
+import com.google.gson.JsonParseException;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonToken;
+import com.google.gson.stream.MalformedJsonException;
/**
* This class streams a JSON stream directly to an IValue representation and validates the content
* to a given type as declared in a given type store. See the Rascal file lang::json::IO::readJson for documentation.
-
*/
public class JsonValueReader {
- private static final TypeFactory TF = TypeFactory.getInstance();
- private final TypeStore store;
- private final IValueFactory vf;
- private ThreadLocal format;
- private final IRascalMonitor monitor;
- private ISourceLocation src;
- private VarHandle posHandler;
- private VarHandle lineHandler;
- private VarHandle lineStartHandler;
-
- /**
- * @param vf factory which will be used to construct values
- * @param store type store to lookup constructors of abstract data-types in and the types of keyword fields
- */
- public JsonValueReader(IValueFactory vf, TypeStore store, IRascalMonitor monitor, ISourceLocation src) {
- this.vf = vf;
- this.store = store;
- this.monitor = monitor;
- this.src = src;
- setCalendarFormat("yyyy-MM-dd'T'HH:mm:ssZ");
+ private final class ExpectedTypeDispatcher implements ITypeVisitor {
+ private final JsonReader in;
+ private int lastPos;
- if (src != null) {
+ private ExpectedTypeDispatcher(JsonReader in) {
+ this.in = in;
+ }
+
+ /**
+ * Wrapping in.nextString for better error reporting
+ */
+ private String nextString() throws IOException {
+ // need to cache the last position before parsing the string, because
+ // when the string does not have a balancing quote the read accidentally
+ // rewinds the position to 0.
+ lastPos=getPos();
+ return in.nextString();
+ }
+
+ /**
+ * Wrapping in.nextName for better error reporting
+ */
+ private String nextName() throws IOException {
+ // need to cache the last position before parsing the string, because
+ // when the string does not have a balancing quote the read accidentally
+ // rewinds the position to 0.
+ lastPos=getPos();
+ return in.nextName();
+ }
+
+ @Override
+ public IValue visitInteger(Type type) throws IOException {
try {
- var lookup = MethodHandles.lookup();
- var privateLookup = MethodHandles.privateLookupIn(JsonReader.class, lookup);
- this.posHandler = privateLookup.findVarHandle(JsonReader.class, "pos", int.class);
- this.lineHandler = privateLookup.findVarHandle(JsonReader.class, "lineNumber", int.class);
- this.lineStartHandler = privateLookup.findVarHandle(JsonReader.class, "lineStart", int.class);
+ switch (in.peek()) {
+ case NUMBER:
+ // fallthrough
+ case STRING:
+ return vf.integer(nextString());
+ case NULL:
+ in.nextNull();
+ return inferNullValue(nulls, type);
+ default:
+ throw parseErrorHere("Expected integer but got " + in.peek());
+ }
}
- catch (NoSuchFieldException | SecurityException | IllegalAccessException e) {
- // we disable the origin tracking if we can not get to the fields
- src = null;
- monitor.warning("Unable to retrieve origin information due to: " + e.getMessage(), src);
+ catch (NumberFormatException e) {
+ throw parseErrorHere("Expected integer but got " + e.getMessage());
}
}
- }
-
- public JsonValueReader(IValueFactory vf, IRascalMonitor monitor, ISourceLocation src) {
- this(vf, new TypeStore(), monitor, src);
- }
-
- /**
- * Builder method to set the format to use for all date-time values encoded as strings
- */
- public JsonValueReader setCalendarFormat(String format) {
- // SimpleDateFormat is not thread safe, so here we make sure
- // we can use objects of this reader in different threads at the same time
- this.format = new ThreadLocal() {
- protected SimpleDateFormat initialValue() {
- return new SimpleDateFormat(format);
- }
- };
- return this;
- }
- /**
- * Read and validate a Json stream as an IValue
- * @param in json stream
- * @param expected type to validate against (recursively)
- * @return an IValue of the expected type
- * @throws IOException when either a parse error or a validation error occurs
- */
- public IValue read(JsonReader in, Type expected) throws IOException {
- IValue res = expected.accept(new ITypeVisitor() {
- @Override
- public IValue visitInteger(Type type) throws IOException {
- try {
- switch (in.peek()) {
- case NUMBER:
- return vf.integer(in.nextLong());
- case STRING:
- return vf.integer(in.nextString());
- case NULL:
- return null;
- default:
- throw new IOException("Expected integer but got " + in.peek());
- }
- }
- catch (NumberFormatException e) {
- throw new IOException("Expected integer but got " + e.getMessage());
- }
- }
-
- public IValue visitReal(Type type) throws IOException {
- try {
- switch (in.peek()) {
- case NUMBER:
- return vf.real(in.nextDouble());
- case STRING:
- return vf.real(in.nextString());
- case NULL:
- return null;
- default:
- throw new IOException("Expected integer but got " + in.peek());
- }
- }
- catch (NumberFormatException e) {
- throw new IOException("Expected integer but got " + e.getMessage());
+ @Override
+ public IValue visitReal(Type type) throws IOException {
+ try {
+ switch (in.peek()) {
+ case NUMBER:
+ // fallthrough
+ case STRING:
+ return vf.real(nextString());
+ case NULL:
+ in.nextNull();
+ return inferNullValue(nulls, type);
+ default:
+ throw parseErrorHere("Expected real but got " + in.peek());
}
}
-
- @Override
- public IValue visitExternal(Type type) throws IOException {
- throw new IOException("External type " + type + "is not implemented yet by the json reader:" + in.getPath());
+ catch (NumberFormatException e) {
+ throw parseErrorHere("Expected real but got " + e.getMessage());
}
-
- @Override
- public IValue visitString(Type type) throws IOException {
- if (isNull()) {
- return null;
- }
-
- return vf.string(in.nextString());
+ }
+
+ private IValue inferNullValue(Map nulls, Type expected) {
+ return nulls.keySet().stream()
+ .sorted((x,y) -> x.compareTo(y)) // smaller types are matched first
+ .filter(superType -> expected.isSubtypeOf(superType)) // remove any type that does not fit
+ .findFirst() // give the most specific match
+ .map(t -> nulls.get(t)) // lookup the corresponding null value
+ .filter(r -> r.getType().isSubtypeOf(expected)) // the value in the table still has to fit the currently expected type
+ .orElse(null); // or muddle on and throw NPE elsewhere
+
+ // The NPE triggering "elsewhere" should help with fault localization.
+ }
+
+ @Override
+ public IValue visitExternal(Type type) throws IOException {
+ throw parseErrorHere("External type " + type + "is not implemented yet by the json reader:" + in.getPath());
+ }
+
+ @Override
+ public IValue visitString(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
}
-
+
+ return vf.string(nextString());
+ }
+
@Override
public IValue visitTuple(Type type) throws IOException {
if (isNull()) {
return null;
}
- List l = new ArrayList<>();
- in.beginArray();
-
- if (type.hasFieldNames()) {
- for (int i = 0; i < type.getArity(); i++) {
- l.add(read(in, type.getFieldType(i)));
- }
+ List l = new ArrayList<>();
+ in.beginArray();
+
+ if (type.hasFieldNames()) {
+ for (int i = 0; i < type.getArity(); i++) {
+ l.add(read(in, type.getFieldType(i)));
}
- else {
- for (int i = 0; i < type.getArity(); i++) {
- l.add(read(in, type.getFieldType(i)));
- }
+ }
+ else {
+ for (int i = 0; i < type.getArity(); i++) {
+ l.add(read(in, type.getFieldType(i)));
}
-
- in.endArray();
- return vf.tuple(l.toArray(new IValue[l.size()]));
}
-
- @Override
- public IValue visitVoid(Type type) throws IOException {
- throw new IOException("Can not read json values of type void: " + in.getPath());
+
+ in.endArray();
+ return vf.tuple(l.toArray(new IValue[l.size()]));
+ }
+
+ @Override
+ public IValue visitVoid(Type type) throws IOException {
+ throw parseErrorHere("Can not read json values of type void: " + in.getPath());
+ }
+
+ @Override
+ public IValue visitFunction(Type type) throws IOException {
+ throw parseErrorHere("Can not read json values of function types: " + in.getPath());
+ }
+
+ @Override
+ public IValue visitSourceLocation(Type type) throws IOException {
+ switch (in.peek()) {
+ case STRING:
+ return sourceLocationString();
+ case BEGIN_OBJECT:
+ return sourceLocationObject();
+ default:
+ throw parseErrorHere("Could not find string or source location object here: " + in.getPath());
}
+ }
- @Override
- public IValue visitFunction(Type type) throws IOException {
- throw new IOException("Can not read json values of function types: " + in.getPath());
+ private IValue sourceLocationObject() throws IOException {
+ String scheme = null;
+ String authority = null;
+ String path = null;
+ String fragment = "";
+ String query = "";
+ int offset = -1;
+ int length = -1;
+ int beginLine = -1;
+ int endLine = -1;
+ int beginColumn = -1;
+ int endColumn = -1;
+
+ in.beginObject();
+
+ while (in.hasNext()) {
+ String name = nextName();
+
+ switch (name) {
+ case "scheme":
+ scheme = nextString();
+ break;
+ case "authority":
+ authority = nextString();
+ break;
+ case "path":
+ path = nextString();
+ break;
+ case "fragment":
+ fragment = nextString();
+ break;
+ case "query":
+ query = nextString();
+ break;
+ case "offset":
+ offset = in.nextInt();
+ break;
+ case "length":
+ length = in.nextInt();
+ break;
+ case "start":
+ case "begin":
+ in.beginArray();
+ beginLine = in.nextInt();
+ beginColumn = in.nextInt();
+ in.endArray();
+ break;
+ case "end":
+ in.beginArray();
+ endLine = in.nextInt();
+ endColumn = in.nextInt();
+ in.endArray();
+ break;
+ default:
+ throw parseErrorHere("unexpected property name " + name + " :" + in.getPath());
+ }
}
- @Override
- public IValue visitSourceLocation(Type type) throws IOException {
- switch (in.peek()) {
- case STRING:
- return sourceLocationString();
- case BEGIN_OBJECT:
- return sourceLocationObject();
- default:
- throw new IOException("Could not find string or source location object here: " + in.getPath());
+ in.endObject();
+ try {
+ ISourceLocation root;
+ if (scheme != null && authority != null && query != null && fragment != null) {
+ root = vf.sourceLocation(scheme, authority, path, query, fragment);
}
- }
-
- private IValue sourceLocationObject() throws IOException {
- String scheme = null;
- String authority = null;
- String path = null;
- String fragment = "";
- String query = "";
- int offset = -1;
- int length = -1;
- int beginLine = -1;
- int endLine = -1;
- int beginColumn = -1;
- int endColumn = -1;
-
- in.beginObject();
-
- while (in.hasNext()) {
- String name = in.nextName();
- switch (name) {
- case "scheme":
- scheme = in.nextString();
- break;
- case "authority":
- authority = in.nextString();
- break;
- case "path":
- path = in.nextString();
- break;
- case "fragment":
- fragment = in.nextString();
- break;
- case "query":
- query = in.nextString();
- break;
- case "offset":
- offset = in.nextInt();
- break;
- case "length":
- length = in.nextInt();
- break;
- case "start":
- case "begin":
- in.beginArray();
- beginLine = in.nextInt();
- beginColumn = in.nextInt();
- in.endArray();
- break;
- case "end":
- in.beginArray();
- endLine = in.nextInt();
- endColumn = in.nextInt();
- in.endArray();
- break;
- default:
- throw new IOException("unexpected property name " + name + " :" + in.getPath());
- }
+ else if (scheme != null) {
+ root = vf.sourceLocation(scheme, authority == null ? "" : authority, path);
}
-
- in.endObject();
+ else if (path != null) {
+ root = URIUtil.createFileLocation(path);
+ }
+ else {
+ throw parseErrorHere("Could not parse complete source location: " + in.getPath());
+ }
+ if (offset != -1 && length != -1 && beginLine != -1 && endLine != -1 && beginColumn != -1 && endColumn != -1) {
+ return vf.sourceLocation(root, offset, length, beginLine, endLine, beginColumn, endColumn);
+ }
+ if (offset != -1 && length != -1) {
+ return vf.sourceLocation(root, offset, length);
+ }
+ return root;
+ } catch (URISyntaxException e) {
+ throw parseErrorHere(e.getMessage());
+ }
+ }
+
+ @Override
+ public IValue visitValue(Type type) throws IOException {
+ switch (in.peek()) {
+ case NUMBER:
+ return visitNumber(TF.numberType());
+ case STRING:
+ return visitString(TF.stringType());
+ case BEGIN_ARRAY:
+ return visitList(TF.listType(TF.valueType()));
+ case BEGIN_OBJECT:
+ return visitNode(TF.nodeType());
+ case BOOLEAN:
+ return visitBool(TF.nodeType());
+ case NAME:
+ // this would be weird though
+ return vf.string(nextName());
+ case NULL:
+ in.nextNull();
+ return inferNullValue(nulls, type);
+ default:
+ throw parseErrorHere("Did not expect end of Json value here, while looking for " + type + " + at " + in.getPath());
+ }
+ }
+
+ private IValue sourceLocationString() throws IOException {
try {
- ISourceLocation root;
- if (scheme != null && authority != null && query != null && fragment != null) {
- root = vf.sourceLocation(scheme, authority, path, query, fragment);
- }
- else if (scheme != null) {
- root = vf.sourceLocation(scheme, authority == null ? "" : authority, path);
+ String val = nextString().trim();
+
+ if (val.startsWith("|") && (val.endsWith("|") || val.endsWith(")"))) {
+ return new StandardTextReader().read(vf, new StringReader(val));
}
- else if (path != null) {
- root = URIUtil.createFileLocation(path);
+ else if (val.contains("://")) {
+ return vf.sourceLocation(URIUtil.createFromEncoded(val));
}
else {
- throw new IOException("Could not parse complete source location: " + in.getPath());
+ // will be simple interpreted as an absolute file name
+ return URIUtil.createFileLocation(val);
}
- if (offset != -1 && length != -1 && beginLine != -1 && endLine != -1 && beginColumn != -1 && endColumn != -1) {
- return vf.sourceLocation(root, offset, length, beginLine, endLine, beginColumn, endColumn);
- }
- if (offset != -1 && length != -1) {
- return vf.sourceLocation(root, offset, length);
- }
- return root;
- } catch (URISyntaxException e) {
- throw new IOException(e);
+ }
+ catch (URISyntaxException e) {
+ throw parseErrorHere(e.getMessage());
}
+ }
+
+ @Override
+ public IValue visitRational(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
}
- @Override
- public IValue visitValue(Type type) throws IOException {
- switch (in.peek()) {
- case NUMBER:
- try {
- return vf.integer(in.nextLong());
- } catch (NumberFormatException e) {
- return vf.real(in.nextDouble());
- }
- case STRING:
- return visitString(TF.stringType());
- case BEGIN_ARRAY:
- return visitList(TF.listType(TF.valueType()));
- case BEGIN_OBJECT:
- return visitNode(TF.nodeType());
- case BOOLEAN:
- return visitBool(TF.nodeType());
- case NAME:
- // this would be weird though
- return vf.string(in.nextName());
- case NULL:
- in.nextNull();
- return null;
- default:
- throw new IOException("Did not expect end of Json value here, while looking for " + type + " + at " + in.getPath());
- }
+ switch (in.peek()) {
+ case BEGIN_ARRAY:
+ in.beginArray();
+ IInteger numA = (IInteger) read(in, TF.integerType());
+ IInteger denomA = (IInteger) read(in, TF.integerType());
+ in.endArray();
+ return vf.rational(numA, denomA);
+ case STRING:
+ return vf.rational(nextString());
+ default:
+ throw parseErrorHere("Expected integer but got " + in.peek());
+ }
+ }
+
+ @Override
+ public IValue visitMap(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
}
+ IMapWriter w = vf.mapWriter();
- private IValue sourceLocationString() throws IOException {
- try {
- String val = in.nextString().trim();
-
- if (val.startsWith("|") && (val.endsWith("|") || val.endsWith(")"))) {
- return new StandardTextReader().read(vf, new StringReader(val));
- }
- else if (val.contains("://")) {
- return vf.sourceLocation(URIUtil.createFromEncoded(val));
- }
- else {
- // will be simple interpreted as an absolute file name
- return URIUtil.createFileLocation(val);
- }
- } catch (URISyntaxException e) {
- throw new IOException("could not parse URI:" + in.getPath() + " due to " + e.getMessage(), e);
+ switch (in.peek()) {
+ case BEGIN_OBJECT:
+ in.beginObject();
+ if (!type.getKeyType().isString() && in.peek() != JsonToken.END_OBJECT) {
+ throw parseErrorHere("Can not read JSon object as a map if the key type of the map (" + type + ") is not a string at " + in.getPath());
+ }
+
+ while (in.hasNext()) {
+ w.put(vf.string(nextName()), read(in, type.getValueType()));
}
+ in.endObject();
+ return w.done();
+ case BEGIN_ARRAY:
+ in.beginArray();
+ while (in.hasNext()) {
+ in.beginArray();
+ IValue key = read(in, type.getKeyType());
+ IValue value = read(in, type.getValueType());
+ w.put(key,value);
+ in.endArray();
+ }
+ in.endArray();
+ return w.done();
+ default:
+ throw parseErrorHere("Expected a map encoded as an object or an nested array to match " + type);
}
-
- public IValue visitRational(Type type) throws IOException {
- if (isNull()) {
- return null;
- }
-
- switch (in.peek()) {
- case BEGIN_OBJECT:
- in.beginObject();
- IInteger nomO = null, denomO = null;
- while (in.hasNext()) {
- switch (in.nextName()) {
- case "nominator":
- nomO = (IInteger) read(in, TF.integerType());
- case "denominator":
- denomO = (IInteger) read(in, TF.integerType());
- }
- }
+ }
- in.endObject();
+ @Override
+ public IValue visitAlias(Type type) throws IOException {
+ while (type.isAliased()) {
+ type = type.getAliased();
+ }
+
+ return type.accept(this);
+ }
- if (nomO == null || denomO == null) {
- throw new IOException("Did not find all fields of expected rational at " + in.getPath());
- }
+ @Override
+ public IValue visitBool(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
+ }
+ return vf.bool(in.nextBoolean());
+ }
- return vf.rational(nomO, denomO);
- case BEGIN_ARRAY:
- in.beginArray();
- IInteger nomA = (IInteger) read(in, TF.integerType());
- IInteger denomA = (IInteger) read(in, TF.integerType());
- in.endArray();
- return vf.rational(nomA, denomA);
- case STRING:
- return vf.rational(in.nextString());
- default:
- throw new IOException("Expected integer but got " + in.peek());
- }
+ private int getPos() {
+ if (src == null) {
+ return 0;
}
- @Override
- public IValue visitMap(Type type) throws IOException {
- if (isNull()) {
- return null;
- }
- IMapWriter w = vf.mapWriter();
-
- switch (in.peek()) {
- case BEGIN_OBJECT:
- in.beginObject();
- if (!type.getKeyType().isString()) {
- throw new IOException("Can not read JSon object as a map if the key type of the map (" + type + ") is not a string at " + in.getPath());
- }
-
- while (in.hasNext()) {
- w.put(vf.string(in.nextName()), read(in, type.getValueType()));
- }
- in.endObject();
- return w.done();
- case BEGIN_ARRAY:
- in.beginArray();
- while (in.hasNext()) {
- in.beginArray();
- IValue key = read(in, type.getKeyType());
- IValue value = read(in, type.getValueType());
- w.put(key,value);
- in.endArray();
- }
- in.endArray();
- return w.done();
- default:
- throw new IOException("Expected a map encoded as an object or an nested array to match " + type);
- }
+ try {
+ return Math.max(0, (int) posHandler.get(in) - 1);
}
-
- @Override
- public IValue visitAlias(Type type) throws IOException {
- while (type.isAliased()) {
- type = type.getAliased();
- }
-
- return type.accept(this);
+ catch (IllegalArgumentException | SecurityException e) {
+ // stop trying to recover the positions
+ src = null;
+ return 0;
}
-
- @Override
- public IValue visitBool(Type type) throws IOException {
- if (isNull()) {
- return null;
- }
- return vf.bool(in.nextBoolean());
+ }
+
+ private int getLine() {
+ if (src == null) {
+ return 0;
}
-
- private int getPos() {
- if (src == null) {
- return 0;
- }
- try {
- return (int) posHandler.get(in) - 1;
- }
- catch (IllegalArgumentException | SecurityException e) {
- // stop trying to recover the positions
- src = null;
- return 0;
- }
+ try {
+ return (int) lineHandler.get(in) + 1;
+ }
+ catch (IllegalArgumentException | SecurityException e) {
+ // stop trying to recover the positions
+ src = null;
+ return 0;
}
+ }
- private int getLine() {
- if (src == null) {
- return 0;
- }
+ private int getCol() {
+ if (src == null) {
+ return 0;
+ }
+ try {
+ return getPos() - (int) lineStartHandler.get(in);
+ }
+ catch (IllegalArgumentException | SecurityException e) {
+ // stop trying to recover the positions
+ src = null;
+ return 0;
+ }
+ }
+
+ protected Throw parseErrorHere(String cause) {
+ var location = src == null ? URIUtil.rootLocation("unknown") : src;
+ int offset = Math.max(getPos(), lastPos);
+ int line = getLine();
+ int col = getCol();
+
+ return RuntimeExceptionFactory.jsonParseError(
+ vf.sourceLocation(location,offset, 1, line, line, col, col + 1),
+ cause,
+ in.getPath());
+ }
+
+ /**
+ * Expecting an ADT we found NULL on the lookahead.
+ * This is either a Maybe or we can use the map
+ * of null values.
+ */
+ private IValue visitNullAsAbstractData(Type type) {
+ return inferNullValue(nulls, type);
+ }
+
+ /**
+ * Expecting an ADT we found a string value instead.
+ * Now we can (try to) apply the parsers that were passed in.
+ * If that does not fly, we can interpret strings as nullary ADT
+ * constructors.
+ */
+ private IValue visitStringAsAbstractData(Type type) throws IOException {
+ var stringInput = nextString();
+
+ // might be a parsable string. let's see.
+ if (parsers != null) {
+ var reified = new org.rascalmpl.types.TypeReifier(vf).typeToValue(type, new TypeStore(), vf.map());
+
try {
- return (int) lineHandler.get(in) + 1;
+ return parsers.call(Collections.emptyMap(), reified, vf.string(stringInput));
}
- catch (IllegalArgumentException | SecurityException e) {
- // stop trying to recover the positions
- src = null;
- return 0;
+ catch (Throw t) {
+ Type excType = t.getException().getType();
+
+ if (excType.isAbstractData() && ((IConstructor) t.getException()).getConstructorType().getName().equals("ParseError")) {
+ throw t; // that's a real parse error to report
+ }
+ // otherwise we fall through to enum recognition
}
}
- private int getCol() {
- if (src == null) {
- return 0;
- }
+ // enum!
+ Set enumCons = store.lookupConstructor(type, stringInput);
- try {
- return getPos() - (int) lineStartHandler.get(in);
- }
- catch (IllegalArgumentException | SecurityException e) {
- // stop trying to recover the positions
- src = null;
- return 0;
+ for (Type candidate : enumCons) {
+ if (candidate.getArity() == 0) {
+ return vf.constructor(candidate);
}
}
+
+ if (parsers != null) {
+ throw parseErrorHere("parser failed to recognize \"" + stringInput + "\" and no nullary constructor found for " + type + "either");
+ }
+ else {
+ throw parseErrorHere("no nullary constructor found for " + type + ", that matches " + stringInput);
+ }
+ }
+ /**
+ * This is the main workhorse. Every object is mapped one-to-one to an ADT constructor
+ * instance. The field names (keyword parameters and positional) are mapped to field
+ * names of the object. The name of the constructor is _not_ consequential.
+ * @param type
+ * @return
+ * @throws IOException
+ */
+ private IValue visitObjectAsAbstractData(Type type) throws IOException {
+ Set alternatives = null;
- @Override
- public IValue visitAbstractData(Type type) throws IOException {
- if (in.peek() == JsonToken.STRING) {
- // enum!
- Set enumCons = store.lookupConstructor(type, in.nextString());
-
- for (Type candidate : enumCons) {
- if (candidate.getArity() == 0) {
- return vf.constructor(candidate);
- }
+ in.beginObject();
+ int startPos = getPos();
+ int startLine = getLine();
+ int startCol = getCol();
+
+ // use explicit information in the JSON to select and filter constructors from the TypeStore
+ // we expect always to have the field _constructor before _type.
+ if (explicitConstructorNames || explicitDataTypes) {
+ String consName = null;
+ String typeName = null; // this one is optional, and the order with cons is not defined.
+ String consLabel = in.nextName();
+
+ // first we read either a cons name or a type name
+ if (explicitConstructorNames && "_constructor".equals(consLabel)) {
+ consName = in.nextString();
+ }
+ else if (explicitDataTypes && "_type".equals(consLabel)) {
+ typeName = in.nextString();
+ }
+
+ // optionally read the second field
+ if (explicitDataTypes && typeName == null) {
+ // we've read a constructor name, but we still need a type name
+ consLabel = in.nextName();
+ if (explicitDataTypes && "_type".equals(consLabel)) {
+ typeName = in.nextString();
+ }
+ }
+ else if (explicitDataTypes && consName == null) {
+ // we've read type name, but we still need a constructor name
+ consLabel = in.nextName();
+ if (explicitDataTypes && "_constructor".equals(consLabel)) {
+ consName = in.nextString();
}
-
- throw new IOException("no nullary constructor found for " + type);
}
- assert in.peek() == JsonToken.BEGIN_OBJECT;
+ if (explicitDataTypes && typeName == null) {
+ throw parseErrorHere("Missing a _type field: " + in.getPath());
+ }
+ else if (explicitConstructorNames && consName == null) {
+ throw parseErrorHere("Missing a _constructor field: " + in.getPath());
+ }
- Set alternatives = store.lookupAlternatives(type);
- if (alternatives.size() > 1) {
- monitor.warning("selecting arbitrary constructor for " + type, vf.sourceLocation(in.getPath()));
+ if (typeName != null && consName != null) {
+ // first focus on the given type name
+ var dataType = TF.abstractDataType(store, typeName);
+ alternatives = store.lookupConstructor(dataType, consName);
}
- Type cons = alternatives.iterator().next();
-
- in.beginObject();
- int startPos = getPos();
- int startLine = getLine();
- int startCol = getCol();
+ else {
+ // we only have a constructor name
+ // lookup over all data types by constructor name
+ alternatives = store.lookupConstructors(consName);
+ }
+ }
+ else {
+ alternatives = store.lookupAlternatives(type);
+ }
+
+ if (alternatives.size() > 1) {
+ monitor.warning("selecting arbitrary constructor for " + type, vf.sourceLocation(in.getPath()));
+ }
+ else if (alternatives.size() == 0) {
+ throw parseErrorHere("No fitting constructor found for " + in.getPath());
+ }
+
+ Type cons = alternatives.iterator().next();
- IValue[] args = new IValue[cons.getArity()];
- Map kwParams = new HashMap<>();
+ IValue[] args = new IValue[cons.getArity()];
+ Map kwParams = new HashMap<>();
- if (!cons.hasFieldNames() && cons.getArity() != 0) {
- throw new IOException("For the object encoding constructors must have field names " + in.getPath());
+ if (!cons.hasFieldNames() && cons.getArity() != 0) {
+ throw parseErrorHere("For the object encoding constructors must have field names " + in.getPath());
+ }
+
+ while (in.hasNext()) {
+ String label = in.nextName();
+ if (cons.hasField(label)) {
+ IValue val = read(in, cons.getFieldType(label));
+ if (val != null) {
+ args[cons.getFieldIndex(label)] = val;
+ }
+ else {
+ throw parseErrorHere("Could not parse argument " + label + ":" + in.getPath());
+ }
}
-
- while (in.hasNext()) {
- String label = in.nextName();
- if (cons.hasField(label)) {
- IValue val = read(in, cons.getFieldType(label));
+ else if (cons.hasKeywordField(label, store)) {
+ if (!isNull()) { // lookahead for null to give default parameters the preference.
+ IValue val = read(in, store.getKeywordParameterType(cons, label));
+ // null can still happen if the nulls map doesn't have a default
if (val != null) {
- args[cons.getFieldIndex(label)] = val;
- }
- else {
- throw new IOException("Could not parse argument " + label + ":" + in.getPath());
+ // if the value is null we'd use the default value of the defined field in the constructor
+ kwParams.put(label, val);
}
}
- else if (cons.hasKeywordField(label, store)) {
- IValue val = read(in, store.getKeywordParameterType(cons, label));
- if (val != null) {
- // if the value is null we'd use the default value of the defined field in the constructor
- kwParams.put(label, val);
+ else {
+ var nullValue = inferNullValue(nulls, cons.getAbstractDataType());
+ if (nullValue != null) {
+ kwParams.put(label, nullValue);
}
}
- else { // its a normal arg, pass its label to the child
- throw new IOException("Unknown field " + label + ":" + in.getPath());
+ }
+ else { // its a normal arg, pass its label to the child
+ if (!explicitConstructorNames && "_constructor".equals(label)) {
+ // ignore additional _constructor fields.
+ in.nextString(); // skip the constructor value
+ continue;
}
- }
-
- in.endObject();
- int endPos = getPos();
- int endLine = getLine();
- int endCol = getCol();
-
- for (int i = 0; i < args.length; i++) {
- if (args[i] == null) {
- throw new IOException("Missing argument " + cons.getFieldName(i) + " to " + cons + ":" + in.getPath());
+ else if (!explicitDataTypes && "_type".equals(label)) {
+ // ignore additional _type fields.
+ in.nextString(); // skip the type value
+ continue;
+ }
+ else {
+ // field label does not match data type definition
+ throw parseErrorHere("Unknown field " + label + ":" + in.getPath());
}
}
+ }
- if (src != null) {
- kwParams.put(kwParams.containsKey("src") ? "rascal-src" : "src", vf.sourceLocation(src, startPos, endPos - startPos + 1, startLine, endLine, startCol, endCol + 1));
+ in.endObject();
+ int endPos = getPos();
+ int endLine = getLine();
+ int endCol = getCol();
+
+ for (int i = 0; i < args.length; i++) {
+ if (args[i] == null) {
+ throw parseErrorHere("Missing argument " + cons.getFieldName(i) + " to " + cons + ":" + in.getPath());
}
+ }
+
+ if (src != null) {
+ kwParams.put(kwParams.containsKey("src") ? "rascal-src" : "src", vf.sourceLocation(src, startPos, endPos - startPos + 1, startLine, endLine, startCol, endCol + 1));
+ }
+ return vf.constructor(cons, args, kwParams);
+ }
- return vf.constructor(cons, args, kwParams);
+ @Override
+ public IValue visitAbstractData(Type type) throws IOException {
+ if (UtilMaybe.isMaybe(type)) {
+ if (in.peek() == JsonToken.NULL) {
+ in.nextNull();
+ return UtilMaybe.nothing();
+ }
+ else {
+ // dive into the wrapped type, and wrap the result. Could be a str, int, or anything.
+ return UtilMaybe.just(type.getTypeParameters().getFieldType(0).accept(this));
+ }
}
-
- @Override
- public IValue visitConstructor(Type type) throws IOException {
- return read(in, type.getAbstractDataType());
+
+ switch (in.peek()) {
+ case NULL:
+ return visitNullAsAbstractData(type);
+ case STRING:
+ return visitStringAsAbstractData(type);
+ case BEGIN_OBJECT:
+ return visitObjectAsAbstractData(type);
+ default:
+ throw parseErrorHere("Expected ADT:" + type + ", but found " + in.peek().toString());
}
+ }
+
+ @Override
+ public IValue visitConstructor(Type type) throws IOException {
+ return read(in, type.getAbstractDataType());
+ }
+
+ @Override
+ public IValue visitNode(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
+ }
+
+ in.beginObject();
+ int startPos = getPos();
+ int startLine = getLine();
+ int startCol = getCol();
+
+ Map kws = new HashMap<>();
+ Map args = new HashMap<>();
- @Override
- public IValue visitNode(Type type) throws IOException {
- in.beginObject();
- int startPos = getPos();
- int startLine = getLine();
- int startCol = getCol();
-
- Map kws = new HashMap<>();
-
- while (in.hasNext()) {
- String kwName = in.nextName();
- IValue value = read(in, TF.valueType());
+ String name = "object";
+
+ while (in.hasNext()) {
+ String kwName = nextName();
+
+ if (kwName.equals("_name")) {
+ name = ((IString) read(in, TF.stringType())).getValue();
+ continue;
+ }
+
+ boolean positioned = kwName.startsWith("arg");
+
+ if (!isNull()) { // lookahead for null to give default parameters the preference.
+ IValue val = read(in, TF.valueType());
- if (value != null) {
- kws.put(kwName, value);
+ if (val != null) {
+ // if the value is null we'd use the default value of the defined field in the constructor
+ (positioned ? args : kws).put(kwName, val);
}
}
-
- in.endObject();
- int endPos = getPos();
- int endLine = getLine();
- int endCol = getCol();
-
- if (src != null) {
- kws.put(kws.containsKey("src") ? "rascal-src" : "src", vf.sourceLocation(src, startPos, endPos - startPos + 1, startLine, endLine, startCol, endCol + 1));
+ else {
+ var nullValue = inferNullValue(nulls, TF.valueType());
+ if (nullValue != null) {
+ (positioned ? args : kws).put(kwName, nullValue);
+ }
}
-
- return vf.node("object", new IValue[] { }, kws);
}
- @Override
- public IValue visitNumber(Type type) throws IOException {
- return visitInteger(type);
+ in.endObject();
+ int endPos = getPos();
+ int endLine = getLine();
+ int endCol = getCol();
+
+ if (originTracking) {
+ kws.put(kws.containsKey("src") ? "rascal-src" : "src", vf.sourceLocation(src, startPos, endPos - startPos + 1, startLine, endLine, startCol, endCol + 1));
}
- @Override
- public IValue visitParameter(Type type) throws IOException {
- return type.getBound().accept(this);
- }
+ IValue[] argArray = args.entrySet().stream()
+ .sorted((e, f) -> e.getKey().compareTo(f.getKey()))
+ .map(e -> e.getValue())
+ .toArray(IValue[]::new);
- @Override
- public IValue visitDateTime(Type type) throws IOException {
- try {
- switch (in.peek()) {
- case STRING:
- Date parsedDate = format.get().parse(in.nextString());
- return vf.datetime(parsedDate.toInstant().toEpochMilli());
- case NUMBER:
- return vf.datetime(in.nextLong());
- default:
- throw new IOException("Expected a datetime instant " + in.getPath());
- }
- } catch (ParseException e) {
- throw new IOException("Could not parse date: " + in.getPath());
+ return vf.node(name, argArray, kws);
+ }
+
+ @Override
+ public IValue visitNumber(Type type) throws IOException {
+ if (in.peek() == JsonToken.BEGIN_ARRAY) {
+ return visitRational(type);
}
- }
-
- @Override
- public IValue visitList(Type type) throws IOException {
- if (isNull()) {
- return null;
+
+ String numberString = in.nextString();
+
+ if (numberString.contains("r")) {
+ return vf.rational(numberString);
+ }
+ if (numberString.matches(".*[\\.eE].*")) {
+ return vf.real(numberString);
+ }
+ else {
+ return vf.integer(numberString);
}
+ }
+
+ @Override
+ public IValue visitParameter(Type type) throws IOException {
+ return type.getBound().accept(this);
+ }
- IListWriter w = vf.listWriter();
- in.beginArray();
- while (in.hasNext()) {
- // here we pass label from the higher context
- w.append(read(in, type.getElementType()));
+ @Override
+ public IValue visitDateTime(Type type) throws IOException {
+ try {
+ switch (in.peek()) {
+ case STRING:
+ lastPos = getPos();
+ Date parsedDate = format.get().parse(nextString());
+ return vf.datetime(parsedDate.toInstant().toEpochMilli());
+ case NUMBER:
+ return vf.datetime(in.nextLong());
+ default:
+ throw parseErrorHere("Expected a datetime instant " + in.getPath());
}
+ } catch (ParseException e) {
+ throw parseErrorHere("Could not parse date: " + in.getPath());
+ }
+ }
- in.endArray();
- return w.done();
+ @Override
+ public IValue visitList(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
}
-
- public IValue visitSet(Type type) throws IOException {
- if (isNull()) {
- return null;
- }
- ISetWriter w = vf.setWriter();
- in.beginArray();
- while (in.hasNext()) {
- // here we pass label from the higher context
- w.insert(read(in, type.getElementType()));
- }
+ IListWriter w = vf.listWriter();
+ in.beginArray();
+ while (in.hasNext()) {
+ // here we pass label from the higher context
+ w.append(read(in, type.getElementType()));
+ }
+
+ in.endArray();
+ return w.done();
+ }
- in.endArray();
- return w.done();
+ public IValue visitSet(Type type) throws IOException {
+ if (isNull()) {
+ return inferNullValue(nulls, type);
}
- private boolean isNull() throws IOException {
- // we use null in JSon to encode optional values.
- // this will be mapped to keyword parameters in Rascal,
- // or an exception if we really need a value
- if (in.peek() == JsonToken.NULL) {
- in.nextNull();
- return true;
- }
- return false;
+ ISetWriter w = vf.setWriter();
+ in.beginArray();
+ while (in.hasNext()) {
+ // here we pass label from the higher context
+ w.insert(read(in, type.getElementType()));
}
- });
-
- return res;
+ in.endArray();
+ return w.done();
+ }
+
+ private boolean isNull() throws IOException {
+ // we use null in JSon to encode optional values.
+ // this will be mapped to keyword parameters in Rascal,
+ // or an exception if we really need a value
+ if (in.peek() == JsonToken.NULL) {
+ in.nextNull();
+ return true;
+ }
+ return false;
+ }
+ }
+
+ private static final TypeFactory TF = TypeFactory.getInstance();
+ private final TypeStore store;
+ private final IValueFactory vf;
+ private ThreadLocal format;
+ private final IRascalMonitor monitor;
+ private ISourceLocation src;
+ private boolean originTracking;
+ private VarHandle posHandler;
+ private VarHandle lineHandler;
+ private VarHandle lineStartHandler;
+ private boolean explicitConstructorNames;
+ private boolean explicitDataTypes;
+ private IFunction parsers;
+ private Map nulls = Collections.emptyMap();
+
+ /**
+ * @param vf factory which will be used to construct values
+ * @param store type store to lookup constructors of abstract data-types in and the types of keyword fields
+ * @param monitor provides progress reports and warnings
+ * @param src loc to use to identify the entire file.
+ */
+ public JsonValueReader(IValueFactory vf, TypeStore store, IRascalMonitor monitor, ISourceLocation src) {
+ this.vf = vf;
+ this.store = store;
+ this.monitor = monitor;
+ this.src = src;
+ setCalendarFormat("yyyy-MM-dd'T'HH:mm:ssZ");
+
+ if (src != null) {
+ try {
+ var lookup = MethodHandles.lookup();
+ var privateLookup = MethodHandles.privateLookupIn(JsonReader.class, lookup);
+ this.posHandler = privateLookup.findVarHandle(JsonReader.class, "pos", int.class);
+ this.lineHandler = privateLookup.findVarHandle(JsonReader.class, "lineNumber", int.class);
+ this.lineStartHandler = privateLookup.findVarHandle(JsonReader.class, "lineStart", int.class);
+ this.originTracking = (src != null);
+ }
+ catch (NoSuchFieldException | SecurityException | IllegalAccessException e) {
+ // we disable the origin tracking if we can not get to the fields
+ src = null;
+ originTracking = false;
+ monitor.warning("Unable to retrieve origin information due to: " + e.getMessage(), src);
+ }
+ }
+ }
+
+ public JsonValueReader(IValueFactory vf, IRascalMonitor monitor, ISourceLocation src) {
+ this(vf, new TypeStore(), monitor, src);
+ }
+
+ public JsonValueReader setExplicitConstructorNames(boolean value) {
+ this.explicitConstructorNames = value;
+ return this;
+ }
+
+ public JsonValueReader setExplicitDataTypes(boolean value) {
+ this.explicitDataTypes = value;
+ if (value) {
+ this.explicitConstructorNames = true;
+ }
+ return this;
+ }
+
+ /**
+ * @param vf factory which will be used to construct values
+ * @param store type store to lookup constructors of abstract data-types in and the types of keyword fields
+ */
+ public JsonValueReader(IRascalValueFactory vf, TypeStore store, IRascalMonitor monitor, ISourceLocation src) {
+ this.vf = vf;
+ this.store = store;
+ this.monitor = monitor;
+ this.src = (src == null) ? URIUtil.rootLocation("unknown") : src;
+
+ setCalendarFormat("yyyy-MM-dd'T'HH:mm:ssZ");
+
+ // this is for origin tracking as well as accurate parse errors
+ try {
+ var lookup = MethodHandles.lookup();
+ var privateLookup = MethodHandles.privateLookupIn(JsonReader.class, lookup);
+ this.posHandler = privateLookup.findVarHandle(JsonReader.class, "pos", int.class);
+ this.lineHandler = privateLookup.findVarHandle(JsonReader.class, "lineNumber", int.class);
+ this.lineStartHandler = privateLookup.findVarHandle(JsonReader.class, "lineStart", int.class);
+ this.originTracking = (src != null);
+ }
+ catch (NoSuchFieldException | SecurityException | IllegalAccessException e) {
+ // we disable the origin tracking if we can not get to the fields
+ originTracking = false;
+ src = null;
+ monitor.warning("Unable to retrieve origin information due to: " + e.getMessage(), src);
+ }
+ }
+
+ public JsonValueReader(IRascalValueFactory vf, IRascalMonitor monitor, ISourceLocation src) {
+ this(vf, new TypeStore(), monitor, src);
+ }
+
+ public JsonValueReader setNulls(Map nulls) {
+ this.nulls = nulls;
+ return this;
+ }
+ /**
+ * Builder method to set the format to use for all date-time values encoded as strings
+ */
+ public JsonValueReader setCalendarFormat(String format) {
+ // SimpleDateFormat is not thread safe, so here we make sure
+ // we can use objects of this reader in different threads at the same time
+ this.format = new ThreadLocal() {
+ protected SimpleDateFormat initialValue() {
+ return new SimpleDateFormat(format);
+ }
+ };
+ return this;
+ }
+
+ public JsonValueReader setParsers(IFunction parsers) {
+ if (parsers.getType() instanceof ReifiedType && parsers.getType().getTypeParameters().getFieldType(0).isTop()) {
+ // ignore the default parser
+ parsers = null;
+ }
+
+ this.parsers = parsers;
+ return this;
+ }
+
+ /**
+ * Read and validate a Json stream as an IValue
+ * @param in json stream
+ * @param expected type to validate against (recursively)
+ * @return an IValue of the expected type
+ * @throws IOException when either a parse error or a validation error occurs
+ */
+ public IValue read(JsonReader in, Type expected) throws IOException {
+ var dispatch = new ExpectedTypeDispatcher(in);
+
+ try {
+ return expected.accept(dispatch);
+ }
+ catch (EOFException | JsonParseException | NumberFormatException | MalformedJsonException | IllegalStateException | NullPointerException e) {
+ throw dispatch.parseErrorHere(e.getMessage());
+ }
}
-}
\ No newline at end of file
+}
diff --git a/src/org/rascalmpl/library/lang/json/internal/JsonValueWriter.java b/src/org/rascalmpl/library/lang/json/internal/JsonValueWriter.java
index c20838b972f..26c7d28ad09 100644
--- a/src/org/rascalmpl/library/lang/json/internal/JsonValueWriter.java
+++ b/src/org/rascalmpl/library/lang/json/internal/JsonValueWriter.java
@@ -13,11 +13,17 @@
package org.rascalmpl.library.lang.json.internal;
import java.io.IOException;
-import java.text.SimpleDateFormat;
import java.util.Map;
import java.util.Map.Entry;
+import org.rascalmpl.exceptions.RuntimeExceptionFactory;
+import org.rascalmpl.exceptions.Throw;
+import org.rascalmpl.library.Prelude;
+import org.rascalmpl.values.functions.IFunction;
+import org.rascalmpl.values.maybe.UtilMaybe;
+
import com.google.gson.stream.JsonWriter;
+import com.ibm.icu.text.SimpleDateFormat;
import io.usethesource.vallang.IBool;
import io.usethesource.vallang.IConstructor;
@@ -27,6 +33,7 @@
import io.usethesource.vallang.IList;
import io.usethesource.vallang.IMap;
import io.usethesource.vallang.INode;
+import io.usethesource.vallang.INumber;
import io.usethesource.vallang.IRational;
import io.usethesource.vallang.IReal;
import io.usethesource.vallang.ISet;
@@ -44,6 +51,43 @@ public class JsonValueWriter {
private boolean datesAsInts = true;
private boolean unpackedLocations = false;
private boolean dropOrigins = true;
+ private IFunction formatters;
+ private boolean explicitConstructorNames = false;
+ private boolean explicitDataTypes;
+
+ /** helper class for number serialization without quotes */
+ private static class RascalNumber extends Number {
+ private static final long serialVersionUID = -2204435793489295963L;
+ public INumber wrapped;
+
+ @Override
+ public int intValue() {
+ return wrapped.toInteger().intValue();
+ }
+
+ @Override
+ public long longValue() {
+ return wrapped.toInteger().longValue();
+ }
+
+ @Override
+ public float floatValue() {
+ // TODO parameterize precision
+ return wrapped.toReal(20).floatValue();
+ }
+
+ @Override
+ public double doubleValue() {
+ return wrapped.toReal(20).doubleValue();
+ }
+
+ @Override
+ public String toString() {
+ return wrapped.toString();
+ }
+ }
+
+ private RascalNumber wrapper = new RascalNumber();
public JsonValueWriter() {
setCalendarFormat("yyyy-MM-dd'T'HH:mm:ss'Z'");
@@ -78,6 +122,26 @@ public JsonValueWriter setDropOrigins(boolean setting) {
return this;
}
+ public JsonValueWriter setFormatters(IFunction formatters) {
+ if (formatters.getType().getFieldType(0).isTop()) {
+ // ignore default function
+ formatters = null;
+ }
+
+ this.formatters = formatters;
+ return this;
+ }
+
+ public JsonValueWriter setExplicitConstructorNames(boolean setting) {
+ this.explicitConstructorNames = setting;
+ return this;
+ }
+
+ public JsonValueWriter setExplicitDataTypes(boolean setting) {
+ this.explicitDataTypes = setting;
+ return this;
+ }
+
public void write(JsonWriter out, IValue value) throws IOException {
value.accept(new IValueVisitor() {
@@ -89,14 +153,18 @@ public Void visitString(IString o) throws IOException {
@Override
public Void visitReal(IReal o) throws IOException {
- // TODO: warning might loose precision here?!
- out.value(o.doubleValue());
+ wrapper.wrapped = o;
+ out.value(wrapper);
return null;
}
@Override
public Void visitRational(IRational o) throws IOException {
- out.value(o.getStringRepresentation());
+ out.beginArray();
+ o.numerator().accept(this);
+ o.denominator().accept(this);
+ out.endArray();
+
return null;
}
@@ -197,6 +265,9 @@ public Void visitTuple(ITuple o) throws IOException {
@Override
public Void visitNode(INode o) throws IOException {
out.beginObject();
+ out.name("_name");
+ out.value(o.getName());
+
int i = 0;
for (IValue arg : o) {
out.name("arg" + i++);
@@ -222,13 +293,45 @@ public Void visitNode(INode o) throws IOException {
@Override
public Void visitConstructor(IConstructor o) throws IOException {
- if (o.getConstructorType().getArity() == 0 && !o.asWithKeywordParameters().hasParameters()) {
+ if (UtilMaybe.isMaybe(o.getType())) {
+ if (UtilMaybe.isNothing(o)) {
+ out.nullValue();
+ }
+ else {
+ o.get(0).accept(this);
+ }
+ }
+
+ if (formatters != null) {
+ try {
+ var formatted = formatters.call(o);
+ if (formatted != null) {
+ visitString((IString) formatted);
+ return null;
+ }
+ }
+ catch (Throw x) {
+ // it happens
+ }
+ }
+ if (!explicitConstructorNames && !explicitDataTypes && o.getConstructorType().getArity() == 0 && !o.asWithKeywordParameters().hasParameters()) {
// enums!
out.value(o.getName());
return null;
}
out.beginObject();
+
+ if (explicitConstructorNames || explicitDataTypes) {
+ out.name("_constructor");
+ out.value(o.getName());
+ }
+
+ if (explicitDataTypes) {
+ out.name("_type");
+ out.value(o.getType().getName());
+ }
+
int i = 0;
for (IValue arg : o) {
out.name(o.getConstructorType().getFieldName(i));
@@ -246,8 +349,8 @@ public Void visitConstructor(IConstructor o) throws IOException {
@Override
public Void visitInteger(IInteger o) throws IOException {
- // TODO: may loose precision
- out.value(o.longValue());
+ wrapper.wrapped = o;
+ out.value(wrapper);
return null;
}
@@ -308,7 +411,6 @@ public Void visitBoolean(IBool boolValue) throws IOException {
@Override
public Void visitExternal(IExternalValue externalValue) throws IOException {
- // TODO
throw new IOException("External values are not supported by JSon serialisation yet");
}
@@ -316,11 +418,18 @@ public Void visitExternal(IExternalValue externalValue) throws IOException {
public Void visitDateTime(IDateTime o) throws IOException {
if (datesAsInts) {
out.value(o.getInstant());
- return null;
}
else {
- throw new IOException("Dates as strings not yet implemented: " + format.get().toPattern());
+ try {
+ com.ibm.icu.text.SimpleDateFormat sd = format.get();
+ com.ibm.icu.util.Calendar cal = Prelude.getCalendarForDateTime(o);
+ sd.setCalendar(cal);
+ out.value(sd.format(cal.getTime()));
+ } catch (IllegalArgumentException iae) {
+ throw RuntimeExceptionFactory.dateTimePrintingError("Cannot print datetime " + o + " using format string: " + format.get());
+ }
}
+ return null;
}
});
}
diff --git a/src/org/rascalmpl/library/lang/rascal/grammar/Bootstrap.rsc b/src/org/rascalmpl/library/lang/rascal/grammar/Bootstrap.rsc
index cac7e34813a..3830577fab2 100644
--- a/src/org/rascalmpl/library/lang/rascal/grammar/Bootstrap.rsc
+++ b/src/org/rascalmpl/library/lang/rascal/grammar/Bootstrap.rsc
@@ -44,7 +44,7 @@ public void bootstrapAst(loc rascalHome) {
public void bootParser(Grammar gr, loc rascalHome) {
source = newGenerate(package, rootName, gr);
- writeFile(rascalHome + "lang/rascal/syntax/.java", source);
+ writeFile(rascalHome + "src/org/rascalmpl/library/lang/rascal/syntax/.java", source);
}
public void bootAST(Grammar g, loc rascalHome) {
diff --git a/src/org/rascalmpl/library/lang/rascal/grammar/tests/CharactersTests.rsc b/src/org/rascalmpl/library/lang/rascal/grammar/tests/CharactersTests.rsc
index 7b9fc42153f..e55a5db50aa 100644
--- a/src/org/rascalmpl/library/lang/rascal/grammar/tests/CharactersTests.rsc
+++ b/src/org/rascalmpl/library/lang/rascal/grammar/tests/CharactersTests.rsc
@@ -2,6 +2,7 @@ module lang::rascal::grammar::tests::CharactersTests
import lang::rascal::grammar::definition::Characters;
import ParseTree;
+import String;
test bool testFlip() = \new-char-class([range(2,2), range(1,1)]) == \char-class([range(1,2)]);
test bool testMerge() = \new-char-class([range(3,4), range(2,2), range(1,1)]) == \char-class([range(1,4)]);
@@ -24,3 +25,57 @@ test bool testDiff1() = difference(\char-class([range(10,30)]), \char-class([ran
test bool testDiff2() = difference(\char-class([range(10,30), range(40,50)]), \char-class([range(25,45)])) ==\char-class( [range(10,24), range(46,50)]);
+test bool asciiEscape() = \char-class([range(0,127)]) == #[\a00-\a7F].symbol;
+test bool utf16Escape() = \char-class([range(0,65535)]) == #[\u0000-\uFFFF].symbol;
+test bool utf32Escape() = \char-class([range(0,1114111)]) == #[\U000000-\U10FFFF].symbol;
+test bool highLowSurrogateRange1() = \char-class([range(9312,12991)]) == #[①-㊿].symbol;
+test bool highLowSurrogateRange2() = \char-class([range(127829,127829)]) == #[🍕].symbol;
+test bool differentEscapesSameResult1() = #[\a00-\a7F] == #[\u0000-\u007F];
+test bool differentEscapesSameResult2() = #[\a00-\a7F] == #[\U000000-\U00007F];
+
+/* to avoid a known ambiguity */
+alias NotAZ = ![A-Z];
+
+test bool unicodeCharacterClassSubtype1() {
+ Tree t = char(charAt("⑭", 0));
+
+ if ([①-㊿] circled := t) {
+ assert [⑭] _ := circled;
+ assert NotAZ _ := circled;
+ return true;
+ }
+
+ return false;
+}
+
+test bool unicodeCharacterClassSubtype2() {
+ Tree t = char(charAt("🍕", 0));
+
+ if ([🍕] pizza := t) {
+ assert [\a00-🍕] _ := pizza;
+ assert NotAZ _ := pizza;
+ return true;
+ }
+
+ return false;
+}
+
+test bool literalAsciiEscape1() = lit("\n") == #"\a0A".symbol;
+test bool literalAsciiEscape2() = lit("w") == #"\a77".symbol;
+test bool literalAsciiEscape3() = lit("\f") == #"\a0C".symbol;
+test bool literalAsciiEscape4() = lit("\n") == #"\n".symbol;
+@ignore{vallang must re-introduce the \f notation}
+test bool literalAsciiEscape5() = lit("\f") == #"\f".symbol;
+test bool literalUtf16Escape() = lit("\n") == #"\u000A".symbol;
+test bool literalUtf32Escape1() = lit("\n") == #"\U00000A".symbol;
+test bool literalUtf32Escape2() = lit("🍕") == #"\U01F355".symbol;
+
+test bool ciliteralAsciiEscape1() = cilit("\n") == #'\a0A'.symbol;
+test bool ciliteralAsciiEscape2() = cilit("w") == #'\a77'.symbol;
+test bool ciliteralAsciiEscape3() = cilit("\f") == #'\a0C'.symbol;
+test bool ciliteralAsciiEscape4() = cilit("\n") == #'\n'.symbol;
+@ignore{vallang must re-introduce the \f notation}
+test bool ciliteralAsciiEscape5() = cilit("\f") == #'\f'.symbol;
+test bool ciliteralUtf16Escape() = cilit("\n") == #'\u000A'.symbol;
+test bool ciliteralUtf32Escape1() = cilit("\n") == #'\U00000A'.symbol;
+test bool ciliteralUtf32Escape2() = cilit("🍕") == #'\U01F355'.symbol;
diff --git a/src/org/rascalmpl/library/lang/rascal/syntax/Rascal.rsc b/src/org/rascalmpl/library/lang/rascal/syntax/Rascal.rsc
index 53369b574df..3204ff5eefb 100644
--- a/src/org/rascalmpl/library/lang/rascal/syntax/Rascal.rsc
+++ b/src/org/rascalmpl/library/lang/rascal/syntax/Rascal.rsc
@@ -19,14 +19,14 @@ lexical BooleanLiteral
| "false" ;
syntax Literal
- = integer: IntegerLiteral integerLiteral
- | regExp: RegExpLiteral regExpLiteral
- | \real: RealLiteral realLiteral
+ = @category="number" integer: IntegerLiteral integerLiteral
+ | @category="regexp" regExp: RegExpLiteral regExpLiteral
+ | @category="number" \real: RealLiteral realLiteral
| boolean: BooleanLiteral booleanLiteral
| string: StringLiteral stringLiteral
| dateTime: DateTimeLiteral dateTimeLiteral
- | location: LocationLiteral locationLiteral
- | rational: RationalLiteral rationalLiteral
+ | @category="string" location: LocationLiteral locationLiteral
+ | @category="number" rational: RationalLiteral rationalLiteral
;
syntax Expression = concrete: Concrete concrete;
@@ -36,13 +36,13 @@ lexical Concrete
= typed: "(" LAYOUTLIST l1 Sym symbol LAYOUTLIST l2 ")" LAYOUTLIST l3 "`" ConcretePart* parts "`";
lexical ConcretePart
- = @category="MetaSkipped" text : ![`\<\>\\\n]+ !>> ![`\<\>\\\n]
+ = @category="string" text : ![`\<\>\\\n]+ !>> ![`\<\>\\\n]
| newline: "\n" [\ \t \u00A0 \u1680 \u2000-\u200A \u202F \u205F \u3000]* "\'"
- | @category="MetaVariable" hole : ConcreteHole hole
- | @category="MetaSkipped" lt: "\\\<"
- | @category="MetaSkipped" gt: "\\\>"
- | @category="MetaSkipped" bq: "\\`"
- | @category="MetaSkipped" bs: "\\\\"
+ | @category="string" hole : ConcreteHole hole
+ | @category="string" lt: "\\\<"
+ | @category="string" gt: "\\\>"
+ | @category="string" bq: "\\`"
+ | @category="string" bs: "\\\\"
;
syntax ConcreteHole
@@ -210,7 +210,7 @@ syntax Expression
| \list : "[" {Expression ","}* elements0 "]"
| reifyType : "#" Type type !>> "[" !selector
| range : "[" Expression first ".." Expression last "]"
- | \tuple : "\<" {Expression ","}+ elements "\>"
+ | \tuple : "\<" {Expression ","}* elements0 "\>"
| \map : "(" {Mapping[Expression] ","}* mappings ")"
| \it : [A-Z a-z _] !<< "it" !>> [A-Z a-z _]
| qualifiedName : QualifiedName qualifiedName
@@ -308,10 +308,10 @@ syntax StringTemplate
| \while : "while" "(" Expression condition ")" "{" Statement* preStats StringMiddle body Statement* postStats "}" ;
lexical PreStringChars
- = @category="Constant" [\"] StringCharacter* [\<] ;
+ = @category="string" [\"] StringCharacter* [\<] ;
lexical CaseInsensitiveStringConstant
- = @category="Constant" "\'" StringCharacter* chars "\'" ;
+ = @category="string" "\'" StringCharacter* chars "\'" ;
lexical Backslash
= [\\] !>> [/ \< \> \\] ;
@@ -373,7 +373,7 @@ syntax Assignable
| annotation : Assignable receiver "@" Name annotation ;
lexical StringConstant
- = @category="Constant" "\"" StringCharacter* chars "\"" ;
+ = @category="string" "\"" StringCharacter* chars "\"" ;
@@ -404,7 +404,7 @@ lexical JustTime
;
lexical MidStringChars
- = @category="Constant" [\>] StringCharacter* [\<] ;
+ = @category="string" [\>] StringCharacter* [\<] ;
lexical ProtocolChars
= [|] URLChars "://" !>> [\t-\n \r \ \u00A0 \u1680 \u2000-\u200A \u202F \u205F \u3000];
@@ -445,7 +445,7 @@ lexical RegExp
| [\\] [/ \< \> \\]
| "\<" Name ":" NamedRegExp* "\>"
| Backslash
- // | @category="MetaVariable" [\<] Expression expression [\>] TODO: find out why this production existed
+ // | @category="variable" [\<] Expression expression [\>] TODO: find out why this production existed
;
@@ -536,9 +536,9 @@ start syntax EvalCommand
;
lexical Output
- = @category="Result" resultOutput: "⇨" ![\n\r]* [\n]
- | @category="StdOut" stdoutOutput: ^ "≫" ![\n\r]* [\n]
- | @category="StdErr" stderrOutput: ^ "⚠" ![\n\r]* [\n]
+ = @category="string" resultOutput: "⇨" ![\n\r]* [\n]
+ | @category="string" stdoutOutput: ^ "≫" ![\n\r]* [\n]
+ | @category="string" stderrOutput: ^ "⚠" ![\n\r]* [\n]
;
start syntax Command
@@ -573,8 +573,8 @@ syntax StringLiteral
| nonInterpolated: StringConstant constant ;
lexical Comment
- = @category="Comment" "/*" (![*] | [*] !>> [/])* "*/"
- | @category="Comment" "//" ![\n]* !>> [\ \t\r \u00A0 \u1680 \u2000-\u200A \u202F \u205F \u3000] $ // the restriction helps with parsing speed
+ = @category="comment" "/*" (![*] | [*] !>> [/])* "*/"
+ | @category="comment" "//" ![\n]* !>> [\ \t\r \u00A0 \u1680 \u2000-\u200A \u202F \u205F \u3000] $ // the restriction helps with parsing speed
;
@@ -789,7 +789,7 @@ syntax Toplevel
= givenVisibility: Declaration declaration ;
lexical PostStringChars
- = @category="Constant" [\>] StringCharacter* [\"] ;
+ = @category="string" [\>] StringCharacter* [\"] ;
lexical HexIntegerLiteral
= [0] [X x] [0-9 A-F a-f]+ !>> [0-9 A-Z _ a-z] ;
@@ -823,9 +823,9 @@ syntax BasicType
;
lexical Char
- = @category="Constant" "\\" [\ \" \' \- \< \> \[ \\ \] b f n r t]
- | @category="Constant" ![\ \" \' \- \< \> \[ \\ \]]
- | @category="Constant" UnicodeEscape
+ = @category="string" "\\" [\ \" \' \- \< \> \[ \\ \] b f n r t]
+ | @category="string" ![\ \" \' \- \< \> \[ \\ \]]
+ | @category="string" UnicodeEscape
;
syntax Prod
@@ -866,7 +866,7 @@ syntax Pattern
| splicePlus : "+" Pattern argument
| negative : "-" Pattern argument
| literal : Literal literal
- | \tuple : "\<" {Pattern ","}+ elements "\>"
+ | \tuple : "\<" {Pattern ","}* elements0 "\>"
| typedVariable : Type type Name name
| \map : "(" {Mapping[Pattern] ","}* mappings ")"
| reifiedType : "type" "(" Pattern symbol "," Pattern definitions ")"
@@ -879,9 +879,9 @@ syntax Pattern
;
syntax Tag
- = @Folded @category="Comment" \default : "@" Name name TagString contents
- | @Folded @category="Comment" empty : "@" Name name
- | @Folded @category="Comment" expression: "@" Name name "=" Expression expression !>> "@";
+ = @Folded @category="comment" \default : "@" Name name TagString contents
+ | @Folded @category="comment" empty : "@" Name name
+ | @Folded @category="comment" expression: "@" Name name "=" Expression expression !>> "@";
syntax ModuleActuals
= \default: "[" {Type ","}+ types "]" ;
diff --git a/src/org/rascalmpl/library/lang/rascal/syntax/RascalParser.java b/src/org/rascalmpl/library/lang/rascal/syntax/RascalParser.java
index cb57f46eda0..dea96c4e5d6 100644
--- a/src/org/rascalmpl/library/lang/rascal/syntax/RascalParser.java
+++ b/src/org/rascalmpl/library/lang/rascal/syntax/RascalParser.java
@@ -19,8 +19,8 @@
import org.rascalmpl.parser.gtd.util.IntegerKeyedHashMap;
import org.rascalmpl.parser.gtd.util.IntegerList;
import org.rascalmpl.parser.gtd.util.IntegerMap;
-import org.rascalmpl.values.RascalValueFactory;
import org.rascalmpl.values.ValueFactoryFactory;
+import org.rascalmpl.values.RascalValueFactory;
import org.rascalmpl.values.parsetrees.ITree;
@SuppressWarnings("all")
@@ -73,2851 +73,2851 @@ protected static IntegerKeyedHashMap _initDontNest() {
- _putDontNest(result, 1283, 1346);
+ _putDontNest(result, 1445, 1464);
- _putDontNest(result, 1283, 1480);
+ _putDontNest(result, 1445, 1474);
- _putDontNest(result, 1283, 1356);
+ _putDontNest(result, 1445, 1445);
- _putDontNest(result, 1283, 1260);
+ _putDontNest(result, 1445, 1489);
- _putDontNest(result, 1283, 1283);
+ _putDontNest(result, 1445, 1454);
- _putDontNest(result, 1283, 1365);
+ _putDontNest(result, 887, 1279);
- _putDontNest(result, 1283, 1404);
+ _putDontNest(result, 887, 1388);
- _putDontNest(result, 1283, 1386);
+ _putDontNest(result, 887, 1378);
- _putDontNest(result, 1283, 1433);
+ _putDontNest(result, 887, 1198);
- _putDontNest(result, 1283, 1295);
+ _putDontNest(result, 887, 1426);
- _putDontNest(result, 1283, 1274);
+ _putDontNest(result, 887, 1369);
- _putDontNest(result, 1283, 1305);
+ _putDontNest(result, 887, 1300);
- _putDontNest(result, 1283, 1315);
+ _putDontNest(result, 887, 1205);
- _putDontNest(result, 1283, 1423);
+ _putDontNest(result, 887, 1310);
- _putDontNest(result, 1283, 1414);
+ _putDontNest(result, 887, 1454);
- _putDontNest(result, 1283, 1500);
+ _putDontNest(result, 887, 1225);
- _putDontNest(result, 1283, 1251);
+ _putDontNest(result, 887, 1417);
- _putDontNest(result, 1283, 1325);
+ _putDontNest(result, 887, 1248);
- _putDontNest(result, 1283, 1377);
+ _putDontNest(result, 887, 1191);
- _putDontNest(result, 1283, 1471);
+ _putDontNest(result, 887, 1330);
- _putDontNest(result, 1283, 1395);
+ _putDontNest(result, 887, 1407);
- _putDontNest(result, 1283, 1515);
+ _putDontNest(result, 887, 1185);
- _putDontNest(result, 1283, 1490);
+ _putDontNest(result, 887, 1464);
- _putDontNest(result, 1283, 1336);
+ _putDontNest(result, 887, 1474);
- _putDontNest(result, 1071, 1346);
+ _putDontNest(result, 887, 1320);
- _putDontNest(result, 1071, 1480);
+ _putDontNest(result, 887, 1269);
- _putDontNest(result, 1071, 1260);
+ _putDontNest(result, 887, 1289);
- _putDontNest(result, 1071, 1283);
+ _putDontNest(result, 887, 1215);
- _putDontNest(result, 1071, 1365);
+ _putDontNest(result, 887, 1397);
- _putDontNest(result, 1071, 1211);
+ _putDontNest(result, 887, 1445);
- _putDontNest(result, 1071, 1404);
+ _putDontNest(result, 887, 1173);
- _putDontNest(result, 1071, 1386);
+ _putDontNest(result, 887, 1234);
- _putDontNest(result, 1071, 1433);
+ _putDontNest(result, 887, 1435);
- _putDontNest(result, 1071, 1224);
+ _putDontNest(result, 887, 1360);
- _putDontNest(result, 1071, 1443);
+ _putDontNest(result, 887, 1351);
- _putDontNest(result, 1071, 1217);
+ _putDontNest(result, 887, 1489);
- _putDontNest(result, 1071, 1295);
+ _putDontNest(result, 887, 1067);
- _putDontNest(result, 1071, 1274);
+ _putDontNest(result, 887, 1339);
- _putDontNest(result, 1071, 1305);
+ _putDontNest(result, 887, 1092);
- _putDontNest(result, 1071, 1315);
+ _putDontNest(result, 887, 1257);
- _putDontNest(result, 1071, 1423);
+ _putDontNest(result, 1373, 1388);
- _putDontNest(result, 1071, 1356);
+ _putDontNest(result, 1373, 1378);
- _putDontNest(result, 1071, 1461);
+ _putDontNest(result, 1373, 1417);
- _putDontNest(result, 1071, 1231);
+ _putDontNest(result, 1373, 1474);
- _putDontNest(result, 1071, 1414);
+ _putDontNest(result, 1373, 1426);
- _putDontNest(result, 1071, 1500);
+ _putDontNest(result, 1373, 1369);
- _putDontNest(result, 1071, 1241);
+ _putDontNest(result, 1373, 1397);
- _putDontNest(result, 1071, 1452);
+ _putDontNest(result, 1373, 1445);
- _putDontNest(result, 1071, 1251);
+ _putDontNest(result, 1373, 1435);
- _putDontNest(result, 1071, 1325);
+ _putDontNest(result, 1373, 1489);
- _putDontNest(result, 1071, 1377);
+ _putDontNest(result, 1373, 1454);
- _putDontNest(result, 1071, 1471);
+ _putDontNest(result, 1373, 1407);
- _putDontNest(result, 1071, 1395);
+ _putDontNest(result, 1373, 1464);
- _putDontNest(result, 1071, 1515);
+ _putDontNest(result, 1373, 1360);
- _putDontNest(result, 1071, 1490);
+ _putDontNest(result, 1373, 1351);
- _putDontNest(result, 1071, 1336);
+ _putDontNest(result, 1315, 1388);
- _putDontNest(result, 11926, 817);
+ _putDontNest(result, 1315, 1378);
- _putDontNest(result, 11926, 886);
+ _putDontNest(result, 1315, 1417);
- _putDontNest(result, 1309, 1423);
+ _putDontNest(result, 1315, 1330);
- _putDontNest(result, 1309, 1346);
+ _putDontNest(result, 1315, 1474);
- _putDontNest(result, 1309, 1480);
+ _putDontNest(result, 1315, 1426);
- _putDontNest(result, 1309, 1365);
+ _putDontNest(result, 1315, 1369);
- _putDontNest(result, 1309, 1404);
+ _putDontNest(result, 1315, 1397);
- _putDontNest(result, 1309, 1386);
+ _putDontNest(result, 1315, 1445);
- _putDontNest(result, 1309, 1452);
+ _putDontNest(result, 1315, 1435);
- _putDontNest(result, 1309, 1433);
+ _putDontNest(result, 1315, 1454);
- _putDontNest(result, 1309, 1443);
+ _putDontNest(result, 1315, 1407);
- _putDontNest(result, 1309, 1356);
+ _putDontNest(result, 1315, 1464);
- _putDontNest(result, 1309, 1461);
+ _putDontNest(result, 1315, 1360);
- _putDontNest(result, 1309, 1414);
+ _putDontNest(result, 1315, 1351);
- _putDontNest(result, 1309, 1500);
+ _putDontNest(result, 1315, 1489);
- _putDontNest(result, 1309, 1377);
+ _putDontNest(result, 1315, 1339);
- _putDontNest(result, 1309, 1471);
+ _putDontNest(result, 1279, 1279);
- _putDontNest(result, 1309, 1395);
+ _putDontNest(result, 1279, 1388);
- _putDontNest(result, 1309, 1515);
+ _putDontNest(result, 1279, 1378);
- _putDontNest(result, 1309, 1490);
+ _putDontNest(result, 1279, 1330);
- _putDontNest(result, 1381, 1423);
+ _putDontNest(result, 1279, 1369);
- _putDontNest(result, 1381, 1480);
+ _putDontNest(result, 1279, 1289);
- _putDontNest(result, 1381, 1461);
+ _putDontNest(result, 1279, 1300);
- _putDontNest(result, 1381, 1404);
+ _putDontNest(result, 1279, 1397);
- _putDontNest(result, 1381, 1386);
+ _putDontNest(result, 1279, 1445);
- _putDontNest(result, 1381, 1452);
+ _putDontNest(result, 1279, 1310);
- _putDontNest(result, 1381, 1433);
+ _putDontNest(result, 1279, 1454);
- _putDontNest(result, 1381, 1443);
+ _putDontNest(result, 1279, 1407);
- _putDontNest(result, 1381, 1414);
+ _putDontNest(result, 1279, 1464);
- _putDontNest(result, 1381, 1500);
+ _putDontNest(result, 1279, 1474);
- _putDontNest(result, 1381, 1377);
+ _putDontNest(result, 1279, 1320);
- _putDontNest(result, 1381, 1471);
+ _putDontNest(result, 1279, 1360);
- _putDontNest(result, 1381, 1395);
+ _putDontNest(result, 1279, 1351);
- _putDontNest(result, 1381, 1515);
+ _putDontNest(result, 1279, 1489);
- _putDontNest(result, 1381, 1490);
+ _putDontNest(result, 1279, 1339);
- _putDontNest(result, 15810, 15810);
+ _putDontNest(result, 1573, 1573);
- _putDontNest(result, 1315, 1346);
+ _putDontNest(result, 14395, 14437);
- _putDontNest(result, 1315, 1480);
+ _putDontNest(result, 1024, 1279);
- _putDontNest(result, 1315, 1365);
+ _putDontNest(result, 1024, 1388);
- _putDontNest(result, 1315, 1404);
+ _putDontNest(result, 1024, 1378);
- _putDontNest(result, 1315, 1386);
+ _putDontNest(result, 1024, 1198);
- _putDontNest(result, 1315, 1325);
+ _putDontNest(result, 1024, 1426);
- _putDontNest(result, 1315, 1433);
+ _putDontNest(result, 1024, 1369);
- _putDontNest(result, 1315, 1443);
+ _putDontNest(result, 1024, 1300);
- _putDontNest(result, 1315, 1305);
+ _putDontNest(result, 1024, 1445);
- _putDontNest(result, 1315, 1315);
+ _putDontNest(result, 1024, 1205);
- _putDontNest(result, 1315, 1423);
+ _putDontNest(result, 1024, 1310);
- _putDontNest(result, 1315, 1356);
+ _putDontNest(result, 1024, 1257);
- _putDontNest(result, 1315, 1461);
+ _putDontNest(result, 1024, 1454);
- _putDontNest(result, 1315, 1414);
+ _putDontNest(result, 1024, 1225);
- _putDontNest(result, 1315, 1500);
+ _putDontNest(result, 1024, 1417);
- _putDontNest(result, 1315, 1377);
+ _putDontNest(result, 1024, 1248);
- _putDontNest(result, 1315, 1471);
+ _putDontNest(result, 1024, 1191);
- _putDontNest(result, 1315, 1395);
+ _putDontNest(result, 1024, 1330);
- _putDontNest(result, 1315, 1515);
+ _putDontNest(result, 1024, 1407);
- _putDontNest(result, 1315, 1490);
+ _putDontNest(result, 1024, 1185);
- _putDontNest(result, 1315, 1336);
+ _putDontNest(result, 1024, 1464);
- _putDontNest(result, 15760, 15810);
+ _putDontNest(result, 1024, 1474);
- _putDontNest(result, 15760, 15800);
+ _putDontNest(result, 1024, 1320);
- _putDontNest(result, 15760, 15791);
+ _putDontNest(result, 1024, 1269);
- _putDontNest(result, 15760, 15782);
+ _putDontNest(result, 1024, 1289);
- _putDontNest(result, 15760, 15773);
+ _putDontNest(result, 1024, 1215);
- _putDontNest(result, 1423, 1423);
+ _putDontNest(result, 1024, 1397);
- _putDontNest(result, 1423, 1480);
+ _putDontNest(result, 1024, 1234);
- _putDontNest(result, 1423, 1433);
+ _putDontNest(result, 1024, 1435);
- _putDontNest(result, 1423, 1471);
+ _putDontNest(result, 1024, 1360);
- _putDontNest(result, 1423, 1414);
+ _putDontNest(result, 1024, 1351);
- _putDontNest(result, 1423, 1500);
+ _putDontNest(result, 1024, 1489);
- _putDontNest(result, 1423, 1515);
+ _putDontNest(result, 1024, 1339);
- _putDontNest(result, 1423, 1490);
+ _putDontNest(result, 14075, 1407);
- _putDontNest(result, 1623, 1623);
+ _putDontNest(result, 1479, 1489);
- _putDontNest(result, 2946, 15664);
+ _putDontNest(result, 1388, 1388);
- _putDontNest(result, 2946, 15648);
+ _putDontNest(result, 1388, 1474);
- _putDontNest(result, 2946, 15763);
+ _putDontNest(result, 1388, 1397);
- _putDontNest(result, 2946, 15756);
+ _putDontNest(result, 1388, 1445);
- _putDontNest(result, 1505, 1515);
+ _putDontNest(result, 1388, 1489);
- _putDontNest(result, 1390, 1423);
+ _putDontNest(result, 1388, 1454);
- _putDontNest(result, 1390, 1480);
+ _putDontNest(result, 1388, 1407);
- _putDontNest(result, 1390, 1461);
+ _putDontNest(result, 1388, 1464);
- _putDontNest(result, 1390, 1404);
+ _putDontNest(result, 1220, 1279);
- _putDontNest(result, 1390, 1386);
+ _putDontNest(result, 1220, 1388);
- _putDontNest(result, 1390, 1452);
+ _putDontNest(result, 1220, 1378);
- _putDontNest(result, 1390, 1433);
+ _putDontNest(result, 1220, 1417);
- _putDontNest(result, 1390, 1443);
+ _putDontNest(result, 1220, 1330);
- _putDontNest(result, 1390, 1414);
+ _putDontNest(result, 1220, 1426);
- _putDontNest(result, 1390, 1500);
+ _putDontNest(result, 1220, 1369);
- _putDontNest(result, 1390, 1377);
+ _putDontNest(result, 1220, 1300);
- _putDontNest(result, 1390, 1471);
+ _putDontNest(result, 1220, 1397);
- _putDontNest(result, 1390, 1395);
+ _putDontNest(result, 1220, 1445);
- _putDontNest(result, 1390, 1515);
+ _putDontNest(result, 1220, 1435);
- _putDontNest(result, 1390, 1490);
+ _putDontNest(result, 1220, 1310);
- _putDontNest(result, 15777, 15810);
+ _putDontNest(result, 1220, 1454);
- _putDontNest(result, 860, 1346);
+ _putDontNest(result, 1220, 1407);
- _putDontNest(result, 860, 1480);
+ _putDontNest(result, 1220, 1464);
- _putDontNest(result, 860, 1260);
+ _putDontNest(result, 1220, 1474);
- _putDontNest(result, 860, 1283);
+ _putDontNest(result, 1220, 1320);
- _putDontNest(result, 860, 1365);
+ _putDontNest(result, 1220, 1269);
- _putDontNest(result, 860, 1093);
+ _putDontNest(result, 1220, 1289);
- _putDontNest(result, 860, 1211);
+ _putDontNest(result, 1220, 1360);
- _putDontNest(result, 860, 1404);
+ _putDontNest(result, 1220, 1351);
- _putDontNest(result, 860, 1386);
+ _putDontNest(result, 1220, 1489);
- _putDontNest(result, 860, 1433);
+ _putDontNest(result, 1220, 1339);
- _putDontNest(result, 860, 1224);
+ _putDontNest(result, 10959, 10487);
- _putDontNest(result, 860, 1443);
+ _putDontNest(result, 10959, 10481);
- _putDontNest(result, 860, 1217);
+ _putDontNest(result, 10959, 10650);
- _putDontNest(result, 860, 1295);
+ _putDontNest(result, 1344, 1388);
- _putDontNest(result, 860, 1274);
+ _putDontNest(result, 1344, 1378);
- _putDontNest(result, 860, 1305);
+ _putDontNest(result, 1344, 1417);
- _putDontNest(result, 860, 1315);
+ _putDontNest(result, 1344, 1474);
- _putDontNest(result, 860, 1118);
+ _putDontNest(result, 1344, 1426);
- _putDontNest(result, 860, 1423);
+ _putDontNest(result, 1344, 1369);
- _putDontNest(result, 860, 1356);
+ _putDontNest(result, 1344, 1397);
- _putDontNest(result, 860, 1461);
+ _putDontNest(result, 1344, 1445);
- _putDontNest(result, 860, 1231);
+ _putDontNest(result, 1344, 1435);
- _putDontNest(result, 860, 1414);
+ _putDontNest(result, 1344, 1489);
- _putDontNest(result, 860, 1500);
+ _putDontNest(result, 1344, 1454);
- _putDontNest(result, 860, 1241);
+ _putDontNest(result, 1344, 1407);
- _putDontNest(result, 860, 1452);
+ _putDontNest(result, 1344, 1464);
- _putDontNest(result, 860, 1251);
+ _putDontNest(result, 1344, 1360);
- _putDontNest(result, 860, 1325);
+ _putDontNest(result, 1344, 1351);
- _putDontNest(result, 860, 1377);
+ _putDontNest(result, 1449, 1464);
- _putDontNest(result, 860, 1471);
+ _putDontNest(result, 1449, 1474);
- _putDontNest(result, 860, 1395);
+ _putDontNest(result, 1449, 1445);
- _putDontNest(result, 860, 1199);
+ _putDontNest(result, 1449, 1489);
- _putDontNest(result, 860, 1515);
+ _putDontNest(result, 1449, 1454);
- _putDontNest(result, 860, 1490);
+ _putDontNest(result, 10790, 10481);
- _putDontNest(result, 860, 1336);
+ _putDontNest(result, 10790, 10650);
- _putDontNest(result, 1346, 1423);
+ _putDontNest(result, 10751, 10481);
- _putDontNest(result, 1346, 1346);
+ _putDontNest(result, 10751, 10650);
- _putDontNest(result, 1346, 1480);
+ _putDontNest(result, 1262, 1279);
- _putDontNest(result, 1346, 1356);
+ _putDontNest(result, 1262, 1388);
- _putDontNest(result, 1346, 1365);
+ _putDontNest(result, 1262, 1378);
- _putDontNest(result, 1346, 1404);
+ _putDontNest(result, 1262, 1417);
- _putDontNest(result, 1346, 1386);
+ _putDontNest(result, 1262, 1330);
- _putDontNest(result, 1346, 1433);
+ _putDontNest(result, 1262, 1426);
- _putDontNest(result, 1346, 1414);
+ _putDontNest(result, 1262, 1369);
- _putDontNest(result, 1346, 1500);
+ _putDontNest(result, 1262, 1289);
- _putDontNest(result, 1346, 1377);
+ _putDontNest(result, 1262, 1300);
- _putDontNest(result, 1346, 1471);
+ _putDontNest(result, 1262, 1397);
- _putDontNest(result, 1346, 1395);
+ _putDontNest(result, 1262, 1445);
- _putDontNest(result, 1346, 1515);
+ _putDontNest(result, 1262, 1435);
- _putDontNest(result, 1346, 1490);
+ _putDontNest(result, 1262, 1310);
- _putDontNest(result, 1041, 1346);
+ _putDontNest(result, 1262, 1454);
- _putDontNest(result, 1041, 1480);
+ _putDontNest(result, 1262, 1407);
- _putDontNest(result, 1041, 1260);
+ _putDontNest(result, 1262, 1464);
- _putDontNest(result, 1041, 1283);
+ _putDontNest(result, 1262, 1474);
- _putDontNest(result, 1041, 1365);
+ _putDontNest(result, 1262, 1320);
- _putDontNest(result, 1041, 1211);
+ _putDontNest(result, 1262, 1360);
- _putDontNest(result, 1041, 1404);
+ _putDontNest(result, 1262, 1351);
- _putDontNest(result, 1041, 1386);
+ _putDontNest(result, 1262, 1489);
- _putDontNest(result, 1041, 1433);
+ _putDontNest(result, 1262, 1339);
- _putDontNest(result, 1041, 1224);
+ _putDontNest(result, 1378, 1388);
- _putDontNest(result, 1041, 1443);
+ _putDontNest(result, 1378, 1378);
- _putDontNest(result, 1041, 1217);
+ _putDontNest(result, 1378, 1474);
- _putDontNest(result, 1041, 1295);
+ _putDontNest(result, 1378, 1369);
- _putDontNest(result, 1041, 1274);
+ _putDontNest(result, 1378, 1397);
- _putDontNest(result, 1041, 1305);
+ _putDontNest(result, 1378, 1445);
- _putDontNest(result, 1041, 1315);
+ _putDontNest(result, 1378, 1489);
- _putDontNest(result, 1041, 1423);
+ _putDontNest(result, 1378, 1454);
- _putDontNest(result, 1041, 1356);
+ _putDontNest(result, 1378, 1407);
- _putDontNest(result, 1041, 1461);
+ _putDontNest(result, 1378, 1464);
- _putDontNest(result, 1041, 1231);
+ _putDontNest(result, 1378, 1360);
- _putDontNest(result, 1041, 1414);
+ _putDontNest(result, 1378, 1351);
- _putDontNest(result, 1041, 1500);
+ _putDontNest(result, 1097, 1279);
- _putDontNest(result, 1041, 1241);
+ _putDontNest(result, 1097, 1388);
- _putDontNest(result, 1041, 1452);
+ _putDontNest(result, 1097, 1378);
- _putDontNest(result, 1041, 1251);
+ _putDontNest(result, 1097, 1198);
- _putDontNest(result, 1041, 1325);
+ _putDontNest(result, 1097, 1426);
- _putDontNest(result, 1041, 1377);
+ _putDontNest(result, 1097, 1369);
- _putDontNest(result, 1041, 1471);
+ _putDontNest(result, 1097, 1300);
- _putDontNest(result, 1041, 1395);
+ _putDontNest(result, 1097, 1205);
- _putDontNest(result, 1041, 1515);
+ _putDontNest(result, 1097, 1310);
- _putDontNest(result, 1041, 1490);
+ _putDontNest(result, 1097, 1454);
- _putDontNest(result, 1041, 1336);
+ _putDontNest(result, 1097, 1225);
- _putDontNest(result, 1480, 1480);
+ _putDontNest(result, 1097, 1417);
- _putDontNest(result, 1480, 1500);
+ _putDontNest(result, 1097, 1248);
- _putDontNest(result, 1480, 1471);
+ _putDontNest(result, 1097, 1191);
- _putDontNest(result, 1480, 1515);
+ _putDontNest(result, 1097, 1330);
- _putDontNest(result, 1480, 1490);
+ _putDontNest(result, 1097, 1407);
- _putDontNest(result, 1356, 1423);
+ _putDontNest(result, 1097, 1185);
- _putDontNest(result, 1356, 1480);
+ _putDontNest(result, 1097, 1464);
- _putDontNest(result, 1356, 1356);
+ _putDontNest(result, 1097, 1474);
- _putDontNest(result, 1356, 1365);
+ _putDontNest(result, 1097, 1320);
- _putDontNest(result, 1356, 1404);
+ _putDontNest(result, 1097, 1269);
- _putDontNest(result, 1356, 1386);
+ _putDontNest(result, 1097, 1289);
- _putDontNest(result, 1356, 1433);
+ _putDontNest(result, 1097, 1215);
- _putDontNest(result, 1356, 1414);
+ _putDontNest(result, 1097, 1397);
- _putDontNest(result, 1356, 1500);
+ _putDontNest(result, 1097, 1445);
- _putDontNest(result, 1356, 1377);
+ _putDontNest(result, 1097, 1173);
- _putDontNest(result, 1356, 1471);
+ _putDontNest(result, 1097, 1234);
- _putDontNest(result, 1356, 1395);
+ _putDontNest(result, 1097, 1435);
- _putDontNest(result, 1356, 1515);
+ _putDontNest(result, 1097, 1360);
- _putDontNest(result, 1356, 1490);
+ _putDontNest(result, 1097, 1351);
- _putDontNest(result, 15800, 15810);
+ _putDontNest(result, 1097, 1489);
- _putDontNest(result, 15800, 15800);
+ _putDontNest(result, 1097, 1067);
- _putDontNest(result, 15800, 15791);
+ _putDontNest(result, 1097, 1339);
- _putDontNest(result, 15800, 15782);
+ _putDontNest(result, 1097, 1092);
- _putDontNest(result, 15800, 15773);
+ _putDontNest(result, 1097, 1257);
- _putDontNest(result, 1461, 1480);
+ _putDontNest(result, 14294, 14400);
- _putDontNest(result, 1461, 1500);
+ _putDontNest(result, 14294, 14418);
- _putDontNest(result, 1461, 1471);
+ _putDontNest(result, 14294, 14409);
- _putDontNest(result, 1461, 1515);
+ _putDontNest(result, 14294, 14427);
- _putDontNest(result, 1461, 1490);
+ _putDontNest(result, 14294, 14437);
- _putDontNest(result, 12313, 11953);
+ _putDontNest(result, 14244, 14400);
- _putDontNest(result, 12313, 11826);
+ _putDontNest(result, 14244, 14418);
- _putDontNest(result, 12313, 12047);
+ _putDontNest(result, 14244, 14409);
- _putDontNest(result, 1288, 1346);
+ _putDontNest(result, 14244, 14427);
- _putDontNest(result, 1288, 1480);
+ _putDontNest(result, 14244, 14437);
- _putDontNest(result, 1288, 1365);
+ _putDontNest(result, 931, 1279);
- _putDontNest(result, 1288, 1404);
+ _putDontNest(result, 931, 1388);
- _putDontNest(result, 1288, 1386);
+ _putDontNest(result, 931, 1378);
- _putDontNest(result, 1288, 1433);
+ _putDontNest(result, 931, 1198);
- _putDontNest(result, 1288, 1443);
+ _putDontNest(result, 931, 1426);
- _putDontNest(result, 1288, 1305);
+ _putDontNest(result, 931, 1369);
- _putDontNest(result, 1288, 1315);
+ _putDontNest(result, 931, 1300);
- _putDontNest(result, 1288, 1423);
+ _putDontNest(result, 931, 1205);
- _putDontNest(result, 1288, 1356);
+ _putDontNest(result, 931, 1310);
- _putDontNest(result, 1288, 1461);
+ _putDontNest(result, 931, 1454);
- _putDontNest(result, 1288, 1414);
+ _putDontNest(result, 931, 1225);
- _putDontNest(result, 1288, 1500);
+ _putDontNest(result, 931, 1417);
- _putDontNest(result, 1288, 1452);
+ _putDontNest(result, 931, 1248);
- _putDontNest(result, 1288, 1325);
+ _putDontNest(result, 931, 1191);
- _putDontNest(result, 1288, 1377);
+ _putDontNest(result, 931, 1330);
- _putDontNest(result, 1288, 1471);
+ _putDontNest(result, 931, 1407);
- _putDontNest(result, 1288, 1395);
+ _putDontNest(result, 931, 1185);
- _putDontNest(result, 1288, 1515);
+ _putDontNest(result, 931, 1464);
- _putDontNest(result, 1288, 1490);
+ _putDontNest(result, 931, 1474);
- _putDontNest(result, 1288, 1336);
+ _putDontNest(result, 931, 1320);
- _putDontNest(result, 15791, 15810);
+ _putDontNest(result, 931, 1269);
- _putDontNest(result, 15791, 15800);
+ _putDontNest(result, 931, 1289);
- _putDontNest(result, 15791, 15791);
+ _putDontNest(result, 931, 1215);
- _putDontNest(result, 15791, 15782);
+ _putDontNest(result, 931, 1397);
- _putDontNest(result, 15791, 15773);
+ _putDontNest(result, 931, 1445);
- _putDontNest(result, 15655, 15810);
+ _putDontNest(result, 931, 1173);
- _putDontNest(result, 15655, 15800);
+ _putDontNest(result, 931, 1234);
- _putDontNest(result, 15655, 15791);
+ _putDontNest(result, 931, 1435);
- _putDontNest(result, 15655, 15782);
+ _putDontNest(result, 931, 1360);
- _putDontNest(result, 15655, 15773);
+ _putDontNest(result, 931, 1351);
- _putDontNest(result, 1260, 1346);
+ _putDontNest(result, 931, 1489);
- _putDontNest(result, 1260, 1480);
+ _putDontNest(result, 931, 1067);
- _putDontNest(result, 1260, 1356);
+ _putDontNest(result, 931, 1339);
- _putDontNest(result, 1260, 1260);
+ _putDontNest(result, 931, 1092);
- _putDontNest(result, 1260, 1283);
+ _putDontNest(result, 931, 1257);
- _putDontNest(result, 1260, 1365);
+ _putDontNest(result, 1459, 1474);
- _putDontNest(result, 1260, 1404);
+ _putDontNest(result, 1459, 1489);
- _putDontNest(result, 1260, 1386);
+ _putDontNest(result, 1417, 1464);
- _putDontNest(result, 1260, 1433);
+ _putDontNest(result, 1417, 1474);
- _putDontNest(result, 1260, 1295);
+ _putDontNest(result, 1417, 1445);
- _putDontNest(result, 1260, 1274);
+ _putDontNest(result, 1417, 1489);
- _putDontNest(result, 1260, 1305);
+ _putDontNest(result, 1417, 1454);
- _putDontNest(result, 1260, 1315);
+ _putDontNest(result, 1248, 1279);
- _putDontNest(result, 1260, 1423);
+ _putDontNest(result, 1248, 1388);
- _putDontNest(result, 1260, 1414);
+ _putDontNest(result, 1248, 1378);
- _putDontNest(result, 1260, 1500);
+ _putDontNest(result, 1248, 1330);
- _putDontNest(result, 1260, 1251);
+ _putDontNest(result, 1248, 1369);
- _putDontNest(result, 1260, 1325);
+ _putDontNest(result, 1248, 1300);
- _putDontNest(result, 1260, 1377);
+ _putDontNest(result, 1248, 1397);
- _putDontNest(result, 1260, 1471);
+ _putDontNest(result, 1248, 1445);
- _putDontNest(result, 1260, 1395);
+ _putDontNest(result, 1248, 1310);
- _putDontNest(result, 1260, 1515);
+ _putDontNest(result, 1248, 1257);
- _putDontNest(result, 1260, 1490);
+ _putDontNest(result, 1248, 1454);
- _putDontNest(result, 1260, 1336);
+ _putDontNest(result, 1248, 1225);
- _putDontNest(result, 1466, 1480);
+ _putDontNest(result, 1248, 1417);
- _putDontNest(result, 1466, 1500);
+ _putDontNest(result, 1248, 1248);
- _putDontNest(result, 1466, 1471);
+ _putDontNest(result, 1248, 1407);
- _putDontNest(result, 1466, 1515);
+ _putDontNest(result, 1248, 1464);
- _putDontNest(result, 1466, 1490);
+ _putDontNest(result, 1248, 1474);
- _putDontNest(result, 11846, 11826);
+ _putDontNest(result, 1248, 1320);
- _putDontNest(result, 11846, 11953);
+ _putDontNest(result, 1248, 1269);
- _putDontNest(result, 15712, 15810);
+ _putDontNest(result, 1248, 1289);
- _putDontNest(result, 15712, 15800);
+ _putDontNest(result, 1248, 1234);
- _putDontNest(result, 15712, 15791);
+ _putDontNest(result, 1248, 1435);
- _putDontNest(result, 15712, 15782);
+ _putDontNest(result, 1248, 1360);
- _putDontNest(result, 15712, 15773);
+ _putDontNest(result, 1248, 1351);
- _putDontNest(result, 1231, 1346);
+ _putDontNest(result, 1248, 1489);
- _putDontNest(result, 1231, 1480);
+ _putDontNest(result, 1248, 1339);
- _putDontNest(result, 1231, 1356);
+ _putDontNest(result, 1191, 1279);
- _putDontNest(result, 1231, 1260);
+ _putDontNest(result, 1191, 1388);
- _putDontNest(result, 1231, 1283);
+ _putDontNest(result, 1191, 1378);
- _putDontNest(result, 1231, 1365);
+ _putDontNest(result, 1191, 1248);
- _putDontNest(result, 1231, 1404);
+ _putDontNest(result, 1191, 1330);
- _putDontNest(result, 1231, 1386);
+ _putDontNest(result, 1191, 1369);
- _putDontNest(result, 1231, 1433);
+ _putDontNest(result, 1191, 1300);
- _putDontNest(result, 1231, 1295);
+ _putDontNest(result, 1191, 1445);
- _putDontNest(result, 1231, 1274);
+ _putDontNest(result, 1191, 1234);
- _putDontNest(result, 1231, 1305);
+ _putDontNest(result, 1191, 1310);
- _putDontNest(result, 1231, 1315);
+ _putDontNest(result, 1191, 1257);
- _putDontNest(result, 1231, 1423);
+ _putDontNest(result, 1191, 1454);
- _putDontNest(result, 1231, 1414);
+ _putDontNest(result, 1191, 1225);
- _putDontNest(result, 1231, 1500);
+ _putDontNest(result, 1191, 1407);
- _putDontNest(result, 1231, 1241);
+ _putDontNest(result, 1191, 1464);
- _putDontNest(result, 1231, 1251);
+ _putDontNest(result, 1191, 1474);
- _putDontNest(result, 1231, 1325);
+ _putDontNest(result, 1191, 1320);
- _putDontNest(result, 1231, 1377);
+ _putDontNest(result, 1191, 1269);
- _putDontNest(result, 1231, 1471);
+ _putDontNest(result, 1191, 1289);
- _putDontNest(result, 1231, 1395);
+ _putDontNest(result, 1191, 1215);
- _putDontNest(result, 1231, 1515);
+ _putDontNest(result, 1191, 1397);
- _putDontNest(result, 1231, 1490);
+ _putDontNest(result, 1191, 1360);
- _putDontNest(result, 1231, 1336);
+ _putDontNest(result, 1191, 1351);
- _putDontNest(result, 15676, 15810);
+ _putDontNest(result, 1191, 1489);
- _putDontNest(result, 15676, 15800);
+ _putDontNest(result, 1191, 1339);
- _putDontNest(result, 15676, 15791);
+ _putDontNest(result, 1133, 1279);
- _putDontNest(result, 15676, 15782);
+ _putDontNest(result, 1133, 1388);
- _putDontNest(result, 15676, 15773);
+ _putDontNest(result, 1133, 1378);
- _putDontNest(result, 1320, 1346);
+ _putDontNest(result, 1133, 1198);
- _putDontNest(result, 1320, 1480);
+ _putDontNest(result, 1133, 1426);
- _putDontNest(result, 1320, 1365);
+ _putDontNest(result, 1133, 1369);
- _putDontNest(result, 1320, 1093);
+ _putDontNest(result, 1133, 1300);
- _putDontNest(result, 1320, 1404);
+ _putDontNest(result, 1133, 1445);
- _putDontNest(result, 1320, 1386);
+ _putDontNest(result, 1133, 1205);
- _putDontNest(result, 1320, 1452);
+ _putDontNest(result, 1133, 1310);
- _putDontNest(result, 1320, 1433);
+ _putDontNest(result, 1133, 1257);
- _putDontNest(result, 1320, 1443);
+ _putDontNest(result, 1133, 1454);
- _putDontNest(result, 1320, 1118);
+ _putDontNest(result, 1133, 1225);
- _putDontNest(result, 1320, 1423);
+ _putDontNest(result, 1133, 1417);
- _putDontNest(result, 1320, 1356);
+ _putDontNest(result, 1133, 1248);
- _putDontNest(result, 1320, 1461);
+ _putDontNest(result, 1133, 1191);
- _putDontNest(result, 1320, 1414);
+ _putDontNest(result, 1133, 1330);
- _putDontNest(result, 1320, 1500);
+ _putDontNest(result, 1133, 1407);
- _putDontNest(result, 1320, 1377);
+ _putDontNest(result, 1133, 1185);
- _putDontNest(result, 1320, 1471);
+ _putDontNest(result, 1133, 1464);
- _putDontNest(result, 1320, 1395);
+ _putDontNest(result, 1133, 1474);
- _putDontNest(result, 1320, 1515);
+ _putDontNest(result, 1133, 1320);
- _putDontNest(result, 1320, 1490);
+ _putDontNest(result, 1133, 1269);
- _putDontNest(result, 1414, 1423);
+ _putDontNest(result, 1133, 1289);
- _putDontNest(result, 1414, 1480);
+ _putDontNest(result, 1133, 1215);
- _putDontNest(result, 1414, 1433);
+ _putDontNest(result, 1133, 1397);
- _putDontNest(result, 1414, 1471);
+ _putDontNest(result, 1133, 1234);
- _putDontNest(result, 1414, 1414);
+ _putDontNest(result, 1133, 1435);
- _putDontNest(result, 1414, 1500);
+ _putDontNest(result, 1133, 1360);
- _putDontNest(result, 1414, 1515);
+ _putDontNest(result, 1133, 1351);
- _putDontNest(result, 1414, 1490);
+ _putDontNest(result, 1133, 1489);
- _putDontNest(result, 9639, 11953);
+ _putDontNest(result, 1133, 1339);
- _putDontNest(result, 9639, 11826);
+ _putDontNest(result, 1330, 1388);
- _putDontNest(result, 9639, 12047);
+ _putDontNest(result, 1330, 1378);
- _putDontNest(result, 1500, 1500);
+ _putDontNest(result, 1330, 1330);
- _putDontNest(result, 1500, 1515);
+ _putDontNest(result, 1330, 1474);
- _putDontNest(result, 1241, 1346);
+ _putDontNest(result, 1330, 1369);
- _putDontNest(result, 1241, 1480);
+ _putDontNest(result, 1330, 1397);
- _putDontNest(result, 1241, 1356);
+ _putDontNest(result, 1330, 1445);
- _putDontNest(result, 1241, 1260);
+ _putDontNest(result, 1330, 1454);
- _putDontNest(result, 1241, 1283);
+ _putDontNest(result, 1330, 1407);
- _putDontNest(result, 1241, 1365);
+ _putDontNest(result, 1330, 1464);
- _putDontNest(result, 1241, 1404);
+ _putDontNest(result, 1330, 1360);
- _putDontNest(result, 1241, 1386);
+ _putDontNest(result, 1330, 1351);
- _putDontNest(result, 1241, 1433);
+ _putDontNest(result, 1330, 1489);
- _putDontNest(result, 1241, 1295);
+ _putDontNest(result, 1330, 1339);
- _putDontNest(result, 1241, 1274);
+ _putDontNest(result, 1087, 1279);
- _putDontNest(result, 1241, 1305);
+ _putDontNest(result, 1087, 1388);
- _putDontNest(result, 1241, 1315);
+ _putDontNest(result, 1087, 1378);
- _putDontNest(result, 1241, 1423);
+ _putDontNest(result, 1087, 1198);
- _putDontNest(result, 1241, 1414);
+ _putDontNest(result, 1087, 1426);
- _putDontNest(result, 1241, 1500);
+ _putDontNest(result, 1087, 1369);
- _putDontNest(result, 1241, 1241);
+ _putDontNest(result, 1087, 1300);
- _putDontNest(result, 1241, 1251);
+ _putDontNest(result, 1087, 1445);
- _putDontNest(result, 1241, 1325);
+ _putDontNest(result, 1087, 1205);
- _putDontNest(result, 1241, 1377);
+ _putDontNest(result, 1087, 1310);
- _putDontNest(result, 1241, 1471);
+ _putDontNest(result, 1087, 1257);
- _putDontNest(result, 1241, 1395);
+ _putDontNest(result, 1087, 1454);
- _putDontNest(result, 1241, 1515);
+ _putDontNest(result, 1087, 1225);
- _putDontNest(result, 1241, 1490);
+ _putDontNest(result, 1087, 1417);
- _putDontNest(result, 1241, 1336);
+ _putDontNest(result, 1087, 1248);
- _putDontNest(result, 1180, 2950);
+ _putDontNest(result, 1087, 1191);
- _putDontNest(result, 1475, 1480);
+ _putDontNest(result, 1087, 1330);
- _putDontNest(result, 1475, 1500);
+ _putDontNest(result, 1087, 1407);
- _putDontNest(result, 1475, 1471);
+ _putDontNest(result, 1087, 1185);
- _putDontNest(result, 1475, 1515);
+ _putDontNest(result, 1087, 1464);
- _putDontNest(result, 1475, 1490);
+ _putDontNest(result, 1087, 1474);
- _putDontNest(result, 1365, 1423);
+ _putDontNest(result, 1087, 1320);
- _putDontNest(result, 1365, 1480);
+ _putDontNest(result, 1087, 1269);
- _putDontNest(result, 1365, 1356);
+ _putDontNest(result, 1087, 1289);
- _putDontNest(result, 1365, 1365);
+ _putDontNest(result, 1087, 1215);
- _putDontNest(result, 1365, 1404);
+ _putDontNest(result, 1087, 1397);
- _putDontNest(result, 1365, 1386);
+ _putDontNest(result, 1087, 1234);
- _putDontNest(result, 1365, 1433);
+ _putDontNest(result, 1087, 1435);
- _putDontNest(result, 1365, 1414);
+ _putDontNest(result, 1087, 1360);
- _putDontNest(result, 1365, 1500);
+ _putDontNest(result, 1087, 1351);
- _putDontNest(result, 1365, 1377);
+ _putDontNest(result, 1087, 1489);
- _putDontNest(result, 1365, 1471);
+ _putDontNest(result, 1087, 1339);
- _putDontNest(result, 1365, 1395);
+ _putDontNest(result, 7085, 7102);
- _putDontNest(result, 1365, 1515);
+ _putDontNest(result, 1407, 1474);
- _putDontNest(result, 1365, 1490);
+ _putDontNest(result, 1407, 1445);
- _putDontNest(result, 15786, 15810);
+ _putDontNest(result, 1407, 1489);
- _putDontNest(result, 12013, 11826);
+ _putDontNest(result, 1407, 1454);
- _putDontNest(result, 12013, 11953);
+ _putDontNest(result, 1407, 1407);
- _putDontNest(result, 1255, 1346);
+ _putDontNest(result, 1407, 1464);
- _putDontNest(result, 1255, 1480);
+ _putDontNest(result, 1185, 1279);
- _putDontNest(result, 1255, 1365);
+ _putDontNest(result, 1185, 1388);
- _putDontNest(result, 1255, 1404);
+ _putDontNest(result, 1185, 1378);
- _putDontNest(result, 1255, 1386);
+ _putDontNest(result, 1185, 1330);
- _putDontNest(result, 1255, 1433);
+ _putDontNest(result, 1185, 1369);
- _putDontNest(result, 1255, 1443);
+ _putDontNest(result, 1185, 1300);
- _putDontNest(result, 1255, 1295);
+ _putDontNest(result, 1185, 1445);
- _putDontNest(result, 1255, 1305);
+ _putDontNest(result, 1185, 1310);
- _putDontNest(result, 1255, 1315);
+ _putDontNest(result, 1185, 1257);
- _putDontNest(result, 1255, 1423);
+ _putDontNest(result, 1185, 1454);
- _putDontNest(result, 1255, 1356);
+ _putDontNest(result, 1185, 1225);
- _putDontNest(result, 1255, 1461);
+ _putDontNest(result, 1185, 1417);
- _putDontNest(result, 1255, 1414);
+ _putDontNest(result, 1185, 1248);
- _putDontNest(result, 1255, 1500);
+ _putDontNest(result, 1185, 1407);
- _putDontNest(result, 1255, 1452);
+ _putDontNest(result, 1185, 1464);
- _putDontNest(result, 1255, 1325);
+ _putDontNest(result, 1185, 1474);
- _putDontNest(result, 1255, 1377);
+ _putDontNest(result, 1185, 1320);
- _putDontNest(result, 1255, 1471);
+ _putDontNest(result, 1185, 1269);
- _putDontNest(result, 1255, 1395);
+ _putDontNest(result, 1185, 1289);
- _putDontNest(result, 1255, 1515);
+ _putDontNest(result, 1185, 1215);
- _putDontNest(result, 1255, 1490);
+ _putDontNest(result, 1185, 1397);
- _putDontNest(result, 1255, 1336);
+ _putDontNest(result, 1185, 1234);
- _putDontNest(result, 1211, 1346);
+ _putDontNest(result, 1185, 1435);
- _putDontNest(result, 1211, 1480);
+ _putDontNest(result, 1185, 1360);
- _putDontNest(result, 1211, 1260);
+ _putDontNest(result, 1185, 1351);
- _putDontNest(result, 1211, 1283);
+ _putDontNest(result, 1185, 1489);
- _putDontNest(result, 1211, 1365);
+ _putDontNest(result, 1185, 1339);
- _putDontNest(result, 1211, 1404);
+ _putDontNest(result, 1283, 1388);
- _putDontNest(result, 1211, 1386);
+ _putDontNest(result, 1283, 1378);
- _putDontNest(result, 1211, 1433);
+ _putDontNest(result, 1283, 1417);
- _putDontNest(result, 1211, 1443);
+ _putDontNest(result, 1283, 1330);
- _putDontNest(result, 1211, 1295);
+ _putDontNest(result, 1283, 1426);
- _putDontNest(result, 1211, 1274);
+ _putDontNest(result, 1283, 1369);
- _putDontNest(result, 1211, 1305);
+ _putDontNest(result, 1283, 1397);
- _putDontNest(result, 1211, 1315);
+ _putDontNest(result, 1283, 1445);
- _putDontNest(result, 1211, 1423);
+ _putDontNest(result, 1283, 1435);
- _putDontNest(result, 1211, 1356);
+ _putDontNest(result, 1283, 1454);
- _putDontNest(result, 1211, 1461);
+ _putDontNest(result, 1283, 1407);
- _putDontNest(result, 1211, 1414);
+ _putDontNest(result, 1283, 1464);
- _putDontNest(result, 1211, 1500);
+ _putDontNest(result, 1283, 1474);
- _putDontNest(result, 1211, 1241);
+ _putDontNest(result, 1283, 1320);
- _putDontNest(result, 1211, 1251);
+ _putDontNest(result, 1283, 1360);
- _putDontNest(result, 1211, 1325);
+ _putDontNest(result, 1283, 1351);
- _putDontNest(result, 1211, 1377);
+ _putDontNest(result, 1283, 1489);
- _putDontNest(result, 1211, 1471);
+ _putDontNest(result, 1283, 1339);
- _putDontNest(result, 1211, 1395);
+ _putDontNest(result, 1464, 1464);
- _putDontNest(result, 1211, 1515);
+ _putDontNest(result, 1464, 1474);
- _putDontNest(result, 1211, 1490);
+ _putDontNest(result, 1464, 1489);
- _putDontNest(result, 1211, 1336);
+ _putDontNest(result, 1252, 1279);
- _putDontNest(result, 1159, 1346);
+ _putDontNest(result, 1252, 1388);
- _putDontNest(result, 1159, 1480);
+ _putDontNest(result, 1252, 1378);
- _putDontNest(result, 1159, 1260);
+ _putDontNest(result, 1252, 1417);
- _putDontNest(result, 1159, 1283);
+ _putDontNest(result, 1252, 1330);
- _putDontNest(result, 1159, 1365);
+ _putDontNest(result, 1252, 1426);
- _putDontNest(result, 1159, 1211);
+ _putDontNest(result, 1252, 1369);
- _putDontNest(result, 1159, 1404);
+ _putDontNest(result, 1252, 1300);
- _putDontNest(result, 1159, 1386);
+ _putDontNest(result, 1252, 1397);
- _putDontNest(result, 1159, 1433);
+ _putDontNest(result, 1252, 1445);
- _putDontNest(result, 1159, 1224);
+ _putDontNest(result, 1252, 1435);
- _putDontNest(result, 1159, 1443);
+ _putDontNest(result, 1252, 1310);
- _putDontNest(result, 1159, 1217);
+ _putDontNest(result, 1252, 1454);
- _putDontNest(result, 1159, 1295);
+ _putDontNest(result, 1252, 1407);
- _putDontNest(result, 1159, 1274);
+ _putDontNest(result, 1252, 1464);
- _putDontNest(result, 1159, 1305);
+ _putDontNest(result, 1252, 1474);
- _putDontNest(result, 1159, 1315);
+ _putDontNest(result, 1252, 1320);
- _putDontNest(result, 1159, 1423);
+ _putDontNest(result, 1252, 1269);
- _putDontNest(result, 1159, 1356);
+ _putDontNest(result, 1252, 1289);
- _putDontNest(result, 1159, 1461);
+ _putDontNest(result, 1252, 1360);
- _putDontNest(result, 1159, 1231);
+ _putDontNest(result, 1252, 1351);
- _putDontNest(result, 1159, 1414);
+ _putDontNest(result, 1252, 1489);
- _putDontNest(result, 1159, 1500);
+ _putDontNest(result, 1252, 1339);
- _putDontNest(result, 1159, 1241);
+ _putDontNest(result, 1552, 1573);
- _putDontNest(result, 1159, 1452);
+ _putDontNest(result, 1552, 1552);
- _putDontNest(result, 1159, 1251);
+ _putDontNest(result, 1552, 1562);
- _putDontNest(result, 1159, 1325);
+ _putDontNest(result, 1474, 1474);
- _putDontNest(result, 1159, 1377);
+ _putDontNest(result, 1474, 1489);
- _putDontNest(result, 1159, 1471);
+ _putDontNest(result, 1045, 1279);
- _putDontNest(result, 1159, 1395);
+ _putDontNest(result, 1045, 1388);
- _putDontNest(result, 1159, 1515);
+ _putDontNest(result, 1045, 1378);
- _putDontNest(result, 1159, 1490);
+ _putDontNest(result, 1045, 1198);
- _putDontNest(result, 1159, 1336);
+ _putDontNest(result, 1045, 1426);
- _putDontNest(result, 1404, 1423);
+ _putDontNest(result, 1045, 1369);
- _putDontNest(result, 1404, 1480);
+ _putDontNest(result, 1045, 1300);
- _putDontNest(result, 1404, 1404);
+ _putDontNest(result, 1045, 1445);
- _putDontNest(result, 1404, 1386);
+ _putDontNest(result, 1045, 1205);
- _putDontNest(result, 1404, 1433);
+ _putDontNest(result, 1045, 1310);
- _putDontNest(result, 1404, 1414);
+ _putDontNest(result, 1045, 1257);
- _putDontNest(result, 1404, 1500);
+ _putDontNest(result, 1045, 1454);
- _putDontNest(result, 1404, 1377);
+ _putDontNest(result, 1045, 1225);
- _putDontNest(result, 1404, 1471);
+ _putDontNest(result, 1045, 1417);
- _putDontNest(result, 1404, 1395);
+ _putDontNest(result, 1045, 1248);
- _putDontNest(result, 1404, 1515);
+ _putDontNest(result, 1045, 1191);
- _putDontNest(result, 1404, 1490);
+ _putDontNest(result, 1045, 1330);
- _putDontNest(result, 1386, 1423);
+ _putDontNest(result, 1045, 1407);
- _putDontNest(result, 1386, 1480);
+ _putDontNest(result, 1045, 1185);
- _putDontNest(result, 1386, 1404);
+ _putDontNest(result, 1045, 1464);
- _putDontNest(result, 1386, 1386);
+ _putDontNest(result, 1045, 1474);
- _putDontNest(result, 1386, 1433);
+ _putDontNest(result, 1045, 1320);
- _putDontNest(result, 1386, 1414);
+ _putDontNest(result, 1045, 1269);
- _putDontNest(result, 1386, 1500);
+ _putDontNest(result, 1045, 1289);
- _putDontNest(result, 1386, 1377);
+ _putDontNest(result, 1045, 1215);
- _putDontNest(result, 1386, 1471);
+ _putDontNest(result, 1045, 1397);
- _putDontNest(result, 1386, 1395);
+ _putDontNest(result, 1045, 1234);
- _putDontNest(result, 1386, 1515);
+ _putDontNest(result, 1045, 1435);
- _putDontNest(result, 1386, 1490);
+ _putDontNest(result, 1045, 1360);
- _putDontNest(result, 12023, 11826);
+ _putDontNest(result, 1045, 1351);
- _putDontNest(result, 12023, 11953);
+ _putDontNest(result, 1045, 1489);
- _putDontNest(result, 1300, 1423);
+ _putDontNest(result, 1045, 1339);
- _putDontNest(result, 1300, 1346);
+ _putDontNest(result, 1320, 1388);
- _putDontNest(result, 1300, 1480);
+ _putDontNest(result, 1320, 1378);
- _putDontNest(result, 1300, 1365);
+ _putDontNest(result, 1320, 1330);
- _putDontNest(result, 1300, 1404);
+ _putDontNest(result, 1320, 1369);
- _putDontNest(result, 1300, 1386);
+ _putDontNest(result, 1320, 1397);
- _putDontNest(result, 1300, 1452);
+ _putDontNest(result, 1320, 1445);
- _putDontNest(result, 1300, 1433);
+ _putDontNest(result, 1320, 1454);
- _putDontNest(result, 1300, 1443);
+ _putDontNest(result, 1320, 1407);
- _putDontNest(result, 1300, 1356);
+ _putDontNest(result, 1320, 1464);
- _putDontNest(result, 1300, 1461);
+ _putDontNest(result, 1320, 1474);
- _putDontNest(result, 1300, 1414);
+ _putDontNest(result, 1320, 1320);
- _putDontNest(result, 1300, 1500);
+ _putDontNest(result, 1320, 1360);
- _putDontNest(result, 1300, 1377);
+ _putDontNest(result, 1320, 1351);
- _putDontNest(result, 1300, 1471);
+ _putDontNest(result, 1320, 1489);
- _putDontNest(result, 1300, 1395);
+ _putDontNest(result, 1320, 1339);
- _putDontNest(result, 1300, 1515);
+ _putDontNest(result, 1293, 1388);
- _putDontNest(result, 1300, 1490);
+ _putDontNest(result, 1293, 1378);
- _putDontNest(result, 1612, 1623);
+ _putDontNest(result, 1293, 1417);
- _putDontNest(result, 1612, 1612);
+ _putDontNest(result, 1293, 1330);
- _putDontNest(result, 1452, 1480);
+ _putDontNest(result, 1293, 1426);
- _putDontNest(result, 1452, 1500);
+ _putDontNest(result, 1293, 1369);
- _putDontNest(result, 1452, 1471);
+ _putDontNest(result, 1293, 1397);
- _putDontNest(result, 1452, 1515);
+ _putDontNest(result, 1293, 1445);
- _putDontNest(result, 1452, 1490);
+ _putDontNest(result, 1293, 1435);
- _putDontNest(result, 1251, 1346);
+ _putDontNest(result, 1293, 1454);
- _putDontNest(result, 1251, 1480);
+ _putDontNest(result, 1293, 1407);
- _putDontNest(result, 1251, 1356);
+ _putDontNest(result, 1293, 1464);
- _putDontNest(result, 1251, 1260);
+ _putDontNest(result, 1293, 1474);
- _putDontNest(result, 1251, 1283);
+ _putDontNest(result, 1293, 1320);
- _putDontNest(result, 1251, 1365);
+ _putDontNest(result, 1293, 1360);
- _putDontNest(result, 1251, 1404);
+ _putDontNest(result, 1293, 1351);
- _putDontNest(result, 1251, 1386);
+ _putDontNest(result, 1293, 1489);
- _putDontNest(result, 1251, 1433);
+ _putDontNest(result, 1293, 1339);
- _putDontNest(result, 1251, 1295);
+ _putDontNest(result, 1198, 1279);
- _putDontNest(result, 1251, 1274);
+ _putDontNest(result, 1198, 1388);
- _putDontNest(result, 1251, 1305);
+ _putDontNest(result, 1198, 1378);
- _putDontNest(result, 1251, 1315);
+ _putDontNest(result, 1198, 1330);
- _putDontNest(result, 1251, 1423);
+ _putDontNest(result, 1198, 1369);
- _putDontNest(result, 1251, 1414);
+ _putDontNest(result, 1198, 1300);
- _putDontNest(result, 1251, 1500);
+ _putDontNest(result, 1198, 1445);
- _putDontNest(result, 1251, 1251);
+ _putDontNest(result, 1198, 1310);
- _putDontNest(result, 1251, 1325);
+ _putDontNest(result, 1198, 1257);
- _putDontNest(result, 1251, 1377);
+ _putDontNest(result, 1198, 1454);
- _putDontNest(result, 1251, 1471);
+ _putDontNest(result, 1198, 1225);
- _putDontNest(result, 1251, 1395);
+ _putDontNest(result, 1198, 1417);
- _putDontNest(result, 1251, 1515);
+ _putDontNest(result, 1198, 1248);
- _putDontNest(result, 1251, 1490);
+ _putDontNest(result, 1198, 1407);
- _putDontNest(result, 1251, 1336);
+ _putDontNest(result, 1198, 1464);
- _putDontNest(result, 1325, 1346);
+ _putDontNest(result, 1198, 1474);
- _putDontNest(result, 1325, 1480);
+ _putDontNest(result, 1198, 1320);
- _putDontNest(result, 1325, 1356);
+ _putDontNest(result, 1198, 1269);
- _putDontNest(result, 1325, 1365);
+ _putDontNest(result, 1198, 1289);
- _putDontNest(result, 1325, 1404);
+ _putDontNest(result, 1198, 1215);
- _putDontNest(result, 1325, 1386);
+ _putDontNest(result, 1198, 1397);
- _putDontNest(result, 1325, 1325);
+ _putDontNest(result, 1198, 1234);
- _putDontNest(result, 1325, 1433);
+ _putDontNest(result, 1198, 1435);
- _putDontNest(result, 1325, 1305);
+ _putDontNest(result, 1198, 1360);
- _putDontNest(result, 1325, 1315);
+ _putDontNest(result, 1198, 1351);
- _putDontNest(result, 1325, 1423);
+ _putDontNest(result, 1198, 1489);
- _putDontNest(result, 1325, 1414);
+ _putDontNest(result, 1198, 1339);
- _putDontNest(result, 1325, 1500);
+ _putDontNest(result, 10474, 10481);
- _putDontNest(result, 1325, 1377);
+ _putDontNest(result, 10474, 10650);
- _putDontNest(result, 1325, 1471);
+ _putDontNest(result, 10508, 10481);
- _putDontNest(result, 1325, 1395);
+ _putDontNest(result, 10508, 10650);
- _putDontNest(result, 1325, 1515);
+ _putDontNest(result, 1469, 1489);
- _putDontNest(result, 1325, 1490);
+ _putDontNest(result, 7102, 7102);
- _putDontNest(result, 1325, 1336);
+ _putDontNest(result, 1154, 2537);
- _putDontNest(result, 15768, 15810);
+ _putDontNest(result, 1355, 1388);
- _putDontNest(result, 8128, 8128);
+ _putDontNest(result, 1355, 1378);
- _putDontNest(result, 8116, 8116);
+ _putDontNest(result, 1355, 1417);
- _putDontNest(result, 8116, 8128);
+ _putDontNest(result, 1355, 1474);
- _putDontNest(result, 15667, 15810);
+ _putDontNest(result, 1355, 1426);
- _putDontNest(result, 15667, 15800);
+ _putDontNest(result, 1355, 1369);
- _putDontNest(result, 15667, 15791);
+ _putDontNest(result, 1355, 1397);
- _putDontNest(result, 15667, 15782);
+ _putDontNest(result, 1355, 1445);
- _putDontNest(result, 15667, 15773);
+ _putDontNest(result, 1355, 1435);
- _putDontNest(result, 1409, 1423);
+ _putDontNest(result, 1355, 1489);
- _putDontNest(result, 1409, 1480);
+ _putDontNest(result, 1355, 1454);
- _putDontNest(result, 1409, 1461);
+ _putDontNest(result, 1355, 1407);
- _putDontNest(result, 1409, 1452);
+ _putDontNest(result, 1355, 1464);
- _putDontNest(result, 1409, 1433);
+ _putDontNest(result, 1355, 1360);
- _putDontNest(result, 1409, 1443);
+ _putDontNest(result, 1355, 1351);
- _putDontNest(result, 1409, 1471);
+ _putDontNest(result, 1426, 1464);
- _putDontNest(result, 1409, 1414);
+ _putDontNest(result, 1426, 1474);
- _putDontNest(result, 1409, 1500);
+ _putDontNest(result, 1426, 1445);
- _putDontNest(result, 1409, 1515);
+ _putDontNest(result, 1426, 1489);
- _putDontNest(result, 1409, 1490);
+ _putDontNest(result, 1426, 1454);
- _putDontNest(result, 1433, 1480);
+ _putDontNest(result, 1210, 1279);
- _putDontNest(result, 1433, 1500);
+ _putDontNest(result, 1210, 1388);
- _putDontNest(result, 1433, 1433);
+ _putDontNest(result, 1210, 1378);
- _putDontNest(result, 1433, 1471);
+ _putDontNest(result, 1210, 1330);
- _putDontNest(result, 1433, 1515);
+ _putDontNest(result, 1210, 1426);
- _putDontNest(result, 1433, 1490);
+ _putDontNest(result, 1210, 1369);
- _putDontNest(result, 976, 1346);
+ _putDontNest(result, 1210, 1300);
- _putDontNest(result, 976, 1480);
+ _putDontNest(result, 1210, 1397);
- _putDontNest(result, 976, 1260);
+ _putDontNest(result, 1210, 1445);
- _putDontNest(result, 976, 1283);
+ _putDontNest(result, 1210, 1310);
- _putDontNest(result, 976, 1365);
+ _putDontNest(result, 1210, 1257);
- _putDontNest(result, 976, 1093);
+ _putDontNest(result, 1210, 1454);
- _putDontNest(result, 976, 1211);
+ _putDontNest(result, 1210, 1225);
- _putDontNest(result, 976, 1404);
+ _putDontNest(result, 1210, 1417);
- _putDontNest(result, 976, 1386);
+ _putDontNest(result, 1210, 1248);
- _putDontNest(result, 976, 1433);
+ _putDontNest(result, 1210, 1407);
- _putDontNest(result, 976, 1224);
+ _putDontNest(result, 1210, 1464);
- _putDontNest(result, 976, 1443);
+ _putDontNest(result, 1210, 1474);
- _putDontNest(result, 976, 1217);
+ _putDontNest(result, 1210, 1320);
- _putDontNest(result, 976, 1295);
+ _putDontNest(result, 1210, 1269);
- _putDontNest(result, 976, 1274);
+ _putDontNest(result, 1210, 1289);
- _putDontNest(result, 976, 1305);
+ _putDontNest(result, 1210, 1234);
- _putDontNest(result, 976, 1315);
+ _putDontNest(result, 1210, 1435);
- _putDontNest(result, 976, 1118);
+ _putDontNest(result, 1210, 1360);
- _putDontNest(result, 976, 1423);
+ _putDontNest(result, 1210, 1351);
- _putDontNest(result, 976, 1356);
+ _putDontNest(result, 1210, 1489);
- _putDontNest(result, 976, 1461);
+ _putDontNest(result, 1210, 1339);
- _putDontNest(result, 976, 1231);
+ _putDontNest(result, 10595, 10481);
- _putDontNest(result, 976, 1414);
+ _putDontNest(result, 10595, 10650);
- _putDontNest(result, 976, 1500);
+ _putDontNest(result, 1369, 1388);
- _putDontNest(result, 976, 1241);
+ _putDontNest(result, 1369, 1378);
- _putDontNest(result, 976, 1452);
+ _putDontNest(result, 1369, 1474);
- _putDontNest(result, 976, 1251);
+ _putDontNest(result, 1369, 1369);
- _putDontNest(result, 976, 1325);
+ _putDontNest(result, 1369, 1397);
- _putDontNest(result, 976, 1377);
+ _putDontNest(result, 1369, 1445);
- _putDontNest(result, 976, 1471);
+ _putDontNest(result, 1369, 1489);
- _putDontNest(result, 976, 1395);
+ _putDontNest(result, 1369, 1454);
- _putDontNest(result, 976, 1199);
+ _putDontNest(result, 1369, 1407);
- _putDontNest(result, 976, 1515);
+ _putDontNest(result, 1369, 1464);
- _putDontNest(result, 976, 1490);
+ _putDontNest(result, 1369, 1360);
- _putDontNest(result, 976, 1336);
+ _putDontNest(result, 1369, 1351);
- _putDontNest(result, 1495, 1515);
+ _putDontNest(result, 1392, 1388);
- _putDontNest(result, 15489, 1433);
+ _putDontNest(result, 1392, 1417);
- _putDontNest(result, 1341, 1423);
+ _putDontNest(result, 1392, 1474);
- _putDontNest(result, 1341, 1480);
+ _putDontNest(result, 1392, 1426);
- _putDontNest(result, 1341, 1365);
+ _putDontNest(result, 1392, 1397);
- _putDontNest(result, 1341, 1404);
+ _putDontNest(result, 1392, 1445);
- _putDontNest(result, 1341, 1386);
+ _putDontNest(result, 1392, 1435);
- _putDontNest(result, 1341, 1452);
+ _putDontNest(result, 1392, 1489);
- _putDontNest(result, 1341, 1433);
+ _putDontNest(result, 1392, 1454);
- _putDontNest(result, 1341, 1443);
+ _putDontNest(result, 1392, 1407);
- _putDontNest(result, 1341, 1356);
+ _putDontNest(result, 1392, 1464);
- _putDontNest(result, 1341, 1461);
+ _putDontNest(result, 2533, 14390);
- _putDontNest(result, 1341, 1414);
+ _putDontNest(result, 2533, 14291);
- _putDontNest(result, 1341, 1500);
+ _putDontNest(result, 2533, 14275);
- _putDontNest(result, 1341, 1377);
+ _putDontNest(result, 2533, 14383);
- _putDontNest(result, 1341, 1471);
+ _putDontNest(result, 1269, 1279);
- _putDontNest(result, 1341, 1395);
+ _putDontNest(result, 1269, 1388);
- _putDontNest(result, 1341, 1515);
+ _putDontNest(result, 1269, 1378);
- _putDontNest(result, 1341, 1490);
+ _putDontNest(result, 1269, 1330);
- _putDontNest(result, 1278, 1346);
+ _putDontNest(result, 1269, 1369);
- _putDontNest(result, 1278, 1480);
+ _putDontNest(result, 1269, 1300);
- _putDontNest(result, 1278, 1365);
+ _putDontNest(result, 1269, 1397);
- _putDontNest(result, 1278, 1404);
+ _putDontNest(result, 1269, 1445);
- _putDontNest(result, 1278, 1386);
+ _putDontNest(result, 1269, 1310);
- _putDontNest(result, 1278, 1433);
+ _putDontNest(result, 1269, 1454);
- _putDontNest(result, 1278, 1443);
+ _putDontNest(result, 1269, 1407);
- _putDontNest(result, 1278, 1295);
+ _putDontNest(result, 1269, 1464);
- _putDontNest(result, 1278, 1305);
+ _putDontNest(result, 1269, 1474);
- _putDontNest(result, 1278, 1315);
+ _putDontNest(result, 1269, 1320);
- _putDontNest(result, 1278, 1423);
+ _putDontNest(result, 1269, 1269);
- _putDontNest(result, 1278, 1356);
+ _putDontNest(result, 1269, 1289);
- _putDontNest(result, 1278, 1461);
+ _putDontNest(result, 1269, 1360);
- _putDontNest(result, 1278, 1414);
+ _putDontNest(result, 1269, 1351);
- _putDontNest(result, 1278, 1500);
+ _putDontNest(result, 1269, 1489);
- _putDontNest(result, 1278, 1452);
+ _putDontNest(result, 1269, 1339);
- _putDontNest(result, 1278, 1325);
+ _putDontNest(result, 1289, 1279);
- _putDontNest(result, 1278, 1377);
+ _putDontNest(result, 1289, 1388);
- _putDontNest(result, 1278, 1471);
+ _putDontNest(result, 1289, 1378);
- _putDontNest(result, 1278, 1395);
+ _putDontNest(result, 1289, 1417);
- _putDontNest(result, 1278, 1515);
+ _putDontNest(result, 1289, 1330);
- _putDontNest(result, 1278, 1490);
+ _putDontNest(result, 1289, 1369);
- _putDontNest(result, 1278, 1336);
+ _putDontNest(result, 1289, 1289);
- _putDontNest(result, 1607, 1623);
+ _putDontNest(result, 1289, 1300);
- _putDontNest(result, 1027, 1346);
+ _putDontNest(result, 1289, 1397);
- _putDontNest(result, 1027, 1480);
+ _putDontNest(result, 1289, 1445);
- _putDontNest(result, 1027, 1260);
+ _putDontNest(result, 1289, 1435);
- _putDontNest(result, 1027, 1283);
+ _putDontNest(result, 1289, 1310);
- _putDontNest(result, 1027, 1365);
+ _putDontNest(result, 1289, 1454);
- _putDontNest(result, 1027, 1093);
+ _putDontNest(result, 1289, 1407);
- _putDontNest(result, 1027, 1211);
+ _putDontNest(result, 1289, 1464);
- _putDontNest(result, 1027, 1404);
+ _putDontNest(result, 1289, 1474);
- _putDontNest(result, 1027, 1386);
+ _putDontNest(result, 1289, 1320);
- _putDontNest(result, 1027, 1433);
+ _putDontNest(result, 1289, 1360);
- _putDontNest(result, 1027, 1224);
+ _putDontNest(result, 1289, 1351);
- _putDontNest(result, 1027, 1443);
+ _putDontNest(result, 1289, 1489);
- _putDontNest(result, 1027, 1217);
+ _putDontNest(result, 1289, 1339);
- _putDontNest(result, 1027, 1295);
+ _putDontNest(result, 1238, 1279);
- _putDontNest(result, 1027, 1274);
+ _putDontNest(result, 1238, 1388);
- _putDontNest(result, 1027, 1305);
+ _putDontNest(result, 1238, 1378);
- _putDontNest(result, 1027, 1315);
+ _putDontNest(result, 1238, 1417);
- _putDontNest(result, 1027, 1118);
+ _putDontNest(result, 1238, 1330);
- _putDontNest(result, 1027, 1423);
+ _putDontNest(result, 1238, 1426);
- _putDontNest(result, 1027, 1356);
+ _putDontNest(result, 1238, 1369);
- _putDontNest(result, 1027, 1461);
+ _putDontNest(result, 1238, 1300);
- _putDontNest(result, 1027, 1231);
+ _putDontNest(result, 1238, 1397);
- _putDontNest(result, 1027, 1414);
+ _putDontNest(result, 1238, 1445);
- _putDontNest(result, 1027, 1500);
+ _putDontNest(result, 1238, 1435);
- _putDontNest(result, 1027, 1241);
+ _putDontNest(result, 1238, 1310);
- _putDontNest(result, 1027, 1452);
+ _putDontNest(result, 1238, 1454);
- _putDontNest(result, 1027, 1251);
+ _putDontNest(result, 1238, 1407);
- _putDontNest(result, 1027, 1325);
+ _putDontNest(result, 1238, 1464);
- _putDontNest(result, 1027, 1377);
+ _putDontNest(result, 1238, 1474);
- _putDontNest(result, 1027, 1471);
+ _putDontNest(result, 1238, 1320);
- _putDontNest(result, 1027, 1395);
+ _putDontNest(result, 1238, 1269);
- _putDontNest(result, 1027, 1199);
+ _putDontNest(result, 1238, 1289);
- _putDontNest(result, 1027, 1515);
+ _putDontNest(result, 1238, 1360);
- _putDontNest(result, 1027, 1490);
+ _putDontNest(result, 1238, 1351);
- _putDontNest(result, 1027, 1336);
+ _putDontNest(result, 1238, 1489);
- _putDontNest(result, 12096, 11826);
+ _putDontNest(result, 1238, 1339);
- _putDontNest(result, 12096, 11953);
+ _putDontNest(result, 7090, 7102);
- _putDontNest(result, 11898, 11826);
+ _putDontNest(result, 7090, 7090);
- _putDontNest(result, 11898, 11953);
+ _putDontNest(result, 1440, 1464);
- _putDontNest(result, 1360, 1423);
+ _putDontNest(result, 1440, 1474);
- _putDontNest(result, 1360, 1480);
+ _putDontNest(result, 1440, 1445);
- _putDontNest(result, 1360, 1365);
+ _putDontNest(result, 1440, 1489);
- _putDontNest(result, 1360, 1404);
+ _putDontNest(result, 1440, 1454);
- _putDontNest(result, 1360, 1386);
+ _putDontNest(result, 1300, 1279);
- _putDontNest(result, 1360, 1452);
+ _putDontNest(result, 1300, 1388);
- _putDontNest(result, 1360, 1433);
+ _putDontNest(result, 1300, 1378);
- _putDontNest(result, 1360, 1443);
+ _putDontNest(result, 1300, 1330);
- _putDontNest(result, 1360, 1356);
+ _putDontNest(result, 1300, 1369);
- _putDontNest(result, 1360, 1461);
+ _putDontNest(result, 1300, 1289);
- _putDontNest(result, 1360, 1414);
+ _putDontNest(result, 1300, 1300);
- _putDontNest(result, 1360, 1500);
+ _putDontNest(result, 1300, 1397);
- _putDontNest(result, 1360, 1377);
+ _putDontNest(result, 1300, 1445);
- _putDontNest(result, 1360, 1471);
+ _putDontNest(result, 1300, 1310);
- _putDontNest(result, 1360, 1395);
+ _putDontNest(result, 1300, 1454);
- _putDontNest(result, 1360, 1515);
+ _putDontNest(result, 1300, 1407);
- _putDontNest(result, 1360, 1490);
+ _putDontNest(result, 1300, 1464);
- _putDontNest(result, 1351, 1423);
+ _putDontNest(result, 1300, 1474);
- _putDontNest(result, 1351, 1480);
+ _putDontNest(result, 1300, 1320);
- _putDontNest(result, 1351, 1365);
+ _putDontNest(result, 1300, 1360);
- _putDontNest(result, 1351, 1404);
+ _putDontNest(result, 1300, 1351);
- _putDontNest(result, 1351, 1386);
+ _putDontNest(result, 1300, 1489);
- _putDontNest(result, 1351, 1452);
+ _putDontNest(result, 1300, 1339);
- _putDontNest(result, 1351, 1433);
+ _putDontNest(result, 8404, 841);
- _putDontNest(result, 1351, 1443);
+ _putDontNest(result, 1557, 1573);
- _putDontNest(result, 1351, 1356);
+ _putDontNest(result, 1053, 1279);
- _putDontNest(result, 1351, 1461);
+ _putDontNest(result, 1053, 1388);
- _putDontNest(result, 1351, 1414);
+ _putDontNest(result, 1053, 1378);
- _putDontNest(result, 1351, 1500);
+ _putDontNest(result, 1053, 1198);
- _putDontNest(result, 1351, 1377);
+ _putDontNest(result, 1053, 1426);
- _putDontNest(result, 1351, 1471);
+ _putDontNest(result, 1053, 1369);
- _putDontNest(result, 1351, 1395);
+ _putDontNest(result, 1053, 1300);
- _putDontNest(result, 1351, 1515);
+ _putDontNest(result, 1053, 1445);
- _putDontNest(result, 1351, 1490);
+ _putDontNest(result, 1053, 1205);
- _putDontNest(result, 1592, 1623);
+ _putDontNest(result, 1053, 1310);
- _putDontNest(result, 1592, 1612);
+ _putDontNest(result, 1053, 1257);
- _putDontNest(result, 1592, 1602);
+ _putDontNest(result, 1053, 1454);
- _putDontNest(result, 1088, 1346);
+ _putDontNest(result, 1053, 1225);
- _putDontNest(result, 1088, 1480);
+ _putDontNest(result, 1053, 1417);
- _putDontNest(result, 1088, 1260);
+ _putDontNest(result, 1053, 1248);
- _putDontNest(result, 1088, 1283);
+ _putDontNest(result, 1053, 1191);
- _putDontNest(result, 1088, 1365);
+ _putDontNest(result, 1053, 1330);
- _putDontNest(result, 1088, 1211);
+ _putDontNest(result, 1053, 1407);
- _putDontNest(result, 1088, 1404);
+ _putDontNest(result, 1053, 1185);
- _putDontNest(result, 1088, 1386);
+ _putDontNest(result, 1053, 1464);
- _putDontNest(result, 1088, 1433);
+ _putDontNest(result, 1053, 1474);
- _putDontNest(result, 1088, 1224);
+ _putDontNest(result, 1053, 1320);
- _putDontNest(result, 1088, 1443);
+ _putDontNest(result, 1053, 1269);
- _putDontNest(result, 1088, 1217);
+ _putDontNest(result, 1053, 1289);
- _putDontNest(result, 1088, 1295);
+ _putDontNest(result, 1053, 1215);
- _putDontNest(result, 1088, 1274);
+ _putDontNest(result, 1053, 1397);
- _putDontNest(result, 1088, 1305);
+ _putDontNest(result, 1053, 1234);
- _putDontNest(result, 1088, 1315);
+ _putDontNest(result, 1053, 1435);
- _putDontNest(result, 1088, 1423);
+ _putDontNest(result, 1053, 1360);
- _putDontNest(result, 1088, 1356);
+ _putDontNest(result, 1053, 1351);
- _putDontNest(result, 1088, 1461);
+ _putDontNest(result, 1053, 1489);
- _putDontNest(result, 1088, 1231);
+ _putDontNest(result, 1053, 1339);
- _putDontNest(result, 1088, 1414);
+ _putDontNest(result, 1383, 1388);
- _putDontNest(result, 1088, 1500);
+ _putDontNest(result, 1383, 1417);
- _putDontNest(result, 1088, 1241);
+ _putDontNest(result, 1383, 1474);
- _putDontNest(result, 1088, 1452);
+ _putDontNest(result, 1383, 1426);
- _putDontNest(result, 1088, 1251);
+ _putDontNest(result, 1383, 1397);
- _putDontNest(result, 1088, 1325);
+ _putDontNest(result, 1383, 1445);
- _putDontNest(result, 1088, 1377);
+ _putDontNest(result, 1383, 1435);
- _putDontNest(result, 1088, 1471);
+ _putDontNest(result, 1383, 1489);
- _putDontNest(result, 1088, 1395);
+ _putDontNest(result, 1383, 1454);
- _putDontNest(result, 1088, 1515);
+ _putDontNest(result, 1383, 1407);
- _putDontNest(result, 1088, 1490);
+ _putDontNest(result, 1383, 1464);
- _putDontNest(result, 1088, 1336);
+ _putDontNest(result, 982, 1279);
- _putDontNest(result, 1224, 1346);
+ _putDontNest(result, 982, 1388);
- _putDontNest(result, 1224, 1480);
+ _putDontNest(result, 982, 1378);
- _putDontNest(result, 1224, 1260);
+ _putDontNest(result, 982, 1198);
- _putDontNest(result, 1224, 1283);
+ _putDontNest(result, 982, 1426);
- _putDontNest(result, 1224, 1365);
+ _putDontNest(result, 982, 1369);
- _putDontNest(result, 1224, 1404);
+ _putDontNest(result, 982, 1300);
- _putDontNest(result, 1224, 1386);
+ _putDontNest(result, 982, 1205);
- _putDontNest(result, 1224, 1433);
+ _putDontNest(result, 982, 1310);
- _putDontNest(result, 1224, 1443);
+ _putDontNest(result, 982, 1454);
- _putDontNest(result, 1224, 1295);
+ _putDontNest(result, 982, 1225);
- _putDontNest(result, 1224, 1274);
+ _putDontNest(result, 982, 1417);
- _putDontNest(result, 1224, 1305);
+ _putDontNest(result, 982, 1248);
- _putDontNest(result, 1224, 1315);
+ _putDontNest(result, 982, 1191);
- _putDontNest(result, 1224, 1423);
+ _putDontNest(result, 982, 1330);
- _putDontNest(result, 1224, 1356);
+ _putDontNest(result, 982, 1407);
- _putDontNest(result, 1224, 1461);
+ _putDontNest(result, 982, 1185);
- _putDontNest(result, 1224, 1414);
+ _putDontNest(result, 982, 1464);
- _putDontNest(result, 1224, 1500);
+ _putDontNest(result, 982, 1474);
- _putDontNest(result, 1224, 1241);
+ _putDontNest(result, 982, 1320);
- _putDontNest(result, 1224, 1251);
+ _putDontNest(result, 982, 1269);
- _putDontNest(result, 1224, 1325);
+ _putDontNest(result, 982, 1289);
- _putDontNest(result, 1224, 1377);
+ _putDontNest(result, 982, 1215);
- _putDontNest(result, 1224, 1471);
+ _putDontNest(result, 982, 1397);
- _putDontNest(result, 1224, 1395);
+ _putDontNest(result, 982, 1445);
- _putDontNest(result, 1224, 1515);
+ _putDontNest(result, 982, 1173);
- _putDontNest(result, 1224, 1490);
+ _putDontNest(result, 982, 1234);
- _putDontNest(result, 1224, 1336);
+ _putDontNest(result, 982, 1435);
- _putDontNest(result, 15782, 15810);
+ _putDontNest(result, 982, 1360);
- _putDontNest(result, 15782, 15800);
+ _putDontNest(result, 982, 1351);
- _putDontNest(result, 15782, 15791);
+ _putDontNest(result, 982, 1489);
- _putDontNest(result, 15782, 15782);
+ _putDontNest(result, 982, 1067);
- _putDontNest(result, 15782, 15773);
+ _putDontNest(result, 982, 1339);
- _putDontNest(result, 15617, 15810);
+ _putDontNest(result, 982, 1092);
- _putDontNest(result, 15617, 15800);
+ _putDontNest(result, 982, 1257);
- _putDontNest(result, 15617, 15791);
+ _putDontNest(result, 8409, 10487);
- _putDontNest(result, 15617, 15782);
+ _putDontNest(result, 8409, 10481);
- _putDontNest(result, 15617, 15773);
+ _putDontNest(result, 8409, 10650);
- _putDontNest(result, 15609, 15810);
+ _putDontNest(result, 1325, 1388);
- _putDontNest(result, 15609, 15800);
+ _putDontNest(result, 1325, 1378);
- _putDontNest(result, 15609, 15791);
+ _putDontNest(result, 1325, 1417);
- _putDontNest(result, 15609, 15782);
+ _putDontNest(result, 1325, 1330);
- _putDontNest(result, 15609, 15773);
+ _putDontNest(result, 1325, 1474);
- _putDontNest(result, 11819, 11826);
+ _putDontNest(result, 1325, 1426);
- _putDontNest(result, 11819, 11953);
+ _putDontNest(result, 1325, 1369);
- _putDontNest(result, 15795, 15810);
+ _putDontNest(result, 1325, 1397);
- _putDontNest(result, 1113, 1346);
+ _putDontNest(result, 1325, 1445);
- _putDontNest(result, 1113, 1480);
+ _putDontNest(result, 1325, 1435);
- _putDontNest(result, 1113, 1260);
+ _putDontNest(result, 1325, 1454);
- _putDontNest(result, 1113, 1283);
+ _putDontNest(result, 1325, 1407);
- _putDontNest(result, 1113, 1365);
+ _putDontNest(result, 1325, 1464);
- _putDontNest(result, 1113, 1211);
+ _putDontNest(result, 1325, 1360);
- _putDontNest(result, 1113, 1404);
+ _putDontNest(result, 1325, 1351);
- _putDontNest(result, 1113, 1386);
+ _putDontNest(result, 1325, 1489);
- _putDontNest(result, 1113, 1433);
+ _putDontNest(result, 1325, 1339);
- _putDontNest(result, 1113, 1224);
+ _putDontNest(result, 14387, 14400);
- _putDontNest(result, 1113, 1443);
+ _putDontNest(result, 14387, 14418);
- _putDontNest(result, 1113, 1217);
+ _putDontNest(result, 14387, 14409);
- _putDontNest(result, 1113, 1295);
+ _putDontNest(result, 14387, 14427);
- _putDontNest(result, 1113, 1274);
+ _putDontNest(result, 14387, 14437);
- _putDontNest(result, 1113, 1305);
+ _putDontNest(result, 14282, 14400);
- _putDontNest(result, 1113, 1315);
+ _putDontNest(result, 14282, 14418);
- _putDontNest(result, 1113, 1423);
+ _putDontNest(result, 14282, 14409);
- _putDontNest(result, 1113, 1356);
+ _putDontNest(result, 14282, 14427);
- _putDontNest(result, 1113, 1461);
+ _putDontNest(result, 14282, 14437);
- _putDontNest(result, 1113, 1231);
+ _putDontNest(result, 1215, 1279);
- _putDontNest(result, 1113, 1414);
+ _putDontNest(result, 1215, 1388);
- _putDontNest(result, 1113, 1500);
+ _putDontNest(result, 1215, 1378);
- _putDontNest(result, 1113, 1241);
+ _putDontNest(result, 1215, 1248);
- _putDontNest(result, 1113, 1452);
+ _putDontNest(result, 1215, 1330);
- _putDontNest(result, 1113, 1251);
+ _putDontNest(result, 1215, 1369);
- _putDontNest(result, 1113, 1325);
+ _putDontNest(result, 1215, 1300);
- _putDontNest(result, 1113, 1377);
+ _putDontNest(result, 1215, 1445);
- _putDontNest(result, 1113, 1471);
+ _putDontNest(result, 1215, 1234);
- _putDontNest(result, 1113, 1395);
+ _putDontNest(result, 1215, 1310);
- _putDontNest(result, 1113, 1515);
+ _putDontNest(result, 1215, 1257);
- _putDontNest(result, 1113, 1490);
+ _putDontNest(result, 1215, 1454);
- _putDontNest(result, 1113, 1336);
+ _putDontNest(result, 1215, 1225);
- _putDontNest(result, 1443, 1480);
+ _putDontNest(result, 1215, 1407);
- _putDontNest(result, 1443, 1500);
+ _putDontNest(result, 1215, 1464);
- _putDontNest(result, 1443, 1471);
+ _putDontNest(result, 1215, 1474);
- _putDontNest(result, 1443, 1515);
+ _putDontNest(result, 1215, 1320);
- _putDontNest(result, 1443, 1490);
+ _putDontNest(result, 1215, 1269);
- _putDontNest(result, 12040, 11826);
+ _putDontNest(result, 1215, 1289);
- _putDontNest(result, 12040, 11953);
+ _putDontNest(result, 1215, 1215);
- _putDontNest(result, 15600, 15810);
+ _putDontNest(result, 1215, 1397);
- _putDontNest(result, 15600, 15800);
+ _putDontNest(result, 1215, 1360);
- _putDontNest(result, 15600, 15791);
+ _putDontNest(result, 1215, 1351);
- _putDontNest(result, 15600, 15782);
+ _putDontNest(result, 1215, 1489);
- _putDontNest(result, 15600, 15773);
+ _putDontNest(result, 1215, 1339);
- _putDontNest(result, 1264, 1346);
+ _putDontNest(result, 1397, 1388);
- _putDontNest(result, 1264, 1480);
+ _putDontNest(result, 1397, 1474);
- _putDontNest(result, 1264, 1365);
+ _putDontNest(result, 1397, 1397);
- _putDontNest(result, 1264, 1404);
+ _putDontNest(result, 1397, 1445);
- _putDontNest(result, 1264, 1386);
+ _putDontNest(result, 1397, 1489);
- _putDontNest(result, 1264, 1433);
+ _putDontNest(result, 1397, 1454);
- _putDontNest(result, 1264, 1443);
+ _putDontNest(result, 1397, 1407);
- _putDontNest(result, 1264, 1295);
+ _putDontNest(result, 1397, 1464);
- _putDontNest(result, 1264, 1305);
+ _putDontNest(result, 10531, 10481);
- _putDontNest(result, 1264, 1315);
+ _putDontNest(result, 10531, 10650);
- _putDontNest(result, 1264, 1423);
+ _putDontNest(result, 14339, 14400);
- _putDontNest(result, 1264, 1356);
+ _putDontNest(result, 14339, 14418);
- _putDontNest(result, 1264, 1461);
+ _putDontNest(result, 14339, 14409);
- _putDontNest(result, 1264, 1414);
+ _putDontNest(result, 14339, 14427);
- _putDontNest(result, 1264, 1500);
+ _putDontNest(result, 14339, 14437);
- _putDontNest(result, 1264, 1452);
+ _putDontNest(result, 14422, 14437);
- _putDontNest(result, 1264, 1325);
+ _putDontNest(result, 14437, 14437);
- _putDontNest(result, 1264, 1377);
+ _putDontNest(result, 1234, 1279);
- _putDontNest(result, 1264, 1471);
+ _putDontNest(result, 1234, 1388);
- _putDontNest(result, 1264, 1395);
+ _putDontNest(result, 1234, 1378);
- _putDontNest(result, 1264, 1515);
+ _putDontNest(result, 1234, 1248);
- _putDontNest(result, 1264, 1490);
+ _putDontNest(result, 1234, 1330);
- _putDontNest(result, 1264, 1336);
+ _putDontNest(result, 1234, 1369);
- _putDontNest(result, 1246, 1346);
+ _putDontNest(result, 1234, 1300);
- _putDontNest(result, 1246, 1480);
+ _putDontNest(result, 1234, 1397);
- _putDontNest(result, 1246, 1365);
+ _putDontNest(result, 1234, 1445);
- _putDontNest(result, 1246, 1404);
+ _putDontNest(result, 1234, 1234);
- _putDontNest(result, 1246, 1386);
+ _putDontNest(result, 1234, 1310);
- _putDontNest(result, 1246, 1433);
+ _putDontNest(result, 1234, 1257);
- _putDontNest(result, 1246, 1443);
+ _putDontNest(result, 1234, 1454);
- _putDontNest(result, 1246, 1295);
+ _putDontNest(result, 1234, 1225);
- _putDontNest(result, 1246, 1305);
+ _putDontNest(result, 1234, 1407);
- _putDontNest(result, 1246, 1315);
+ _putDontNest(result, 1234, 1464);
- _putDontNest(result, 1246, 1423);
+ _putDontNest(result, 1234, 1474);
- _putDontNest(result, 1246, 1356);
+ _putDontNest(result, 1234, 1320);
- _putDontNest(result, 1246, 1461);
+ _putDontNest(result, 1234, 1269);
- _putDontNest(result, 1246, 1414);
+ _putDontNest(result, 1234, 1289);
- _putDontNest(result, 1246, 1500);
+ _putDontNest(result, 1234, 1360);
- _putDontNest(result, 1246, 1452);
+ _putDontNest(result, 1234, 1351);
- _putDontNest(result, 1246, 1325);
+ _putDontNest(result, 1234, 1489);
- _putDontNest(result, 1246, 1377);
+ _putDontNest(result, 1234, 1339);
- _putDontNest(result, 1246, 1471);
+ _putDontNest(result, 1435, 1464);
- _putDontNest(result, 1246, 1395);
+ _putDontNest(result, 1435, 1474);
- _putDontNest(result, 1246, 1515);
+ _putDontNest(result, 1435, 1445);
- _putDontNest(result, 1246, 1490);
+ _putDontNest(result, 1435, 1489);
- _putDontNest(result, 1246, 1336);
+ _putDontNest(result, 1435, 1454);
- _putDontNest(result, 1428, 1480);
+ _putDontNest(result, 907, 1279);
- _putDontNest(result, 1428, 1461);
+ _putDontNest(result, 907, 1388);
- _putDontNest(result, 1428, 1500);
+ _putDontNest(result, 907, 1378);
- _putDontNest(result, 1428, 1452);
+ _putDontNest(result, 907, 1198);
- _putDontNest(result, 1428, 1433);
+ _putDontNest(result, 907, 1426);
- _putDontNest(result, 1428, 1443);
+ _putDontNest(result, 907, 1369);
- _putDontNest(result, 1428, 1471);
+ _putDontNest(result, 907, 1300);
- _putDontNest(result, 1428, 1515);
+ _putDontNest(result, 907, 1445);
- _putDontNest(result, 1428, 1490);
+ _putDontNest(result, 907, 1205);
- _putDontNest(result, 1485, 1500);
+ _putDontNest(result, 907, 1310);
- _putDontNest(result, 1485, 1515);
+ _putDontNest(result, 907, 1257);
- _putDontNest(result, 1217, 1346);
+ _putDontNest(result, 907, 1454);
- _putDontNest(result, 1217, 1480);
+ _putDontNest(result, 907, 1225);
- _putDontNest(result, 1217, 1356);
+ _putDontNest(result, 907, 1417);
- _putDontNest(result, 1217, 1260);
+ _putDontNest(result, 907, 1248);
- _putDontNest(result, 1217, 1283);
+ _putDontNest(result, 907, 1191);
- _putDontNest(result, 1217, 1365);
+ _putDontNest(result, 907, 1330);
- _putDontNest(result, 1217, 1404);
+ _putDontNest(result, 907, 1407);
- _putDontNest(result, 1217, 1386);
+ _putDontNest(result, 907, 1185);
- _putDontNest(result, 1217, 1433);
+ _putDontNest(result, 907, 1464);
- _putDontNest(result, 1217, 1295);
+ _putDontNest(result, 907, 1474);
- _putDontNest(result, 1217, 1274);
+ _putDontNest(result, 907, 1320);
- _putDontNest(result, 1217, 1305);
+ _putDontNest(result, 907, 1269);
- _putDontNest(result, 1217, 1315);
+ _putDontNest(result, 907, 1289);
- _putDontNest(result, 1217, 1423);
+ _putDontNest(result, 907, 1215);
- _putDontNest(result, 1217, 1414);
+ _putDontNest(result, 907, 1397);
- _putDontNest(result, 1217, 1500);
+ _putDontNest(result, 907, 1234);
- _putDontNest(result, 1217, 1241);
+ _putDontNest(result, 907, 1435);
- _putDontNest(result, 1217, 1251);
+ _putDontNest(result, 907, 1360);
- _putDontNest(result, 1217, 1325);
+ _putDontNest(result, 907, 1351);
- _putDontNest(result, 1217, 1377);
+ _putDontNest(result, 907, 1489);
- _putDontNest(result, 1217, 1471);
+ _putDontNest(result, 907, 1339);
- _putDontNest(result, 1217, 1395);
+ _putDontNest(result, 14427, 14400);
- _putDontNest(result, 1217, 1515);
+ _putDontNest(result, 14427, 14418);
- _putDontNest(result, 1217, 1490);
+ _putDontNest(result, 14427, 14409);
- _putDontNest(result, 1217, 1336);
+ _putDontNest(result, 14427, 14427);
- _putDontNest(result, 8111, 8128);
+ _putDontNest(result, 14427, 14437);
- _putDontNest(result, 1377, 1423);
+ _putDontNest(result, 1562, 1573);
- _putDontNest(result, 1377, 1480);
+ _putDontNest(result, 1562, 1562);
- _putDontNest(result, 1377, 1404);
+ _putDontNest(result, 1402, 1417);
- _putDontNest(result, 1377, 1386);
+ _putDontNest(result, 1402, 1474);
- _putDontNest(result, 1377, 1433);
+ _putDontNest(result, 1402, 1426);
- _putDontNest(result, 1377, 1414);
+ _putDontNest(result, 1402, 1445);
- _putDontNest(result, 1377, 1500);
+ _putDontNest(result, 1402, 1435);
- _putDontNest(result, 1377, 1377);
+ _putDontNest(result, 1402, 1489);
- _putDontNest(result, 1377, 1471);
+ _putDontNest(result, 1402, 1454);
- _putDontNest(result, 1377, 1395);
+ _putDontNest(result, 1402, 1407);
- _putDontNest(result, 1377, 1515);
+ _putDontNest(result, 1402, 1464);
- _putDontNest(result, 1377, 1490);
+ _putDontNest(result, 815, 1279);
- _putDontNest(result, 1370, 1423);
+ _putDontNest(result, 815, 1388);
- _putDontNest(result, 1370, 1480);
+ _putDontNest(result, 815, 1378);
- _putDontNest(result, 1370, 1461);
+ _putDontNest(result, 815, 1198);
- _putDontNest(result, 1370, 1404);
+ _putDontNest(result, 815, 1426);
- _putDontNest(result, 1370, 1386);
+ _putDontNest(result, 815, 1369);
- _putDontNest(result, 1370, 1452);
+ _putDontNest(result, 815, 1300);
- _putDontNest(result, 1370, 1433);
+ _putDontNest(result, 815, 1205);
- _putDontNest(result, 1370, 1443);
+ _putDontNest(result, 815, 1310);
- _putDontNest(result, 1370, 1414);
+ _putDontNest(result, 815, 1454);
- _putDontNest(result, 1370, 1500);
+ _putDontNest(result, 815, 1225);
- _putDontNest(result, 1370, 1377);
+ _putDontNest(result, 815, 1417);
- _putDontNest(result, 1370, 1471);
+ _putDontNest(result, 815, 1248);
- _putDontNest(result, 1370, 1395);
+ _putDontNest(result, 815, 1191);
- _putDontNest(result, 1370, 1515);
+ _putDontNest(result, 815, 1330);
- _putDontNest(result, 1370, 1490);
+ _putDontNest(result, 815, 1407);
- _putDontNest(result, 1602, 1623);
+ _putDontNest(result, 815, 1185);
- _putDontNest(result, 1602, 1612);
+ _putDontNest(result, 815, 1464);
- _putDontNest(result, 1602, 1602);
+ _putDontNest(result, 815, 1474);
- _putDontNest(result, 952, 1346);
+ _putDontNest(result, 815, 1320);
- _putDontNest(result, 952, 1480);
+ _putDontNest(result, 815, 1269);
- _putDontNest(result, 952, 1260);
+ _putDontNest(result, 815, 1289);
- _putDontNest(result, 952, 1283);
+ _putDontNest(result, 815, 1215);
- _putDontNest(result, 952, 1365);
+ _putDontNest(result, 815, 1397);
- _putDontNest(result, 952, 1211);
+ _putDontNest(result, 815, 1445);
- _putDontNest(result, 952, 1404);
+ _putDontNest(result, 815, 1173);
- _putDontNest(result, 952, 1386);
+ _putDontNest(result, 815, 1234);
- _putDontNest(result, 952, 1433);
+ _putDontNest(result, 815, 1435);
- _putDontNest(result, 952, 1224);
+ _putDontNest(result, 815, 1360);
- _putDontNest(result, 952, 1443);
+ _putDontNest(result, 815, 1351);
- _putDontNest(result, 952, 1217);
+ _putDontNest(result, 815, 1489);
- _putDontNest(result, 952, 1295);
+ _putDontNest(result, 815, 1067);
- _putDontNest(result, 952, 1274);
+ _putDontNest(result, 815, 1339);
- _putDontNest(result, 952, 1305);
+ _putDontNest(result, 815, 1092);
- _putDontNest(result, 952, 1315);
+ _putDontNest(result, 815, 1257);
- _putDontNest(result, 952, 1423);
+ _putDontNest(result, 1360, 1388);
- _putDontNest(result, 952, 1356);
+ _putDontNest(result, 1360, 1378);
- _putDontNest(result, 952, 1461);
+ _putDontNest(result, 1360, 1474);
- _putDontNest(result, 952, 1231);
+ _putDontNest(result, 1360, 1369);
- _putDontNest(result, 952, 1414);
+ _putDontNest(result, 1360, 1397);
- _putDontNest(result, 952, 1500);
+ _putDontNest(result, 1360, 1445);
- _putDontNest(result, 952, 1241);
+ _putDontNest(result, 1360, 1489);
- _putDontNest(result, 952, 1452);
+ _putDontNest(result, 1360, 1454);
- _putDontNest(result, 952, 1251);
+ _putDontNest(result, 1360, 1407);
- _putDontNest(result, 952, 1325);
+ _putDontNest(result, 1360, 1464);
- _putDontNest(result, 952, 1377);
+ _putDontNest(result, 1360, 1360);
- _putDontNest(result, 952, 1471);
+ _putDontNest(result, 1360, 1351);
- _putDontNest(result, 952, 1395);
+ _putDontNest(result, 1351, 1388);
- _putDontNest(result, 952, 1515);
+ _putDontNest(result, 1351, 1378);
- _putDontNest(result, 952, 1490);
+ _putDontNest(result, 1351, 1474);
- _putDontNest(result, 952, 1336);
+ _putDontNest(result, 1351, 1369);
- _putDontNest(result, 1123, 1346);
+ _putDontNest(result, 1351, 1397);
- _putDontNest(result, 1123, 1480);
+ _putDontNest(result, 1351, 1445);
- _putDontNest(result, 1123, 1260);
+ _putDontNest(result, 1351, 1489);
- _putDontNest(result, 1123, 1283);
+ _putDontNest(result, 1351, 1454);
- _putDontNest(result, 1123, 1365);
+ _putDontNest(result, 1351, 1407);
- _putDontNest(result, 1123, 1093);
+ _putDontNest(result, 1351, 1464);
- _putDontNest(result, 1123, 1211);
+ _putDontNest(result, 1351, 1360);
- _putDontNest(result, 1123, 1404);
+ _putDontNest(result, 1351, 1351);
- _putDontNest(result, 1123, 1386);
+ _putDontNest(result, 14303, 14400);
- _putDontNest(result, 1123, 1433);
+ _putDontNest(result, 14303, 14418);
- _putDontNest(result, 1123, 1224);
+ _putDontNest(result, 14303, 14409);
- _putDontNest(result, 1123, 1443);
+ _putDontNest(result, 14303, 14427);
- _putDontNest(result, 1123, 1217);
+ _putDontNest(result, 14303, 14437);
- _putDontNest(result, 1123, 1295);
+ _putDontNest(result, 10541, 10481);
- _putDontNest(result, 1123, 1274);
+ _putDontNest(result, 10541, 10650);
- _putDontNest(result, 1123, 1305);
+ _putDontNest(result, 1339, 1388);
- _putDontNest(result, 1123, 1315);
+ _putDontNest(result, 1339, 1378);
- _putDontNest(result, 1123, 1118);
+ _putDontNest(result, 1339, 1330);
- _putDontNest(result, 1123, 1423);
+ _putDontNest(result, 1339, 1474);
- _putDontNest(result, 1123, 1356);
+ _putDontNest(result, 1339, 1369);
- _putDontNest(result, 1123, 1461);
+ _putDontNest(result, 1339, 1397);
- _putDontNest(result, 1123, 1231);
+ _putDontNest(result, 1339, 1445);
- _putDontNest(result, 1123, 1414);
+ _putDontNest(result, 1339, 1454);
- _putDontNest(result, 1123, 1500);
+ _putDontNest(result, 1339, 1407);
- _putDontNest(result, 1123, 1241);
+ _putDontNest(result, 1339, 1464);
- _putDontNest(result, 1123, 1452);
+ _putDontNest(result, 1339, 1360);
- _putDontNest(result, 1123, 1251);
+ _putDontNest(result, 1339, 1351);
- _putDontNest(result, 1123, 1325);
+ _putDontNest(result, 1339, 1489);
- _putDontNest(result, 1123, 1377);
+ _putDontNest(result, 1339, 1339);
- _putDontNest(result, 1123, 1471);
+ _putDontNest(result, 1547, 1573);
- _putDontNest(result, 1123, 1395);
+ _putDontNest(result, 1547, 1562);
- _putDontNest(result, 1123, 1199);
+ _putDontNest(result, 1205, 1279);
- _putDontNest(result, 1123, 1515);
+ _putDontNest(result, 1205, 1388);
- _putDontNest(result, 1123, 1490);
+ _putDontNest(result, 1205, 1378);
- _putDontNest(result, 1123, 1336);
+ _putDontNest(result, 1205, 1248);
- _putDontNest(result, 1471, 1480);
+ _putDontNest(result, 1205, 1330);
- _putDontNest(result, 1471, 1500);
+ _putDontNest(result, 1205, 1369);
- _putDontNest(result, 1471, 1471);
+ _putDontNest(result, 1205, 1300);
- _putDontNest(result, 1471, 1515);
+ _putDontNest(result, 1205, 1445);
- _putDontNest(result, 1471, 1490);
+ _putDontNest(result, 1205, 1234);
- _putDontNest(result, 1395, 1423);
+ _putDontNest(result, 1205, 1310);
- _putDontNest(result, 1395, 1480);
+ _putDontNest(result, 1205, 1257);
- _putDontNest(result, 1395, 1404);
+ _putDontNest(result, 1205, 1454);
- _putDontNest(result, 1395, 1386);
+ _putDontNest(result, 1205, 1225);
- _putDontNest(result, 1395, 1433);
+ _putDontNest(result, 1205, 1407);
- _putDontNest(result, 1395, 1414);
+ _putDontNest(result, 1205, 1464);
- _putDontNest(result, 1395, 1500);
+ _putDontNest(result, 1205, 1474);
- _putDontNest(result, 1395, 1377);
+ _putDontNest(result, 1205, 1320);
- _putDontNest(result, 1395, 1471);
+ _putDontNest(result, 1205, 1269);
- _putDontNest(result, 1395, 1395);
+ _putDontNest(result, 1205, 1289);
- _putDontNest(result, 1395, 1515);
+ _putDontNest(result, 1205, 1215);
- _putDontNest(result, 1395, 1490);
+ _putDontNest(result, 1205, 1397);
- _putDontNest(result, 1597, 1623);
+ _putDontNest(result, 1205, 1360);
- _putDontNest(result, 1597, 1612);
+ _putDontNest(result, 1205, 1351);
- _putDontNest(result, 1196, 1346);
+ _putDontNest(result, 1205, 1489);
- _putDontNest(result, 1196, 1480);
+ _putDontNest(result, 1205, 1339);
- _putDontNest(result, 1196, 1260);
+ _putDontNest(result, 14400, 14400);
- _putDontNest(result, 1196, 1283);
+ _putDontNest(result, 14400, 14418);
- _putDontNest(result, 1196, 1365);
+ _putDontNest(result, 14400, 14409);
- _putDontNest(result, 1196, 1211);
+ _putDontNest(result, 14400, 14427);
- _putDontNest(result, 1196, 1404);
+ _putDontNest(result, 14400, 14437);
- _putDontNest(result, 1196, 1386);
+ _putDontNest(result, 1364, 1388);
- _putDontNest(result, 1196, 1433);
+ _putDontNest(result, 1364, 1378);
- _putDontNest(result, 1196, 1224);
+ _putDontNest(result, 1364, 1417);
- _putDontNest(result, 1196, 1443);
+ _putDontNest(result, 1364, 1474);
- _putDontNest(result, 1196, 1217);
+ _putDontNest(result, 1364, 1426);
- _putDontNest(result, 1196, 1295);
+ _putDontNest(result, 1364, 1369);
- _putDontNest(result, 1196, 1274);
+ _putDontNest(result, 1364, 1397);
- _putDontNest(result, 1196, 1305);
+ _putDontNest(result, 1364, 1445);
- _putDontNest(result, 1196, 1315);
+ _putDontNest(result, 1364, 1435);
- _putDontNest(result, 1196, 1423);
+ _putDontNest(result, 1364, 1489);
- _putDontNest(result, 1196, 1356);
+ _putDontNest(result, 1364, 1454);
- _putDontNest(result, 1196, 1461);
+ _putDontNest(result, 1364, 1407);
- _putDontNest(result, 1196, 1231);
+ _putDontNest(result, 1364, 1464);
- _putDontNest(result, 1196, 1414);
+ _putDontNest(result, 1364, 1360);
- _putDontNest(result, 1196, 1500);
+ _putDontNest(result, 1364, 1351);
- _putDontNest(result, 1196, 1241);
+ _putDontNest(result, 1310, 1279);
- _putDontNest(result, 1196, 1452);
+ _putDontNest(result, 1310, 1388);
- _putDontNest(result, 1196, 1251);
+ _putDontNest(result, 1310, 1378);
- _putDontNest(result, 1196, 1325);
+ _putDontNest(result, 1310, 1330);
- _putDontNest(result, 1196, 1377);
+ _putDontNest(result, 1310, 1369);
- _putDontNest(result, 1196, 1471);
+ _putDontNest(result, 1310, 1289);
- _putDontNest(result, 1196, 1395);
+ _putDontNest(result, 1310, 1300);
- _putDontNest(result, 1196, 1515);
+ _putDontNest(result, 1310, 1397);
- _putDontNest(result, 1196, 1490);
+ _putDontNest(result, 1310, 1445);
- _putDontNest(result, 1196, 1336);
+ _putDontNest(result, 1310, 1310);
- _putDontNest(result, 15773, 15810);
+ _putDontNest(result, 1310, 1454);
- _putDontNest(result, 15773, 15800);
+ _putDontNest(result, 1310, 1407);
- _putDontNest(result, 15773, 15791);
+ _putDontNest(result, 1310, 1464);
- _putDontNest(result, 15773, 15782);
+ _putDontNest(result, 1310, 1474);
- _putDontNest(result, 15773, 15773);
+ _putDontNest(result, 1310, 1320);
- _putDontNest(result, 1295, 1346);
+ _putDontNest(result, 1310, 1360);
- _putDontNest(result, 1295, 1480);
+ _putDontNest(result, 1310, 1351);
- _putDontNest(result, 1295, 1356);
+ _putDontNest(result, 1310, 1489);
- _putDontNest(result, 1295, 1365);
+ _putDontNest(result, 1310, 1339);
- _putDontNest(result, 1295, 1404);
+ _putDontNest(result, 1542, 1573);
- _putDontNest(result, 1295, 1386);
+ _putDontNest(result, 1542, 1552);
- _putDontNest(result, 1295, 1325);
+ _putDontNest(result, 1542, 1562);
- _putDontNest(result, 1295, 1433);
+ _putDontNest(result, 14418, 14400);
- _putDontNest(result, 1295, 1295);
+ _putDontNest(result, 14418, 14418);
- _putDontNest(result, 1295, 1305);
+ _putDontNest(result, 14418, 14409);
- _putDontNest(result, 1295, 1315);
+ _putDontNest(result, 14418, 14427);
- _putDontNest(result, 1295, 1423);
+ _putDontNest(result, 14418, 14437);
- _putDontNest(result, 1295, 1414);
+ _putDontNest(result, 1334, 1388);
- _putDontNest(result, 1295, 1500);
+ _putDontNest(result, 1334, 1378);
- _putDontNest(result, 1295, 1377);
+ _putDontNest(result, 1334, 1417);
- _putDontNest(result, 1295, 1471);
+ _putDontNest(result, 1334, 1330);
- _putDontNest(result, 1295, 1395);
+ _putDontNest(result, 1334, 1474);
- _putDontNest(result, 1295, 1515);
+ _putDontNest(result, 1334, 1426);
- _putDontNest(result, 1295, 1490);
+ _putDontNest(result, 1334, 1369);
- _putDontNest(result, 1295, 1336);
+ _putDontNest(result, 1334, 1397);
- _putDontNest(result, 5323, 5468);
+ _putDontNest(result, 1334, 1445);
- _putDontNest(result, 5323, 5456);
+ _putDontNest(result, 1334, 1435);
- _putDontNest(result, 5323, 5436);
+ _putDontNest(result, 1334, 1454);
- _putDontNest(result, 5323, 5474);
+ _putDontNest(result, 1334, 1407);
- _putDontNest(result, 5323, 5447);
+ _putDontNest(result, 1334, 1464);
- _putDontNest(result, 1050, 1346);
+ _putDontNest(result, 1334, 1360);
- _putDontNest(result, 1050, 1480);
+ _putDontNest(result, 1334, 1351);
- _putDontNest(result, 1050, 1260);
+ _putDontNest(result, 1334, 1489);
- _putDontNest(result, 1050, 1283);
+ _putDontNest(result, 1334, 1339);
- _putDontNest(result, 1050, 1365);
+ _putDontNest(result, 14236, 14400);
- _putDontNest(result, 1050, 1211);
+ _putDontNest(result, 14236, 14418);
- _putDontNest(result, 1050, 1404);
+ _putDontNest(result, 14236, 14409);
- _putDontNest(result, 1050, 1386);
+ _putDontNest(result, 14236, 14427);
- _putDontNest(result, 1050, 1433);
+ _putDontNest(result, 14236, 14437);
- _putDontNest(result, 1050, 1224);
+ _putDontNest(result, 1015, 1279);
- _putDontNest(result, 1050, 1443);
+ _putDontNest(result, 1015, 1388);
- _putDontNest(result, 1050, 1217);
+ _putDontNest(result, 1015, 1378);
- _putDontNest(result, 1050, 1295);
+ _putDontNest(result, 1015, 1198);
- _putDontNest(result, 1050, 1274);
+ _putDontNest(result, 1015, 1426);
- _putDontNest(result, 1050, 1305);
+ _putDontNest(result, 1015, 1369);
- _putDontNest(result, 1050, 1315);
+ _putDontNest(result, 1015, 1300);
- _putDontNest(result, 1050, 1423);
+ _putDontNest(result, 1015, 1445);
- _putDontNest(result, 1050, 1356);
+ _putDontNest(result, 1015, 1205);
- _putDontNest(result, 1050, 1461);
+ _putDontNest(result, 1015, 1310);
- _putDontNest(result, 1050, 1231);
+ _putDontNest(result, 1015, 1257);
- _putDontNest(result, 1050, 1414);
+ _putDontNest(result, 1015, 1454);
- _putDontNest(result, 1050, 1500);
+ _putDontNest(result, 1015, 1225);
- _putDontNest(result, 1050, 1241);
+ _putDontNest(result, 1015, 1417);
- _putDontNest(result, 1050, 1452);
+ _putDontNest(result, 1015, 1248);
- _putDontNest(result, 1050, 1251);
+ _putDontNest(result, 1015, 1191);
- _putDontNest(result, 1050, 1325);
+ _putDontNest(result, 1015, 1330);
- _putDontNest(result, 1050, 1377);
+ _putDontNest(result, 1015, 1407);
- _putDontNest(result, 1050, 1471);
+ _putDontNest(result, 1015, 1185);
- _putDontNest(result, 1050, 1395);
+ _putDontNest(result, 1015, 1464);
- _putDontNest(result, 1050, 1515);
+ _putDontNest(result, 1015, 1474);
- _putDontNest(result, 1050, 1490);
+ _putDontNest(result, 1015, 1320);
- _putDontNest(result, 1050, 1336);
+ _putDontNest(result, 1015, 1269);
- _putDontNest(result, 9634, 886);
+ _putDontNest(result, 1015, 1289);
- _putDontNest(result, 11985, 11826);
+ _putDontNest(result, 1015, 1215);
- _putDontNest(result, 11985, 11953);
+ _putDontNest(result, 1015, 1397);
- _putDontNest(result, 12135, 11826);
+ _putDontNest(result, 1015, 1234);
- _putDontNest(result, 12135, 11953);
+ _putDontNest(result, 1015, 1435);
- _putDontNest(result, 1490, 1500);
+ _putDontNest(result, 1015, 1360);
- _putDontNest(result, 1490, 1515);
+ _putDontNest(result, 1015, 1351);
- _putDontNest(result, 1490, 1490);
+ _putDontNest(result, 1015, 1489);
- _putDontNest(result, 1399, 1423);
+ _putDontNest(result, 1015, 1339);
- _putDontNest(result, 1399, 1480);
+ _putDontNest(result, 1062, 1279);
- _putDontNest(result, 1399, 1461);
+ _putDontNest(result, 1062, 1388);
- _putDontNest(result, 1399, 1404);
+ _putDontNest(result, 1062, 1378);
- _putDontNest(result, 1399, 1386);
+ _putDontNest(result, 1062, 1198);
- _putDontNest(result, 1399, 1452);
+ _putDontNest(result, 1062, 1426);
- _putDontNest(result, 1399, 1433);
+ _putDontNest(result, 1062, 1369);
- _putDontNest(result, 1399, 1443);
+ _putDontNest(result, 1062, 1300);
- _putDontNest(result, 1399, 1414);
+ _putDontNest(result, 1062, 1445);
- _putDontNest(result, 1399, 1500);
+ _putDontNest(result, 1062, 1205);
- _putDontNest(result, 1399, 1377);
+ _putDontNest(result, 1062, 1310);
- _putDontNest(result, 1399, 1471);
+ _putDontNest(result, 1062, 1257);
- _putDontNest(result, 1399, 1395);
+ _putDontNest(result, 1062, 1454);
- _putDontNest(result, 1399, 1515);
+ _putDontNest(result, 1062, 1225);
- _putDontNest(result, 1399, 1490);
+ _putDontNest(result, 1062, 1417);
- _putDontNest(result, 932, 1346);
+ _putDontNest(result, 1062, 1248);
- _putDontNest(result, 932, 1480);
+ _putDontNest(result, 1062, 1191);
- _putDontNest(result, 932, 1260);
+ _putDontNest(result, 1062, 1330);
- _putDontNest(result, 932, 1283);
+ _putDontNest(result, 1062, 1407);
- _putDontNest(result, 932, 1365);
+ _putDontNest(result, 1062, 1185);
- _putDontNest(result, 932, 1093);
+ _putDontNest(result, 1062, 1464);
- _putDontNest(result, 932, 1211);
+ _putDontNest(result, 1062, 1474);
- _putDontNest(result, 932, 1404);
+ _putDontNest(result, 1062, 1320);
- _putDontNest(result, 932, 1386);
+ _putDontNest(result, 1062, 1269);
- _putDontNest(result, 932, 1433);
+ _putDontNest(result, 1062, 1289);
- _putDontNest(result, 932, 1224);
+ _putDontNest(result, 1062, 1215);
- _putDontNest(result, 932, 1443);
+ _putDontNest(result, 1062, 1397);
- _putDontNest(result, 932, 1217);
+ _putDontNest(result, 1062, 1234);
- _putDontNest(result, 932, 1295);
+ _putDontNest(result, 1062, 1435);
- _putDontNest(result, 932, 1274);
+ _putDontNest(result, 1062, 1360);
- _putDontNest(result, 932, 1305);
+ _putDontNest(result, 1062, 1351);
- _putDontNest(result, 932, 1315);
+ _putDontNest(result, 1062, 1489);
- _putDontNest(result, 932, 1118);
+ _putDontNest(result, 1062, 1339);
- _putDontNest(result, 932, 1423);
+ _putDontNest(result, 1229, 1279);
- _putDontNest(result, 932, 1356);
+ _putDontNest(result, 1229, 1388);
- _putDontNest(result, 932, 1461);
+ _putDontNest(result, 1229, 1378);
- _putDontNest(result, 932, 1231);
+ _putDontNest(result, 1229, 1417);
- _putDontNest(result, 932, 1414);
+ _putDontNest(result, 1229, 1330);
- _putDontNest(result, 932, 1500);
+ _putDontNest(result, 1229, 1426);
- _putDontNest(result, 932, 1241);
+ _putDontNest(result, 1229, 1369);
- _putDontNest(result, 932, 1452);
+ _putDontNest(result, 1229, 1300);
- _putDontNest(result, 932, 1251);
+ _putDontNest(result, 1229, 1397);
- _putDontNest(result, 932, 1325);
+ _putDontNest(result, 1229, 1445);
- _putDontNest(result, 932, 1377);
+ _putDontNest(result, 1229, 1435);
- _putDontNest(result, 932, 1471);
+ _putDontNest(result, 1229, 1310);
- _putDontNest(result, 932, 1395);
+ _putDontNest(result, 1229, 1454);
- _putDontNest(result, 932, 1199);
+ _putDontNest(result, 1229, 1407);
- _putDontNest(result, 932, 1515);
+ _putDontNest(result, 1229, 1464);
- _putDontNest(result, 932, 1490);
+ _putDontNest(result, 1229, 1474);
- _putDontNest(result, 932, 1336);
+ _putDontNest(result, 1229, 1320);
- _putDontNest(result, 1336, 1346);
+ _putDontNest(result, 1229, 1269);
- _putDontNest(result, 1336, 1480);
+ _putDontNest(result, 1229, 1289);
- _putDontNest(result, 1336, 1356);
+ _putDontNest(result, 1229, 1360);
- _putDontNest(result, 1336, 1365);
+ _putDontNest(result, 1229, 1351);
- _putDontNest(result, 1336, 1404);
+ _putDontNest(result, 1229, 1489);
- _putDontNest(result, 1336, 1386);
+ _putDontNest(result, 1229, 1339);
- _putDontNest(result, 1336, 1325);
+ _putDontNest(result, 4484, 4635);
- _putDontNest(result, 1336, 1433);
+ _putDontNest(result, 4484, 4608);
- _putDontNest(result, 1336, 1305);
+ _putDontNest(result, 4484, 4629);
- _putDontNest(result, 1336, 1315);
+ _putDontNest(result, 4484, 4617);
- _putDontNest(result, 1336, 1423);
+ _putDontNest(result, 4484, 4597);
- _putDontNest(result, 1336, 1414);
+ _putDontNest(result, 10548, 10481);
- _putDontNest(result, 1336, 1500);
+ _putDontNest(result, 10548, 10650);
- _putDontNest(result, 1336, 1377);
+ _putDontNest(result, 1257, 1279);
- _putDontNest(result, 1336, 1471);
+ _putDontNest(result, 1257, 1388);
- _putDontNest(result, 1336, 1395);
+ _putDontNest(result, 1257, 1378);
- _putDontNest(result, 1336, 1515);
+ _putDontNest(result, 1257, 1248);
- _putDontNest(result, 1336, 1490);
+ _putDontNest(result, 1257, 1330);
- _putDontNest(result, 1336, 1336);
+ _putDontNest(result, 1257, 1369);
- _putDontNest(result, 1418, 1423);
+ _putDontNest(result, 1257, 1300);
- _putDontNest(result, 1418, 1480);
+ _putDontNest(result, 1257, 1397);
- _putDontNest(result, 1418, 1461);
+ _putDontNest(result, 1257, 1445);
- _putDontNest(result, 1418, 1452);
+ _putDontNest(result, 1257, 1234);
- _putDontNest(result, 1418, 1433);
+ _putDontNest(result, 1257, 1310);
- _putDontNest(result, 1418, 1443);
+ _putDontNest(result, 1257, 1257);
- _putDontNest(result, 1418, 1471);
+ _putDontNest(result, 1257, 1454);
- _putDontNest(result, 1418, 1414);
+ _putDontNest(result, 1257, 1225);
- _putDontNest(result, 1418, 1500);
+ _putDontNest(result, 1257, 1407);
- _putDontNest(result, 1418, 1515);
+ _putDontNest(result, 1257, 1464);
- _putDontNest(result, 1418, 1490);
+ _putDontNest(result, 1257, 1474);
- _putDontNest(result, 1274, 1346);
+ _putDontNest(result, 1257, 1320);
- _putDontNest(result, 1274, 1480);
+ _putDontNest(result, 1257, 1269);
- _putDontNest(result, 1274, 1260);
+ _putDontNest(result, 1257, 1289);
- _putDontNest(result, 1274, 1283);
+ _putDontNest(result, 1257, 1360);
- _putDontNest(result, 1274, 1365);
+ _putDontNest(result, 1257, 1351);
- _putDontNest(result, 1274, 1404);
+ _putDontNest(result, 1257, 1489);
- _putDontNest(result, 1274, 1386);
+ _putDontNest(result, 1257, 1339);
- _putDontNest(result, 1274, 1433);
+ _putDontNest(result, 1454, 1464);
- _putDontNest(result, 1274, 1443);
+ _putDontNest(result, 1454, 1474);
- _putDontNest(result, 1274, 1295);
+ _putDontNest(result, 1454, 1445);
- _putDontNest(result, 1274, 1274);
+ _putDontNest(result, 1454, 1489);
- _putDontNest(result, 1274, 1305);
+ _putDontNest(result, 1454, 1454);
- _putDontNest(result, 1274, 1315);
+ _putDontNest(result, 10524, 10481);
- _putDontNest(result, 1274, 1423);
+ _putDontNest(result, 10524, 10650);
- _putDontNest(result, 1274, 1356);
+ _putDontNest(result, 10682, 10481);
- _putDontNest(result, 1274, 1461);
+ _putDontNest(result, 10682, 10650);
- _putDontNest(result, 1274, 1414);
+ _putDontNest(result, 14404, 14437);
- _putDontNest(result, 1274, 1500);
+ _putDontNest(result, 14413, 14437);
- _putDontNest(result, 1274, 1251);
+ _putDontNest(result, 10623, 841);
- _putDontNest(result, 1274, 1325);
+ _putDontNest(result, 10623, 999);
- _putDontNest(result, 1274, 1377);
+ _putDontNest(result, 1225, 1279);
- _putDontNest(result, 1274, 1471);
+ _putDontNest(result, 1225, 1388);
- _putDontNest(result, 1274, 1395);
+ _putDontNest(result, 1225, 1378);
- _putDontNest(result, 1274, 1515);
+ _putDontNest(result, 1225, 1248);
- _putDontNest(result, 1274, 1490);
+ _putDontNest(result, 1225, 1330);
- _putDontNest(result, 1274, 1336);
+ _putDontNest(result, 1225, 1369);
- _putDontNest(result, 12030, 11826);
+ _putDontNest(result, 1225, 1300);
- _putDontNest(result, 12030, 11953);
+ _putDontNest(result, 1225, 1397);
- _putDontNest(result, 1329, 1423);
+ _putDontNest(result, 1225, 1445);
- _putDontNest(result, 1329, 1346);
+ _putDontNest(result, 1225, 1234);
- _putDontNest(result, 1329, 1480);
+ _putDontNest(result, 1225, 1310);
- _putDontNest(result, 1329, 1365);
+ _putDontNest(result, 1225, 1257);
- _putDontNest(result, 1329, 1404);
+ _putDontNest(result, 1225, 1454);
- _putDontNest(result, 1329, 1386);
+ _putDontNest(result, 1225, 1225);
- _putDontNest(result, 1329, 1452);
+ _putDontNest(result, 1225, 1407);
- _putDontNest(result, 1329, 1433);
+ _putDontNest(result, 1225, 1464);
- _putDontNest(result, 1329, 1443);
+ _putDontNest(result, 1225, 1474);
- _putDontNest(result, 1329, 1356);
+ _putDontNest(result, 1225, 1320);
- _putDontNest(result, 1329, 1461);
+ _putDontNest(result, 1225, 1269);
- _putDontNest(result, 1329, 1414);
+ _putDontNest(result, 1225, 1289);
- _putDontNest(result, 1329, 1500);
+ _putDontNest(result, 1225, 1360);
- _putDontNest(result, 1329, 1377);
+ _putDontNest(result, 1225, 1351);
- _putDontNest(result, 1329, 1471);
+ _putDontNest(result, 1225, 1489);
- _putDontNest(result, 1329, 1395);
+ _putDontNest(result, 1225, 1339);
- _putDontNest(result, 1329, 1515);
+ _putDontNest(result, 1274, 1388);
- _putDontNest(result, 1329, 1490);
+ _putDontNest(result, 1274, 1378);
- _putDontNest(result, 1236, 1346);
+ _putDontNest(result, 1274, 1417);
- _putDontNest(result, 1236, 1480);
+ _putDontNest(result, 1274, 1330);
- _putDontNest(result, 1236, 1260);
+ _putDontNest(result, 1274, 1426);
- _putDontNest(result, 1236, 1283);
+ _putDontNest(result, 1274, 1369);
- _putDontNest(result, 1236, 1365);
+ _putDontNest(result, 1274, 1397);
- _putDontNest(result, 1236, 1404);
+ _putDontNest(result, 1274, 1445);
- _putDontNest(result, 1236, 1386);
+ _putDontNest(result, 1274, 1435);
- _putDontNest(result, 1236, 1433);
+ _putDontNest(result, 1274, 1454);
- _putDontNest(result, 1236, 1443);
+ _putDontNest(result, 1274, 1407);
- _putDontNest(result, 1236, 1295);
+ _putDontNest(result, 1274, 1464);
- _putDontNest(result, 1236, 1274);
+ _putDontNest(result, 1274, 1474);
- _putDontNest(result, 1236, 1305);
+ _putDontNest(result, 1274, 1320);
- _putDontNest(result, 1236, 1315);
+ _putDontNest(result, 1274, 1360);
- _putDontNest(result, 1236, 1423);
+ _putDontNest(result, 1274, 1351);
- _putDontNest(result, 1236, 1356);
+ _putDontNest(result, 1274, 1489);
- _putDontNest(result, 1236, 1461);
+ _putDontNest(result, 1274, 1339);
- _putDontNest(result, 1236, 1414);
+ _putDontNest(result, 14409, 14400);
- _putDontNest(result, 1236, 1500);
+ _putDontNest(result, 14409, 14418);
- _putDontNest(result, 1236, 1452);
+ _putDontNest(result, 14409, 14409);
- _putDontNest(result, 1236, 1251);
+ _putDontNest(result, 14409, 14427);
- _putDontNest(result, 1236, 1325);
+ _putDontNest(result, 14409, 14437);
- _putDontNest(result, 1236, 1377);
+ _putDontNest(result, 14227, 14400);
- _putDontNest(result, 1236, 1471);
+ _putDontNest(result, 14227, 14418);
- _putDontNest(result, 1236, 1395);
+ _putDontNest(result, 14227, 14409);
- _putDontNest(result, 1236, 1515);
+ _putDontNest(result, 14227, 14427);
- _putDontNest(result, 1236, 1490);
+ _putDontNest(result, 14227, 14437);
- _putDontNest(result, 1236, 1336);
+ _putDontNest(result, 1305, 1388);
- _putDontNest(result, 1079, 1346);
+ _putDontNest(result, 1305, 1378);
- _putDontNest(result, 1079, 1480);
+ _putDontNest(result, 1305, 1417);
- _putDontNest(result, 1079, 1260);
+ _putDontNest(result, 1305, 1330);
- _putDontNest(result, 1079, 1283);
+ _putDontNest(result, 1305, 1426);
- _putDontNest(result, 1079, 1365);
+ _putDontNest(result, 1305, 1369);
- _putDontNest(result, 1079, 1211);
+ _putDontNest(result, 1305, 1397);
- _putDontNest(result, 1079, 1404);
+ _putDontNest(result, 1305, 1445);
- _putDontNest(result, 1079, 1386);
+ _putDontNest(result, 1305, 1435);
- _putDontNest(result, 1079, 1433);
+ _putDontNest(result, 1305, 1092);
- _putDontNest(result, 1079, 1224);
+ _putDontNest(result, 1305, 1454);
- _putDontNest(result, 1079, 1443);
+ _putDontNest(result, 1305, 1407);
- _putDontNest(result, 1079, 1217);
+ _putDontNest(result, 1305, 1464);
- _putDontNest(result, 1079, 1295);
+ _putDontNest(result, 1305, 1474);
- _putDontNest(result, 1079, 1274);
+ _putDontNest(result, 1305, 1320);
- _putDontNest(result, 1079, 1305);
+ _putDontNest(result, 1305, 1360);
- _putDontNest(result, 1079, 1315);
+ _putDontNest(result, 1305, 1351);
- _putDontNest(result, 1079, 1423);
+ _putDontNest(result, 1305, 1489);
- _putDontNest(result, 1079, 1356);
+ _putDontNest(result, 1305, 1067);
- _putDontNest(result, 1079, 1461);
+ _putDontNest(result, 1305, 1339);
- _putDontNest(result, 1079, 1231);
+ _putDontNest(result, 1170, 1279);
- _putDontNest(result, 1079, 1414);
+ _putDontNest(result, 1170, 1388);
- _putDontNest(result, 1079, 1500);
+ _putDontNest(result, 1170, 1378);
- _putDontNest(result, 1079, 1241);
+ _putDontNest(result, 1170, 1198);
- _putDontNest(result, 1079, 1452);
+ _putDontNest(result, 1170, 1426);
- _putDontNest(result, 1079, 1251);
+ _putDontNest(result, 1170, 1369);
- _putDontNest(result, 1079, 1325);
+ _putDontNest(result, 1170, 1300);
- _putDontNest(result, 1079, 1377);
+ _putDontNest(result, 1170, 1445);
- _putDontNest(result, 1079, 1471);
+ _putDontNest(result, 1170, 1205);
- _putDontNest(result, 1079, 1395);
+ _putDontNest(result, 1170, 1310);
- _putDontNest(result, 1079, 1515);
+ _putDontNest(result, 1170, 1257);
- _putDontNest(result, 1079, 1490);
+ _putDontNest(result, 1170, 1454);
- _putDontNest(result, 1079, 1336);
+ _putDontNest(result, 1170, 1225);
- _putDontNest(result, 1305, 1346);
+ _putDontNest(result, 1170, 1417);
- _putDontNest(result, 1305, 1480);
+ _putDontNest(result, 1170, 1248);
- _putDontNest(result, 1305, 1356);
+ _putDontNest(result, 1170, 1191);
- _putDontNest(result, 1305, 1365);
+ _putDontNest(result, 1170, 1330);
- _putDontNest(result, 1305, 1404);
+ _putDontNest(result, 1170, 1407);
- _putDontNest(result, 1305, 1386);
+ _putDontNest(result, 1170, 1185);
- _putDontNest(result, 1305, 1325);
+ _putDontNest(result, 1170, 1464);
- _putDontNest(result, 1305, 1433);
+ _putDontNest(result, 1170, 1474);
- _putDontNest(result, 1305, 1305);
+ _putDontNest(result, 1170, 1320);
- _putDontNest(result, 1305, 1315);
+ _putDontNest(result, 1170, 1269);
- _putDontNest(result, 1305, 1423);
+ _putDontNest(result, 1170, 1289);
- _putDontNest(result, 1305, 1414);
+ _putDontNest(result, 1170, 1215);
- _putDontNest(result, 1305, 1500);
+ _putDontNest(result, 1170, 1397);
- _putDontNest(result, 1305, 1377);
+ _putDontNest(result, 1170, 1234);
- _putDontNest(result, 1305, 1471);
+ _putDontNest(result, 1170, 1435);
- _putDontNest(result, 1305, 1395);
+ _putDontNest(result, 1170, 1360);
- _putDontNest(result, 1305, 1515);
+ _putDontNest(result, 1170, 1351);
- _putDontNest(result, 1305, 1490);
+ _putDontNest(result, 1170, 1489);
- _putDontNest(result, 1305, 1336);
+ _putDontNest(result, 1170, 1339);
return result;
}
@@ -2928,202 +2928,202 @@ protected static IntegerMap _initDontNestGroups() {
++resultStoreId;
- result.putUnsafe(15810, resultStoreId);
- result.putUnsafe(15777, resultStoreId);
- result.putUnsafe(15786, resultStoreId);
- result.putUnsafe(15768, resultStoreId);
- result.putUnsafe(15795, resultStoreId);
+ result.putUnsafe(1191, resultStoreId);
+ result.putUnsafe(1215, resultStoreId);
+ result.putUnsafe(1205, resultStoreId);
++resultStoreId;
- result.putUnsafe(1623, resultStoreId);
- result.putUnsafe(1607, resultStoreId);
+ result.putUnsafe(1220, resultStoreId);
+ result.putUnsafe(1252, resultStoreId);
+ result.putUnsafe(1238, resultStoreId);
+ result.putUnsafe(1229, resultStoreId);
++resultStoreId;
- result.putUnsafe(1490, resultStoreId);
+ result.putUnsafe(8404, resultStoreId);
++resultStoreId;
- result.putUnsafe(1274, resultStoreId);
+ result.putUnsafe(14075, resultStoreId);
++resultStoreId;
- result.putUnsafe(1500, resultStoreId);
- result.putUnsafe(1485, resultStoreId);
+ result.putUnsafe(1248, resultStoreId);
++resultStoreId;
- result.putUnsafe(1390, resultStoreId);
- result.putUnsafe(1370, resultStoreId);
- result.putUnsafe(1381, resultStoreId);
- result.putUnsafe(1399, resultStoreId);
+ result.putUnsafe(1392, resultStoreId);
+ result.putUnsafe(1383, resultStoreId);
++resultStoreId;
- result.putUnsafe(1592, resultStoreId);
- result.putUnsafe(1602, resultStoreId);
+ result.putUnsafe(1289, resultStoreId);
++resultStoreId;
- result.putUnsafe(1260, resultStoreId);
- result.putUnsafe(1283, resultStoreId);
- result.putUnsafe(1251, resultStoreId);
+ result.putUnsafe(2533, resultStoreId);
++resultStoreId;
- result.putUnsafe(1356, resultStoreId);
- result.putUnsafe(1365, resultStoreId);
+ result.putUnsafe(887, resultStoreId);
+ result.putUnsafe(1097, resultStoreId);
+ result.putUnsafe(931, resultStoreId);
+ result.putUnsafe(982, resultStoreId);
+ result.putUnsafe(815, resultStoreId);
++resultStoreId;
- result.putUnsafe(1211, resultStoreId);
- result.putUnsafe(1224, resultStoreId);
+ result.putUnsafe(1234, resultStoreId);
+ result.putUnsafe(1257, resultStoreId);
+ result.putUnsafe(1225, resultStoreId);
++resultStoreId;
- result.putUnsafe(12313, resultStoreId);
- result.putUnsafe(9639, resultStoreId);
+ result.putUnsafe(14294, resultStoreId);
+ result.putUnsafe(14244, resultStoreId);
+ result.putUnsafe(14339, resultStoreId);
+ result.putUnsafe(14427, resultStoreId);
+ result.putUnsafe(14303, resultStoreId);
+ result.putUnsafe(14400, resultStoreId);
+ result.putUnsafe(14387, resultStoreId);
+ result.putUnsafe(14282, resultStoreId);
+ result.putUnsafe(14418, resultStoreId);
+ result.putUnsafe(14236, resultStoreId);
+ result.putUnsafe(14409, resultStoreId);
+ result.putUnsafe(14227, resultStoreId);
++resultStoreId;
- result.putUnsafe(15489, resultStoreId);
+ result.putUnsafe(1562, resultStoreId);
+ result.putUnsafe(1547, resultStoreId);
++resultStoreId;
- result.putUnsafe(1341, resultStoreId);
- result.putUnsafe(1360, resultStoreId);
- result.putUnsafe(1351, resultStoreId);
+ result.putUnsafe(1407, resultStoreId);
++resultStoreId;
- result.putUnsafe(1325, resultStoreId);
- result.putUnsafe(1336, resultStoreId);
- result.putUnsafe(1305, resultStoreId);
+ result.putUnsafe(1402, resultStoreId);
++resultStoreId;
- result.putUnsafe(860, resultStoreId);
- result.putUnsafe(976, resultStoreId);
- result.putUnsafe(1027, resultStoreId);
- result.putUnsafe(1123, resultStoreId);
- result.putUnsafe(932, resultStoreId);
+ result.putUnsafe(10790, resultStoreId);
+ result.putUnsafe(10751, resultStoreId);
+ result.putUnsafe(10595, resultStoreId);
+ result.putUnsafe(10531, resultStoreId);
+ result.putUnsafe(10541, resultStoreId);
+ result.putUnsafe(10548, resultStoreId);
+ result.putUnsafe(10474, resultStoreId);
+ result.putUnsafe(10508, resultStoreId);
+ result.putUnsafe(10524, resultStoreId);
+ result.putUnsafe(10682, resultStoreId);
++resultStoreId;
- result.putUnsafe(11926, resultStoreId);
+ result.putUnsafe(1552, resultStoreId);
+ result.putUnsafe(1542, resultStoreId);
++resultStoreId;
- result.putUnsafe(1180, resultStoreId);
+ result.putUnsafe(1330, resultStoreId);
+ result.putUnsafe(1339, resultStoreId);
++resultStoreId;
- result.putUnsafe(1346, resultStoreId);
+ result.putUnsafe(1573, resultStoreId);
+ result.putUnsafe(1557, resultStoreId);
++resultStoreId;
- result.putUnsafe(1433, resultStoreId);
+ result.putUnsafe(1378, resultStoreId);
+ result.putUnsafe(1369, resultStoreId);
+ result.putUnsafe(1360, resultStoreId);
+ result.putUnsafe(1351, resultStoreId);
++resultStoreId;
- result.putUnsafe(11846, resultStoreId);
- result.putUnsafe(12013, resultStoreId);
- result.putUnsafe(12023, resultStoreId);
- result.putUnsafe(11819, resultStoreId);
- result.putUnsafe(12040, resultStoreId);
- result.putUnsafe(12030, resultStoreId);
- result.putUnsafe(12096, resultStoreId);
- result.putUnsafe(11898, resultStoreId);
- result.putUnsafe(11985, resultStoreId);
- result.putUnsafe(12135, resultStoreId);
+ result.putUnsafe(1269, resultStoreId);
++resultStoreId;
- result.putUnsafe(5323, resultStoreId);
+ result.putUnsafe(1373, resultStoreId);
+ result.putUnsafe(1344, resultStoreId);
+ result.putUnsafe(1355, resultStoreId);
+ result.putUnsafe(1364, resultStoreId);
++resultStoreId;
- result.putUnsafe(1612, resultStoreId);
- result.putUnsafe(1597, resultStoreId);
+ result.putUnsafe(10959, resultStoreId);
+ result.putUnsafe(8409, resultStoreId);
++resultStoreId;
- result.putUnsafe(8128, resultStoreId);
- result.putUnsafe(8111, resultStoreId);
+ result.putUnsafe(1464, resultStoreId);
++resultStoreId;
- result.putUnsafe(1295, resultStoreId);
+ result.putUnsafe(1320, resultStoreId);
++resultStoreId;
- result.putUnsafe(1315, resultStoreId);
+ result.putUnsafe(1154, resultStoreId);
++resultStoreId;
- result.putUnsafe(1236, resultStoreId);
+ result.putUnsafe(1283, resultStoreId);
+ result.putUnsafe(1293, resultStoreId);
+ result.putUnsafe(1274, resultStoreId);
++resultStoreId;
- result.putUnsafe(9634, resultStoreId);
+ result.putUnsafe(4484, resultStoreId);
++resultStoreId;
- result.putUnsafe(1217, resultStoreId);
- result.putUnsafe(1231, resultStoreId);
- result.putUnsafe(1241, resultStoreId);
+ result.putUnsafe(1388, resultStoreId);
+ result.putUnsafe(1397, resultStoreId);
++resultStoreId;
- result.putUnsafe(1428, resultStoreId);
+ result.putUnsafe(7085, resultStoreId);
+ result.putUnsafe(7102, resultStoreId);
++resultStoreId;
- result.putUnsafe(1423, resultStoreId);
- result.putUnsafe(1414, resultStoreId);
+ result.putUnsafe(1024, resultStoreId);
+ result.putUnsafe(1045, resultStoreId);
+ result.putUnsafe(1053, resultStoreId);
+ result.putUnsafe(907, resultStoreId);
+ result.putUnsafe(1170, resultStoreId);
+ result.putUnsafe(1133, resultStoreId);
+ result.putUnsafe(1087, resultStoreId);
+ result.putUnsafe(1015, resultStoreId);
+ result.putUnsafe(1062, resultStoreId);
++resultStoreId;
- result.putUnsafe(1300, resultStoreId);
- result.putUnsafe(1309, resultStoreId);
- result.putUnsafe(1329, resultStoreId);
+ result.putUnsafe(10623, resultStoreId);
++resultStoreId;
- result.putUnsafe(1041, resultStoreId);
- result.putUnsafe(1159, resultStoreId);
- result.putUnsafe(1071, resultStoreId);
- result.putUnsafe(1088, resultStoreId);
- result.putUnsafe(1113, resultStoreId);
- result.putUnsafe(952, resultStoreId);
- result.putUnsafe(1079, resultStoreId);
- result.putUnsafe(1196, resultStoreId);
- result.putUnsafe(1050, resultStoreId);
+ result.putUnsafe(1210, resultStoreId);
++resultStoreId;
- result.putUnsafe(15760, resultStoreId);
- result.putUnsafe(15800, resultStoreId);
- result.putUnsafe(15712, resultStoreId);
- result.putUnsafe(15676, resultStoreId);
- result.putUnsafe(15667, resultStoreId);
- result.putUnsafe(15600, resultStoreId);
- result.putUnsafe(15773, resultStoreId);
- result.putUnsafe(15791, resultStoreId);
- result.putUnsafe(15655, resultStoreId);
- result.putUnsafe(15782, resultStoreId);
- result.putUnsafe(15617, resultStoreId);
- result.putUnsafe(15609, resultStoreId);
+ result.putUnsafe(1449, resultStoreId);
+ result.putUnsafe(1417, resultStoreId);
+ result.putUnsafe(1426, resultStoreId);
+ result.putUnsafe(1440, resultStoreId);
+ result.putUnsafe(1445, resultStoreId);
+ result.putUnsafe(1435, resultStoreId);
+ result.putUnsafe(1454, resultStoreId);
++resultStoreId;
- result.putUnsafe(2946, resultStoreId);
+ result.putUnsafe(14395, resultStoreId);
+ result.putUnsafe(14422, resultStoreId);
+ result.putUnsafe(14437, resultStoreId);
+ result.putUnsafe(14404, resultStoreId);
+ result.putUnsafe(14413, resultStoreId);
++resultStoreId;
- result.putUnsafe(1255, resultStoreId);
- result.putUnsafe(1278, resultStoreId);
- result.putUnsafe(1264, resultStoreId);
- result.putUnsafe(1246, resultStoreId);
+ result.putUnsafe(1479, resultStoreId);
+ result.putUnsafe(1469, resultStoreId);
++resultStoreId;
- result.putUnsafe(1480, resultStoreId);
- result.putUnsafe(1461, resultStoreId);
- result.putUnsafe(1466, resultStoreId);
- result.putUnsafe(1475, resultStoreId);
- result.putUnsafe(1452, resultStoreId);
- result.putUnsafe(1443, resultStoreId);
- result.putUnsafe(1471, resultStoreId);
+ result.putUnsafe(1279, resultStoreId);
+ result.putUnsafe(1300, resultStoreId);
+ result.putUnsafe(1310, resultStoreId);
++resultStoreId;
- result.putUnsafe(1505, resultStoreId);
- result.putUnsafe(1495, resultStoreId);
+ result.putUnsafe(1305, resultStoreId);
++resultStoreId;
- result.putUnsafe(1409, resultStoreId);
- result.putUnsafe(1418, resultStoreId);
+ result.putUnsafe(7090, resultStoreId);
++resultStoreId;
- result.putUnsafe(1404, resultStoreId);
- result.putUnsafe(1386, resultStoreId);
- result.putUnsafe(1377, resultStoreId);
- result.putUnsafe(1395, resultStoreId);
+ result.putUnsafe(1262, resultStoreId);
++resultStoreId;
- result.putUnsafe(8116, resultStoreId);
+ result.putUnsafe(1185, resultStoreId);
+ result.putUnsafe(1198, resultStoreId);
++resultStoreId;
- result.putUnsafe(1320, resultStoreId);
+ result.putUnsafe(1315, resultStoreId);
+ result.putUnsafe(1325, resultStoreId);
+ result.putUnsafe(1334, resultStoreId);
++resultStoreId;
- result.putUnsafe(1288, resultStoreId);
+ result.putUnsafe(1459, resultStoreId);
+ result.putUnsafe(1474, resultStoreId);
return result;
}
@@ -3152,8 +3152,8 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIlwnIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgzOSwzOSldKV0se30p = (IConstructor) _read("prod(lit(\"\\'\"),[\\char-class([range(39,39)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiUmVuYW1pbmdzIikpLFtsaXQoInJlbmFtaW5nIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyZW5hbWluZ3MiLFxpdGVyLXNlcHMoc29ydCgiUmVuYW1pbmciKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKV0se30p = (IConstructor) _read("prod(label(\"default\",sort(\"Renamings\")),[lit(\"renaming\"),layouts(\"LAYOUTLIST\"),label(\"renamings\",\\iter-seps(sort(\"Renaming\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCkscmFuZ2UoNDYsNDYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLG9wdChzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIm9wdChzZXEoW1xcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpLHJhbmdlKDQ2LDQ2KV0pLFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KHNlcShbXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSldKSkiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKG9wdChzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCkscmFuZ2UoNDYsNDYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLG9wdChzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",seq([\\char-class([range(44,44),range(46,46)]),\\char-class([range(48,57)]),opt(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))])),[\\char-class([range(0,0)]),lit(\"opt(seq([\\\\char-class([range(44,44),range(46,46)]),\\\\char-class([range(48,57)]),opt(seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))]))]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(opt(seq([\\char-class([range(44,44),range(46,46)]),\\char-class([range(48,57)]),opt(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))]))))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDb21tYW5kXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Command\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixccGFyYW1ldGVyaXplZC1zb3J0KCJNYXBwaW5nIixbc29ydCgiRXhwcmVzc2lvbiIpXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXN0YXItc2VwcyhcXHBhcmFtZXRlcml6ZWQtc29ydChcIk1hcHBpbmdcIixbc29ydChcIkV4cHJlc3Npb25cIildKSxbbGl0KFwiLFwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyLXNlcHMoXHBhcmFtZXRlcml6ZWQtc29ydCgiTWFwcGluZyIsW3NvcnQoIkV4cHJlc3Npb24iKV0pLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",\\parameterized-sort(\"Mapping\",[sort(\"Expression\")])),[\\char-class([range(0,0)]),lit(\"\\\\iter-star-seps(\\\\parameterized-sort(\\\"Mapping\\\",[sort(\\\"Expression\\\")]),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(\\parameterized-sort(\"Mapping\",[sort(\"Expression\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYnEiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcYCIpXSx7dGFnKCJjYXRlZ29yeSIoIk1ldGFTa2lwcGVkIikpfSk00 = (IConstructor) _read("prod(label(\"bq\",lex(\"ConcretePart\")),[lit(\"\\\\`\")],{tag(\"category\"(\"MetaSkipped\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW50ZXJwb2xhdGVkIixzb3J0KCJQYXRoUGFydCIpKSxbbGFiZWwoInByZSIsbGV4KCJQcmVQYXRoQ2hhcnMiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidGFpbCIsc29ydCgiUGF0aFRhaWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"interpolated\",sort(\"PathPart\")),[label(\"pre\",lex(\"PrePathChars\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"PathTail\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIk5hbWVkUmVnRXhwIiksW2xleCgiTmFtZWRCYWNrc2xhc2giKV0se30p = (IConstructor) _read("prod(lex(\"NamedRegExp\"),[lex(\"NamedBackslash\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJzb2x2ZSIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"solve\")],{})", RascalValueFactory.Production);
@@ -3174,8 +3174,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIuKaoCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTg4OCw5ODg4KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"⚠\"),[\\char-class([range(9888,9888)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIk5hbWVkUmVnRXhwIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxLDQ2KSxyYW5nZSg0OCw1OSkscmFuZ2UoNjEsNjEpLHJhbmdlKDYzLDkxKSxyYW5nZSg5MywxMTE0MTExKV0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"NamedRegExp\"),[\\char-class([range(1,46),range(48,59),range(61,61),range(63,91),range(93,1114111)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3dpdGNoIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xhYmVsKCJsYWJlbCIsc29ydCgiTGFiZWwiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgic3dpdGNoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgieyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY2FzZXMiLFxpdGVyLXNlcHMoc29ydCgiQ2FzZSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifSIpXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"switch\",sort(\"Statement\")),[label(\"label\",sort(\"Label\")),layouts(\"LAYOUTLIST\"),lit(\"switch\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"cases\",\\iter-seps(sort(\"Case\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibHQiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcXDwiKV0se3RhZygiY2F0ZWdvcnkiKCJNZXRhU2tpcHBlZCIpKX0p = (IConstructor) _read("prod(label(\"lt\",lex(\"ConcretePart\")),[lit(\"\\\\\\<\")],{tag(\"category\"(\"MetaSkipped\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDb21tYW5kXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Command\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaWZUaGVuRWxzZSIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImNvbmRpdGlvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI22IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0aGVuRXhwIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjoiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsc2VFeHAiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhyaWdodCgpKX0p = (IConstructor) _read("prod(label(\"ifThenElse\",sort(\"Expression\")),[label(\"condition\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"?\"),layouts(\"LAYOUTLIST\"),label(\"thenExp\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"elseExp\",sort(\"Expression\"))],{assoc(right())})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihzZXEoW2xpdCgiXFwiKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIzLDEyMykscmFuZ2UoMTI1LDEyNSldKV0pKQ0000 = (IConstructor) _read("regular(seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInN0ciIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKV0se30p = (IConstructor) _read("prod(lit(\"str\"),[\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(114,114)])],{})", RascalValueFactory.Production);
@@ -3183,20 +3181,21 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsZXgoIkJhY2tzbGFzaCIpLFtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NykscmFuZ2UoNjAsNjApLHJhbmdlKDYyLDYyKSxyYW5nZSg5Miw5MildKSl9KV0se30p = (IConstructor) _read("prod(lex(\"Backslash\"),[conditional(\\char-class([range(92,92)]),{\\not-follow(\\char-class([range(47,47),range(60,60),range(62,62),range(92,92)]))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29tcHJlaGVuc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImNvbXByZWhlbnNpb24iLHNvcnQoIkNvbXByZWhlbnNpb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"comprehension\",sort(\"Expression\")),[label(\"comprehension\",sort(\"Comprehension\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIioiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQyLDQyKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"*\"),[\\char-class([range(42,42)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm9kZSIsc29ydCgiQmFzaWNUeXBlIikpLFtsaXQoIm5vZGUiKV0se30p = (IConstructor) _read("prod(label(\"node\",sort(\"BasicType\")),[lit(\"node\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibmFtZSIsc29ydCgiRmllbGQiKSksW2xhYmVsKCJmaWVsZE5hbWUiLGxleCgiTmFtZSIpKV0se30p = (IConstructor) _read("prod(label(\"name\",sort(\"Field\")),[label(\"fieldName\",lex(\"Name\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJJbnRlZ2VyTGl0ZXJhbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Myw3MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzYsNzYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"IntegerLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(73,73)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm5vZGUiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"node\"),[\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlRhZ1N0cmluZyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJUYWdTdHJpbmdcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiVGFnU3RyaW5nIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"TagString\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"TagString\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"TagString\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgib3V0ZXJtb3N0Iixzb3J0KCJTdHJhdGVneSIpKSxbbGl0KCJvdXRlcm1vc3QiKV0se30p = (IConstructor) _read("prod(label(\"outermost\",sort(\"Strategy\")),[lit(\"outermost\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2ltcGxlQ2hhcmNsYXNzIixzb3J0KCJDbGFzcyIpKSxbbGl0KCJbIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyYW5nZXMiLFxpdGVyLXN0YXItc2Vwcyhzb3J0KCJSYW5nZSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"simpleCharclass\",sort(\"Class\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"ranges\",\\iter-star-seps(sort(\"Range\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidHJ5RmluYWxseSIsc29ydCgiU3RhdGVtZW50IikpLFtsaXQoInRyeSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYm9keSIsc29ydCgiU3RhdGVtZW50IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiaGFuZGxlcnMiLFxpdGVyLXNlcHMoc29ydCgiQ2F0Y2giKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImZpbmFsbHkiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImZpbmFsbHlCb2R5Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"tryFinally\",sort(\"Statement\")),[lit(\"try\"),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"Statement\")),layouts(\"LAYOUTLIST\"),label(\"handlers\",\\iter-seps(sort(\"Catch\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"finally\"),layouts(\"LAYOUTLIST\"),label(\"finallyBody\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJiYWciKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"bag\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm9uRXF1YWxzIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiE9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"nonEquals\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"!=\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkp1c3RUaW1lIiksW2xpdCgiJFQiKSxsZXgoIlRpbWVQYXJ0Tm9UWiIpLGxleCgiVGltZVpvbmVQYXJ0IiksbGl0KCIkIildLHt9KQ0000 = (IConstructor) _read("prod(lex(\"JustTime\"),[lit(\"$T\"),lex(\"TimePartNoTZ\"),lex(\"TimeZonePart\"),lit(\"$\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmVhbCIsc29ydCgiQmFzaWNUeXBlIikpLFtsaXQoInJlYWwiKV0se30p = (IConstructor) _read("prod(label(\"real\",sort(\"BasicType\")),[lit(\"real\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiTG9jYWxWYXJpYWJsZURlY2xhcmF0aW9uIikpLFtsYWJlbCgiZGVjbGFyYXRvciIsc29ydCgiRGVjbGFyYXRvciIpKV0se30p = (IConstructor) _read("prod(label(\"default\",sort(\"LocalVariableDeclaration\")),[label(\"declarator\",sort(\"Declarator\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicGFyYW1ldGVycyIsc29ydCgiSGVhZGVyIikpLFtsYWJlbCgidGFncyIsc29ydCgiVGFncyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJtb2R1bGUiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLHNvcnQoIlF1YWxpZmllZE5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwYXJhbXMiLHNvcnQoIk1vZHVsZVBhcmFtZXRlcnMiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJpbXBvcnRzIixcaXRlci1zdGFyLXNlcHMoc29ydCgiSW1wb3J0IiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKV0se30p = (IConstructor) _read("prod(label(\"parameters\",sort(\"Header\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),lit(\"module\"),layouts(\"LAYOUTLIST\"),label(\"name\",sort(\"QualifiedName\")),layouts(\"LAYOUTLIST\"),label(\"params\",sort(\"ModuleParameters\")),layouts(\"LAYOUTLIST\"),label(\"imports\",\\iter-star-seps(sort(\"Import\"),[layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSYXRpb25hbExpdGVyYWxcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODIsODIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzYsNzYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"RationalLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZW1wdHkiLHNvcnQoIlRhZyIpKSxbbGl0KCJAIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSldLHt0YWcoIkZvbGRlZCIoKSksdGFnKCJjYXRlZ29yeSIoImNvbW1lbnQiKSl9KQ0000 = (IConstructor) _read("prod(label(\"empty\",sort(\"Tag\")),[lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\"))],{tag(\"Folded\"()),tag(\"category\"(\"comment\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm9kZSIsc29ydCgiQmFzaWNUeXBlIikpLFtsaXQoIm5vZGUiKV0se30p = (IConstructor) _read("prod(label(\"node\",sort(\"BasicType\")),[lit(\"node\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDb21tYW5kIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkNvbW1hbmRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkNvbW1hbmQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Command\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Command\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Command\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJEYXRhVHlwZVNlbGVjdG9yXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"DataTypeSelector\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(68,68)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(84,84)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(83,83)]),\\char-class([range(101,101)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaXQiLHNvcnQoIkV4cHJlc3Npb24iKSksW2NvbmRpdGlvbmFsKGxpdCgiaXQiKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSksXG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSx7fSk00 = (IConstructor) _read("prod(label(\"it\",sort(\"Expression\")),[conditional(lit(\"it\"),{\\not-precede(\\char-class([range(65,90),range(95,95),range(97,122)])),\\not-follow(\\char-class([range(65,90),range(95,95),range(97,122)]))})],{})", RascalValueFactory.Production);
@@ -3206,6 +3205,8 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdHJpbmdMaXRlcmFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlN0cmluZ0xpdGVyYWxcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlN0cmluZ0xpdGVyYWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"StringLiteral\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"StringLiteral\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"StringLiteral\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWxsIixzb3J0KCJLaW5kIikpLFtsaXQoImFsbCIpXSx7fSk00 = (IConstructor) _read("prod(label(\"all\",sort(\"Kind\")),[lit(\"all\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDaGFyXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Char\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgib3V0ZXJtb3N0Iixzb3J0KCJTdHJhdGVneSIpKSxbbGl0KCJvdXRlcm1vc3QiKV0se30p = (IConstructor) _read("prod(label(\"outermost\",sort(\"Strategy\")),[lit(\"outermost\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZXF1YWxzIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj09IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"equals\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"==\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidHlwZWQiLGxleCgiQ29uY3JldGUiKSksW2xpdCgiKCIpLGxhYmVsKCJsMSIsbGF5b3V0cygiTEFZT1VUTElTVCIpKSxsYWJlbCgic3ltYm9sIixzb3J0KCJTeW0iKSksbGFiZWwoImwyIixsYXlvdXRzKCJMQVlPVVRMSVNUIikpLGxpdCgiKSIpLGxhYmVsKCJsMyIsbGF5b3V0cygiTEFZT1VUTElTVCIpKSxsaXQoImAiKSxsYWJlbCgicGFydHMiLFxpdGVyLXN0YXIobGV4KCJDb25jcmV0ZVBhcnQiKSkpLGxpdCgiYCIpXSx7fSk00 = (IConstructor) _read("prod(label(\"typed\",lex(\"Concrete\")),[lit(\"(\"),label(\"l1\",layouts(\"LAYOUTLIST\")),label(\"symbol\",sort(\"Sym\")),label(\"l2\",layouts(\"LAYOUTLIST\")),lit(\")\"),label(\"l3\",layouts(\"LAYOUTLIST\")),lit(\"`\"),label(\"parts\",\\iter-star(lex(\"ConcretePart\"))),lit(\"`\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlByZVByb3RvY29sQ2hhcnMiKSxbbGl0KCJ8IiksbGV4KCJVUkxDaGFycyIpLGxpdCgiXDwiKV0se30p = (IConstructor) _read("prod(lex(\"PreProtocolChars\"),[lit(\"|\"),lex(\"URLChars\"),lit(\"\\<\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJhc3NvYyIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"assoc\")],{})", RascalValueFactory.Production);
@@ -3219,11 +3220,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIj1cPiIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDYyLDYyKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"=\\>\"),[\\char-class([range(61,61)]),\\char-class([range(62,62)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQYXR0ZXJuV2l0aEFjdGlvblwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDg3LDg3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw2NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"PatternWithAction\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(110,110)]),\\char-class([range(87,87)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(104,104)]),\\char-class([range(65,65)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm5vdGluIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"notin\"),[\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(110,110)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaW1wbGljYXRpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPT1cPiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"implication\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"==\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk9wdGlvbmFsQ29tbWEiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiT3B0aW9uYWxDb21tYVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJPcHRpb25hbENvbW1hIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"OptionalComma\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"OptionalComma\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"OptionalComma\")))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlR5cGUiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-seps(sort(\"Type\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkxBWU9VVCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJMQVlPVVRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiTEFZT1VUIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"LAYOUT\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"LAYOUT\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"LAYOUT\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgidGhyb3ciLHNvcnQoIlN0YXRlbWVudCIpKSxbbGl0KCJ0aHJvdyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHthc3NvYyhcbm9uLWFzc29jKCkpLHRhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"throw\",sort(\"Statement\")),[lit(\"throw\"),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{assoc(\\non-assoc()),tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDYXRjaCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIml0ZXIoc29ydChcIkNhdGNoXCIpKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJDYXRjaCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Catch\")),[\\char-class([range(0,0)]),lit(\"iter(sort(\\\"Catch\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Catch\"),[layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29uc3RydWN0b3IiLHNvcnQoIkFzc2lnbmFibGUiKSksW2xhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYXJndW1lbnRzIixcaXRlci1zZXBzKHNvcnQoIkFzc2lnbmFibGUiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"constructor\",sort(\"Assignable\")),[label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"arguments\",\\iter-seps(sort(\"Assignable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgidmFyaWFibGUiLHNvcnQoIktpbmQiKSksW2xpdCgidmFyaWFibGUiKV0se30p = (IConstructor) _read("prod(label(\"variable\",sort(\"Kind\")),[lit(\"variable\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibmV3bGluZSIsbGV4KCJDb25jcmV0ZVBhcnQiKSksW2xpdCgiXG4iKSxcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg5LDkpLHJhbmdlKDMyLDMyKSxyYW5nZSgxNjAsMTYwKSxyYW5nZSg1NzYwLDU3NjApLHJhbmdlKDgxOTIsODIwMikscmFuZ2UoODIzOSw4MjM5KSxyYW5nZSg4Mjg3LDgyODcpLHJhbmdlKDEyMjg4LDEyMjg4KV0pKSxsaXQoIlwnIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"newline\",lex(\"ConcretePart\")),[lit(\"\\n\"),\\iter-star(\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)])),lit(\"\\'\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJzdGFydCIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"start\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidW5Jbml0aWFsaXplZCIsc29ydCgiVmFyaWFibGUiKSksW2xhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"unInitialized\",sort(\"Variable\")),[label(\"name\",lex(\"Name\"))],{})", RascalValueFactory.Production);
@@ -3231,12 +3234,9 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyLXNlcHMoc29ydChcIlBhdHRlcm5cIiksW2xpdChcIixcIildKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-star-seps(sort(\\\"Pattern\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIjAiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"0\"),[\\char-class([range(48,48)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlw8LSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNjAsNjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\<-\"),[\\char-class([range(60,60)]),\\char-class([range(45,45)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk9wdGlvbmFsQ29tbWEiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiT3B0aW9uYWxDb21tYVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJPcHRpb25hbENvbW1hIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"OptionalComma\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"OptionalComma\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"OptionalComma\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZGl2aXNpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MobGVmdCgpKX0p = (IConstructor) _read("prod(label(\"division\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"/\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicHJvZHVjdCIsc29ydCgiQXNzaWdubWVudCIpKSxbbGl0KCIqPSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"product\",sort(\"Assignment\")),[lit(\"*=\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJvIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"o\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3RlcFJhbmdlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsaXQoIlsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImZpcnN0Iixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInNlY29uZCIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIuLiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibGFzdCIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"stepRange\",sort(\"Expression\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"first\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\"),label(\"second\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"..\"),layouts(\"LAYOUTLIST\"),label(\"last\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiVGFnIikpLFtsaXQoIkAiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLGxleCgiTmFtZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLHtcbm90LWZvbGxvdyhsaXQoIkAiKSl9KV0se3RhZygiRm9sZGVkIigpKSx0YWcoImNhdGVnb3J5IigiQ29tbWVudCIpKX0p = (IConstructor) _read("prod(label(\"expression\",sort(\"Tag\")),[lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),conditional(label(\"expression\",sort(\"Expression\")),{\\not-follow(lit(\"@\"))})],{tag(\"Folded\"()),tag(\"category\"(\"Comment\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJEYXRlVGltZUxpdGVyYWxcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4NCw4NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzYsNzYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"DateTimeLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(68,68)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(84,84)]),\\char-class([range(105,105)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJNb2R1bGVcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzcsNzcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Module\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(117,117)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibm9uSW50ZXJwb2xhdGVkIixzb3J0KCJTdHJpbmdMaXRlcmFsIikpLFtsYWJlbCgiY29uc3RhbnQiLGxleCgiU3RyaW5nQ29uc3RhbnQiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"nonInterpolated\",sort(\"StringLiteral\")),[label(\"constant\",lex(\"StringConstant\"))],{})", RascalValueFactory.Production);
@@ -3247,14 +3247,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiZmllbGRQcm9qZWN0Iixzb3J0KCJFeHByZXNzaW9uIikpLFtjb25kaXRpb25hbChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSx7ZXhjZXB0KCJpc0RlZmluZWQiKSxleGNlcHQoInRyYW5zaXRpdmVDbG9zdXJlIiksZXhjZXB0KCJ0cmFuc2l0aXZlUmVmbGV4aXZlQ2xvc3VyZSIpfSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImZpZWxkcyIsXGl0ZXItc2Vwcyhzb3J0KCJGaWVsZCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw11IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"fieldProject\",sort(\"Expression\")),[conditional(label(\"expression\",sort(\"Expression\")),{except(\"isDefined\"),except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")}),layouts(\"LAYOUTLIST\"),lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"fields\",\\iter-seps(sort(\"Field\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiTGFiZWwiKSksW2xhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"default\",sort(\"Label\")),[label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\":\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIkV2YWxDb21tYW5kIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-seps(sort(\"EvalCommand\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZGl2aXNpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"division\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"/\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdGF0ZW1lbnRcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODMsODMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Statement\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIkZpZWxkIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSk00 = (IConstructor) _read("regular(\\iter-seps(sort(\"Field\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlBvc3RQYXRoQ2hhcnMiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUG9zdFBhdGhDaGFyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJQb3N0UGF0aENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PostPathChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PostPathChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PostPathChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJGdW5jdGlvblR5cGVcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzAsNzApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4NCw4NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"FunctionType\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(84,84)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidW5pbXBvcnQiLHNvcnQoIlNoZWxsQ29tbWFuZCIpKSxbbGl0KCJ1bmltcG9ydCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibmFtZSIsc29ydCgiUXVhbGlmaWVkTmFtZSIpKV0se30p = (IConstructor) _read("prod(label(\"unimport\",sort(\"ShellCommand\")),[lit(\"unimport\"),layouts(\"LAYOUTLIST\"),label(\"name\",sort(\"QualifiedName\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImxyZWwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"lrel\"),[\\char-class([range(108,108)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(108,108)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgidmFyaWFibGUiLHNvcnQoIktpbmQiKSksW2xpdCgidmFyaWFibGUiKV0se30p = (IConstructor) _read("prod(label(\"variable\",sort(\"Kind\")),[lit(\"variable\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic2VxKFtjb25kaXRpb25hbChcXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKV0pLHtcXG5vdC1wcmVjZWRlKFxcY2hhci1jbGFzcyhbcmFuZ2UoNjUsOTApXSkpfSksY29uZGl0aW9uYWwoXFxpdGVyLXN0YXIoXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcXG5vdC1mb2xsb3coXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpfSldKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc2VxKFtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoNjUsOTApXSkse1xub3QtcHJlY2VkZShcY2hhci1jbGFzcyhbcmFuZ2UoNjUsOTApXSkpfSksY29uZGl0aW9uYWwoXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KV0pKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",seq([conditional(\\char-class([range(65,90)]),{\\not-precede(\\char-class([range(65,90)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])),[\\char-class([range(0,0)]),lit(\"seq([conditional(\\\\char-class([range(65,90)]),{\\\\not-precede(\\\\char-class([range(65,90)]))}),conditional(\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\\\not-follow(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(seq([conditional(\\char-class([range(65,90)]),{\\not-precede(\\char-class([range(65,90)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJOb250ZXJtaW5hbExhYmVsXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc4LDc4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzYsNzYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OCw5OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"NonterminalLabel\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(78,78)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(109,109)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(76,76)]),\\char-class([range(97,97)]),\\char-class([range(98,98)]),\\char-class([range(101,101)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJLaW5kXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc1LDc1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Kind\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(75,75)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaXNEZWZpbmVkIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgiYXJndW1lbnQiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"isDefined\",sort(\"Expression\")),[label(\"argument\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"?\")],{})", RascalValueFactory.Production);
@@ -3276,6 +3275,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJLZXl3b3JkRm9ybWFsXCIpLFtsaXQoXCIsXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzUsNzUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOSwxMTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDcwLDcwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"KeywordFormal\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(75,75)]),\\char-class([range(101,101)]),\\char-class([range(121,121)]),\\char-class([range(119,119)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(100,100)]),\\char-class([range(70,70)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmlnaHQiLHNvcnQoIkFzc29jIikpLFtsaXQoInJpZ2h0IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"right\",sort(\"Assoc\")),[lit(\"right\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlw8PT1cPiIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNjAsNjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDYxLDYxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2MSw2MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjIsNjIpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\<==\\>\"),[\\char-class([range(60,60)]),\\char-class([range(61,61)]),\\char-class([range(61,61)]),\\char-class([range(62,62)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIlBvc3RTdHJpbmdDaGFycyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNjIsNjIpXSksXGl0ZXItc3RhcihsZXgoIlN0cmluZ0NoYXJhY3RlciIpKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSldLHt0YWcoImNhdGVnb3J5Iigic3RyaW5nIikpfSk00 = (IConstructor) _read("prod(lex(\"PostStringChars\"),[\\char-class([range(62,62)]),\\iter-star(lex(\"StringCharacter\")),\\char-class([range(34,34)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkp1c3REYXRlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkp1c3REYXRlXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIkp1c3REYXRlIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"JustDate\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"JustDate\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"JustDate\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJMb2NhbFZhcmlhYmxlRGVjbGFyYXRpb25cIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzYsNzYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODYsODYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"LocalVariableDeclaration\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(76,76)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(86,86)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(97,97)]),\\char-class([range(98,98)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(68,68)]),\\char-class([range(101,101)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJVUkxDaGFyc1wiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4NSw4NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODIsODIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc2LDc2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"URLChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(85,85)]),\\char-class([range(82,82)]),\\char-class([range(76,76)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
@@ -3290,38 +3290,42 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChzdGFydChzb3J0KCJNb2R1bGUiKSksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidG9wIixzb3J0KCJNb2R1bGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpXSx7fSk00 = (IConstructor) _read("prod(start(sort(\"Module\")),[layouts(\"LAYOUTLIST\"),label(\"top\",sort(\"Module\")),layouts(\"LAYOUTLIST\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIiY9IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgzOCwzOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"&=\"),[\\char-class([range(38,38)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJGdW5jdGlvbkJvZHlcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzAsNzApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Niw2NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"FunctionBody\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(66,66)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(121,121)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiQm91bmQiKSksW2xpdCgiOyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"default\",sort(\"Bound\")),[lit(\";\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlZhcmlhYmxlIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSk00 = (IConstructor) _read("regular(\\iter-seps(sort(\"Variable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQcm90b2NvbFBhcnQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUHJvdG9jb2xQYXJ0XCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJQcm90b2NvbFBhcnQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ProtocolPart\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ProtocolPart\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"ProtocolPart\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIj0iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDYxLDYxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"=\"),[\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJWYXJpYWJsZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJWYXJpYWJsZVwiKSxbbGl0KFwiLFwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zZXBzKHNvcnQoIlZhcmlhYmxlIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Variable\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Variable\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Variable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUaW1lUGFydE5vVFpcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODQsODQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzgsNzgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MCw5MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"TimePartNoTZ\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(105,105)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(78,78)]),\\char-class([range(111,111)]),\\char-class([range(84,84)]),\\char-class([range(90,90)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIi4uLiIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNDYsNDYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0Niw0NildKV0se30p = (IConstructor) _read("prod(lit(\"...\"),[\\char-class([range(46,46)]),\\char-class([range(46,46)]),\\char-class([range(46,46)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlR5cGVBcmciKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-seps(sort(\"TypeArg\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
- private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbc29ydCgiQmFzaWNUeXBlIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[sort(\"BasicType\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiU3RhdGVtZW50IikpLFtsYWJlbCgiZXhwcmVzc2lvbiIsY29uZGl0aW9uYWwoc29ydCgiRXhwcmVzc2lvbiIpLHtleGNlcHQoIm5vbkVtcHR5QmxvY2siKSxleGNlcHQoInZpc2l0Iil9KSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"expression\",sort(\"Statement\")),[label(\"expression\",conditional(sort(\"Expression\"),{except(\"nonEmptyBlock\"),except(\"visit\")})),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIloiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkwLDkwKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"Z\"),[\\char-class([range(90,90)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIio9IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"*=\"),[\\char-class([range(42,42)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaG9sZSIsbGV4KCJDb25jcmV0ZVBhcnQiKSksW2xhYmVsKCJob2xlIixzb3J0KCJDb25jcmV0ZUhvbGUiKSldLHt0YWcoImNhdGVnb3J5Iigic3RyaW5nIikpfSk00 = (IConstructor) _read("prod(label(\"hole\",lex(\"ConcretePart\")),[label(\"hole\",sort(\"ConcreteHole\"))],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiQm91bmQiKSksW2xpdCgiOyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"default\",sort(\"Bound\")),[lit(\";\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibGVzc1RoYW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxpdCgiXDwiKSx7XG5vdC1mb2xsb3cobGl0KCItIikpfSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"lessThan\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"\\<\"),{\\not-follow(lit(\"-\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJjb250aW51ZSIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"continue\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJicmFja2V0IildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"bracket\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgic3Rkb3V0T3V0cHV0IixsZXgoIk91dHB1dCIpKSxbY29uZGl0aW9uYWwobGl0KCLiiasiKSx7XGJlZ2luLW9mLWxpbmUoKX0pLFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsMTIpLHJhbmdlKDE0LDExMTQxMTEpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMCwxMCldKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"stdoutOutput\",lex(\"Output\")),[conditional(lit(\"≫\"),{\\begin-of-line()}),\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])),\\char-class([range(10,10)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImluIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"in\"),[\\char-class([range(105,105)]),\\char-class([range(110,110)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk5vbnRlcm1pbmFsTGFiZWwiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiTm9udGVybWluYWxMYWJlbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJOb250ZXJtaW5hbExhYmVsIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"NonterminalLabel\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"NonterminalLabel\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"NonterminalLabel\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdGF0ZW1lbnQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJpdGVyKHNvcnQoXCJTdGF0ZW1lbnRcIikpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zZXBzKHNvcnQoIlN0YXRlbWVudCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Statement\")),[\\char-class([range(0,0)]),lit(\"iter(sort(\\\"Statement\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGF0ZUxpdGVyYWwiLHNvcnQoIkRhdGVUaW1lTGl0ZXJhbCIpKSxbbGFiZWwoImRhdGUiLGxleCgiSnVzdERhdGUiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"dateLiteral\",sort(\"DateTimeLiteral\")),[label(\"date\",lex(\"JustDate\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIm9wdChzZXEoW1xcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpXSkpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihvcHQoc2VxKFtcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))])),[\\char-class([range(0,0)]),lit(\"opt(seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(opt(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic2VxKFtcXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKV0pLFxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",seq([conditional(\\char-class([range(65,90)]),{\\not-precede(\\char-class([range(65,90)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])),[\\char-class([range(0,0)]),lit(\"seq([\\\\char-class([range(65,90)]),\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(seq([conditional(\\char-class([range(65,90)]),{\\not-precede(\\char-class([range(65,90)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIk5vbnRlcm1pbmFsTGFiZWwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk3LDEyMildKSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"NonterminalLabel\"),[\\char-class([range(97,122)]),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgidHVwbGUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzIixcaXRlci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"tuple\",sort(\"Expression\")),[lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"elements\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJWYXJpYWJsZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJWYXJpYWJsZVwiKSxbbGl0KFwiLFwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zZXBzKHNvcnQoIlZhcmlhYmxlIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Variable\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Variable\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Variable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInx8IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMjQsMTI0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjQsMTI0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"||\"),[\\char-class([range(124,124)]),\\char-class([range(124,124)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY2FsbE9yVHJlZSIsc29ydCgiUGF0dGVybiIpKSxbbGFiZWwoImV4cHJlc3Npb24iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYXJndW1lbnRzIixcaXRlci1zdGFyLXNlcHMoc29ydCgiUGF0dGVybiIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgia2V5d29yZEFyZ3VtZW50cyIsXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50cyIsW3NvcnQoIlBhdHRlcm4iKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"callOrTree\",sort(\"Pattern\")),[label(\"expression\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"arguments\",\\iter-star-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"keywordArguments\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Pattern\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJSYW5nZVwiKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgyLDgyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"Range\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiaW4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKFxub24tYXNzb2MoKSl9KQ0000 = (IConstructor) _read("prod(label(\"in\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"in\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJWYXJpYWJsZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJWYXJpYWJsZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiVmFyaWFibGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Variable\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Variable\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Variable\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlN0cmluZ0NvbnN0YW50IikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlN0cmluZ0NvbnN0YW50XCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlN0cmluZ0NvbnN0YW50IikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"StringConstant\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"StringConstant\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"StringConstant\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbc29ydCgiQmFzaWNUeXBlIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[sort(\"BasicType\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicHJlY2VkZSIsc29ydCgiU3ltIikpLFtsYWJlbCgibWF0Y2giLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPFw8IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKV0se30p = (IConstructor) _read("prod(label(\"precede\",sort(\"Sym\")),[label(\"match\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"\\<\\<\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlsiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"[\"),[\\char-class([range(91,91)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlRpbWVQYXJ0Tm9UWiIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLGxpdCgiOiIpLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksbGl0KCI6IiksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoc2VxKFtcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpLHJhbmdlKDQ2LDQ2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoc2VxKFtcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSldKSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"TimePartNoTZ\"),[\\char-class([range(48,50)]),\\char-class([range(48,57)]),lit(\":\"),\\char-class([range(48,53)]),\\char-class([range(48,57)]),lit(\":\"),\\char-class([range(48,53)]),\\char-class([range(48,57)]),opt(seq([\\char-class([range(44,44),range(46,46)]),\\char-class([range(48,57)]),opt(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgib25lIixzb3J0KCJDb25jcmV0ZUhvbGUiKSksW2xpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN5bWJvbCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibmFtZSIsbGV4KCJOYW1lIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw11IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"one\",sort(\"ConcreteHole\")),[lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiUXVhbGlmaWVkTmFtZSIpKSxbY29uZGl0aW9uYWwobGFiZWwoIm5hbWVzIixcaXRlci1zZXBzKGxleCgiTmFtZSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI6OiIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSx7XG5vdC1mb2xsb3cobGl0KCI6OiIpKX0pXSx7fSk00 = (IConstructor) _read("prod(label(\"default\",sort(\"QualifiedName\")),[conditional(label(\"names\",\\iter-seps(lex(\"Name\"),[layouts(\"LAYOUTLIST\"),lit(\"::\"),layouts(\"LAYOUTLIST\")])),{\\not-follow(lit(\"::\"))})],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNlcShbXFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSxcXGl0ZXItc3RhcihcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSldKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEzLDExMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"seq([\\\\char-class([range(65,90),range(95,95),range(97,122)]),\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIio9IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"*=\"),[\\char-class([range(42,42)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkRhdGVBbmRUaW1lIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkRhdGVBbmRUaW1lXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIkRhdGVBbmRUaW1lIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"DateAndTime\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"DateAndTime\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"DateAndTime\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJscmVsIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"lrel\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQcm90b2NvbFRhaWwiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUHJvdG9jb2xUYWlsXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJQcm90b2NvbFRhaWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ProtocolTail\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ProtocolTail\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"ProtocolTail\")))})", RascalValueFactory.Production);
@@ -3332,14 +3336,18 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImxlZnQiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMiwxMDIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"left\"),[\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(102,102)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsbGV4KCJPcHRpb25hbENvbW1hIikpLFtvcHQobGl0KCIsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"default\",lex(\"OptionalComma\")),[opt(lit(\",\"))],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKGFsdCh7Y29uZGl0aW9uYWwoXGNoYXItY2xhc3MoW3JhbmdlKDQyLDQyKV0pLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDcsNDcpXSkpfSksXGNoYXItY2xhc3MoW3JhbmdlKDEsNDEpLHJhbmdlKDQzLDExMTQxMTEpXSl9KSkp = (IConstructor) _read("regular(\\iter-star(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})))", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJIZWFkZXJcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzIsNzIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Header\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(72,72)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInN5bnRheCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMCwxMjApXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"syntax\"),[\\char-class([range(115,115)]),\\char-class([range(121,121)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(120,120)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiam9pbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImxocyIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJqb2luIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"join\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"join\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGl0ZXJhbCIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImxpdGVyYWwiLHNvcnQoIkxpdGVyYWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"literal\",sort(\"Expression\")),[label(\"literal\",sort(\"Literal\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDb21wcmVoZW5zaW9uIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkNvbXByZWhlbnNpb25cIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkNvbXByZWhlbnNpb24iKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Comprehension\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Comprehension\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Comprehension\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3RydWN0dXJlZCIsc29ydCgiVHlwZSIpKSxbbGFiZWwoInN0cnVjdHVyZWQiLHNvcnQoIlN0cnVjdHVyZWRUeXBlIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"structured\",sort(\"Type\")),[label(\"structured\",sort(\"StructuredType\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJyZWwiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"rel\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJBc3NpZ25hYmxlXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY1LDY1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Assignable\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(65,65)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(103,103)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(98,98)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJsaXN0IildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"list\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYW5kIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiYmIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"and\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"&&\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJGaWVsZFwiKSxbbGl0KFwiLFwiKV0pIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDcwLDcwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"Field\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(108,108)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgidHVwbGUiLHNvcnQoIlBhdHRlcm4iKSksW2xpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzMCIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlBhdHRlcm4iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"tuple\",sort(\"Pattern\")),[lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"elements0\",\\iter-star-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJBc3NpZ25hYmxlXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY1LDY1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Assignable\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(65,65)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(103,103)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(98,98)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGl2aXNpb24iLHNvcnQoIkFzc2lnbm1lbnQiKSksW2xpdCgiLz0iKV0se30p = (IConstructor) _read("prod(label(\"division\",sort(\"Assignment\")),[lit(\"/=\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29udGludWUiLHNvcnQoIlN0YXRlbWVudCIpKSxbbGl0KCJjb250aW51ZSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidGFyZ2V0Iixzb3J0KCJUYXJnZXQiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"continue\",sort(\"Statement\")),[lit(\"continue\"),layouts(\"LAYOUTLIST\"),label(\"target\",sort(\"Target\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInRyeSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKV0se30p = (IConstructor) _read("prod(lit(\"try\"),[\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(121,121)])],{})", RascalValueFactory.Production);
@@ -3349,8 +3357,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIlxccGFyYW1ldGVyaXplZC1zb3J0KFwiS2V5d29yZEFyZ3VtZW50c1wiLFtzb3J0KFwiRXhwcmVzc2lvblwiKV0pIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjIsMTIyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3NSw3NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE5LDExOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjUsNjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMCwxMjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\parameterized-sort(\\\"KeywordArguments\\\",[sort(\\\"Expression\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(112,112)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(122,122)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(75,75)]),\\char-class([range(101,101)]),\\char-class([range(121,121)]),\\char-class([range(119,119)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(100,100)]),\\char-class([range(65,65)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(117,117)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImhpc3RvcnkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"history\"),[\\char-class([range(104,104)]),\\char-class([range(105,105)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(121,121)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQYXRoQ2hhcnNcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"PathChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(104,104)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJIZWFkZXJcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzIsNzIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Header\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(72,72)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiam9pbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImxocyIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJqb2luIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"join\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"join\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibWlkIixzb3J0KCJQcm90b2NvbFRhaWwiKSksW2xhYmVsKCJtaWQiLGxleCgiTWlkUHJvdG9jb2xDaGFycyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImV4cHJlc3Npb24iLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0YWlsIixzb3J0KCJQcm90b2NvbFRhaWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"mid\",sort(\"ProtocolTail\")),[label(\"mid\",lex(\"MidProtocolChars\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"ProtocolTail\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYW5ub3RhdGlvbiIsc29ydCgiRGVjbGFyYXRpb24iKSksW2xhYmVsKCJ0YWdzIixzb3J0KCJUYWdzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidmlzaWJpbGl0eSIsc29ydCgiVmlzaWJpbGl0eSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJhbm5vIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJhbm5vVHlwZSIsc29ydCgiVHlwZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm9uVHlwZSIsc29ydCgiVHlwZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJAIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"annotation\",sort(\"Declaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),lit(\"anno\"),layouts(\"LAYOUTLIST\"),label(\"annoType\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),label(\"onType\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ0ZXN0IildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"test\")],{})", RascalValueFactory.Production);
@@ -3359,17 +3365,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50cyIsW3NvcnQoIlBhdHRlcm4iKV0pKSxbbGFiZWwoIm9wdGlvbmFsQ29tbWEiLGxleCgiT3B0aW9uYWxDb21tYSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksY29uZGl0aW9uYWwobGFiZWwoImtleXdvcmRBcmd1bWVudExpc3QiLFxpdGVyLXNlcHMoXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50Iixbc29ydCgiUGF0dGVybiIpXSksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkse3ByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDksMTApLHJhbmdlKDMyLDMyKSxyYW5nZSg0MCw0MCkscmFuZ2UoNDQsNDQpXSkpfSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Pattern\")])),[label(\"optionalComma\",lex(\"OptionalComma\")),layouts(\"LAYOUTLIST\"),conditional(label(\"keywordArgumentList\",\\iter-seps(\\parameterized-sort(\"KeywordArgument\",[sort(\"Pattern\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),{precede(\\char-class([range(9,10),range(32,32),range(40,40),range(44,44)]))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlByb3RvY29sQ2hhcnMiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUHJvdG9jb2xDaGFyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJQcm90b2NvbENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"ProtocolChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ProtocolChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"ProtocolChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibm9FeHByZXNzaW9uIixzb3J0KCJPcHRpb25hbEV4cHJlc3Npb24iKSksW10se30p = (IConstructor) _read("prod(label(\"noExpression\",sort(\"OptionalExpression\")),[],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZ3QiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcXD4iKV0se3RhZygiY2F0ZWdvcnkiKCJNZXRhU2tpcHBlZCIpKX0p = (IConstructor) _read("prod(label(\"gt\",lex(\"ConcretePart\")),[lit(\"\\\\\\>\")],{tag(\"category\"(\"MetaSkipped\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInN5bnRheCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMCwxMjApXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"syntax\"),[\\char-class([range(115,115)]),\\char-class([range(121,121)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(120,120)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmFyaWFibGVCZWNvbWVzIixzb3J0KCJQYXR0ZXJuIikpLFtsYWJlbCgibmFtZSIsbGV4KCJOYW1lIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjoiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"variableBecomes\",sort(\"Pattern\")),[label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"pattern\",sort(\"Pattern\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIkNvbW1lbnQiKSxbbGl0KCIvKiIpLFxpdGVyLXN0YXIoYWx0KHtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoNDIsNDIpXSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSl9KSxcY2hhci1jbGFzcyhbcmFuZ2UoMSw0MSkscmFuZ2UoNDMsMTExNDExMSldKX0pKSxsaXQoIiovIildLHt0YWcoImNhdGVnb3J5IigiQ29tbWVudCIpKX0p = (IConstructor) _read("prod(lex(\"Comment\"),[lit(\"/*\"),\\iter-star(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})),lit(\"*/\")],{tag(\"category\"(\"Comment\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYXNUeXBlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsaXQoIlsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInR5cGUiLHNvcnQoIlR5cGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYXJndW1lbnQiLGNvbmRpdGlvbmFsKHNvcnQoIkV4cHJlc3Npb24iKSx7ZXhjZXB0KCJtYXRjaCIpLGV4Y2VwdCgibm9NYXRjaCIpfSkpXSx7fSk00 = (IConstructor) _read("prod(label(\"asType\",sort(\"Expression\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),lit(\"]\"),layouts(\"LAYOUTLIST\"),label(\"argument\",conditional(sort(\"Expression\"),{except(\"match\"),except(\"noMatch\")}))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3ludGF4Iixzb3J0KCJJbXBvcnQiKSksW2xhYmVsKCJzeW50YXgiLHNvcnQoIlN5bnRheERlZmluaXRpb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"syntax\",sort(\"Import\")),[label(\"syntax\",sort(\"SyntaxDefinition\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlRpbWVQYXJ0Tm9UWiIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJUaW1lUGFydE5vVFpcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiVGltZVBhcnROb1RaIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"TimePartNoTZ\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"TimePartNoTZ\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"TimePartNoTZ\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWN0dWFscyIsc29ydCgiSW1wb3J0ZWRNb2R1bGUiKSksW2xhYmVsKCJuYW1lIixzb3J0KCJRdWFsaWZpZWROYW1lIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYWN0dWFscyIsc29ydCgiTW9kdWxlQWN0dWFscyIpKV0se30p = (IConstructor) _read("prod(label(\"actuals\",sort(\"ImportedModule\")),[label(\"name\",sort(\"QualifiedName\")),layouts(\"LAYOUTLIST\"),label(\"actuals\",sort(\"ModuleActuals\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInZhbHVlIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTgsMTE4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKV0se30p = (IConstructor) _read("prod(lit(\"value\"),[\\char-class([range(118,118)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(117,117)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJJbXBvcnQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3Rhcihzb3J0KFwiSW1wb3J0XCIpKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3Rhci1zZXBzKHNvcnQoIkltcG9ydCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Import\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"Import\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(sort(\"Import\"),[layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYXNzZXJ0Iixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiYXNzZXJ0IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjsiKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"assert\",sort(\"Statement\")),[lit(\"assert\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJGdW5jdGlvbk1vZGlmaWVyIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkZ1bmN0aW9uTW9kaWZpZXJcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkZ1bmN0aW9uTW9kaWZpZXIiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"FunctionModifier\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"FunctionModifier\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"FunctionModifier\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkNvbmNyZXRlUGFydCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJDb25jcmV0ZVBhcnRcIikpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyKGxleCgiQ29uY3JldGVQYXJ0IikpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"ConcretePart\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"ConcretePart\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(lex(\"ConcretePart\"))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInF1aXQiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExMywxMTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"quit\"),[\\char-class([range(113,113)]),\\char-class([range(117,117)]),\\char-class([range(105,105)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
@@ -3384,6 +3386,8 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp = (IConstructor) _read("regular(\\iter-star(\\char-class([range(48,57)])))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDbGFzcyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJDbGFzc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiQ2xhc3MiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Class\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Class\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Class\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmlzaXQiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsYWJlbCIsc29ydCgiTGFiZWwiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ2aXNpdCIsc29ydCgiVmlzaXQiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"visit\",sort(\"Expression\")),[label(\"label\",sort(\"Label\")),layouts(\"LAYOUTLIST\"),label(\"visit\",sort(\"Visit\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYXNzZXJ0Iixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiYXNzZXJ0IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjsiKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"assert\",sort(\"Statement\")),[lit(\"assert\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgidHVwbGUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzMCIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"tuple\",sort(\"Expression\")),[lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"elements0\",\\iter-star-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYW50aSIsc29ydCgiUGF0dGVybiIpKSxbbGl0KCIhIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwYXR0ZXJuIixzb3J0KCJQYXR0ZXJuIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"anti\",sort(\"Pattern\")),[lit(\"!\"),layouts(\"LAYOUTLIST\"),label(\"pattern\",sort(\"Pattern\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3Vic2NyaXB0Iixzb3J0KCJBc3NpZ25hYmxlIikpLFtsYWJlbCgicmVjZWl2ZXIiLHNvcnQoIkFzc2lnbmFibGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiWyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3Vic2NyaXB0Iixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIl0iKV0se30p = (IConstructor) _read("prod(label(\"subscript\",sort(\"Assignable\")),[label(\"receiver\",sort(\"Assignable\")),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"subscript\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvbHZlIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTgsMTE4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"solve\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(118,118)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
@@ -3401,7 +3405,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiZnVuY3Rpb25EZWNsYXJhdGlvbiIsc29ydCgiU3RhdGVtZW50IikpLFtsYWJlbCgiZnVuY3Rpb25EZWNsYXJhdGlvbiIsc29ydCgiRnVuY3Rpb25EZWNsYXJhdGlvbiIpKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"functionDeclaration\",sort(\"Statement\")),[label(\"functionDeclaration\",sort(\"FunctionDeclaration\"))],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQcm90b2NvbFBhcnRcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"ProtocolPart\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJOYW1lZFJlZ0V4cFwiKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc4LDc4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODIsODIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjAsMTIwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"NamedRegExp\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(78,78)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgidHVwbGUiLHNvcnQoIlBhdHRlcm4iKSksW2xpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzIixcaXRlci1zZXBzKHNvcnQoIlBhdHRlcm4iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"tuple\",sort(\"Pattern\")),[lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"elements\",\\iter-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZGlmZmVyZW5jZSIsc29ydCgiQ2xhc3MiKSksW2xhYmVsKCJsaHMiLHNvcnQoIkNsYXNzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIi0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiQ2xhc3MiKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"difference\",sort(\"Class\")),[label(\"lhs\",sort(\"Class\")),layouts(\"LAYOUTLIST\"),lit(\"-\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Class\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibm9uZSIsXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50cyIsW3NvcnQoIkV4cHJlc3Npb24iKV0pKSxbXSx7fSk00 = (IConstructor) _read("prod(label(\"none\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Expression\")])),[],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50cyIsW3NvcnQoIkV4cHJlc3Npb24iKV0pKSxbbGFiZWwoIm9wdGlvbmFsQ29tbWEiLGxleCgiT3B0aW9uYWxDb21tYSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksY29uZGl0aW9uYWwobGFiZWwoImtleXdvcmRBcmd1bWVudExpc3QiLFxpdGVyLXNlcHMoXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50Iixbc29ydCgiRXhwcmVzc2lvbiIpXSksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkse3ByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDksMTApLHJhbmdlKDMyLDMyKSxyYW5nZSg0MCw0MCkscmFuZ2UoNDQsNDQpXSkpfSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Expression\")])),[label(\"optionalComma\",lex(\"OptionalComma\")),layouts(\"LAYOUTLIST\"),conditional(label(\"keywordArgumentList\",\\iter-seps(\\parameterized-sort(\"KeywordArgument\",[sort(\"Expression\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),{precede(\\char-class([range(9,10),range(32,32),range(40,40),range(44,44)]))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdGF0ZW1lbnQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3Rhcihzb3J0KFwiU3RhdGVtZW50XCIpKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlN0YXRlbWVudCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Statement\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"Statement\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
@@ -3417,14 +3421,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQYXR0ZXJuXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Pattern\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJEYXRhVGFyZ2V0XCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"DataTarget\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(68,68)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJUeXBlQXJnXCIpLFtsaXQoXCIsXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODQsODQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY1LDY1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"TypeArg\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(65,65)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicHJvZHVjdCIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImxocyIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIqIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGVtcHR5KCkse1xub3QtZm9sbG93KGxpdCgiKiIpKX0pLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixjb25kaXRpb25hbChzb3J0KCJFeHByZXNzaW9uIikse2V4Y2VwdCgibWF0Y2giKSxleGNlcHQoIm5vTWF0Y2giKX0pKV0se30p = (IConstructor) _read("prod(label(\"product\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"*\"),layouts(\"LAYOUTLIST\"),conditional(empty(),{\\not-follow(lit(\"*\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",conditional(sort(\"Expression\"),{except(\"match\"),except(\"noMatch\")}))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIml0IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"it\"),[\\char-class([range(105,105)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlw8XDwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDYwLDYwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se30p = (IConstructor) _read("prod(lit(\"\\<\\<\"),[\\char-class([range(60,60)]),\\char-class([range(60,60)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlByZVByb3RvY29sQ2hhcnMiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUHJlUHJvdG9jb2xDaGFyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJQcmVQcm90b2NvbENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PreProtocolChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PreProtocolChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PreProtocolChars\")))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoXHBhcmFtZXRlcml6ZWQtc29ydCgiTWFwcGluZyIsW3NvcnQoIkV4cHJlc3Npb24iKV0pLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-star-seps(\\parameterized-sort(\"Mapping\",[sort(\"Expression\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlN0cmluZ0NoYXJhY3RlciIpLFtsaXQoIlxcIiksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KSxyYW5nZSgzOSwzOSkscmFuZ2UoNjAsNjApLHJhbmdlKDYyLDYyKSxyYW5nZSg5Miw5MikscmFuZ2UoOTgsOTgpLHJhbmdlKDEwMiwxMDIpLHJhbmdlKDExMCwxMTApLHJhbmdlKDExNCwxMTQpLHJhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"StringCharacter\"),[lit(\"\\\\\"),\\char-class([range(34,34),range(39,39),range(60,60),range(62,62),range(92,92),range(98,98),range(102,102),range(110,110),range(114,114),range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJCb29sZWFuTGl0ZXJhbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Niw2NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDc2LDc2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"BooleanLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(66,66)]),\\char-class([range(111,111)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicHJvZHVjdCIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImxocyIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIqIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGVtcHR5KCkse1xub3QtZm9sbG93KGxpdCgiKiIpKX0pLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixjb25kaXRpb25hbChzb3J0KCJFeHByZXNzaW9uIikse2V4Y2VwdCgibWF0Y2giKSxleGNlcHQoIm5vTWF0Y2giKX0pKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"product\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"*\"),layouts(\"LAYOUTLIST\"),conditional(empty(),{\\not-follow(lit(\"*\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",conditional(sort(\"Expression\"),{except(\"match\"),except(\"noMatch\")}))],{assoc(left())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZGlmZmVyZW5jZSIsc29ydCgiQ2xhc3MiKSksW2xhYmVsKCJsaHMiLHNvcnQoIkNsYXNzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIi0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiQ2xhc3MiKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"difference\",sort(\"Class\")),[label(\"lhs\",sort(\"Class\")),layouts(\"LAYOUTLIST\"),lit(\"-\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Class\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImhhcyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"has\"),[\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(115,115)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY2xvc3VyZSIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoInR5cGUiLHNvcnQoIlR5cGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwYXJhbWV0ZXJzIixzb3J0KCJQYXJhbWV0ZXJzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoInsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN0YXRlbWVudHMiLFxpdGVyLXNlcHMoc29ydCgiU3RhdGVtZW50IiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ9IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"closure\",sort(\"Expression\")),[label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),label(\"parameters\",sort(\"Parameters\")),layouts(\"LAYOUTLIST\"),lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"statements\",\\iter-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImFzc2VydCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"assert\"),[\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
@@ -3432,11 +3435,12 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoMSw4KSxyYW5nZSgxMSwxMikscmFuZ2UoMTQsMzEpLHJhbmdlKDMzLDU5KSxyYW5nZSg2MSwxMjMpLHJhbmdlKDEyNSwxMTE0MTExKV0pKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTEsNTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTEsNTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MSw1MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-star(\\\\char-class([range(1,8),range(11,12),range(14,31),range(33,59),range(61,123),range(125,1114111)]))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(52,52)]),\\char-class([range(44,44)]),\\char-class([range(51,51)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(51,51)]),\\char-class([range(51,51)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(57,57)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm9wdChcXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"opt(\\\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))\"),[\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(54,54)]),\\char-class([range(56,56)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(55,55)]),\\char-class([range(48,48)]),\\char-class([range(44,44)]),\\char-class([range(55,55)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(48,48)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEyNCwxMjQpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"|\"),[\\char-class([range(124,124)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaW5zZXJ0Iixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiaW5zZXJ0IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkYXRhVGFyZ2V0Iixzb3J0KCJEYXRhVGFyZ2V0IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"insert\",sort(\"Statement\")),[lit(\"insert\"),layouts(\"LAYOUTLIST\"),label(\"dataTarget\",sort(\"DataTarget\")),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIm9wdChzZXEoW1xcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpXSkpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEzLDExMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"opt(seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))]))\"),[\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkJhY2tzbGFzaCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJCYWNrc2xhc2hcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiQmFja3NsYXNoIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"Backslash\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Backslash\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"Backslash\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImxpc3QiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"list\"),[\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(115,115)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdGFydCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJTdGFydFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiU3RhcnQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Start\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Start\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Start\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImFzc29jIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"assoc\"),[\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(99,99)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJEZWNsYXJhdG9yIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkRlY2xhcmF0b3JcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkRlY2xhcmF0b3IiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Declarator\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Declarator\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Declarator\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJRdWFsaWZpZWROYW1lXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgxLDgxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAyLDEwMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzgsNzgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"QualifiedName\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(81,81)]),\\char-class([range(117,117)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(78,78)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYXNzb2NpYXRpdml0eUdyb3VwIixzb3J0KCJQcm9kIikpLFtsYWJlbCgiYXNzb2NpYXRpdml0eSIsc29ydCgiQXNzb2MiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZ3JvdXAiLHNvcnQoIlByb2QiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpXSx7dGFnKCJGb2xkYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"associativityGroup\",sort(\"Prod\")),[label(\"associativity\",sort(\"Assoc\")),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"group\",sort(\"Prod\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{tag(\"Foldable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInRocm93IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTksMTE5KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"throw\"),[\\char-class([range(116,116)]),\\char-class([range(104,104)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(119,119)])],{})", RascalValueFactory.Production);
@@ -3457,8 +3461,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImFsaWFzIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"alias\"),[\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(97,97)]),\\char-class([range(115,115)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJmYWxzZSIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"false\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiUGFyYW1ldGVycyIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJmb3JtYWxzIixzb3J0KCJGb3JtYWxzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgia2V5d29yZEZvcm1hbHMiLHNvcnQoIktleXdvcmRGb3JtYWxzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se30p = (IConstructor) _read("prod(label(\"default\",sort(\"Parameters\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"formals\",sort(\"Formals\")),layouts(\"LAYOUTLIST\"),label(\"keywordFormals\",sort(\"KeywordFormals\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
- private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlBhdHRlcm4iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIm9wdChzZXEoW1xcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpXSkpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEzLDExMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"opt(seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))]))\"),[\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDYXRjaFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Catch\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp = (IConstructor) _read("regular(iter(\\char-class([range(48,57)])))", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiUmFuZ2UiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-star-seps(sort(\"Range\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
@@ -3467,9 +3469,12 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixhbHQoe3NlcShbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksbGV4KCJUYWdTdHJpbmciKSxcY2hhci1jbGFzcyhbcmFuZ2UoMSwxMjIpLHJhbmdlKDEyNCwxMjQpLHJhbmdlKDEyNiwxMTE0MTExKV0pfSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiYWx0KHtzZXEoW2xpdChcIlxcXFxcIiksXFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksc29ydChcIlRhZ1N0cmluZ1wiKSxcXGNoYXItY2xhc3MoW3JhbmdlKDEsMTIyKSxyYW5nZSgxMjQsMTI0KSxyYW5nZSgxMjYsMTExNDExMSldKX0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihhbHQoe3NlcShbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksbGV4KCJUYWdTdHJpbmciKSxcY2hhci1jbGFzcyhbcmFuZ2UoMSwxMjIpLHJhbmdlKDEyNCwxMjQpLHJhbmdlKDEyNiwxMTE0MTExKV0pfSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",alt({seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])]),lex(\"TagString\"),\\char-class([range(1,122),range(124,124),range(126,1114111)])})),[\\char-class([range(0,0)]),lit(\"alt({seq([lit(\\\"\\\\\\\\\\\"),\\\\char-class([range(123,123),range(125,125)])]),sort(\\\"TagString\\\"),\\\\char-class([range(1,122),range(124,124),range(126,1114111)])})\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(alt({seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])]),lex(\"TagString\"),\\char-class([range(1,122),range(124,124),range(126,1114111)])})))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2NvbmRpdGlvbmFsKGxpdCgiLiIpLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pKX0pLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpLHJhbmdlKDEwMSwxMDEpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MykscmFuZ2UoNDUsNDUpXSkpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"RealLiteral\"),[conditional(lit(\".\"),{\\not-precede(\\char-class([range(46,46)]))}),iter(\\char-class([range(48,57)])),\\char-class([range(69,69),range(101,101)]),opt(\\char-class([range(43,43),range(45,45)])),iter(\\char-class([range(48,57)])),opt(\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIml0ZXIoc29ydChcIkV2YWxDb21tYW5kXCIpKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOCwxMTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"iter(sort(\\\"EvalCommand\\\"))\"),[\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(69,69)]),\\char-class([range(118,118)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJEZWNsYXJhdG9yIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkRlY2xhcmF0b3JcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkRlY2xhcmF0b3IiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Declarator\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Declarator\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Declarator\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic2VxKFtcXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pLFxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",seq([conditional(\\char-class([range(65,90),range(95,95),range(97,122)]),{\\not-precede(\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])),[\\char-class([range(0,0)]),lit(\"seq([\\\\char-class([range(65,90),range(95,95),range(97,122)]),\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(seq([conditional(\\char-class([range(65,90),range(95,95),range(97,122)]),{\\not-precede(\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInR5cGUiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"type\"),[\\char-class([range(116,116)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkRhdGVBbmRUaW1lIiksW2xpdCgiJCIpLGxleCgiRGF0ZVBhcnQiKSxsaXQoIlQiKSxjb25kaXRpb25hbChsZXgoIlRpbWVQYXJ0Tm9UWiIpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDMsNDMpLHJhbmdlKDQ1LDQ1KV0pKX0pLGxpdCgiJCIpXSx7fSk00 = (IConstructor) _read("prod(lex(\"DateAndTime\"),[lit(\"$\"),lex(\"DatePart\"),lit(\"T\"),conditional(lex(\"TimePartNoTZ\"),{\\not-follow(\\char-class([range(43,43),range(45,45)]))}),lit(\"$\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW50ZXJzZWN0aW9uIixzb3J0KCJBc3NpZ25tZW50IikpLFtsaXQoIiY9IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"intersection\",sort(\"Assignment\")),[lit(\"&=\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJVc2VyVHlwZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJVc2VyVHlwZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiVXNlclR5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"UserType\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"UserType\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"UserType\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdHJpbmdUZW1wbGF0ZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJTdHJpbmdUZW1wbGF0ZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiU3RyaW5nVGVtcGxhdGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"StringTemplate\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"StringTemplate\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"StringTemplate\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxccGFyYW1ldGVyaXplZC1zb3J0KFwiS2V5d29yZEFyZ3VtZW50XCIsW3NvcnQoXCJQYXR0ZXJuXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMiwxMjIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc1LDc1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTksMTE5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw2NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\parameterized-sort(\\\"KeywordArgument\\\",[sort(\\\"Pattern\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(112,112)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(122,122)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(75,75)]),\\char-class([range(101,101)]),\\char-class([range(121,121)]),\\char-class([range(119,119)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(100,100)]),\\char-class([range(65,65)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(117,117)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJCYXNpY1R5cGUiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiQmFzaWNUeXBlXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJCYXNpY1R5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"BasicType\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"BasicType\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"BasicType\")))})", RascalValueFactory.Production);
@@ -3479,8 +3484,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUb3BsZXZlbCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJUb3BsZXZlbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiVG9wbGV2ZWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Toplevel\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Toplevel\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Toplevel\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3RhcnRPZkxpbmUiLHNvcnQoIlN5bSIpKSxbbGl0KCJeIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKV0se30p = (IConstructor) _read("prod(label(\"startOfLine\",sort(\"Sym\")),[lit(\"^\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInR1cGxlIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"tuple\"),[\\char-class([range(116,116)]),\\char-class([range(117,117)]),\\char-class([range(112,112)]),\\char-class([range(108,108)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicmVzdWx0T3V0cHV0IixsZXgoIk91dHB1dCIpKSxbbGl0KCLih6giKSxcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSgxLDkpLHJhbmdlKDExLDEyKSxyYW5nZSgxNCwxMTE0MTExKV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAsMTApXSldLHt0YWcoImNhdGVnb3J5IigiUmVzdWx0IikpfSk00 = (IConstructor) _read("prod(label(\"resultOutput\",lex(\"Output\")),[lit(\"⇨\"),\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])),\\char-class([range(10,10)])],{tag(\"category\"(\"Result\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJVc2VyVHlwZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJVc2VyVHlwZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiVXNlclR5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"UserType\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"UserType\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"UserType\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcXDwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\\\<\"),[\\char-class([range(92,92)]),\\char-class([range(60,60)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIk5vbnRlcm1pbmFsIiksW2NvbmRpdGlvbmFsKHNlcShbY29uZGl0aW9uYWwoXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKV0pLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKV0pKX0pLGNvbmRpdGlvbmFsKFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpfSldKSx7ZGVsZXRlKGtleXdvcmRzKCJSYXNjYWxLZXl3b3JkcyIpKX0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"Nonterminal\"),[conditional(seq([conditional(\\char-class([range(65,90)]),{\\not-precede(\\char-class([range(65,90)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})]),{delete(keywords(\"RascalKeywords\"))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInN3aXRjaCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE5LDExOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"switch\"),[\\char-class([range(115,115)]),\\char-class([range(119,119)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(99,99)]),\\char-class([range(104,104)])],{})", RascalValueFactory.Production);
@@ -3510,12 +3513,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNlcShbXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEzLDExMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlByZVBhdGhDaGFycyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJQcmVQYXRoQ2hhcnNcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiUHJlUGF0aENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PrePathChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PrePathChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PrePathChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdFN0cmF0ZWd5Iixzb3J0KCJWaXNpdCIpKSxbbGl0KCJ2aXNpdCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN1YmplY3QiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoInsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImNhc2VzIixcaXRlci1zZXBzKHNvcnQoIkNhc2UiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIn0iKV0se30p = (IConstructor) _read("prod(label(\"defaultStrategy\",sort(\"Visit\")),[lit(\"visit\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"subject\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"cases\",\\iter-seps(sort(\"Case\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKGFsdCh7Y29uZGl0aW9uYWwoXFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XFxub3QtZm9sbG93KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDcsNDcpXSkpfSksXFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIzLDEyMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDIsMTAyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTksMTE5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(alt({conditional(\\\\char-class([range(42,42)]),{\\\\not-follow(\\\\char-class([range(47,47)]))}),\\\\char-class([range(1,41),range(43,1114111)])}))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(123,123)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(45,45)]),\\char-class([range(102,102)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(108,108)]),\\char-class([range(111,111)]),\\char-class([range(119,119)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(51,51)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYnMiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcXFwiKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"bs\",lex(\"ConcretePart\")),[lit(\"\\\\\\\\\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlN5bSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSk00 = (IConstructor) _read("regular(\\iter-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicHJlc2VudCIsc29ydCgiU3RhcnQiKSksW2xpdCgic3RhcnQiKV0se30p = (IConstructor) _read("prod(label(\"present\",sort(\"Start\")),[lit(\"start\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJGb3JtYWxzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkZvcm1hbHNcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkZvcm1hbHMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Formals\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Formals\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Formals\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaXRlclNlcCIsc29ydCgiU3ltIikpLFtsaXQoInsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN5bWJvbCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic2VwIixzb3J0KCJTeW0iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIisiKV0se30p = (IConstructor) _read("prod(label(\"iterSep\",sort(\"Sym\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),label(\"sep\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"}\"),layouts(\"LAYOUTLIST\"),lit(\"+\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQYXJhbWV0ZXJzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Parameters\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgidGV4dCIsbGV4KCJDb25jcmV0ZVBhcnQiKSksW2NvbmRpdGlvbmFsKGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsNTkpLHJhbmdlKDYxLDYxKSxyYW5nZSg2Myw5MSkscmFuZ2UoOTMsOTUpLHJhbmdlKDk3LDExMTQxMTEpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSw1OSkscmFuZ2UoNjEsNjEpLHJhbmdlKDYzLDkxKSxyYW5nZSg5Myw5NSkscmFuZ2UoOTcsMTExNDExMSldKSl9KV0se3RhZygiY2F0ZWdvcnkiKCJNZXRhU2tpcHBlZCIpKX0p = (IConstructor) _read("prod(label(\"text\",lex(\"ConcretePart\")),[conditional(iter(\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)])),{\\not-follow(\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)]))})],{tag(\"category\"(\"MetaSkipped\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoImNsZWFyIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"clear\"),[\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(114,114)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIj09XD4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDYxLDYxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2MSw2MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjIsNjIpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"==\\>\"),[\\char-class([range(61,61)]),\\char-class([range(61,61)]),\\char-class([range(62,62)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3BsaWNlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsaXQoIioiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImFyZ3VtZW50Iixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"splice\",sort(\"Expression\")),[lit(\"*\"),layouts(\"LAYOUTLIST\"),label(\"argument\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJsZXhpY2FsIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"lexical\")],{})", RascalValueFactory.Production);
@@ -3525,25 +3529,21 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJIZXhJbnRlZ2VyTGl0ZXJhbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Miw3MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIwLDEyMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzMsNzMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc2LDc2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"HexIntegerLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(72,72)]),\\char-class([range(101,101)]),\\char-class([range(120,120)]),\\char-class([range(73,73)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUeXBlXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Type\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInRhZyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"tag\"),[\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(103,103)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYXBwZW5kIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiYXBwZW5kIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkYXRhVGFyZ2V0Iixzb3J0KCJEYXRhVGFyZ2V0IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHthc3NvYyhcbm9uLWFzc29jKCkpLHRhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"append\",sort(\"Statement\")),[lit(\"append\"),layouts(\"LAYOUTLIST\"),label(\"dataTarget\",sort(\"DataTarget\")),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{assoc(\\non-assoc()),tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgia2V5d29yZCIsc29ydCgiU3ludGF4RGVmaW5pdGlvbiIpKSxbbGl0KCJrZXl3b3JkIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkZWZpbmVkIixzb3J0KCJTeW0iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicHJvZHVjdGlvbiIsc29ydCgiUHJvZCIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt0YWcoIkZvbGRhYmxlIigpKX0p = (IConstructor) _read("prod(label(\"keyword\",sort(\"SyntaxDefinition\")),[lit(\"keyword\"),layouts(\"LAYOUTLIST\"),label(\"defined\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"production\",sort(\"Prod\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"Foldable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgid2hpbGUiLHNvcnQoIlN0cmluZ1RlbXBsYXRlIikpLFtsaXQoIndoaWxlIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY29uZGl0aW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ7IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwcmVTdGF0cyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlN0YXRlbWVudCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJib2R5Iixzb3J0KCJTdHJpbmdNaWRkbGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwb3N0U3RhdHMiLFxpdGVyLXN0YXItc2Vwcyhzb3J0KCJTdGF0ZW1lbnQiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIn0iKV0se30p = (IConstructor) _read("prod(label(\"while\",sort(\"StringTemplate\")),[lit(\"while\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"condition\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"preStats\",\\iter-star-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"StringMiddle\")),layouts(\"LAYOUTLIST\"),label(\"postStats\",\\iter-star-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY2FsbE9yVHJlZSIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImV4cHJlc3Npb24iLGNvbmRpdGlvbmFsKHNvcnQoIkV4cHJlc3Npb24iKSx7ZXhjZXB0KCJpc0RlZmluZWQiKSxleGNlcHQoInRyYW5zaXRpdmVDbG9zdXJlIiksZXhjZXB0KCJ0cmFuc2l0aXZlUmVmbGV4aXZlQ2xvc3VyZSIpfSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImFyZ3VtZW50cyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImtleXdvcmRBcmd1bWVudHMiLFxwYXJhbWV0ZXJpemVkLXNvcnQoIktleXdvcmRBcmd1bWVudHMiLFtzb3J0KCJFeHByZXNzaW9uIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"callOrTree\",sort(\"Expression\")),[label(\"expression\",conditional(sort(\"Expression\"),{except(\"isDefined\"),except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")})),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"arguments\",\\iter-star-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"keywordArguments\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Expression\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ2YWx1ZSIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"value\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaW5zZXJ0QmVmb3JlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw11XD4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"insertBefore\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZW1wdHkiLHNvcnQoIkJvdW5kIikpLFtdLHt9KQ0000 = (IConstructor) _read("prod(label(\"empty\",sort(\"Bound\")),[],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlVmFyIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlR5cGVWYXJcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlR5cGVWYXIiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"TypeVar\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"TypeVar\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"TypeVar\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpLHJhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3RhcihcXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KSxyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSkscmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(45,45),range(48,57),range(65,90),range(95,95),range(97,122)])),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(\\\\char-class([range(45,45),range(48,57),range(65,90),range(95,95),range(97,122)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(\\char-class([range(45,45),range(48,57),range(65,90),range(95,95),range(97,122)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkRhdGVQYXJ0IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"DatePart\"),[\\char-class([range(48,57)]),\\char-class([range(48,57)]),\\char-class([range(48,57)]),\\char-class([range(48,57)]),\\char-class([range(48,49)]),\\char-class([range(48,57)]),\\char-class([range(48,51)]),\\char-class([range(48,57)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaW5zZXJ0QmVmb3JlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw11XD4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"insertBefore\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaXRlclNlcCIsc29ydCgiU3ltIikpLFtsaXQoInsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN5bWJvbCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic2VwIixzb3J0KCJTeW0iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIisiKV0se30p = (IConstructor) _read("prod(label(\"iterSep\",sort(\"Sym\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),label(\"sep\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"}\"),layouts(\"LAYOUTLIST\"),lit(\"+\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJGb3JtYWxzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDcwLDcwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Formals\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChzdGFydChzb3J0KCJFdmFsQ29tbWFuZCIpKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0b3AiLHNvcnQoIkV2YWxDb21tYW5kIikpLGxheW91dHMoIkxBWU9VVExJU1QiKV0se30p = (IConstructor) _read("prod(start(sort(\"EvalCommand\")),[layouts(\"LAYOUTLIST\"),label(\"top\",sort(\"EvalCommand\")),layouts(\"LAYOUTLIST\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDYXRjaCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJDYXRjaFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiQ2F0Y2giKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Catch\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Catch\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Catch\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTaWduYXR1cmVcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODMsODMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Signature\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(105,105)]),\\char-class([range(103,103)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(117,117)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidHVwbGUiLHNvcnQoIkFzc2lnbmFibGUiKSksW2xpdCgiXDwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzIixcaXRlci1zZXBzKHNvcnQoIkFzc2lnbmFibGUiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"tuple\",sort(\"Assignable\")),[lit(\"\\<\"),layouts(\"LAYOUTLIST\"),label(\"elements\",\\iter-seps(sort(\"Assignable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaWZEZWZpbmVkT3RoZXJ3aXNlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj8iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKFxub24tYXNzb2MoKSl9KQ0000 = (IConstructor) _read("prod(label(\"ifDefinedOtherwise\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"?\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIlBvc3RTdHJpbmdDaGFycyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNjIsNjIpXSksXGl0ZXItc3RhcihsZXgoIlN0cmluZ0NoYXJhY3RlciIpKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSldLHt0YWcoImNhdGVnb3J5IigiQ29uc3RhbnQiKSl9KQ0000 = (IConstructor) _read("prod(lex(\"PostStringChars\"),[\\char-class([range(62,62)]),\\iter-star(lex(\"StringCharacter\")),\\char-class([range(34,34)])],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoImNsZWFyIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"clear\"),[\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(114,114)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsNzApLHJhbmdlKDk3LDEwMildKSkp = (IConstructor) _read("regular(iter(\\char-class([range(48,57),range(65,70),range(97,102)])))", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihvcHQoc2VxKFtcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpLHJhbmdlKDQ2LDQ2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoc2VxKFtcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSldKSkp = (IConstructor) _read("regular(opt(seq([\\char-class([range(44,44),range(46,46)]),\\char-class([range(48,57)]),opt(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))])))", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJtYXAiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"map\")],{})", RascalValueFactory.Production);
@@ -3551,23 +3551,30 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgidGFnIixzb3J0KCJLaW5kIikpLFtsaXQoInRhZyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"tag\",sort(\"Kind\")),[lit(\"tag\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJEYXRlVGltZUxpdGVyYWwiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiRGF0ZVRpbWVMaXRlcmFsXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJEYXRlVGltZUxpdGVyYWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"DateTimeLiteral\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"DateTimeLiteral\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"DateTimeLiteral\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGFuZ3VhZ2UiLHNvcnQoIlN5bnRheERlZmluaXRpb24iKSksW2xhYmVsKCJzdGFydCIsc29ydCgiU3RhcnQiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgic3ludGF4IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkZWZpbmVkIixzb3J0KCJTeW0iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicHJvZHVjdGlvbiIsc29ydCgiUHJvZCIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt0YWcoIkZvbGRhYmxlIigpKX0p = (IConstructor) _read("prod(label(\"language\",sort(\"SyntaxDefinition\")),[label(\"start\",sort(\"Start\")),layouts(\"LAYOUTLIST\"),lit(\"syntax\"),layouts(\"LAYOUTLIST\"),label(\"defined\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"production\",sort(\"Prod\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"Foldable\"())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIlJlZ0V4cCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMSw0NikscmFuZ2UoNDgsNTkpLHJhbmdlKDYxLDYxKSxyYW5nZSg2Myw5MSkscmFuZ2UoOTMsMTExNDExMSldKV0se30p = (IConstructor) _read("prod(lex(\"RegExp\"),[\\char-class([range(1,46),range(48,59),range(61,61),range(63,91),range(93,1114111)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicmVnRXhwIixzb3J0KCJMaXRlcmFsIikpLFtsYWJlbCgicmVnRXhwTGl0ZXJhbCIsbGV4KCJSZWdFeHBMaXRlcmFsIikpXSx7dGFnKCJjYXRlZ29yeSIoInJlZ2V4cCIpKX0p = (IConstructor) _read("prod(label(\"regExp\",sort(\"Literal\")),[label(\"regExpLiteral\",lex(\"RegExpLiteral\"))],{tag(\"category\"(\"regexp\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUYWdTdHJpbmdcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODQsODQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"TagString\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(103,103)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoOSw5KSxyYW5nZSgzMiwzMikscmFuZ2UoMTYwLDE2MCkscmFuZ2UoNTc2MCw1NzYwKSxyYW5nZSg4MTkyLDgyMDIpLHJhbmdlKDgyMzksODIzOSkscmFuZ2UoODI4Nyw4Mjg3KSxyYW5nZSgxMjI4OCwxMjI4OCldKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTEsNTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-star(\\\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)]))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(51,51)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(51,51)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(56,56)]),\\char-class([range(49,49)]),\\char-class([range(57,57)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(48,48)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(57,57)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(57,57)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(56,56)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm9uRW1wdHlCbG9jayIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGl0KCJ7IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzdGF0ZW1lbnRzIixcaXRlci1zZXBzKHNvcnQoIlN0YXRlbWVudCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"nonEmptyBlock\",sort(\"Expression\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"statements\",\\iter-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiS2V5d29yZEZvcm1hbHMiKSksW2xhYmVsKCJvcHRpb25hbENvbW1hIixsZXgoIk9wdGlvbmFsQ29tbWEiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxhYmVsKCJrZXl3b3JkRm9ybWFsTGlzdCIsXGl0ZXItc2Vwcyhzb3J0KCJLZXl3b3JkRm9ybWFsIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkse3ByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDksMTApLHJhbmdlKDMyLDMyKSxyYW5nZSg0MCw0MCkscmFuZ2UoNDQsNDQpXSkpfSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",sort(\"KeywordFormals\")),[label(\"optionalComma\",lex(\"OptionalComma\")),layouts(\"LAYOUTLIST\"),conditional(label(\"keywordFormalList\",\\iter-seps(sort(\"KeywordFormal\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),{precede(\\char-class([range(9,10),range(32,32),range(40,40),range(44,44)]))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidm9pZCIsc29ydCgiQmFzaWNUeXBlIikpLFtsaXQoInZvaWQiKV0se30p = (IConstructor) _read("prod(label(\"void\",sort(\"BasicType\")),[lit(\"void\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInJpZ2h0IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"right\"),[\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(103,103)]),\\char-class([range(104,104)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYXNzaWdubWVudCIsc29ydCgiU3RhdGVtZW50IikpLFtsYWJlbCgiYXNzaWduYWJsZSIsc29ydCgiQXNzaWduYWJsZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm9wZXJhdG9yIixzb3J0KCJBc3NpZ25tZW50IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"assignment\",sort(\"Statement\")),[label(\"assignable\",sort(\"Assignable\")),layouts(\"LAYOUTLIST\"),label(\"operator\",sort(\"Assignment\")),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlByZVN0cmluZ0NoYXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlByZVN0cmluZ0NoYXJzXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlByZVN0cmluZ0NoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PreStringChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PreStringChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PreStringChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmFyaWFibGUiLHNvcnQoIlR5cGUiKSksW2xhYmVsKCJ0eXBlVmFyIixzb3J0KCJUeXBlVmFyIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"variable\",sort(\"Type\")),[label(\"typeVar\",sort(\"TypeVar\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicmVtYWluZGVyIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiUiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"remainder\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"%\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicGFyYW1ldHJpemVkIixzb3J0KCJTeW0iKSksW2NvbmRpdGlvbmFsKGxhYmVsKCJub250ZXJtaW5hbCIsbGV4KCJOb250ZXJtaW5hbCIpKSx7Zm9sbG93KGxpdCgiWyIpKX0pLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInBhcmFtZXRlcnMiLFxpdGVyLXNlcHMoc29ydCgiU3ltIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"parametrized\",sort(\"Sym\")),[conditional(label(\"nonterminal\",lex(\"Nonterminal\")),{follow(lit(\"[\"))}),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"parameters\",\\iter-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcYCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk2LDk2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\`\"),[\\char-class([range(92,92)]),\\char-class([range(96,96)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYXBwZW5kQWZ0ZXIiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxpdCgiXDxcPCIpLHtcbm90LWZvbGxvdyhsaXQoIj0iKSl9KSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"appendAfter\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"\\<\\<\"),{\\not-follow(lit(\"=\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJGaWVsZCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJGaWVsZFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiRmllbGQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Field\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Field\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Field\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgic3VidHJhY3Rpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLGNvbmRpdGlvbmFsKHNvcnQoIkV4cHJlc3Npb24iKSx7ZXhjZXB0KCJ0cmFuc2l0aXZlQ2xvc3VyZSIpLGV4Y2VwdCgidHJhbnNpdGl2ZVJlZmxleGl2ZUNsb3N1cmUiKX0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCItIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"subtraction\",sort(\"Expression\")),[label(\"lhs\",conditional(sort(\"Expression\"),{except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")})),layouts(\"LAYOUTLIST\"),lit(\"-\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImRlY2xhcmF0aW9ucyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKV0se30p = (IConstructor) _read("prod(lit(\"declarations\"),[\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(115,115)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidG9wRG93biIsc29ydCgiU3RyYXRlZ3kiKSksW2xpdCgidG9wLWRvd24iKV0se30p = (IConstructor) _read("prod(label(\"topDown\",sort(\"Strategy\")),[lit(\"top-down\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiaW4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"in\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"in\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIlJlZ0V4cCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMSw0NikscmFuZ2UoNDgsNTkpLHJhbmdlKDYxLDYxKSxyYW5nZSg2Myw5MSkscmFuZ2UoOTMsMTExNDExMSldKV0se30p = (IConstructor) _read("prod(lex(\"RegExp\"),[\\char-class([range(1,46),range(48,59),range(61,61),range(63,91),range(93,1114111)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImNhdGNoIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"catch\"),[\\char-class([range(99,99)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(99,99)]),\\char-class([range(104,104)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJMQVlPVVRcIikpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Niw3NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjUsNjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg5LDg5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3OSw3OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODUsODUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"LAYOUT\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(76,76)]),\\char-class([range(65,65)]),\\char-class([range(89,89)]),\\char-class([range(79,79)]),\\char-class([range(85,85)]),\\char-class([range(84,84)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiSW1wb3J0IikpLFtsaXQoImltcG9ydCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibW9kdWxlIixzb3J0KCJJbXBvcnRlZE1vZHVsZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",sort(\"Import\")),[lit(\"import\"),layouts(\"LAYOUTLIST\"),label(\"module\",sort(\"ImportedModule\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUYWdTdHJpbmdcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODQsODQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"TagString\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(103,103)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgic3VidHJhY3Rpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLGNvbmRpdGlvbmFsKHNvcnQoIkV4cHJlc3Npb24iKSx7ZXhjZXB0KCJ0cmFuc2l0aXZlQ2xvc3VyZSIpLGV4Y2VwdCgidHJhbnNpdGl2ZVJlZmxleGl2ZUNsb3N1cmUiKX0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCItIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"subtraction\",sort(\"Expression\")),[label(\"lhs\",conditional(sort(\"Expression\"),{except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")})),layouts(\"LAYOUTLIST\"),lit(\"-\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKGFsdCh7XFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSxcXGNoYXItY2xhc3MoW3JhbmdlKDEsNDEpLHJhbmdlKDQzLDExMTQxMTEpXSl9KSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTEsNTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTI1LDEyNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-star(alt({\\\\char-class([range(42,42)]),\\\\char-class([range(1,41),range(43,1114111)])}))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(51,51)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlZ0V4cE1vZGlmaWVyIiksW1xpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApLHJhbmdlKDEwNSwxMDUpLHJhbmdlKDEwOSwxMDkpLHJhbmdlKDExNSwxMTUpXSkpXSx7fSk00 = (IConstructor) _read("prod(lex(\"RegExpModifier\"),[\\iter-star(\\char-class([range(100,100),range(105,105),range(109,109),range(115,115)]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUeXBlQXJnXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw2NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"TypeArg\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(65,65)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdHJ1Y3R1cmVkVHlwZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJTdHJ1Y3R1cmVkVHlwZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiU3RydWN0dXJlZFR5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"StructuredType\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"StructuredType\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"StructuredType\")))})", RascalValueFactory.Production);
@@ -3576,14 +3583,8 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ2aXNpdCIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"visit\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGl0ZXJhbCIsc29ydCgiUGF0dGVybiIpKSxbbGFiZWwoImxpdGVyYWwiLHNvcnQoIkxpdGVyYWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"literal\",sort(\"Pattern\")),[label(\"literal\",sort(\"Literal\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJhdGlvbmFsTGl0ZXJhbCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"RationalLiteral\"),[\\char-class([range(48,57)]),\\iter-star(\\char-class([range(48,57)])),\\char-class([range(114,114)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJQYXR0ZXJuXCIpLFtsaXQoXCIsXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"Pattern\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoOSw5KSxyYW5nZSgzMiwzMikscmFuZ2UoMTYwLDE2MCkscmFuZ2UoNTc2MCw1NzYwKSxyYW5nZSg4MTkyLDgyMDIpLHJhbmdlKDgyMzksODIzOSkscmFuZ2UoODI4Nyw4Mjg3KSxyYW5nZSgxMjI4OCwxMjI4OCldKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTEsNTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-star(\\\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)]))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(51,51)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(51,51)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(54,54)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(56,56)]),\\char-class([range(49,49)]),\\char-class([range(57,57)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(48,48)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(57,57)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(57,57)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(56,56)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(56,56)]),\\char-class([range(56,56)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicmVtYWluZGVyIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiUiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"remainder\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"%\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZnVuY3Rpb24iLHNvcnQoIktpbmQiKSksW2xpdCgiZnVuY3Rpb24iKV0se30p = (IConstructor) _read("prod(label(\"function\",sort(\"Kind\")),[lit(\"function\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKQ0000 = (IConstructor) _read("regular(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm9uRW1wdHlCbG9jayIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGl0KCJ7IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzdGF0ZW1lbnRzIixcaXRlci1zZXBzKHNvcnQoIlN0YXRlbWVudCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"nonEmptyBlock\",sort(\"Expression\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"statements\",\\iter-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYXBwZW5kQWZ0ZXIiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxpdCgiXDxcPCIpLHtcbm90LWZvbGxvdyhsaXQoIj0iKSl9KSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"appendAfter\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"\\<\\<\"),{\\not-follow(lit(\"=\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibGVzc1RoYW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxpdCgiXDwiKSx7XG5vdC1mb2xsb3cobGl0KCItIikpfSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhcbm9uLWFzc29jKCkpfSk00 = (IConstructor) _read("prod(label(\"lessThan\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"\\<\"),{\\not-follow(lit(\"-\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRnVuY3Rpb25EZWNsYXJhdGlvbiIpKSxbbGFiZWwoInRhZ3MiLHNvcnQoIlRhZ3MiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ2aXNpYmlsaXR5Iixzb3J0KCJWaXNpYmlsaXR5IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic2lnbmF0dXJlIixzb3J0KCJTaWduYXR1cmUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt0YWcoIkZvbGRhYmxlIigpKSx0YWcoImJyZWFrYWJsZSIoIntleHByZXNzaW9ufSIpKX0p = (IConstructor) _read("prod(label(\"expression\",sort(\"FunctionDeclaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),label(\"signature\",sort(\"Signature\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"Foldable\"()),tag(\"breakable\"(\"{expression}\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGl0ZXJhbCIsc29ydCgiU3ltIikpLFtsYWJlbCgic3RyaW5nIixsZXgoIlN0cmluZ0NvbnN0YW50IikpXSx7fSk00 = (IConstructor) _read("prod(label(\"literal\",sort(\"Sym\")),[label(\"string\",lex(\"StringConstant\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWxpYXMiLHNvcnQoIkRlY2xhcmF0aW9uIikpLFtsYWJlbCgidGFncyIsc29ydCgiVGFncyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInZpc2liaWxpdHkiLHNvcnQoIlZpc2liaWxpdHkiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiYWxpYXMiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInVzZXIiLHNvcnQoIlVzZXJUeXBlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImJhc2UiLHNvcnQoIlR5cGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"alias\",sort(\"Declaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),lit(\"alias\"),layouts(\"LAYOUTLIST\"),label(\"user\",sort(\"UserType\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"base\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
@@ -3609,6 +3610,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUYWdzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Tags\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(103,103)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlJlYWxMaXRlcmFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlJlYWxMaXRlcmFsXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlJlYWxMaXRlcmFsIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"RealLiteral\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"RealLiteral\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"RealLiteral\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImAiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk2LDk2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"`\"),[\\char-class([range(96,96)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiVGFnIikpLFtsaXQoIkAiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLGxleCgiTmFtZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImNvbnRlbnRzIixsZXgoIlRhZ1N0cmluZyIpKV0se3RhZygiRm9sZGVkIigpKSx0YWcoImNhdGVnb3J5IigiY29tbWVudCIpKX0p = (IConstructor) _read("prod(label(\"default\",sort(\"Tag\")),[lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),label(\"contents\",lex(\"TagString\"))],{tag(\"Folded\"()),tag(\"category\"(\"comment\"))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSgxLDkpLHJhbmdlKDExLDEyKSxyYW5nZSgxNCwxMTE0MTExKV0pKSk00 = (IConstructor) _read("regular(\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJDb25jcmV0ZVBhcnRcIikpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"ConcretePart\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlBvc3RTdHJpbmdDaGFycyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJQb3N0U3RyaW5nQ2hhcnNcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiUG9zdFN0cmluZ0NoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PostStringChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PostStringChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PostStringChars\")))})", RascalValueFactory.Production);
@@ -3619,6 +3621,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiYmluZGluZyIsc29ydCgiQ2F0Y2giKSksW2xpdCgiY2F0Y2giKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYm9keSIsc29ydCgiU3RhdGVtZW50IikpXSx7fSk00 = (IConstructor) _read("prod(label(\"binding\",sort(\"Catch\")),[lit(\"catch\"),layouts(\"LAYOUTLIST\"),label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"Statement\"))],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSkscmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSk00 = (IConstructor) _read("regular(\\iter-star(\\char-class([range(45,45),range(48,57),range(65,90),range(95,95),range(97,122)])))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJFeHByZXNzaW9uIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIkV4cHJlc3Npb25cIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJFeHByZXNzaW9uIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Expression\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Expression\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIkNvbW1lbnQiKSxbbGl0KCIvLyIpLGNvbmRpdGlvbmFsKFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsMTExNDExMSldKSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg5LDkpLHJhbmdlKDEzLDEzKSxyYW5nZSgzMiwzMikscmFuZ2UoMTYwLDE2MCkscmFuZ2UoNTc2MCw1NzYwKSxyYW5nZSg4MTkyLDgyMDIpLHJhbmdlKDgyMzksODIzOSkscmFuZ2UoODI4Nyw4Mjg3KSxyYW5nZSgxMjI4OCwxMjI4OCldKSksXGVuZC1vZi1saW5lKCl9KV0se3RhZygiY2F0ZWdvcnkiKCJjb21tZW50IikpfSk00 = (IConstructor) _read("prod(lex(\"Comment\"),[lit(\"//\"),conditional(\\iter-star(\\char-class([range(1,9),range(11,1114111)])),{\\not-follow(\\char-class([range(9,9),range(13,13),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)])),\\end-of-line()})],{tag(\"category\"(\"comment\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJGdW5jdGlvbk1vZGlmaWVyXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDcwLDcwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzcsNzcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMiwxMDIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"FunctionModifier\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZ2l2ZW5WaXNpYmlsaXR5Iixzb3J0KCJUb3BsZXZlbCIpKSxbbGFiZWwoImRlY2xhcmF0aW9uIixzb3J0KCJEZWNsYXJhdGlvbiIpKV0se30p = (IConstructor) _read("prod(label(\"givenVisibility\",sort(\"Toplevel\")),[label(\"declaration\",sort(\"Declaration\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidGVtcGxhdGUiLHNvcnQoIlN0cmluZ01pZGRsZSIpKSxbbGFiZWwoIm1pZCIsbGV4KCJNaWRTdHJpbmdDaGFycyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInRlbXBsYXRlIixzb3J0KCJTdHJpbmdUZW1wbGF0ZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInRhaWwiLHNvcnQoIlN0cmluZ01pZGRsZSIpKV0se30p = (IConstructor) _read("prod(label(\"template\",sort(\"StringMiddle\")),[label(\"mid\",lex(\"MidStringChars\")),layouts(\"LAYOUTLIST\"),label(\"template\",sort(\"StringTemplate\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"StringMiddle\"))],{})", RascalValueFactory.Production);
@@ -3628,11 +3631,11 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJwcml2YXRlIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"private\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDb21wcmVoZW5zaW9uXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Comprehension\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(104,104)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJNaWRTdHJpbmdDaGFyc1wiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Nyw3NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODMsODMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"MidStringChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(105,105)]),\\char-class([range(100,100)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNlcShbXFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSxcXGl0ZXItc3RhcihcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSldKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEzLDExMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"seq([\\\\char-class([range(65,90)]),\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIjsiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDU5LDU5KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\";\"),[\\char-class([range(59,59)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIndoaWxlIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTksMTE5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"while\"),[\\char-class([range(119,119)]),\\char-class([range(104,104)]),\\char-class([range(105,105)]),\\char-class([range(108,108)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUYXJnZXQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiVGFyZ2V0XCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJUYXJnZXQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Target\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Target\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Target\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZW1wdHkiLHNvcnQoIlRhcmdldCIpKSxbXSx7fSk00 = (IConstructor) _read("prod(label(\"empty\",sort(\"Target\")),[],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaW1wbGljYXRpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPT1cPiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"implication\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"==\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUYXJnZXRcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODQsODQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Target\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJyZWFsIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"real\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImJhZyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"bag\"),[\\char-class([range(98,98)]),\\char-class([range(97,97)]),\\char-class([range(103,103)])],{})", RascalValueFactory.Production);
@@ -3646,6 +3649,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiYmFzaWMiLHNvcnQoIlR5cGUiKSksW2xhYmVsKCJiYXNpYyIsc29ydCgiQmFzaWNUeXBlIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"basic\",sort(\"Type\")),[label(\"basic\",sort(\"BasicType\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlJlZ0V4cCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJSZWdFeHBcIikpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyKGxleCgiUmVnRXhwIikpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"RegExp\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"RegExp\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(lex(\"RegExp\"))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW50ZXJwb2xhdGVkIixzb3J0KCJTdHJpbmdMaXRlcmFsIikpLFtsYWJlbCgicHJlIixsZXgoIlByZVN0cmluZ0NoYXJzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInRhaWwiLHNvcnQoIlN0cmluZ1RhaWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"interpolated\",sort(\"StringLiteral\")),[label(\"pre\",lex(\"PreStringChars\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"StringTail\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm90UHJlY2VkZSIsc29ydCgiU3ltIikpLFtsYWJlbCgibWF0Y2giLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIhXDxcPCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3ltYm9sIixzb3J0KCJTeW0iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"notPrecede\",sort(\"Sym\")),[label(\"match\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"!\\<\\<\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGF0YUFic3RyYWN0Iixzb3J0KCJEZWNsYXJhdGlvbiIpKSxbbGFiZWwoInRhZ3MiLHNvcnQoIlRhZ3MiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ2aXNpYmlsaXR5Iixzb3J0KCJWaXNpYmlsaXR5IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImRhdGEiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInVzZXIiLHNvcnQoIlVzZXJUeXBlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY29tbW9uS2V5d29yZFBhcmFtZXRlcnMiLHNvcnQoIkNvbW1vbktleXdvcmRQYXJhbWV0ZXJzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjsiKV0se30p = (IConstructor) _read("prod(label(\"dataAbstract\",sort(\"Declaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),lit(\"data\"),layouts(\"LAYOUTLIST\"),label(\"user\",sort(\"UserType\")),layouts(\"LAYOUTLIST\"),label(\"commonKeywordParameters\",sort(\"CommonKeywordParameters\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2V0Iixzb3J0KCJFeHByZXNzaW9uIikpLFtsaXQoInsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzMCIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ9IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"set\",sort(\"Expression\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"elements0\",\\iter-star-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidHJ5Iixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgidHJ5IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJib2R5Iixzb3J0KCJTdGF0ZW1lbnQiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJoYW5kbGVycyIsXGl0ZXItc2Vwcyhzb3J0KCJDYXRjaCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSldLHthc3NvYyhcbm9uLWFzc29jKCkpLHRhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"try\",sort(\"Statement\")),[lit(\"try\"),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"Statement\")),layouts(\"LAYOUTLIST\"),label(\"handlers\",\\iter-seps(sort(\"Catch\"),[layouts(\"LAYOUTLIST\")]))],{assoc(\\non-assoc()),tag(\"breakable\"())})", RascalValueFactory.Production);
@@ -3659,15 +3663,15 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ2b2lkIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"void\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixhbHQoe3NlcShbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksbGV4KCJUYWdTdHJpbmciKSxcY2hhci1jbGFzcyhbcmFuZ2UoMSwxMjIpLHJhbmdlKDEyNCwxMjQpLHJhbmdlKDEyNiwxMTE0MTExKV0pfSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXN0YXIoYWx0KHtzZXEoW2xpdChcIlxcXFxcIiksXFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksc29ydChcIlRhZ1N0cmluZ1wiKSxcXGNoYXItY2xhc3MoW3JhbmdlKDEsMTIyKSxyYW5nZSgxMjQsMTI0KSxyYW5nZSgxMjYsMTExNDExMSldKX0pKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3RhcihhbHQoe3NlcShbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksbGV4KCJUYWdTdHJpbmciKSxcY2hhci1jbGFzcyhbcmFuZ2UoMSwxMjIpLHJhbmdlKDEyNCwxMjQpLHJhbmdlKDEyNiwxMTE0MTExKV0pfSkpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",alt({seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])]),lex(\"TagString\"),\\char-class([range(1,122),range(124,124),range(126,1114111)])})),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(alt({seq([lit(\\\"\\\\\\\\\\\"),\\\\char-class([range(123,123),range(125,125)])]),sort(\\\"TagString\\\"),\\\\char-class([range(1,122),range(124,124),range(126,1114111)])}))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(alt({seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])]),lex(\"TagString\"),\\char-class([range(1,122),range(124,124),range(126,1114111)])}))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJNb2R1bGVQYXJhbWV0ZXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIk1vZHVsZVBhcmFtZXRlcnNcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIk1vZHVsZVBhcmFtZXRlcnMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ModuleParameters\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ModuleParameters\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"ModuleParameters\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm9uRXF1YWxzIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiE9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhcbm9uLWFzc29jKCkpfSk00 = (IConstructor) _read("prod(label(\"nonEquals\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"!=\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm90Rm9sbG93Iixzb3J0KCJTeW0iKSksW2xhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIhXD5cPiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibWF0Y2giLHNvcnQoIlN5bSIpKV0se30p = (IConstructor) _read("prod(label(\"notFollow\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"!\\>\\>\"),layouts(\"LAYOUTLIST\"),label(\"match\",sort(\"Sym\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGF0ZUFuZFRpbWVMaXRlcmFsIixzb3J0KCJEYXRlVGltZUxpdGVyYWwiKSksW2xhYmVsKCJkYXRlQW5kVGltZSIsbGV4KCJEYXRlQW5kVGltZSIpKV0se30p = (IConstructor) _read("prod(label(\"dateAndTimeLiteral\",sort(\"DateTimeLiteral\")),[label(\"dateAndTime\",lex(\"DateAndTime\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW50ZXJzZWN0aW9uIixzb3J0KCJDbGFzcyIpKSxbbGFiZWwoImxocyIsc29ydCgiQ2xhc3MiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiJiYiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiQ2xhc3MiKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"intersection\",sort(\"Class\")),[label(\"lhs\",sort(\"Class\")),layouts(\"LAYOUTLIST\"),lit(\"&&\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Class\"))],{assoc(left())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIlxuIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMCwxMCldKV0se30p = (IConstructor) _read("prod(lit(\"\\n\"),[\\char-class([range(10,10)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcXFwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKV0se30p = (IConstructor) _read("prod(lit(\"\\\\\\\\\"),[\\char-class([range(92,92)]),\\char-class([range(92,92)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicmV0dXJuIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgicmV0dXJuIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzdGF0ZW1lbnQiLGNvbmRpdGlvbmFsKHNvcnQoIlN0YXRlbWVudCIpLHtleGNlcHQoInZhcmlhYmxlRGVjbGFyYXRpb24iKSxleGNlcHQoImZ1bmN0aW9uRGVjbGFyYXRpb24iKX0pKV0se2Fzc29jKFxub24tYXNzb2MoKSksdGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"return\",sort(\"Statement\")),[lit(\"return\"),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{assoc(\\non-assoc()),tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmVmZXJlbmNlIixzb3J0KCJQcm9kIikpLFtsaXQoIjoiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJlZmVyZW5jZWQiLGxleCgiTmFtZSIpKV0se30p = (IConstructor) _read("prod(label(\"reference\",sort(\"Prod\")),[lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"referenced\",lex(\"Name\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQYXJhbWV0ZXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlBhcmFtZXRlcnNcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlBhcmFtZXRlcnMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Parameters\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Parameters\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Parameters\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2V0Iixzb3J0KCJQYXR0ZXJuIikpLFtsaXQoInsiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsZW1lbnRzMCIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlBhdHRlcm4iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ9IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"set\",sort(\"Pattern\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"elements0\",\\iter-star-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm90Rm9sbG93Iixzb3J0KCJTeW0iKSksW2xhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIhXD5cPiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibWF0Y2giLHNvcnQoIlN5bSIpKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"notFollow\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"!\\>\\>\"),layouts(\"LAYOUTLIST\"),label(\"match\",sort(\"Sym\"))],{assoc(left())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJBc3NpZ25hYmxlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkFzc2lnbmFibGVcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkFzc2lnbmFibGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Assignable\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Assignable\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Assignable\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYm9vbCIsc29ydCgiQmFzaWNUeXBlIikpLFtsaXQoImJvb2wiKV0se30p = (IConstructor) _read("prod(label(\"bool\",sort(\"BasicType\")),[lit(\"bool\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicGF0dGVybldpdGhBY3Rpb24iLHNvcnQoIkNhc2UiKSksW2xpdCgiY2FzZSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicGF0dGVybldpdGhBY3Rpb24iLHNvcnQoIlBhdHRlcm5XaXRoQWN0aW9uIikpXSx7dGFnKCJGb2xkYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"patternWithAction\",sort(\"Case\")),[lit(\"case\"),layouts(\"LAYOUTLIST\"),label(\"patternWithAction\",sort(\"PatternWithAction\"))],{tag(\"Foldable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlQiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"T\"),[\\char-class([range(84,84)])],{})", RascalValueFactory.Production);
@@ -3677,10 +3681,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJrZXl3b3JkIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"keyword\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmVpZmllZFR5cGUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xpdCgidHlwZSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN5bWJvbCIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkZWZpbml0aW9ucyIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"reifiedType\",sort(\"Expression\")),[lit(\"type\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\"),label(\"definitions\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJCb2R5IikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkJvZHlcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkJvZHkiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Body\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Body\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Body\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaG9sZSIsbGV4KCJDb25jcmV0ZVBhcnQiKSksW2xhYmVsKCJob2xlIixzb3J0KCJDb25jcmV0ZUhvbGUiKSldLHt0YWcoImNhdGVnb3J5IigiTWV0YVZhcmlhYmxlIikpfSk00 = (IConstructor) _read("prod(label(\"hole\",lex(\"ConcretePart\")),[label(\"hole\",sort(\"ConcreteHole\"))],{tag(\"category\"(\"MetaVariable\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIlxuIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMCwxMCldKV0se30p = (IConstructor) _read("prod(lit(\"\\n\"),[\\char-class([range(10,10)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibW9kaWZpZXJsaXN0Iixzb3J0KCJGdW5jdGlvbk1vZGlmaWVycyIpKSxbbGFiZWwoIm1vZGlmaWVycyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIkZ1bmN0aW9uTW9kaWZpZXIiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpXSx7fSk00 = (IConstructor) _read("prod(label(\"modifierlist\",sort(\"FunctionModifiers\")),[label(\"modifiers\",\\iter-star-seps(sort(\"FunctionModifier\"),[layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZXF1YWxzIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj09IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhcbm9uLWFzc29jKCkpfSk00 = (IConstructor) _read("prod(label(\"equals\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"==\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGlzdERlY2xhcmF0aW9ucyIsc29ydCgiU2hlbGxDb21tYW5kIikpLFtsaXQoImRlY2xhcmF0aW9ucyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"listDeclarations\",sort(\"ShellCommand\")),[lit(\"declarations\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInRydWUiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"true\"),[\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(117,117)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmFyaWFibGVEZWNsYXJhdGlvbiIsc29ydCgiU3RhdGVtZW50IikpLFtsYWJlbCgiZGVjbGFyYXRpb24iLHNvcnQoIkxvY2FsVmFyaWFibGVEZWNsYXJhdGlvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"variableDeclaration\",sort(\"Statement\")),[label(\"declaration\",sort(\"LocalVariableDeclaration\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
@@ -3691,8 +3692,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiYnJhY2tldCIsc29ydCgiVHlwZSIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0eXBlIixzb3J0KCJUeXBlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se2JyYWNrZXQoKX0p = (IConstructor) _read("prod(label(\"bracket\",sort(\"Type\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{bracket()})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlVSTENoYXJzIiksW1xpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOCkscmFuZ2UoMTEsMTIpLHJhbmdlKDE0LDMxKSxyYW5nZSgzMyw1OSkscmFuZ2UoNjEsMTIzKSxyYW5nZSgxMjUsMTExNDExMSldKSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"URLChars\"),[\\iter-star(\\char-class([range(1,8),range(11,12),range(14,31),range(33,59),range(61,123),range(125,1114111)]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQcm9kTW9kaWZpZXIiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUHJvZE1vZGlmaWVyXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJQcm9kTW9kaWZpZXIiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ProdModifier\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ProdModifier\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"ProdModifier\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixhbHQoe2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pKX0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiYWx0KHtjb25kaXRpb25hbChcXGNoYXItY2xhc3MoW3JhbmdlKDQyLDQyKV0pLHtcXG5vdC1mb2xsb3coXFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSl9KSxcXGNoYXItY2xhc3MoW3JhbmdlKDEsNDEpLHJhbmdlKDQzLDExMTQxMTEpXSl9KSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoYWx0KHtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoNDIsNDIpXSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSl9KSxcY2hhci1jbGFzcyhbcmFuZ2UoMSw0MSkscmFuZ2UoNDMsMTExNDExMSldKX0pKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})),[\\char-class([range(0,0)]),lit(\"alt({conditional(\\\\char-class([range(42,42)]),{\\\\not-follow(\\\\char-class([range(47,47)]))}),\\\\char-class([range(1,41),range(43,1114111)])})\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJBc3NpZ25hYmxlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkFzc2lnbmFibGVcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkFzc2lnbmFibGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Assignable\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Assignable\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Assignable\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidW5lcXVhbCIsc29ydCgiU3ltIikpLFtsYWJlbCgic3ltYm9sIixzb3J0KCJTeW0iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXFwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm1hdGNoIixzb3J0KCJTeW0iKSldLHthc3NvYyhsZWZ0KCkpfSk00 = (IConstructor) _read("prod(label(\"unequal\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"\\\\\"),layouts(\"LAYOUTLIST\"),label(\"match\",sort(\"Sym\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInRvcC1kb3duIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE5LDExOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKV0se30p = (IConstructor) _read("prod(lit(\"top-down\"),[\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(45,45)]),\\char-class([range(100,100)]),\\char-class([range(111,111)]),\\char-class([range(119,119)]),\\char-class([range(110,110)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJUYWdcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODQsODQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Tag\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
@@ -3737,10 +3736,12 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiYm90dG9tVXBCcmVhayIsc29ydCgiU3RyYXRlZ3kiKSksW2xpdCgiYm90dG9tLXVwLWJyZWFrIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"bottomUpBreak\",sort(\"Strategy\")),[lit(\"bottom-up-break\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImFsdCh7bGl0KFwiMTBcIiksc2VxKFtsaXQoXCIwXCIpLFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDcwKSxyYW5nZSg5NywxMDIpXSldKX0pIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTMsMTEzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"alt({lit(\\\"10\\\"),seq([lit(\\\"0\\\"),\\\\char-class([range(48,57),range(65,70),range(97,102)])])})\"),[\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(123,123)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(48,48)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(55,55)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidGFnIixzb3J0KCJEZWNsYXJhdGlvbiIpKSxbbGFiZWwoInRhZ3MiLHNvcnQoIlRhZ3MiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ2aXNpYmlsaXR5Iixzb3J0KCJWaXNpYmlsaXR5IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoInRhZyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgia2luZCIsc29ydCgiS2luZCIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLGxleCgiTmFtZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJvbiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidHlwZXMiLFxpdGVyLXNlcHMoc29ydCgiVHlwZSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjsiKV0se30p = (IConstructor) _read("prod(label(\"tag\",sort(\"Declaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),lit(\"tag\"),layouts(\"LAYOUTLIST\"),label(\"kind\",sort(\"Kind\")),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"on\"),layouts(\"LAYOUTLIST\"),label(\"types\",\\iter-seps(sort(\"Type\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibWF0Y2giLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJwYXR0ZXJuIixzb3J0KCJQYXR0ZXJuIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjo9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"match\",sort(\"Expression\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\":=\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSwxMTE0MTExKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSwxMTE0MTExKV0pKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSwxMTE0MTExKV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(1,9),range(11,1114111)])),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(\\\\char-class([range(1,9),range(11,1114111)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(\\char-class([range(1,9),range(11,1114111)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJWYXJpYW50XCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg2LDg2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Variant\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(86,86)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiUGF0dGVybiIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-star-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgib3B0aW9uYWwiLHNvcnQoIlN5bSIpKSxbbGFiZWwoInN5bWJvbCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj8iKV0se30p = (IConstructor) _read("prod(label(\"optional\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"?\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJRdWFsaWZpZWROYW1lXCIpLFtsaXQoXCIsXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODEsODEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDIsMTAyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3OCw3OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"QualifiedName\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(81,81)]),\\char-class([range(117,117)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(78,78)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTaGVsbENvbW1hbmQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiU2hlbGxDb21tYW5kXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJTaGVsbENvbW1hbmQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ShellCommand\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ShellCommand\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"ShellCommand\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInJlYWwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"real\"),[\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(108,108)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYXNjaWkiLGxleCgiVW5pY29kZUVzY2FwZSIpKSxbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw3MCkscmFuZ2UoOTcsMTAyKV0pXSx7fSk00 = (IConstructor) _read("prod(label(\"ascii\",lex(\"UnicodeEscape\")),[lit(\"\\\\\"),\\char-class([range(97,97)]),\\char-class([range(48,55)]),\\char-class([range(48,57),range(65,70),range(97,102)])],{})", RascalValueFactory.Production);
@@ -3755,8 +3756,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImZvciIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTAyLDEwMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKV0se30p = (IConstructor) _read("prod(lit(\"for\"),[\\char-class([range(102,102)]),\\char-class([range(111,111)]),\\char-class([range(114,114)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW5pdGlhbGl6ZWQiLHNvcnQoIlZhcmlhYmxlIikpLFtsYWJlbCgibmFtZSIsbGV4KCJOYW1lIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImluaXRpYWwiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"initialized\",sort(\"Variable\")),[label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"initial\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYXlvdXRzKCIkZGVmYXVsdCQiKSxbXSx7fSk00 = (IConstructor) _read("prod(layouts(\"$default$\"),[],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJRdWFsaWZpZWROYW1lXCIpLFtsaXQoXCIsXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODEsODEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDIsMTAyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3OCw3OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"QualifiedName\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(81,81)]),\\char-class([range(117,117)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(78,78)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgic3RkZXJyT3V0cHV0IixsZXgoIk91dHB1dCIpKSxbY29uZGl0aW9uYWwobGl0KCLimqAiKSx7XGJlZ2luLW9mLWxpbmUoKX0pLFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsMTIpLHJhbmdlKDE0LDExMTQxMTEpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMCwxMCldKV0se3RhZygiY2F0ZWdvcnkiKCJTdGRFcnIiKSl9KQ0000 = (IConstructor) _read("prod(label(\"stderrOutput\",lex(\"Output\")),[conditional(lit(\"⚠\"),{\\begin-of-line()}),\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])),\\char-class([range(10,10)])],{tag(\"category\"(\"StdErr\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKFxccGFyYW1ldGVyaXplZC1zb3J0KFwiS2V5d29yZEFyZ3VtZW50XCIsW3NvcnQoXCJFeHByZXNzaW9uXCIpXSksW2xpdChcIixcIildKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIyLDEyMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzUsNzUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOSwxMTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDY1LDY1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjAsMTIwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-seps(\\\\parameterized-sort(\\\"KeywordArgument\\\",[sort(\\\"Expression\\\")]),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(112,112)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(122,122)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(75,75)]),\\char-class([range(101,101)]),\\char-class([range(121,121)]),\\char-class([range(119,119)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(100,100)]),\\char-class([range(65,65)]),\\char-class([range(114,114)]),\\char-class([range(103,103)]),\\char-class([range(117,117)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2V0QW5ub3RhdGlvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoImV4cHJlc3Npb24iLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiWyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIkAiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLGxleCgiTmFtZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ2YWx1ZSIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"setAnnotation\",sort(\"Expression\")),[label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"value\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2xpY2VTdGVwIixzb3J0KCJBc3NpZ25hYmxlIikpLFtsYWJlbCgicmVjZWl2ZXIiLHNvcnQoIkFzc2lnbmFibGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiWyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgib3B0Rmlyc3QiLHNvcnQoIk9wdGlvbmFsRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzZWNvbmQiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLi4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm9wdExhc3QiLHNvcnQoIk9wdGlvbmFsRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"sliceStep\",sort(\"Assignable\")),[label(\"receiver\",sort(\"Assignable\")),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"optFirst\",sort(\"OptionalExpression\")),layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\"),label(\"second\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"..\"),layouts(\"LAYOUTLIST\"),label(\"optLast\",sort(\"OptionalExpression\")),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
@@ -3765,7 +3764,9 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdHJpbmdNaWRkbGUiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiU3RyaW5nTWlkZGxlXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJTdHJpbmdNaWRkbGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"StringMiddle\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"StringMiddle\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"StringMiddle\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlZ0V4cCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KSxyYW5nZSg2MCw2MCkscmFuZ2UoNjIsNjIpLHJhbmdlKDkyLDkyKV0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"RegExp\"),[\\char-class([range(92,92)]),\\char-class([range(47,47),range(60,60),range(62,62),range(92,92)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmVpZmllZFR5cGUiLHNvcnQoIlBhdHRlcm4iKSksW2xpdCgidHlwZSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN5bWJvbCIsc29ydCgiUGF0dGVybiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkZWZpbml0aW9ucyIsc29ydCgiUGF0dGVybiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"reifiedType\",sort(\"Pattern\")),[lit(\"type\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\"),label(\"definitions\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlBvc3RQcm90b2NvbENoYXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlBvc3RQcm90b2NvbENoYXJzXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlBvc3RQcm90b2NvbENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PostProtocolChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PostProtocolChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PostProtocolChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlBvc3RQYXRoQ2hhcnMiKSxbbGl0KCJcPiIpLGxleCgiVVJMQ2hhcnMiKSxsaXQoInwiKV0se30p = (IConstructor) _read("prod(lex(\"PostPathChars\"),[lit(\"\\>\"),lex(\"URLChars\"),lit(\"|\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIlByZVN0cmluZ0NoYXJzIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcaXRlci1zdGFyKGxleCgiU3RyaW5nQ2hhcmFjdGVyIikpLFxjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(lex(\"PreStringChars\"),[\\char-class([range(34,34)]),\\iter-star(lex(\"StringCharacter\")),\\char-class([range(60,60)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIkAiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDY0LDY0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"@\"),[\\char-class([range(64,64)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZm9yIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xhYmVsKCJsYWJlbCIsc29ydCgiTGFiZWwiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiZm9yIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZ2VuZXJhdG9ycyIsXGl0ZXItc2Vwcyhzb3J0KCJFeHByZXNzaW9uIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYm9keSIsc29ydCgiU3RhdGVtZW50IikpXSx7dGFnKCJicmVha2FibGUiKCkpLHRhZygiYnJlYWthYmxlIigie2dlbmVyYXRvcnN9IikpfSk00 = (IConstructor) _read("prod(label(\"for\",sort(\"Statement\")),[label(\"label\",sort(\"Label\")),layouts(\"LAYOUTLIST\"),lit(\"for\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"generators\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"Statement\"))],{tag(\"breakable\"()),tag(\"breakable\"(\"{generators}\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSZWFsTGl0ZXJhbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Miw4MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc2LDc2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"RealLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
@@ -3779,15 +3780,15 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJNb2R1bGVBY3R1YWxzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc3LDc3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw2NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"ModuleActuals\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(117,117)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(65,65)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(117,117)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKV0se30p = (IConstructor) _read("prod(lit(\"\\\\\"),[\\char-class([range(92,92)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInZvaWQiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExOCwxMTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"void\"),[\\char-class([range(118,118)]),\\char-class([range(111,111)]),\\char-class([range(105,105)]),\\char-class([range(100,100)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIkNhc2VJbnNlbnNpdGl2ZVN0cmluZ0NvbnN0YW50IiksW2xpdCgiXCciKSxsYWJlbCgiY2hhcnMiLFxpdGVyLXN0YXIobGV4KCJTdHJpbmdDaGFyYWN0ZXIiKSkpLGxpdCgiXCciKV0se3RhZygiY2F0ZWdvcnkiKCJDb25zdGFudCIpKX0p = (IConstructor) _read("prod(lex(\"CaseInsensitiveStringConstant\"),[lit(\"\\'\"),label(\"chars\",\\iter-star(lex(\"StringCharacter\"))),lit(\"\\'\")],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlBvc3RQcm90b2NvbENoYXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlBvc3RQcm90b2NvbENoYXJzXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlBvc3RQcm90b2NvbENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"PostProtocolChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PostProtocolChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"PostProtocolChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImVsc2UiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"else\"),[\\char-class([range(101,101)]),\\char-class([range(108,108)]),\\char-class([range(115,115)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJSZW5hbWluZyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJSZW5hbWluZ1wiKSxbbGl0KFwiLFwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zZXBzKHNvcnQoIlJlbmFtaW5nIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Renaming\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Renaming\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Renaming\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZXh0ZXJuYWwiLHNvcnQoIkltcG9ydCIpKSxbbGl0KCJpbXBvcnQiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLHNvcnQoIlF1YWxpZmllZE5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYXQiLHNvcnQoIkxvY2F0aW9uTGl0ZXJhbCIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"external\",sort(\"Import\")),[lit(\"import\"),layouts(\"LAYOUTLIST\"),label(\"name\",sort(\"QualifiedName\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"at\",sort(\"LocationLiteral\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihhbHQoe3NlcShbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKSxyYW5nZSgxMjUsMTI1KV0pXSksbGV4KCJUYWdTdHJpbmciKSxcY2hhci1jbGFzcyhbcmFuZ2UoMSwxMjIpLHJhbmdlKDEyNCwxMjQpLHJhbmdlKDEyNiwxMTE0MTExKV0pfSkp = (IConstructor) _read("regular(alt({seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])]),lex(\"TagString\"),\\char-class([range(1,122),range(124,124),range(126,1114111)])}))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJVbmljb2RlRXNjYXBlXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg1LDg1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"UnicodeEscape\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(85,85)]),\\char-class([range(110,110)]),\\char-class([range(105,105)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(69,69)]),\\char-class([range(115,115)]),\\char-class([range(99,99)]),\\char-class([range(97,97)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZ3QiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcXD4iKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"gt\",lex(\"ConcretePart\")),[lit(\"\\\\\\>\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJWaXNpYmlsaXR5IikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlZpc2liaWxpdHlcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlZpc2liaWxpdHkiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Visibility\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Visibility\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Visibility\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxccGFyYW1ldGVyaXplZC1zb3J0KFwiTWFwcGluZ1wiLFtzb3J0KFwiUGF0dGVyblwiKV0pIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjIsMTIyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Nyw3NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\parameterized-sort(\\\"Mapping\\\",[sort(\\\"Pattern\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(112,112)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(122,122)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(97,97)]),\\char-class([range(112,112)]),\\char-class([range(112,112)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIkNoYXIiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEsMzEpLHJhbmdlKDMzLDMzKSxyYW5nZSgzNSwzOCkscmFuZ2UoNDAsNDQpLHJhbmdlKDQ2LDU5KSxyYW5nZSg2MSw2MSkscmFuZ2UoNjMsOTApLHJhbmdlKDk0LDExMTQxMTEpXSldLHt0YWcoImNhdGVnb3J5Iigic3RyaW5nIikpfSk00 = (IConstructor) _read("prod(lex(\"Char\"),[\\char-class([range(1,31),range(33,33),range(35,38),range(40,44),range(46,59),range(61,61),range(63,90),range(94,1114111)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidGVzdCIsc29ydCgiRnVuY3Rpb25Nb2RpZmllciIpKSxbbGl0KCJ0ZXN0IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"test\",sort(\"FunctionModifier\")),[lit(\"test\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKGxleCgiTEFZT1VUIikpKQ0000 = (IConstructor) _read("regular(\\iter-star(lex(\"LAYOUT\")))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJLaW5kIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIktpbmRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIktpbmQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Kind\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Kind\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Kind\")))})", RascalValueFactory.Production);
@@ -3804,26 +3805,26 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIjoiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDU4LDU4KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\":\"),[\\char-class([range(58,58)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibW9kdWxlIixzb3J0KCJLaW5kIikpLFtsaXQoIm1vZHVsZSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"module\",sort(\"Kind\")),[lit(\"module\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIml0ZXIoXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"iter(\\\\char-class([range(48,57)]))\"),[\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdHJhdGVneSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJTdHJhdGVneVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiU3RyYXRlZ3kiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Strategy\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Strategy\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Strategy\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgidGhyb3ciLHNvcnQoIlN0YXRlbWVudCIpKSxbbGl0KCJ0aHJvdyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"throw\",sort(\"Statement\")),[lit(\"throw\"),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2NvbmRpdGlvbmFsKGxpdCgiLiIpLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pKX0pLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"RealLiteral\"),[conditional(lit(\".\"),{\\not-precede(\\char-class([range(46,46)]))}),iter(\\char-class([range(48,57)])),opt(\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlVSTENoYXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlVSTENoYXJzXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlVSTENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"URLChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"URLChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"URLChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk5hbWVkUmVnRXhwIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIk5hbWVkUmVnRXhwXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIk5hbWVkUmVnRXhwIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"NamedRegExp\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"NamedRegExp\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"NamedRegExp\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixccGFyYW1ldGVyaXplZC1zb3J0KCJLZXl3b3JkQXJndW1lbnRzIixbc29ydCgiUGF0dGVybiIpXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxwYXJhbWV0ZXJpemVkLXNvcnQoXCJLZXl3b3JkQXJndW1lbnRzXCIsW3NvcnQoXCJQYXR0ZXJuXCIpXSkiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKFxwYXJhbWV0ZXJpemVkLXNvcnQoIktleXdvcmRBcmd1bWVudHMiLFtzb3J0KCJQYXR0ZXJuIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Pattern\")])),[\\char-class([range(0,0)]),lit(\"\\\\parameterized-sort(\\\"KeywordArguments\\\",[sort(\\\"Pattern\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\parameterized-sort(\"KeywordArguments\",[sort(\"Pattern\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZG9XaGlsZSIsc29ydCgiU3RyaW5nVGVtcGxhdGUiKSksW2xpdCgiZG8iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ7IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwcmVTdGF0cyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlN0YXRlbWVudCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJib2R5Iixzb3J0KCJTdHJpbmdNaWRkbGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwb3N0U3RhdHMiLFxpdGVyLXN0YXItc2Vwcyhzb3J0KCJTdGF0ZW1lbnQiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIn0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ3aGlsZSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImNvbmRpdGlvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"doWhile\",sort(\"StringTemplate\")),[lit(\"do\"),layouts(\"LAYOUTLIST\"),lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"preStats\",\\iter-star-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"StringMiddle\")),layouts(\"LAYOUTLIST\"),label(\"postStats\",\\iter-star-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"}\"),layouts(\"LAYOUTLIST\"),lit(\"while\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"condition\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpLHJhbmdlKDEwMSwxMDEpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MykscmFuZ2UoNDUsNDUpXSkpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"RealLiteral\"),[iter(\\char-class([range(48,57)])),\\char-class([range(69,69),range(101,101)]),opt(\\char-class([range(43,43),range(45,45)])),iter(\\char-class([range(48,57)])),opt(\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIk1pZFN0cmluZ0NoYXJzIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg2Miw2MildKSxcaXRlci1zdGFyKGxleCgiU3RyaW5nQ2hhcmFjdGVyIikpLFxjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(lex(\"MidStringChars\"),[\\char-class([range(62,62)]),\\iter-star(lex(\"StringCharacter\")),\\char-class([range(60,60)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgic3RkZXJyT3V0cHV0IixsZXgoIk91dHB1dCIpKSxbY29uZGl0aW9uYWwobGl0KCLimqAiKSx7XGJlZ2luLW9mLWxpbmUoKX0pLFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsMTIpLHJhbmdlKDE0LDExMTQxMTEpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMCwxMCldKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"stderrOutput\",lex(\"Output\")),[conditional(lit(\"⚠\"),{\\begin-of-line()}),\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])),\\char-class([range(10,10)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibm9udGVybWluYWwiLHNvcnQoIlN5bSIpKSxbY29uZGl0aW9uYWwobGFiZWwoIm5vbnRlcm1pbmFsIixsZXgoIk5vbnRlcm1pbmFsIikpLHtcbm90LWZvbGxvdyhsaXQoIlsiKSl9KV0se30p = (IConstructor) _read("prod(label(\"nonterminal\",sort(\"Sym\")),[conditional(label(\"nonterminal\",lex(\"Nonterminal\")),{\\not-follow(lit(\"[\"))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJGdW5jdGlvblR5cGUiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiRnVuY3Rpb25UeXBlXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJGdW5jdGlvblR5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"FunctionType\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"FunctionType\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"FunctionType\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJvbmUiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"one\")],{})", RascalValueFactory.Production);
- private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKGxleCgiUmVnRXhwIikpKQ0000 = (IConstructor) _read("regular(\\iter-star(lex(\"RegExp\")))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInJlbmFtaW5nIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKV0se30p = (IConstructor) _read("prod(lit(\"renaming\"),[\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQYXR0ZXJuIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIlBhdHRlcm5cIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJQYXR0ZXJuIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Pattern\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Pattern\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
+ private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKGxleCgiUmVnRXhwIikpKQ0000 = (IConstructor) _read("regular(\\iter-star(lex(\"RegExp\")))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiT3B0aW9uYWxFeHByZXNzaW9uIikpLFtsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"expression\",sort(\"OptionalExpression\")),[label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibGlzdCIsc29ydCgiQ29tcHJlaGVuc2lvbiIpKSxbbGl0KCJbIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyZXN1bHRzIixcaXRlci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ8IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJnZW5lcmF0b3JzIixcaXRlci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt0YWcoImJyZWFrYWJsZSIoIntyZXN1bHRzLGdlbmVyYXRvcnN9IikpfSk00 = (IConstructor) _read("prod(label(\"list\",sort(\"Comprehension\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"results\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\"),label(\"generators\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{tag(\"breakable\"(\"{results,generators}\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJtb2R1bGUiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"module\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaW50ZWdlciIsc29ydCgiTGl0ZXJhbCIpKSxbbGFiZWwoImludGVnZXJMaXRlcmFsIixzb3J0KCJJbnRlZ2VyTGl0ZXJhbCIpKV0se30p = (IConstructor) _read("prod(label(\"integer\",sort(\"Literal\")),[label(\"integerLiteral\",sort(\"IntegerLiteral\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibGlzdCIsc29ydCgiQ29tcHJlaGVuc2lvbiIpKSxbbGl0KCJbIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyZXN1bHRzIixcaXRlci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ8IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJnZW5lcmF0b3JzIixcaXRlci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt0YWcoImJyZWFrYWJsZSIoIntyZXN1bHRzLGdlbmVyYXRvcnN9IikpfSk00 = (IConstructor) _read("prod(label(\"list\",sort(\"Comprehension\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"results\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\"),label(\"generators\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{tag(\"breakable\"(\"{results,generators}\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJwdWJsaWMiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"public\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIi8vIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDcsNDcpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"//\"),[\\char-class([range(47,47)]),\\char-class([range(47,47)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdHJhdGVneSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJTdHJhdGVneVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiU3RyYXRlZ3kiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Strategy\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Strategy\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Strategy\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIlN0cmluZ0NvbnN0YW50IiksW2xpdCgiXCIiKSxsYWJlbCgiY2hhcnMiLFxpdGVyLXN0YXIobGV4KCJTdHJpbmdDaGFyYWN0ZXIiKSkpLGxpdCgiXCIiKV0se3RhZygiY2F0ZWdvcnkiKCJDb25zdGFudCIpKX0p = (IConstructor) _read("prod(lex(\"StringConstant\"),[lit(\"\\\"\"),label(\"chars\",\\iter-star(lex(\"StringCharacter\"))),lit(\"\\\"\")],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQYXRoVGFpbCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJQYXRoVGFpbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiUGF0aFRhaWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"PathTail\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PathTail\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"PathTail\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm1vZCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKV0se30p = (IConstructor) _read("prod(lit(\"mod\"),[\\char-class([range(109,109)]),\\char-class([range(111,111)]),\\char-class([range(100,100)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiU3ltIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-star-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
@@ -3845,19 +3846,19 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgic2xpY2VTdGVwIixzb3J0KCJFeHByZXNzaW9uIikpLFtjb25kaXRpb25hbChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSx7ZXhjZXB0KCJpc0RlZmluZWQiKSxleGNlcHQoInRyYW5zaXRpdmVDbG9zdXJlIiksZXhjZXB0KCJ0cmFuc2l0aXZlUmVmbGV4aXZlQ2xvc3VyZSIpfSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiWyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgib3B0Rmlyc3QiLHNvcnQoIk9wdGlvbmFsRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzZWNvbmQiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLi4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm9wdExhc3QiLHNvcnQoIk9wdGlvbmFsRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"sliceStep\",sort(\"Expression\")),[conditional(label(\"expression\",sort(\"Expression\")),{except(\"isDefined\"),except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")}),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"optFirst\",sort(\"OptionalExpression\")),layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\"),label(\"second\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"..\"),layouts(\"LAYOUTLIST\"),label(\"optLast\",sort(\"OptionalExpression\")),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIj09IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg2MSw2MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"==\"),[\\char-class([range(61,61)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQcm90b2NvbENoYXJzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjcsNjcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"ProtocolChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm9NYXRjaCIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiITo9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"noMatch\",sort(\"Expression\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\"!:=\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQb3N0UHJvdG9jb2xDaGFyc1wiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"PostProtocolChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(111,111)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(80,80)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInJhdCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"rat\"),[\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInRocm93cyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE5LDExOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKV0se30p = (IConstructor) _read("prod(lit(\"throws\"),[\\char-class([range(116,116)]),\\char-class([range(104,104)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(119,119)]),\\char-class([range(115,115)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NSldKSkp = (IConstructor) _read("regular(iter(\\char-class([range(48,55)])))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGFiZWxlZCIsc29ydCgiVGFyZ2V0IikpLFtsYWJlbCgibmFtZSIsbGV4KCJOYW1lIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"labeled\",sort(\"Target\")),[label(\"name\",lex(\"Name\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIkNoYXIiKSxbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgzMiwzMikscmFuZ2UoMzQsMzQpLHJhbmdlKDM5LDM5KSxyYW5nZSg0NSw0NSkscmFuZ2UoNjAsNjApLHJhbmdlKDYyLDYyKSxyYW5nZSg5MSw5MykscmFuZ2UoOTgsOTgpLHJhbmdlKDEwMiwxMDIpLHJhbmdlKDExMCwxMTApLHJhbmdlKDExNCwxMTQpLHJhbmdlKDExNiwxMTYpXSldLHt0YWcoImNhdGVnb3J5Iigic3RyaW5nIikpfSk00 = (IConstructor) _read("prod(lex(\"Char\"),[lit(\"\\\\\"),\\char-class([range(32,32),range(34,34),range(39,39),range(45,45),range(60,60),range(62,62),range(91,93),range(98,98),range(102,102),range(110,110),range(114,114),range(116,116)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYm9vbGVhbiIsc29ydCgiTGl0ZXJhbCIpKSxbbGFiZWwoImJvb2xlYW5MaXRlcmFsIixsZXgoIkJvb2xlYW5MaXRlcmFsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"boolean\",sort(\"Literal\")),[label(\"booleanLiteral\",lex(\"BooleanLiteral\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyLXNlcHMoXFxwYXJhbWV0ZXJpemVkLXNvcnQoXCJNYXBwaW5nXCIsW3NvcnQoXCJFeHByZXNzaW9uXCIpXSksW2xpdChcIixcIildKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjIsMTIyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Nyw3NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMCwxMjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-star-seps(\\\\parameterized-sort(\\\"Mapping\\\",[sort(\\\"Expression\\\")]),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(112,112)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(122,122)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(97,97)]),\\char-class([range(112,112)]),\\char-class([range(112,112)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibGVzc1RoYW5PckVxIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw8PSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"lessThanOrEq\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\<=\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNldCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKV0se30p = (IConstructor) _read("prod(lit(\"set\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIiFcPFw8IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgzMywzMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjAsNjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDYwLDYwKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"!\\<\\<\"),[\\char-class([range(33,33)]),\\char-class([range(60,60)]),\\char-class([range(60,60)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaGVscCIsc29ydCgiU2hlbGxDb21tYW5kIikpLFtsaXQoImhlbHAiKV0se30p = (IConstructor) _read("prod(label(\"help\",sort(\"ShellCommand\")),[lit(\"help\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDYXNlSW5zZW5zaXRpdmVTdHJpbmdDb25zdGFudFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDczLDczKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTgsMTE4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjcsNjcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"CaseInsensitiveStringConstant\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(73,73)]),\\char-class([range(110,110)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(118,118)]),\\char-class([range(101,101)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoImFsdCh7Y29uZGl0aW9uYWwoXFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XFxub3QtZm9sbG93KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDcsNDcpXSkpfSksXFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIzLDEyMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAyLDEwMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE5LDExOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjUsMTI1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MSw1MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjUsMTI1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"alt({conditional(\\\\char-class([range(42,42)]),{\\\\not-follow(\\\\char-class([range(47,47)]))}),\\\\char-class([range(1,41),range(43,1114111)])})\"),[\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(123,123)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(45,45)]),\\char-class([range(102,102)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(108,108)]),\\char-class([range(111,111)]),\\char-class([range(119,119)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(51,51)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicHVibGljIixzb3J0KCJWaXNpYmlsaXR5IikpLFtsaXQoInB1YmxpYyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"public\",sort(\"Visibility\")),[lit(\"public\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImNhc2UiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKV0se30p = (IConstructor) _read("prod(lit(\"case\"),[\\char-class([range(99,99)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWxsIixzb3J0KCJQcm9kIikpLFtsYWJlbCgibGhzIixzb3J0KCJQcm9kIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoInwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiUHJvZCIpKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"all\",sort(\"Prod\")),[label(\"lhs\",sort(\"Prod\")),layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Prod\"))],{assoc(left())})", RascalValueFactory.Production);
@@ -3888,15 +3889,16 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTdGF0ZW1lbnQiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiU3RhdGVtZW50XCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJTdGF0ZW1lbnQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Statement\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Statement\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Statement\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZnVuY3Rpb24iLHNvcnQoIkRlY2xhcmF0aW9uIikpLFtsYWJlbCgiZnVuY3Rpb25EZWNsYXJhdGlvbiIsc29ydCgiRnVuY3Rpb25EZWNsYXJhdGlvbiIpKV0se30p = (IConstructor) _read("prod(label(\"function\",sort(\"Declaration\")),[label(\"functionDeclaration\",sort(\"FunctionDeclaration\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidW5sYWJlbGVkIixzb3J0KCJQcm9kIikpLFtsYWJlbCgibW9kaWZpZXJzIixcaXRlci1zdGFyLXNlcHMoc29ydCgiUHJvZE1vZGlmaWVyIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInN5bXMiLFxpdGVyLXN0YXItc2Vwcyhzb3J0KCJTeW0iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpXSx7fSk00 = (IConstructor) _read("prod(label(\"unlabeled\",sort(\"Prod\")),[label(\"modifiers\",\\iter-star-seps(sort(\"ProdModifier\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"syms\",\\iter-star-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlQXJnIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIlR5cGVBcmdcIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJUeXBlQXJnIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"TypeArg\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"TypeArg\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"TypeArg\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJMb2NhbFZhcmlhYmxlRGVjbGFyYXRpb24iKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiTG9jYWxWYXJpYWJsZURlY2xhcmF0aW9uXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihzb3J0KCJMb2NhbFZhcmlhYmxlRGVjbGFyYXRpb24iKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"LocalVariableDeclaration\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"LocalVariableDeclaration\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"LocalVariableDeclaration\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJjYXRjaCIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"catch\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSZWdFeHBMaXRlcmFsXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgyLDgyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2OSw2OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIwLDEyMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzYsNzYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"RegExpLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYXlvdXRzKCJMQVlPVVRMSVNUIiksW2NvbmRpdGlvbmFsKFxpdGVyLXN0YXIobGV4KCJMQVlPVVQiKSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg5LDEzKSxyYW5nZSgzMiwzMikscmFuZ2UoMTMzLDEzMykscmFuZ2UoMTYwLDE2MCkscmFuZ2UoNTc2MCw1NzYwKSxyYW5nZSg2MTU4LDYxNTgpLHJhbmdlKDgxOTIsODIwMikscmFuZ2UoODIzMiw4MjMzKSxyYW5nZSg4MjM5LDgyMzkpLHJhbmdlKDgyODcsODI4NykscmFuZ2UoMTIyODgsMTIyODgpXSkpLFxub3QtZm9sbG93KGxpdCgiLy8iKSksXG5vdC1mb2xsb3cobGl0KCIvKiIpKX0pXSx7fSk00 = (IConstructor) _read("prod(layouts(\"LAYOUTLIST\"),[conditional(\\iter-star(lex(\"LAYOUT\")),{\\not-follow(\\char-class([range(9,13),range(32,32),range(133,133),range(160,160),range(5760,5760),range(6158,6158),range(8192,8202),range(8232,8233),range(8239,8239),range(8287,8287),range(12288,12288)])),\\not-follow(lit(\"//\")),\\not-follow(lit(\"/*\"))})],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIlRpbWVab25lUGFydCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNDMsNDMpLHJhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKV0se30p = (IConstructor) _read("prod(lex(\"TimeZonePart\"),[\\char-class([range(43,43),range(45,45)]),\\char-class([range(48,49)]),\\char-class([range(48,57)]),\\char-class([range(48,53)]),\\char-class([range(48,57)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixccGFyYW1ldGVyaXplZC1zb3J0KCJLZXl3b3JkQXJndW1lbnQiLFtzb3J0KCJQYXR0ZXJuIildKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXHBhcmFtZXRlcml6ZWQtc29ydChcIktleXdvcmRBcmd1bWVudFwiLFtzb3J0KFwiUGF0dGVyblwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihccGFyYW1ldGVyaXplZC1zb3J0KCJLZXl3b3JkQXJndW1lbnQiLFtzb3J0KCJQYXR0ZXJuIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\parameterized-sort(\"KeywordArgument\",[sort(\"Pattern\")])),[\\char-class([range(0,0)]),lit(\"\\\\parameterized-sort(\\\"KeywordArgument\\\",[sort(\\\"Pattern\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\parameterized-sort(\"KeywordArgument\",[sort(\"Pattern\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImhlbHAiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"help\"),[\\char-class([range(104,104)]),\\char-class([range(101,101)]),\\char-class([range(108,108)]),\\char-class([range(112,112)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiVGFnIikpLFtsaXQoIkAiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLGxleCgiTmFtZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLHtcbm90LWZvbGxvdyhsaXQoIkAiKSl9KV0se3RhZygiRm9sZGVkIigpKSx0YWcoImNhdGVnb3J5IigiY29tbWVudCIpKX0p = (IConstructor) _read("prod(label(\"expression\",sort(\"Tag\")),[lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),conditional(label(\"expression\",sort(\"Expression\")),{\\not-follow(lit(\"@\"))})],{tag(\"Folded\"()),tag(\"category\"(\"comment\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIi4uIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0Niw0NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDYsNDYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"..\"),[\\char-class([range(46,46)]),\\char-class([range(46,46)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInZpZXciKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExOCwxMTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOSwxMTkpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"view\"),[\\char-class([range(118,118)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(119,119)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibHQiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcXDwiKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"lt\",lex(\"ConcretePart\")),[lit(\"\\\\\\<\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkRlY2ltYWxJbnRlZ2VyTGl0ZXJhbCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNDksNTcpXSksY29uZGl0aW9uYWwoXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"DecimalIntegerLiteral\"),[\\char-class([range(49,57)]),conditional(\\iter-star(\\char-class([range(48,57)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiRnVuY3Rpb25Nb2RpZmllciIpKSxbbGl0KCJkZWZhdWx0IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",sort(\"FunctionModifier\")),[lit(\"default\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaWZUaGVuIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xhYmVsKCJsYWJlbCIsc29ydCgiTGFiZWwiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiaWYiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJjb25kaXRpb25zIixcaXRlci1zZXBzKHNvcnQoIkV4cHJlc3Npb24iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0aGVuU3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGVtcHR5KCkse1xub3QtZm9sbG93KGxpdCgiZWxzZSIpKX0pXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"ifThen\",sort(\"Statement\")),[label(\"label\",sort(\"Label\")),layouts(\"LAYOUTLIST\"),lit(\"if\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"conditions\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),label(\"thenStatement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")})),layouts(\"LAYOUTLIST\"),conditional(empty(),{\\not-follow(lit(\"else\"))})],{tag(\"breakable\"())})", RascalValueFactory.Production);
@@ -3904,15 +3906,16 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImluc2VydCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKV0se30p = (IConstructor) _read("prod(lit(\"insert\"),[\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDb21tb25LZXl3b3JkUGFyYW1ldGVyc1wiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzUsNzUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOSwxMTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"CommonKeywordParameters\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(75,75)]),\\char-class([range(101,101)]),\\char-class([range(121,121)]),\\char-class([range(119,119)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(100,100)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJUYWdcIikpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4NCw4NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"Tag\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlQXJnIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIlR5cGVBcmdcIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJUeXBlQXJnIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"TypeArg\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"TypeArg\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"TypeArg\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYnEiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcYCIpXSx7dGFnKCJjYXRlZ29yeSIoInN0cmluZyIpKX0p = (IConstructor) _read("prod(label(\"bq\",lex(\"ConcretePart\")),[lit(\"\\\\`\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoImFsdCh7XFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSxcXGNoYXItY2xhc3MoW3JhbmdlKDEsNDEpLHJhbmdlKDQzLDExMTQxMTEpXSl9KSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"alt({\\\\char-class([range(42,42)]),\\\\char-class([range(1,41),range(43,1114111)])})\"),[\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(51,51)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(52,52)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(49,49)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJjYXRjaCIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"catch\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImludCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKV0se30p = (IConstructor) _read("prod(lit(\"int\"),[\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidHJhbnNpdGl2ZVJlZmxleGl2ZUNsb3N1cmUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJhcmd1bWVudCIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksY29uZGl0aW9uYWwobGl0KCIqIikse1xub3QtZm9sbG93KGxpdCgiPSIpKX0pXSx7fSk00 = (IConstructor) _read("prod(label(\"transitiveReflexiveClosure\",sort(\"Expression\")),[label(\"argument\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"*\"),{\\not-follow(lit(\"=\"))})],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicmF0aW9uYWwiLHNvcnQoIkxpdGVyYWwiKSksW2xhYmVsKCJyYXRpb25hbExpdGVyYWwiLGxleCgiUmF0aW9uYWxMaXRlcmFsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"rational\",sort(\"Literal\")),[label(\"rationalLiteral\",lex(\"RationalLiteral\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIlRpbWVab25lUGFydCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNDMsNDMpLHJhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKV0se30p = (IConstructor) _read("prod(lex(\"TimeZonePart\"),[\\char-class([range(43,43),range(45,45)]),\\char-class([range(48,49)]),\\char-class([range(48,57)]),\\char-class([range(48,53)]),\\char-class([range(48,57)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNlcShbXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc2VxKFtcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSldKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))])),[\\char-class([range(0,0)]),lit(\"seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlZ0V4cCIpLFtsaXQoIlw8IiksbGV4KCJOYW1lIiksbGl0KCJcPiIpXSx7fSk00 = (IConstructor) _read("prod(lex(\"RegExp\"),[lit(\"\\<\"),lex(\"Name\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCkscmFuZ2UoNDYsNDYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLG9wdChzZXEoW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKV0pKQ0000 = (IConstructor) _read("regular(seq([\\char-class([range(44,44),range(46,46)]),\\char-class([range(48,57)]),opt(seq([\\char-class([range(48,57)]),opt(\\char-class([range(48,57)]))]))]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInVuZGVjbGFyZSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"undeclare\"),[\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicmVnRXhwIixzb3J0KCJMaXRlcmFsIikpLFtsYWJlbCgicmVnRXhwTGl0ZXJhbCIsbGV4KCJSZWdFeHBMaXRlcmFsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"regExp\",sort(\"Literal\")),[label(\"regExpLiteral\",lex(\"RegExpLiteral\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQYXR0ZXJuV2l0aEFjdGlvbiIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJQYXR0ZXJuV2l0aEFjdGlvblwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiUGF0dGVybldpdGhBY3Rpb24iKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"PatternWithAction\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"PatternWithAction\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"PatternWithAction\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJpbnNlcnQiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"insert\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJFdmFsQ29tbWFuZFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2OSw2OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE4LDExOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"EvalCommand\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(69,69)]),\\char-class([range(118,118)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
@@ -3930,16 +3933,18 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIiUiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDM3LDM3KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"%\"),[\\char-class([range(37,37)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicXVpdCIsc29ydCgiU2hlbGxDb21tYW5kIikpLFtsaXQoInF1aXQiKV0se30p = (IConstructor) _read("prod(label(\"quit\",sort(\"ShellCommand\")),[lit(\"quit\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIiFcPlw11IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgzMywzMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjIsNjIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDYyLDYyKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"!\\>\\>\"),[\\char-class([range(33,33)]),\\char-class([range(62,62)]),\\char-class([range(62,62)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZXF1aXZhbGVuY2UiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXDw9PVw11IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHthc3NvYyhcbm9uLWFzc29jKCkpfSk00 = (IConstructor) _read("prod(label(\"equivalence\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\<==\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlQXJnIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXN0YXItc2Vwcyhzb3J0KFwiVHlwZUFyZ1wiKSxbbGl0KFwiLFwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyLXNlcHMoc29ydCgiVHlwZUFyZyIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"TypeArg\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star-seps(sort(\\\"TypeArg\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(sort(\"TypeArg\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibm9uSW50ZXJwb2xhdGVkIixzb3J0KCJQYXRoUGFydCIpKSxbbGFiZWwoInBhdGhDaGFycyIsbGV4KCJQYXRoQ2hhcnMiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"nonInterpolated\",sort(\"PathPart\")),[label(\"pathChars\",lex(\"PathChars\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiVmlzaWJpbGl0eSIpKSxbXSx7fSk00 = (IConstructor) _read("prod(label(\"default\",sort(\"Visibility\")),[],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixccGFyYW1ldGVyaXplZC1zb3J0KCJLZXl3b3JkQXJndW1lbnQiLFtzb3J0KCJFeHByZXNzaW9uIildKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXHBhcmFtZXRlcml6ZWQtc29ydChcIktleXdvcmRBcmd1bWVudFwiLFtzb3J0KFwiRXhwcmVzc2lvblwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihccGFyYW1ldGVyaXplZC1zb3J0KCJLZXl3b3JkQXJndW1lbnQiLFtzb3J0KCJFeHByZXNzaW9uIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\parameterized-sort(\"KeywordArgument\",[sort(\"Expression\")])),[\\char-class([range(0,0)]),lit(\"\\\\parameterized-sort(\\\"KeywordArgument\\\",[sort(\\\"Expression\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\parameterized-sort(\"KeywordArgument\",[sort(\"Expression\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\".\"),[\\char-class([range(46,46)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk1pZFByb3RvY29sQ2hhcnMiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiTWlkUHJvdG9jb2xDaGFyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJNaWRQcm90b2NvbENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"MidProtocolChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"MidProtocolChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"MidProtocolChars\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaWZEZWZpbmVkIixzb3J0KCJBc3NpZ25tZW50IikpLFtsaXQoIj89IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"ifDefined\",sort(\"Assignment\")),[lit(\"?=\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImxleGljYWwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMCwxMjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKV0se30p = (IConstructor) _read("prod(lit(\"lexical\"),[\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(120,120)]),\\char-class([range(105,105)]),\\char-class([range(99,99)]),\\char-class([range(97,97)]),\\char-class([range(108,108)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJTeW1cIiksW2xpdChcInxcIildKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTI0LDEyNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"Sym\\\"),[lit(\\\"|\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(121,121)]),\\char-class([range(109,109)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(124,124)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihzZXEoW2xpdCgiMCIpLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsNzApLHJhbmdlKDk3LDEwMildKV0pKQ0000 = (IConstructor) _read("regular(seq([lit(\"0\"),\\char-class([range(48,57),range(65,70),range(97,102)])]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29sdW1uIixzb3J0KCJTeW0iKSksW2xhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJAIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJjb2x1bW4iLHNvcnQoIkludGVnZXJMaXRlcmFsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"column\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"column\",sort(\"IntegerLiteral\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm90SW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgibm90aW4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"notIn\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"notin\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlw8PSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNjAsNjApXSksXGNoYXItY2xhc3MoW3JhbmdlKDYxLDYxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\<=\"),[\\char-class([range(60,60)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoOSw5KSxyYW5nZSgzMiwzMikscmFuZ2UoMTYwLDE2MCkscmFuZ2UoNTc2MCw1NzYwKSxyYW5nZSg4MTkyLDgyMDIpLHJhbmdlKDgyMzksODIzOSkscmFuZ2UoODI4Nyw4Mjg3KSxyYW5nZSgxMjI4OCwxMjI4OCldKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3RhcihcXGNoYXItY2xhc3MoW3JhbmdlKDksOSkscmFuZ2UoMzIsMzIpLHJhbmdlKDE2MCwxNjApLHJhbmdlKDU3NjAsNTc2MCkscmFuZ2UoODE5Miw4MjAyKSxyYW5nZSg4MjM5LDgyMzkpLHJhbmdlKDgyODcsODI4NykscmFuZ2UoMTIyODgsMTIyODgpXSkpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg5LDkpLHJhbmdlKDMyLDMyKSxyYW5nZSgxNjAsMTYwKSxyYW5nZSg1NzYwLDU3NjApLHJhbmdlKDgxOTIsODIwMikscmFuZ2UoODIzOSw4MjM5KSxyYW5nZSg4Mjg3LDgyODcpLHJhbmdlKDEyMjg4LDEyMjg4KV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)])),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(\\\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVjbGFyYXRpb24iLHNvcnQoIkV2YWxDb21tYW5kIikpLFtsYWJlbCgiZGVjbGFyYXRpb24iLHNvcnQoIkRlY2xhcmF0aW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"declaration\",sort(\"EvalCommand\")),[label(\"declaration\",sort(\"Declaration\"))],{})", RascalValueFactory.Production);
@@ -3947,15 +3952,11 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgibkFyeUNvbnN0cnVjdG9yIixzb3J0KCJWYXJpYW50IikpLFtsYWJlbCgibmFtZSIsbGV4KCJOYW1lIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImFyZ3VtZW50cyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlR5cGVBcmciKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImtleXdvcmRBcmd1bWVudHMiLHNvcnQoIktleXdvcmRGb3JtYWxzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se30p = (IConstructor) _read("prod(label(\"nAryConstructor\",sort(\"Variant\")),[label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"arguments\",\\iter-star-seps(sort(\"TypeArg\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"keywordArguments\",sort(\"KeywordFormals\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW2xpdCgiXFwiKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIzLDEyMykscmFuZ2UoMTI1LDEyNSldKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNlcShbbGl0KFwiXFxcXFwiKSxcXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpLHJhbmdlKDEyNSwxMjUpXSldKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc2VxKFtsaXQoIlxcIiksXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpLHJhbmdlKDEyNSwxMjUpXSldKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])])),[\\char-class([range(0,0)]),lit(\"seq([lit(\\\"\\\\\\\\\\\"),\\\\char-class([range(123,123),range(125,125)])])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(seq([lit(\"\\\\\"),\\char-class([range(123,123),range(125,125)])])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3ltYm9sIixzb3J0KCJUeXBlIikpLFtsYWJlbCgic3ltYm9sIixjb25kaXRpb25hbChzb3J0KCJTeW0iKSx7ZXhjZXB0KCJsYWJlbGVkIiksZXhjZXB0KCJwYXJhbWV0cml6ZWQiKSxleGNlcHQoIm5vbnRlcm1pbmFsIiksZXhjZXB0KCJwYXJhbWV0ZXIiKX0pKV0se30p = (IConstructor) _read("prod(label(\"symbol\",sort(\"Type\")),[label(\"symbol\",conditional(sort(\"Sym\"),{except(\"labeled\"),except(\"parametrized\"),except(\"nonterminal\"),except(\"parameter\")}))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiVmlzaWJpbGl0eSIpKSxbXSx7fSk00 = (IConstructor) _read("prod(label(\"default\",sort(\"Visibility\")),[],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic2VxKFtjb25kaXRpb25hbChcXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pLHtcXG5vdC1wcmVjZWRlKFxcY2hhci1jbGFzcyhbcmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpfSksY29uZGl0aW9uYWwoXFxpdGVyLXN0YXIoXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcXG5vdC1mb2xsb3coXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpfSldKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc2VxKFtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkse1xub3QtcHJlY2VkZShcY2hhci1jbGFzcyhbcmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpfSksY29uZGl0aW9uYWwoXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KV0pKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",seq([conditional(\\char-class([range(65,90),range(95,95),range(97,122)]),{\\not-precede(\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])),[\\char-class([range(0,0)]),lit(\"seq([conditional(\\\\char-class([range(65,90),range(95,95),range(97,122)]),{\\\\not-precede(\\\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\\\not-follow(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(seq([conditional(\\char-class([range(65,90),range(95,95),range(97,122)]),{\\not-precede(\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQb3N0U3RyaW5nQ2hhcnNcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgzLDgzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Nyw2NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"PostStringChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(111,111)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidHlwZWRWYXJpYWJsZSIsc29ydCgiUGF0dGVybiIpKSxbbGFiZWwoInR5cGUiLHNvcnQoIlR5cGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"typedVariable\",sort(\"Pattern\")),[label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkxBWU9VVCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJMQVlPVVRcIikpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyKGxleCgiTEFZT1VUIikpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"LAYOUT\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"LAYOUT\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(lex(\"LAYOUT\"))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29uY3JldGUiLHNvcnQoIlBhdHRlcm4iKSksW2xhYmVsKCJjb25jcmV0ZSIsbGV4KCJDb25jcmV0ZSIpKV0se30p = (IConstructor) _read("prod(label(\"concrete\",sort(\"Pattern\")),[label(\"concrete\",lex(\"Concrete\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic29sdmUiLHNvcnQoIlN0YXRlbWVudCIpKSxbbGl0KCJzb2x2ZSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInZhcmlhYmxlcyIsXGl0ZXItc2Vwcyhzb3J0KCJRdWFsaWZpZWROYW1lIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJib3VuZCIsc29ydCgiQm91bmQiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiYm9keSIsY29uZGl0aW9uYWwoc29ydCgiU3RhdGVtZW50Iikse2V4Y2VwdCgidmFyaWFibGVEZWNsYXJhdGlvbiIpLGV4Y2VwdCgiZnVuY3Rpb25EZWNsYXJhdGlvbiIpfSkpXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"solve\",sort(\"Statement\")),[lit(\"solve\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"variables\",\\iter-seps(sort(\"QualifiedName\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"bound\",sort(\"Bound\")),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),label(\"body\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaWZEZWZpbmVkIixzb3J0KCJBc3NpZ25tZW50IikpLFtsaXQoIj89IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"ifDefined\",sort(\"Assignment\")),[lit(\"?=\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicHJlY2VkZSIsc29ydCgiU3ltIikpLFtsYWJlbCgibWF0Y2giLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPFw8IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKV0se2Fzc29jKHJpZ2h0KCkpfSk00 = (IConstructor) _read("prod(label(\"precede\",sort(\"Sym\")),[label(\"match\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"\\<\\<\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\"))],{assoc(right())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJTeW0iKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3Rhcihzb3J0KFwiU3ltXCIpKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlN5bSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Sym\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"Sym\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlR5cGVWYXIiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-seps(sort(\"TypeVar\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlBhdGhDaGFycyIpLFtsZXgoIlVSTENoYXJzIiksXGNoYXItY2xhc3MoW3JhbmdlKDEyNCwxMjQpXSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"PathChars\"),[lex(\"URLChars\"),\\char-class([range(124,124)])],{})", RascalValueFactory.Production);
@@ -3965,8 +3966,9 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIlw8IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se30p = (IConstructor) _read("prod(lit(\"\\<\"),[\\char-class([range(60,60)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJNb2R1bGVQYXJhbWV0ZXJzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc3LDc3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"ModuleParameters\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(117,117)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJMaXRlcmFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkxpdGVyYWxcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkxpdGVyYWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Literal\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Literal\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Literal\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgidHJhbnNpdGl2ZUNsb3N1cmUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJhcmd1bWVudCIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksY29uZGl0aW9uYWwobGl0KCIrIikse1xub3QtZm9sbG93KGxpdCgiPSIpKX0pXSx7fSk00 = (IConstructor) _read("prod(label(\"transitiveClosure\",sort(\"Expression\")),[label(\"argument\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"+\"),{\\not-follow(lit(\"=\"))})],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZmlsdGVyIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiZmlsdGVyIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"filter\",sort(\"Statement\")),[lit(\"filter\"),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNlcShbbGl0KFwiXFxcXFwiKSxcXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpLHJhbmdlKDEyNSwxMjUpXSldKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEzLDExMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTEsNTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUxLDUxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"seq([lit(\\\"\\\\\\\\\\\"),\\\\char-class([range(123,123),range(125,125)])])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(92,92)]),\\char-class([range(92,92)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(51,51)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJMYWJlbCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJMYWJlbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiTGFiZWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Label\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Label\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Label\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYW5ubyIsc29ydCgiS2luZCIpKSxbbGl0KCJhbm5vIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"anno\",sort(\"Kind\")),[lit(\"anno\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImJyYWNrZXQiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk4LDk4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNywxMDcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"bracket\"),[\\char-class([range(98,98)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(99,99)]),\\char-class([range(107,107)]),\\char-class([range(101,101)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicHJlc2VudCIsc29ydCgiQ29tbW9uS2V5d29yZFBhcmFtZXRlcnMiKSksW2xpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgia2V5d29yZEZvcm1hbExpc3QiLFxpdGVyLXNlcHMoc29ydCgiS2V5d29yZEZvcm1hbCIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se30p = (IConstructor) _read("prod(label(\"present\",sort(\"CommonKeywordParameters\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"keywordFormalList\",\\iter-seps(sort(\"KeywordFormal\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
@@ -3985,11 +3987,11 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImlmIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDIsMTAyKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"if\"),[\\char-class([range(105,105)]),\\char-class([range(102,102)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibWFwIixzb3J0KCJFeHByZXNzaW9uIikpLFtsaXQoIigiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm1hcHBpbmdzIixcaXRlci1zdGFyLXNlcHMoXHBhcmFtZXRlcml6ZWQtc29ydCgiTWFwcGluZyIsW3NvcnQoIkV4cHJlc3Npb24iKV0pLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se30p = (IConstructor) _read("prod(label(\"map\",sort(\"Expression\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"mappings\",\\iter-star-seps(\\parameterized-sort(\"Mapping\",[sort(\"Expression\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIi8iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"/\"),[\\char-class([range(47,47)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZmlsdGVyIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiZmlsdGVyIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7dGFnKCJicmVha2FibGUiKCkpfSk00 = (IConstructor) _read("prod(label(\"filter\",sort(\"Statement\")),[lit(\"filter\"),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIkNvbW1lbnQiKSxbbGl0KCIvLyIpLGNvbmRpdGlvbmFsKFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsMTExNDExMSldKSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg5LDkpLHJhbmdlKDEzLDEzKSxyYW5nZSgzMiwzMikscmFuZ2UoMTYwLDE2MCkscmFuZ2UoNTc2MCw1NzYwKSxyYW5nZSg4MTkyLDgyMDIpLHJhbmdlKDgyMzksODIzOSkscmFuZ2UoODI4Nyw4Mjg3KSxyYW5nZSgxMjI4OCwxMjI4OCldKSksXGVuZC1vZi1saW5lKCl9KV0se3RhZygiY2F0ZWdvcnkiKCJDb21tZW50IikpfSk00 = (IConstructor) _read("prod(lex(\"Comment\"),[lit(\"//\"),conditional(\\iter-star(\\char-class([range(1,9),range(11,1114111)])),{\\not-follow(\\char-class([range(9,9),range(13,13),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)])),\\end-of-line()})],{tag(\"category\"(\"Comment\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiRGVjbGFyYXRvciIpKSxbbGFiZWwoInR5cGUiLHNvcnQoIlR5cGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ2YXJpYWJsZXMiLFxpdGVyLXNlcHMoc29ydCgiVmFyaWFibGUiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKV0se30p = (IConstructor) _read("prod(label(\"default\",sort(\"Declarator\")),[label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),label(\"variables\",\\iter-seps(sort(\"Variable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW50ZXJwb2xhdGVkIixzb3J0KCJQcm90b2NvbFBhcnQiKSksW2xhYmVsKCJwcmUiLGxleCgiUHJlUHJvdG9jb2xDaGFycyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImV4cHJlc3Npb24iLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0YWlsIixzb3J0KCJQcm90b2NvbFRhaWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"interpolated\",sort(\"ProtocolPart\")),[label(\"pre\",lex(\"PreProtocolChars\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"ProtocolTail\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInVuaW1wb3J0IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"unimport\"),[\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(105,105)]),\\char-class([range(109,109)]),\\char-class([range(112,112)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgidHJhbnNpdGl2ZUNsb3N1cmUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJhcmd1bWVudCIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksY29uZGl0aW9uYWwobGl0KCIrIikse1xub3QtZm9sbG93KGxpdCgiPSIpKX0pXSx7fSk00 = (IConstructor) _read("prod(label(\"transitiveClosure\",sort(\"Expression\")),[label(\"argument\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"+\"),{\\not-follow(lit(\"=\"))})],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZ3JlYXRlclRoYW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXD4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"greaterThan\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImRhdGV0aW1lIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKV0se30p = (IConstructor) _read("prod(lit(\"datetime\"),[\\char-class([range(100,100)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(109,109)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2VsZWN0b3IiLHNvcnQoIlR5cGUiKSksW2xhYmVsKCJzZWxlY3RvciIsc29ydCgiRGF0YVR5cGVTZWxlY3RvciIpKV0se30p = (IConstructor) _read("prod(label(\"selector\",sort(\"Type\")),[label(\"selector\",sort(\"DataTypeSelector\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlw11IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg2Miw2MildKV0se30p = (IConstructor) _read("prod(lit(\"\\>\"),[\\char-class([range(62,62)])],{})", RascalValueFactory.Production);
@@ -3998,28 +4000,31 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsZXgoIk1pZFByb3RvY29sQ2hhcnMiKSxbbGl0KCJcPiIpLGxleCgiVVJMQ2hhcnMiKSxsaXQoIlw8IildLHt9KQ0000 = (IConstructor) _read("prod(lex(\"MidProtocolChars\"),[lit(\"\\>\"),lex(\"URLChars\"),lit(\"\\<\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTeW50YXhEZWZpbml0aW9uXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgzLDgzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIwLDEyMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMiwxMDIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"SyntaxDefinition\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(121,121)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(120,120)]),\\char-class([range(68,68)]),\\char-class([range(101,101)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTA1LDEwNSkscmFuZ2UoMTA5LDEwOSkscmFuZ2UoMTE1LDExNSldKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3RhcihcXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApLHJhbmdlKDEwNSwxMDUpLHJhbmdlKDEwOSwxMDkpLHJhbmdlKDExNSwxMTUpXSkpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDUsMTA1KSxyYW5nZSgxMDksMTA5KSxyYW5nZSgxMTUsMTE1KV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(100,100),range(105,105),range(109,109),range(115,115)])),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(\\\\char-class([range(100,100),range(105,105),range(109,109),range(115,115)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(\\char-class([range(100,100),range(105,105),range(109,109),range(115,115)]))))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibG9jYXRpb24iLHNvcnQoIkxpdGVyYWwiKSksW2xhYmVsKCJsb2NhdGlvbkxpdGVyYWwiLHNvcnQoIkxvY2F0aW9uTGl0ZXJhbCIpKV0se30p = (IConstructor) _read("prod(label(\"location\",sort(\"Literal\")),[label(\"locationLiteral\",sort(\"LocationLiteral\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJMYWJlbCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJMYWJlbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiTGFiZWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Label\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Label\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Label\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3Vic2NyaXB0Iixzb3J0KCJFeHByZXNzaW9uIikpLFtjb25kaXRpb25hbChsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSx7ZXhjZXB0KCJpc0RlZmluZWQiKSxleGNlcHQoInRyYW5zaXRpdmVDbG9zdXJlIiksZXhjZXB0KCJ0cmFuc2l0aXZlUmVmbGV4aXZlQ2xvc3VyZSIpfSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiWyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3Vic2NyaXB0cyIsXGl0ZXItc2Vwcyhzb3J0KCJFeHByZXNzaW9uIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"subscript\",sort(\"Expression\")),[conditional(label(\"expression\",sort(\"Expression\")),{except(\"isDefined\"),except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")}),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"subscripts\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJRdWFsaWZpZWROYW1lIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIlF1YWxpZmllZE5hbWVcIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJRdWFsaWZpZWROYW1lIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"QualifiedName\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"QualifiedName\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"QualifiedName\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk1pZFBhdGhDaGFycyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJNaWRQYXRoQ2hhcnNcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiTWlkUGF0aENoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"MidPathChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"MidPathChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"MidPathChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIj89IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg2Myw2MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"?=\"),[\\char-class([range(63,63)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJBc3NpZ25hYmxlXCIpLFtsaXQoXCIsXCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjUsNjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OCw5OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"Assignable\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(65,65)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(103,103)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(98,98)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQcmVQYXRoQ2hhcnNcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjcsNjcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"PrePathChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(104,104)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSZW5hbWluZ3NcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODIsODIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Renamings\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVjaW1hbEludGVnZXJMaXRlcmFsIixzb3J0KCJJbnRlZ2VyTGl0ZXJhbCIpKSxbbGFiZWwoImRlY2ltYWwiLGxleCgiRGVjaW1hbEludGVnZXJMaXRlcmFsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"decimalIntegerLiteral\",sort(\"IntegerLiteral\")),[label(\"decimal\",lex(\"DecimalIntegerLiteral\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlR5cGVcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlR5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Type\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Type\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Type\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWx0ZXJuYXRpdmUiLHNvcnQoIlN5bSIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJmaXJzdCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoInwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImFsdGVybmF0aXZlcyIsXGl0ZXItc2Vwcyhzb3J0KCJTeW0iKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"alternative\",sort(\"Sym\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"first\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\"),label(\"alternatives\",\\iter-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInJlbCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKV0se30p = (IConstructor) _read("prod(lit(\"rel\"),[\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(108,108)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKFxwYXJhbWV0ZXJpemVkLXNvcnQoIktleXdvcmRBcmd1bWVudCIsW3NvcnQoIkV4cHJlc3Npb24iKV0pLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-seps(\\parameterized-sort(\"KeywordArgument\",[sort(\"Expression\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdHJ1Y3R1cmVkVHlwZVwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"StructuredType\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(117,117)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(117,117)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(84,84)]),\\char-class([range(121,121)]),\\char-class([range(112,112)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJRdWFsaWZpZWROYW1lIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlF1YWxpZmllZE5hbWVcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlF1YWxpZmllZE5hbWUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"QualifiedName\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"QualifiedName\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"QualifiedName\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZ3JlYXRlclRoYW5PckVxIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw11PSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"greaterThanOrEq\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\>=\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiTW9kdWxlQWN0dWFscyIpKSxbbGl0KCJbIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0eXBlcyIsXGl0ZXItc2Vwcyhzb3J0KCJUeXBlIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"default\",sort(\"ModuleActuals\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"types\",\\iter-seps(sort(\"Type\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNlcShbbGl0KFwiMFwiKSxcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw3MCkscmFuZ2UoOTcsMTAyKV0pXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMywxMTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"seq([lit(\\\"0\\\"),\\\\char-class([range(48,57),range(65,70),range(97,102)])])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(48,48)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(55,55)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(48,48)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZW51bWVyYXRvciIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXDwtIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"enumerator\",sort(\"Expression\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\"\\<-\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZm9sbG93Iixzb3J0KCJTeW0iKSksW2xhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPlw11IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJtYXRjaCIsc29ydCgiU3ltIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"follow\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\\>\"),layouts(\"LAYOUTLIST\"),label(\"match\",sort(\"Sym\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaXMiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImlzIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"is\",sort(\"Expression\")),[label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"is\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibXVsdGlWYXJpYWJsZSIsc29ydCgiUGF0dGVybiIpKSxbbGFiZWwoInF1YWxpZmllZE5hbWUiLHNvcnQoIlF1YWxpZmllZE5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKiIpXSx7fSk00 = (IConstructor) _read("prod(label(\"multiVariable\",sort(\"Pattern\")),[label(\"qualifiedName\",sort(\"QualifiedName\")),layouts(\"LAYOUTLIST\"),lit(\"*\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixhbHQoe2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pKX0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiYWx0KHtcXGNoYXItY2xhc3MoW3JhbmdlKDQyLDQyKV0pLFxcY2hhci1jbGFzcyhbcmFuZ2UoMSw0MSkscmFuZ2UoNDMsMTExNDExMSldKX0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihhbHQoe2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pKX0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})),[\\char-class([range(0,0)]),lit(\"alt({\\\\char-class([range(42,42)]),\\\\char-class([range(1,41),range(43,1114111)])})\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSZW5hbWluZ3NcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODIsODIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Renamings\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIkNoYXIiKSxbbGV4KCJVbmljb2RlRXNjYXBlIildLHt0YWcoImNhdGVnb3J5Iigic3RyaW5nIikpfSk00 = (IConstructor) _read("prod(lex(\"Char\"),[lex(\"UnicodeEscape\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibG9jYXRpb24iLHNvcnQoIkxpdGVyYWwiKSksW2xhYmVsKCJsb2NhdGlvbkxpdGVyYWwiLHNvcnQoIkxvY2F0aW9uTGl0ZXJhbCIpKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"location\",sort(\"Literal\")),[label(\"locationLiteral\",sort(\"LocationLiteral\"))],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk5vbnRlcm1pbmFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIk5vbnRlcm1pbmFsXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIk5vbnRlcm1pbmFsIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"Nonterminal\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Nonterminal\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"Nonterminal\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZm9sbG93Iixzb3J0KCJTeW0iKSksW2xhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJcPlw11IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJtYXRjaCIsc29ydCgiU3ltIikpXSx7YXNzb2MobGVmdCgpKX0p = (IConstructor) _read("prod(label(\"follow\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\\>\"),layouts(\"LAYOUTLIST\"),label(\"match\",sort(\"Sym\"))],{assoc(left())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlR5cGVcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlR5cGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Type\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Type\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Type\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgicmVhbCIsc29ydCgiTGl0ZXJhbCIpKSxbbGFiZWwoInJlYWxMaXRlcmFsIixsZXgoIlJlYWxMaXRlcmFsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"real\",sort(\"Literal\")),[label(\"realLiteral\",lex(\"RealLiteral\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIlR5cGVcIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJUeXBlIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Type\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Type\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"Type\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImltcG9ydCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKV0se30p = (IConstructor) _read("prod(lit(\"import\"),[\\char-class([range(105,105)]),\\char-class([range(109,109)]),\\char-class([range(112,112)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUeXBlQXJnIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlR5cGVBcmdcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlR5cGVBcmciKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"TypeArg\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"TypeArg\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"TypeArg\")))})", RascalValueFactory.Production);
@@ -4033,10 +4038,9 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJOYW1lZEJhY2tzbGFzaFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3OCw3OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDY2LDY2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNywxMDcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"NamedBackslash\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(78,78)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(66,66)]),\\char-class([range(97,97)]),\\char-class([range(99,99)]),\\char-class([range(107,107)]),\\char-class([range(115,115)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(104,104)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmFyQXJncyIsc29ydCgiUGFyYW1ldGVycyIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJmb3JtYWxzIixzb3J0KCJGb3JtYWxzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIi4uLiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgia2V5d29yZEZvcm1hbHMiLHNvcnQoIktleXdvcmRGb3JtYWxzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se30p = (IConstructor) _read("prod(label(\"varArgs\",sort(\"Parameters\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"formals\",sort(\"Formals\")),layouts(\"LAYOUTLIST\"),lit(\"...\"),layouts(\"LAYOUTLIST\"),label(\"keywordFormals\",sort(\"KeywordFormals\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihzZXEoW2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSx7XG5vdC1wcmVjZWRlKFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KSxjb25kaXRpb25hbChcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkp = (IConstructor) _read("regular(seq([conditional(\\char-class([range(65,90),range(95,95),range(97,122)]),{\\not-precede(\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})]))", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZW1wdHkiLHNvcnQoIlRhZyIpKSxbbGl0KCJAIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSldLHt0YWcoIkZvbGRlZCIoKSksdGFnKCJjYXRlZ29yeSIoIkNvbW1lbnQiKSl9KQ0000 = (IConstructor) _read("prod(label(\"empty\",sort(\"Tag\")),[lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\"))],{tag(\"Folded\"()),tag(\"category\"(\"Comment\"))})", RascalValueFactory.Production);
- private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKFxwYXJhbWV0ZXJpemVkLXNvcnQoIktleXdvcmRBcmd1bWVudCIsW3NvcnQoIkV4cHJlc3Npb24iKV0pLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-seps(\\parameterized-sort(\"KeywordArgument\",[sort(\"Expression\")]),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkxBWU9VVCIpLFtsZXgoIkNvbW1lbnQiKV0se30p = (IConstructor) _read("prod(lex(\"LAYOUT\"),[lex(\"Comment\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQYXR0ZXJuIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXN0YXItc2Vwcyhzb3J0KFwiUGF0dGVyblwiKSxbbGl0KFwiLFwiKV0pIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihcaXRlci1zdGFyLXNlcHMoc29ydCgiUGF0dGVybiIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Pattern\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star-seps(sort(\\\"Pattern\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(sort(\"Pattern\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIn0iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"}\"),[\\char-class([range(125,125)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ0eXBlIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"type\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpLHJhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-star(\\\\char-class([range(45,45),range(48,57),range(65,90),range(95,95),range(97,122)]))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJJbXBvcnRlZE1vZHVsZSIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJJbXBvcnRlZE1vZHVsZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiSW1wb3J0ZWRNb2R1bGUiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ImportedModule\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ImportedModule\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"ImportedModule\")))})", RascalValueFactory.Production);
@@ -4050,15 +4054,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiRXhwcmVzc2lvbiIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-star-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVzY2VuZGFudCIsc29ydCgiUGF0dGVybiIpKSxbbGl0KCIvIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwYXR0ZXJuIixzb3J0KCJQYXR0ZXJuIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"descendant\",sort(\"Pattern\")),[lit(\"/\"),layouts(\"LAYOUTLIST\"),label(\"pattern\",sort(\"Pattern\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdHJhdGVneVwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Strategy\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(121,121)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIn0iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"}\"),[\\char-class([range(125,125)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIkNoYXIiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEsMzEpLHJhbmdlKDMzLDMzKSxyYW5nZSgzNSwzOCkscmFuZ2UoNDAsNDQpLHJhbmdlKDQ2LDU5KSxyYW5nZSg2MSw2MSkscmFuZ2UoNjMsOTApLHJhbmdlKDk0LDExMTQxMTEpXSldLHt0YWcoImNhdGVnb3J5IigiQ29uc3RhbnQiKSl9KQ0000 = (IConstructor) _read("prod(lex(\"Char\"),[\\char-class([range(1,31),range(33,33),range(35,38),range(40,44),range(46,59),range(61,61),range(63,90),range(94,1114111)])],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJSZW5hbWluZ1wiKSxbbGl0KFwiLFwiKV0pIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgyLDgyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"Renaming\\\"),[lit(\\\",\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZW51bWVyYXRvciIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXDwtIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"enumerator\",sort(\"Expression\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\"\\<-\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicmVhbCIsc29ydCgiTGl0ZXJhbCIpKSxbbGFiZWwoInJlYWxMaXRlcmFsIixsZXgoIlJlYWxMaXRlcmFsIikpXSx7dGFnKCJjYXRlZ29yeSIoIm51bWJlciIpKX0p = (IConstructor) _read("prod(label(\"real\",sort(\"Literal\")),[label(\"realLiteral\",lex(\"RealLiteral\"))],{tag(\"category\"(\"number\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImZ1bmN0aW9uIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMDIsMTAyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKV0se30p = (IConstructor) _read("prod(lit(\"function\"),[\\char-class([range(102,102)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlN0cmluZ0NoYXJhY3RlciIpLFtsZXgoIlVuaWNvZGVFc2NhcGUiKV0se30p = (IConstructor) _read("prod(lex(\"StringCharacter\"),[lex(\"UnicodeEscape\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJEYXRlQW5kVGltZVwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2OCw2OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY1LDY1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4NCw4NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"DateAndTime\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(68,68)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(65,65)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(84,84)]),\\char-class([range(105,105)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIkNhc2VJbnNlbnNpdGl2ZVN0cmluZ0NvbnN0YW50IiksW2xpdCgiXCciKSxsYWJlbCgiY2hhcnMiLFxpdGVyLXN0YXIobGV4KCJTdHJpbmdDaGFyYWN0ZXIiKSkpLGxpdCgiXCciKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(lex(\"CaseInsensitiveStringConstant\"),[lit(\"\\'\"),label(\"chars\",\\iter-star(lex(\"StringCharacter\"))),lit(\"\\'\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDb25jcmV0ZVBhcnRcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjcsNjcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"ConcretePart\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZ3JlYXRlclRoYW5PckVxIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw11PSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"greaterThanOrEq\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\>=\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIis9IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"+=\"),[\\char-class([range(43,43)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJzd2l0Y2giKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"switch\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidG9wRG93bkJyZWFrIixzb3J0KCJTdHJhdGVneSIpKSxbbGl0KCJ0b3AtZG93bi1icmVhayIpXSx7fSk00 = (IConstructor) _read("prod(label(\"topDownBreak\",sort(\"Strategy\")),[lit(\"top-down-break\")],{})", RascalValueFactory.Production);
@@ -4074,8 +4076,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJsYXlvdXQiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"layout\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlZhcmlhbnQiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgifCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-seps(sort(\"Variant\"),[layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaXRlclN0YXJTZXAiLHNvcnQoIlN5bSIpKSxbbGl0KCJ7IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzeW1ib2wiLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInNlcCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIn0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIqIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"iterStarSep\",sort(\"Sym\")),[lit(\"{\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),label(\"sep\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"}\"),layouts(\"LAYOUTLIST\"),lit(\"*\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaW5zZXJ0Iixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiaW5zZXJ0IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkYXRhVGFyZ2V0Iixzb3J0KCJEYXRhVGFyZ2V0IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHthc3NvYyhcbm9uLWFzc29jKCkpLHRhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"insert\",sort(\"Statement\")),[lit(\"insert\"),layouts(\"LAYOUTLIST\"),label(\"dataTarget\",sort(\"DataTarget\")),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{assoc(\\non-assoc()),tag(\"breakable\"())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIlByZVN0cmluZ0NoYXJzIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcaXRlci1zdGFyKGxleCgiU3RyaW5nQ2hhcmFjdGVyIikpLFxjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se3RhZygiY2F0ZWdvcnkiKCJDb25zdGFudCIpKX0p = (IConstructor) _read("prod(lex(\"PreStringChars\"),[\\char-class([range(34,34)]),\\iter-star(lex(\"StringCharacter\")),\\char-class([range(60,60)])],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWJzdHJhY3QiLHNvcnQoIkZ1bmN0aW9uRGVjbGFyYXRpb24iKSksW2xhYmVsKCJ0YWdzIixzb3J0KCJUYWdzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidmlzaWJpbGl0eSIsc29ydCgiVmlzaWJpbGl0eSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInNpZ25hdHVyZSIsc29ydCgiU2lnbmF0dXJlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjsiKV0se30p = (IConstructor) _read("prod(label(\"abstract\",sort(\"FunctionDeclaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),label(\"signature\",sort(\"Signature\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ3aGlsZSIpXSx7fSk00 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"while\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYnJhY2tldCIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIikiKV0se2JyYWNrZXQoKX0p = (IConstructor) _read("prod(label(\"bracket\",sort(\"Expression\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{bracket()})", RascalValueFactory.Production);
@@ -4084,11 +4084,9 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImJvdHRvbS11cC1icmVhayIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDcsMTA3KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"bottom-up-break\"),[\\char-class([range(98,98)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(45,45)]),\\char-class([range(117,117)]),\\char-class([range(112,112)]),\\char-class([range(45,45)]),\\char-class([range(98,98)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(107,107)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJDb21tZW50XCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDksMTA5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Comment\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicGFyYW1ldGVyIixzb3J0KCJTeW0iKSksW2xpdCgiJiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibm9udGVybWluYWwiLGxleCgiTm9udGVybWluYWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"parameter\",sort(\"Sym\")),[lit(\"&\"),layouts(\"LAYOUTLIST\"),label(\"nonterminal\",lex(\"Nonterminal\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiaWZUaGVuRWxzZSIsc29ydCgiU3RhdGVtZW50IikpLFtsYWJlbCgibGFiZWwiLHNvcnQoIkxhYmVsIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImlmIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY29uZGl0aW9ucyIsXGl0ZXItc2Vwcyhzb3J0KCJFeHByZXNzaW9uIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidGhlblN0YXRlbWVudCIsc29ydCgiU3RhdGVtZW50IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImVsc2UiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsc2VTdGF0ZW1lbnQiLGNvbmRpdGlvbmFsKHNvcnQoIlN0YXRlbWVudCIpLHtleGNlcHQoInZhcmlhYmxlRGVjbGFyYXRpb24iKSxleGNlcHQoImZ1bmN0aW9uRGVjbGFyYXRpb24iKX0pKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"ifThenElse\",sort(\"Statement\")),[label(\"label\",sort(\"Label\")),layouts(\"LAYOUTLIST\"),lit(\"if\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"conditions\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),label(\"thenStatement\",sort(\"Statement\")),layouts(\"LAYOUTLIST\"),lit(\"else\"),layouts(\"LAYOUTLIST\"),label(\"elseStatement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKGxleCgiTmFtZWRSZWdFeHAiKSkp = (IConstructor) _read("regular(\\iter-star(lex(\"NamedRegExp\")))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkp1c3RUaW1lIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkp1c3RUaW1lXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIkp1c3RUaW1lIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"JustTime\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"JustTime\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"JustTime\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInZpc2l0IiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTgsMTE4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"visit\"),[\\char-class([range(118,118)]),\\char-class([range(105,105)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(116,116)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZ3JlYXRlclRoYW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXD4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKFxub24tYXNzb2MoKSl9KQ0000 = (IConstructor) _read("prod(label(\"greaterThan\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmFyaWFibGUiLHNvcnQoIkRlY2xhcmF0aW9uIikpLFtsYWJlbCgidGFncyIsc29ydCgiVGFncyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInZpc2liaWxpdHkiLHNvcnQoIlZpc2liaWxpdHkiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0eXBlIixzb3J0KCJUeXBlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidmFyaWFibGVzIixcaXRlci1zZXBzKHNvcnQoIlZhcmlhYmxlIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7fSk00 = (IConstructor) _read("prod(label(\"variable\",sort(\"Declaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),label(\"variables\",\\iter-seps(sort(\"Variable\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\";\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm9wdChsaXQoXCIsXCIpKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"opt(lit(\\\",\\\"))\"),[\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(44,44)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkhleEludGVnZXJMaXRlcmFsIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODgsODgpLHJhbmdlKDEyMCwxMjApXSksY29uZGl0aW9uYWwoaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDcwKSxyYW5nZSg5NywxMDIpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSx7fSk00 = (IConstructor) _read("prod(lex(\"HexIntegerLiteral\"),[\\char-class([range(48,48)]),\\char-class([range(88,88),range(120,120)]),conditional(iter(\\char-class([range(48,57),range(65,70),range(97,102)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})],{})", RascalValueFactory.Production);
@@ -4096,6 +4094,8 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoIm9wdChcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"opt(\\\\char-class([range(48,57)]))\"),[\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2V0T3B0aW9uIixzb3J0KCJTaGVsbENvbW1hbmQiKSksW2xpdCgic2V0IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixzb3J0KCJRdWFsaWZpZWROYW1lIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKV0se30p = (IConstructor) _read("prod(label(\"setOption\",sort(\"ShellCommand\")),[lit(\"set\"),layouts(\"LAYOUTLIST\"),label(\"name\",sort(\"QualifiedName\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJPcHRpb25hbENvbW1hXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc5LDc5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjcsNjcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"OptionalComma\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(79,79)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(67,67)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaWZUaGVuRWxzZSIsc29ydCgiU3RhdGVtZW50IikpLFtsYWJlbCgibGFiZWwiLHNvcnQoIkxhYmVsIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImlmIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY29uZGl0aW9ucyIsXGl0ZXItc2Vwcyhzb3J0KCJFeHByZXNzaW9uIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidGhlblN0YXRlbWVudCIsc29ydCgiU3RhdGVtZW50IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoImVsc2UiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImVsc2VTdGF0ZW1lbnQiLGNvbmRpdGlvbmFsKHNvcnQoIlN0YXRlbWVudCIpLHtleGNlcHQoInZhcmlhYmxlRGVjbGFyYXRpb24iKSxleGNlcHQoImZ1bmN0aW9uRGVjbGFyYXRpb24iKX0pKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"ifThenElse\",sort(\"Statement\")),[label(\"label\",sort(\"Label\")),layouts(\"LAYOUTLIST\"),lit(\"if\"),layouts(\"LAYOUTLIST\"),lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"conditions\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\"),layouts(\"LAYOUTLIST\"),label(\"thenStatement\",sort(\"Statement\")),layouts(\"LAYOUTLIST\"),lit(\"else\"),layouts(\"LAYOUTLIST\"),label(\"elseStatement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYWRkaXRpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixjb25kaXRpb25hbChzb3J0KCJFeHByZXNzaW9uIikse2V4Y2VwdCgibWF0Y2giKSxleGNlcHQoIm5vTWF0Y2giKX0pKV0se30p = (IConstructor) _read("prod(label(\"addition\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"+\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",conditional(sort(\"Expression\"),{except(\"match\"),except(\"noMatch\")}))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJtb2QiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"mod\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImJyZWFrIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5OCw5OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNywxMDcpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"break\"),[\\char-class([range(98,98)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(97,97)]),\\char-class([range(107,107)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixccGFyYW1ldGVyaXplZC1zb3J0KCJNYXBwaW5nIixbc29ydCgiUGF0dGVybiIpXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxwYXJhbWV0ZXJpemVkLXNvcnQoXCJNYXBwaW5nXCIsW3NvcnQoXCJQYXR0ZXJuXCIpXSkiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKFxwYXJhbWV0ZXJpemVkLXNvcnQoIk1hcHBpbmciLFtzb3J0KCJQYXR0ZXJuIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\parameterized-sort(\"Mapping\",[sort(\"Pattern\")])),[\\char-class([range(0,0)]),lit(\"\\\\parameterized-sort(\\\"Mapping\\\",[sort(\\\"Pattern\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\parameterized-sort(\"Mapping\",[sort(\"Pattern\")])))})", RascalValueFactory.Production);
@@ -4116,7 +4116,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgibGFiZWxlZCIsc29ydCgiU3ltIikpLFtsYWJlbCgic3ltYm9sIixzb3J0KCJTeW0iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJsYWJlbCIsbGV4KCJOb250ZXJtaW5hbExhYmVsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"labeled\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),label(\"label\",lex(\"NonterminalLabel\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicG9zdCIsc29ydCgiUGF0aFRhaWwiKSksW2xhYmVsKCJwb3N0IixsZXgoIlBvc3RQYXRoQ2hhcnMiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"post\",sort(\"PathTail\")),[label(\"post\",lex(\"PostPathChars\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJGdW5jdGlvbk1vZGlmaWVycyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJGdW5jdGlvbk1vZGlmaWVyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiRnVuY3Rpb25Nb2RpZmllcnMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"FunctionModifiers\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"FunctionModifiers\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"FunctionModifiers\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYWRkaXRpb24iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixjb25kaXRpb25hbChzb3J0KCJFeHByZXNzaW9uIikse2V4Y2VwdCgibWF0Y2giKSxleGNlcHQoIm5vTWF0Y2giKX0pKV0se2Fzc29jKGxlZnQoKSl9KQ0000 = (IConstructor) _read("prod(label(\"addition\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"+\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",conditional(sort(\"Expression\"),{except(\"match\"),except(\"noMatch\")}))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJhcHBlbmQiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"append\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImFueSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMSwxMjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"any\"),[\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(121,121)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZmlyc3QiLHNvcnQoIlByb2QiKSksW2xhYmVsKCJsaHMiLHNvcnQoIlByb2QiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGNvbmRpdGlvbmFsKGxpdCgiXD4iKSx7XG5vdC1mb2xsb3cobGl0KCJcPiIpKX0pLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJQcm9kIikpXSx7YXNzb2MobGVmdCgpKX0p = (IConstructor) _read("prod(label(\"first\",sort(\"Prod\")),[label(\"lhs\",sort(\"Prod\")),layouts(\"LAYOUTLIST\"),conditional(lit(\"\\>\"),{\\not-follow(lit(\"\\>\"))}),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Prod\"))],{assoc(left())})", RascalValueFactory.Production);
@@ -4128,16 +4127,11 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgicXVhbGlmaWVkTmFtZSIsc29ydCgiUGF0dGVybiIpKSxbbGFiZWwoInF1YWxpZmllZE5hbWUiLHNvcnQoIlF1YWxpZmllZE5hbWUiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"qualifiedName\",sort(\"Pattern\")),[label(\"qualifiedName\",sort(\"QualifiedName\"))],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zZXBzKHNvcnQoIlN5bSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJ8IiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\"),lit(\"|\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYXJiaXRyYXJ5Iixzb3J0KCJQYXR0ZXJuV2l0aEFjdGlvbiIpKSxbbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixzb3J0KCJTdGF0ZW1lbnQiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"arbitrary\",sort(\"PatternWithAction\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"statement\",sort(\"Statement\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJPY3RhbEludGVnZXJMaXRlcmFsXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc5LDc5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDczLDczKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Niw3NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"OctalIntegerLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(79,79)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(73,73)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJEYXRhVGFyZ2V0IikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkRhdGFUYXJnZXRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkRhdGFUYXJnZXQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"DataTarget\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"DataTarget\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"DataTarget\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIkNoYXIiKSxbbGl0KCJcXCIpLFxjaGFyLWNsYXNzKFtyYW5nZSgzMiwzMikscmFuZ2UoMzQsMzQpLHJhbmdlKDM5LDM5KSxyYW5nZSg0NSw0NSkscmFuZ2UoNjAsNjApLHJhbmdlKDYyLDYyKSxyYW5nZSg5MSw5MykscmFuZ2UoOTgsOTgpLHJhbmdlKDEwMiwxMDIpLHJhbmdlKDExMCwxMTApLHJhbmdlKDExNCwxMTQpLHJhbmdlKDExNiwxMTYpXSldLHt0YWcoImNhdGVnb3J5IigiQ29uc3RhbnQiKSl9KQ0000 = (IConstructor) _read("prod(lex(\"Char\"),[lit(\"\\\\\"),\\char-class([range(32,32),range(34,34),range(39,39),range(45,45),range(60,60),range(62,62),range(91,93),range(98,98),range(102,102),range(110,110),range(114,114),range(116,116)])],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicG9zdCIsc29ydCgiUHJvdG9jb2xUYWlsIikpLFtsYWJlbCgicG9zdCIsbGV4KCJQb3N0UHJvdG9jb2xDaGFycyIpKV0se30p = (IConstructor) _read("prod(label(\"post\",sort(\"ProtocolTail\")),[label(\"post\",lex(\"PostProtocolChars\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDb21tb25LZXl3b3JkUGFyYW1ldGVycyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJDb21tb25LZXl3b3JkUGFyYW1ldGVyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiQ29tbW9uS2V5d29yZFBhcmFtZXRlcnMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"CommonKeywordParameters\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"CommonKeywordParameters\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"CommonKeywordParameters\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixhbHQoe2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pKX0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXN0YXIoYWx0KHtjb25kaXRpb25hbChcXGNoYXItY2xhc3MoW3JhbmdlKDQyLDQyKV0pLHtcXG5vdC1mb2xsb3coXFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSl9KSxcXGNoYXItY2xhc3MoW3JhbmdlKDEsNDEpLHJhbmdlKDQzLDExMTQxMTEpXSl9KSkiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKFxpdGVyLXN0YXIoYWx0KHtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoNDIsNDIpXSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSl9KSxcY2hhci1jbGFzcyhbcmFuZ2UoMSw0MSkscmFuZ2UoNDMsMTExNDExMSldKX0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(alt({conditional(\\\\char-class([range(42,42)]),{\\\\not-follow(\\\\char-class([range(47,47)]))}),\\\\char-class([range(1,41),range(43,1114111)])}))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])}))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTYsNTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NCw1NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Nyw1NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTUsNTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OSw0OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlRpbWVab25lUGFydCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJUaW1lWm9uZVBhcnRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiVGltZVpvbmVQYXJ0IikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"TimeZonePart\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"TimeZonePart\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"TimeZonePart\")))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNlcShbY29uZGl0aW9uYWwoXFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSx7XFxub3QtcHJlY2VkZShcXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pLGNvbmRpdGlvbmFsKFxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSx7XFxub3QtZm9sbG93KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMywxMTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjUsMTI1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjMsMTIzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMiwxMDIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOSwxMTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDksNDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUwLDUwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyNSwxMjUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"seq([conditional(\\\\char-class([range(65,90),range(95,95),range(97,122)]),{\\\\not-precede(\\\\char-class([range(65,90),range(95,95),range(97,122)]))}),conditional(\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\\\not-follow(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(45,45)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(99,99)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(45,45)]),\\char-class([range(102,102)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(108,108)]),\\char-class([range(111,111)]),\\char-class([range(119,119)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJmaWx0ZXIiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"filter\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZGF0YSIsc29ydCgiS2luZCIpKSxbbGl0KCJkYXRhIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"data\",sort(\"Kind\")),[lit(\"data\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlZ0V4cCIpLFtsaXQoIlw8IiksbGV4KCJOYW1lIiksbGl0KCI6IiksXGl0ZXItc3RhcihsZXgoIk5hbWVkUmVnRXhwIikpLGxpdCgiXD4iKV0se30p = (IConstructor) _read("prod(lex(\"RegExp\"),[lit(\"\\<\"),lex(\"Name\"),lit(\":\"),\\iter-star(lex(\"NamedRegExp\")),lit(\"\\>\")],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiVG9wbGV2ZWwiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-star-seps(sort(\"Toplevel\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk5hbWUiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc2Vwcyhzb3J0KFwiTmFtZVwiKSxbbGl0KFwiOjpcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2VwcyhsZXgoIk5hbWUiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOjoiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"Name\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"Name\\\"),[lit(\\\"::\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(lex(\"Name\"),[layouts(\"LAYOUTLIST\"),lit(\"::\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
@@ -4151,27 +4145,29 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsZXgoIk5hbWVkUmVnRXhwIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDcsNDcpLHJhbmdlKDYwLDYwKSxyYW5nZSg2Miw2MikscmFuZ2UoOTIsOTIpXSldLHt9KQ0000 = (IConstructor) _read("prod(lex(\"NamedRegExp\"),[\\char-class([range(92,92)]),\\char-class([range(47,47),range(60,60),range(62,62),range(92,92)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk91dHB1dCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJPdXRwdXRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiT3V0cHV0IikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"Output\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Output\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"Output\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaXRlclN0YXIiLHNvcnQoIlN5bSIpKSxbbGFiZWwoInN5bWJvbCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIioiKV0se30p = (IConstructor) _read("prod(label(\"iterStar\",sort(\"Sym\")),[label(\"symbol\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"*\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJPY3RhbEludGVnZXJMaXRlcmFsXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc5LDc5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDczLDczKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Niw3NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"OctalIntegerLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(79,79)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(73,73)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixhbHQoe2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pKX0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXN0YXIoYWx0KHtcXGNoYXItY2xhc3MoW3JhbmdlKDQyLDQyKV0pLFxcY2hhci1jbGFzcyhbcmFuZ2UoMSw0MSkscmFuZ2UoNDMsMTExNDExMSldKX0pKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3RhcihhbHQoe2NvbmRpdGlvbmFsKFxjaGFyLWNsYXNzKFtyYW5nZSg0Miw0MildKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pKX0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxLDQxKSxyYW5nZSg0MywxMTE0MTExKV0pfSkpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(alt({\\\\char-class([range(42,42)]),\\\\char-class([range(1,41),range(43,1114111)])}))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])}))))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiRnVuY3Rpb25Nb2RpZmllciIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSk00 = (IConstructor) _read("regular(\\iter-star-seps(sort(\"FunctionModifier\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk9jdGFsSW50ZWdlckxpdGVyYWwiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiT2N0YWxJbnRlZ2VyTGl0ZXJhbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJPY3RhbEludGVnZXJMaXRlcmFsIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"OctalIntegerLiteral\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"OctalIntegerLiteral\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"OctalIntegerLiteral\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiZXF1aXZhbGVuY2UiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXDw9PVw11IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyaHMiLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"equivalence\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\<==\\>\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJDb21tb25LZXl3b3JkUGFyYW1ldGVycyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJDb21tb25LZXl3b3JkUGFyYW1ldGVyc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiQ29tbW9uS2V5d29yZFBhcmFtZXRlcnMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"CommonKeywordParameters\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"CommonKeywordParameters\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"CommonKeywordParameters\")))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiU3RhdGVtZW50IiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-star-seps(sort(\"Statement\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZ2xvYmFsRGlyZWN0aXZlIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiZ2xvYmFsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0eXBlIixzb3J0KCJUeXBlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibmFtZXMiLFxpdGVyLXNlcHMoc29ydCgiUXVhbGlmaWVkTmFtZSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjsiKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"globalDirective\",sort(\"Statement\")),[lit(\"global\"),layouts(\"LAYOUTLIST\"),label(\"type\",sort(\"Type\")),layouts(\"LAYOUTLIST\"),label(\"names\",\\iter-seps(sort(\"QualifiedName\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlRpbWVab25lUGFydCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJUaW1lWm9uZVBhcnRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiVGltZVpvbmVQYXJ0IikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"TimeZonePart\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"TimeZonePart\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"TimeZonePart\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYXBwZW5kIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgiYXBwZW5kIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJkYXRhVGFyZ2V0Iixzb3J0KCJEYXRhVGFyZ2V0IikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3RhdGVtZW50Iixjb25kaXRpb25hbChzb3J0KCJTdGF0ZW1lbnQiKSx7ZXhjZXB0KCJ2YXJpYWJsZURlY2xhcmF0aW9uIiksZXhjZXB0KCJmdW5jdGlvbkRlY2xhcmF0aW9uIil9KSldLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"append\",sort(\"Statement\")),[lit(\"append\"),layouts(\"LAYOUTLIST\"),label(\"dataTarget\",sort(\"DataTarget\")),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSZWdFeHBcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODIsODIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjAsMTIwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"RegExp\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiQ2F0Y2giKSksW2xpdCgiY2F0Y2giKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI6IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJib2R5Iixzb3J0KCJTdGF0ZW1lbnQiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",sort(\"Catch\")),[lit(\"catch\"),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"body\",sort(\"Statement\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiVGFnIikpLFtsaXQoIkAiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoIm5hbWUiLGxleCgiTmFtZSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImNvbnRlbnRzIixsZXgoIlRhZ1N0cmluZyIpKV0se3RhZygiRm9sZGVkIigpKSx0YWcoImNhdGVnb3J5IigiQ29tbWVudCIpKX0p = (IConstructor) _read("prod(label(\"default\",sort(\"Tag\")),[lit(\"@\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),label(\"contents\",lex(\"TagString\"))],{tag(\"Folded\"()),tag(\"category\"(\"Comment\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiZGF0YSIsc29ydCgiS2luZCIpKSxbbGl0KCJkYXRhIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"data\",sort(\"Kind\")),[lit(\"data\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic3BsaWNlUGx1cyIsc29ydCgiUGF0dGVybiIpKSxbbGl0KCIrIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJhcmd1bWVudCIsc29ydCgiUGF0dGVybiIpKV0se30p = (IConstructor) _read("prod(label(\"splicePlus\",sort(\"Pattern\")),[lit(\"+\"),layouts(\"LAYOUTLIST\"),label(\"argument\",sort(\"Pattern\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJNaWRQcm90b2NvbENoYXJzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc3LDc3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"MidProtocolChars\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(77,77)]),\\char-class([range(105,105)]),\\char-class([range(100,100)]),\\char-class([range(80,80)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(115,115)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJTeW1cIikpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Myw4MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIxLDEyMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"Sym\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(121,121)]),\\char-class([range(109,109)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaWZEZWZpbmVkT3JEZWZhdWx0Iixzb3J0KCJBc3NpZ25hYmxlIikpLFtsYWJlbCgicmVjZWl2ZXIiLHNvcnQoIkFzc2lnbmFibGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiPyIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZGVmYXVsdEV4cHJlc3Npb24iLHNvcnQoIkV4cHJlc3Npb24iKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"ifDefinedOrDefault\",sort(\"Assignable\")),[label(\"receiver\",sort(\"Assignable\")),layouts(\"LAYOUTLIST\"),lit(\"?\"),layouts(\"LAYOUTLIST\"),label(\"defaultExpression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIjovLyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoNTgsNTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ3LDQ3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKV0se30p = (IConstructor) _read("prod(lit(\"://\"),[\\char-class([range(58,58)]),\\char-class([range(47,47)]),\\char-class([range(47,47)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYXNzZXJ0V2l0aE1lc3NhZ2UiLHNvcnQoIlN0YXRlbWVudCIpKSxbbGl0KCJhc3NlcnQiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImV4cHJlc3Npb24iLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgibWVzc2FnZSIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCI7IildLHt0YWcoImJyZWFrYWJsZSIoKSl9KQ0000 = (IConstructor) _read("prod(label(\"assertWithMessage\",sort(\"Statement\")),[lit(\"assert\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"message\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"())})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm90SW4iLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJsaHMiLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgibm90aW4iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInJocyIsc29ydCgiRXhwcmVzc2lvbiIpKV0se2Fzc29jKFxub24tYXNzb2MoKSl9KQ0000 = (IConstructor) _read("prod(label(\"notIn\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"notin\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImxvYyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"loc\"),[\\char-class([range(108,108)]),\\char-class([range(111,111)]),\\char-class([range(99,99)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJsb2MiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"loc\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29uY3JldGUiLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJjb25jcmV0ZSIsbGV4KCJDb25jcmV0ZSIpKV0se30p = (IConstructor) _read("prod(label(\"concrete\",sort(\"Expression\")),[label(\"concrete\",lex(\"Concrete\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJCb2R5XCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY2LDY2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjEsMTIxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Body\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(66,66)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(121,121)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJBc3NvY1wiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw2NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Assoc\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(65,65)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYmFnIixzb3J0KCJCYXNpY1R5cGUiKSksW2xpdCgiYmFnIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"bag\",sort(\"BasicType\")),[lit(\"bag\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zZXBzKHNvcnQoXCJWYXJpYW50XCIpLFtsaXQoXCJ8XCIpXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODYsODYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTI0LDEyNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"\\\\iter-seps(sort(\\\"Variant\\\"),[lit(\\\"|\\\")])\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(112,112)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(86,86)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(91,91)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(124,124)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkNvbmNyZXRlUGFydCIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJDb25jcmV0ZVBhcnRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGxleCgiQ29uY3JldGVQYXJ0IikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"ConcretePart\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"ConcretePart\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"ConcretePart\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiTG9jYXRpb25MaXRlcmFsIikpLFtsYWJlbCgicHJvdG9jb2xQYXJ0Iixzb3J0KCJQcm90b2NvbFBhcnQiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwYXRoUGFydCIsc29ydCgiUGF0aFBhcnQiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",sort(\"LocationLiteral\")),[label(\"protocolPart\",sort(\"ProtocolPart\")),layouts(\"LAYOUTLIST\"),label(\"pathPart\",sort(\"PathPart\"))],{})", RascalValueFactory.Production);
@@ -4180,10 +4176,13 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJOYW1lZFJlZ0V4cFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3OCw3OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDgyLDgyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2OSw2OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIwLDEyMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"NamedRegExp\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(78,78)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(103,103)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlJlZ0V4cE1vZGlmaWVyIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlJlZ0V4cE1vZGlmaWVyXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlJlZ0V4cE1vZGlmaWVyIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"RegExpModifier\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"RegExpModifier\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"RegExpModifier\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIkNvbmNyZXRlIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkNvbmNyZXRlXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIkNvbmNyZXRlIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"Concrete\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Concrete\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"Concrete\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicmF0aW9uYWwiLHNvcnQoIkxpdGVyYWwiKSksW2xhYmVsKCJyYXRpb25hbExpdGVyYWwiLGxleCgiUmF0aW9uYWxMaXRlcmFsIikpXSx7dGFnKCJjYXRlZ29yeSIoIm51bWJlciIpKX0p = (IConstructor) _read("prod(label(\"rational\",sort(\"Literal\")),[label(\"rationalLiteral\",lex(\"RationalLiteral\"))],{tag(\"category\"(\"number\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYWJzZW50Iixzb3J0KCJDb21tb25LZXl3b3JkUGFyYW1ldGVycyIpKSxbXSx7fSk00 = (IConstructor) _read("prod(label(\"absent\",sort(\"CommonKeywordParameters\")),[],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibWlkSW50ZXJwb2xhdGVkIixzb3J0KCJTdHJpbmdUYWlsIikpLFtsYWJlbCgibWlkIixsZXgoIk1pZFN0cmluZ0NoYXJzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZXhwcmVzc2lvbiIsc29ydCgiRXhwcmVzc2lvbiIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInRhaWwiLHNvcnQoIlN0cmluZ1RhaWwiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"midInterpolated\",sort(\"StringTail\")),[label(\"mid\",lex(\"MidStringChars\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"StringTail\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJJbXBvcnRcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzMsNzMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Import\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(73,73)]),\\char-class([range(109,109)]),\\char-class([range(112,112)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiUHJvZE1vZGlmaWVyIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000 = (IConstructor) _read("regular(\\iter-star-seps(sort(\"ProdModifier\"),[layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiYmFnIixzb3J0KCJCYXNpY1R5cGUiKSksW2xpdCgiYmFnIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"bag\",sort(\"BasicType\")),[lit(\"bag\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIlN0cmluZ0NvbnN0YW50IiksW2xpdCgiXCIiKSxsYWJlbCgiY2hhcnMiLFxpdGVyLXN0YXIobGV4KCJTdHJpbmdDaGFyYWN0ZXIiKSkpLGxpdCgiXCIiKV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(lex(\"StringConstant\"),[lit(\"\\\"\"),label(\"chars\",\\iter-star(lex(\"StringCharacter\"))),lit(\"\\\"\")],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlJlZ0V4cExpdGVyYWwiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiUmVnRXhwTGl0ZXJhbFwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJSZWdFeHBMaXRlcmFsIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"RegExpLiteral\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"RegExpLiteral\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"RegExpLiteral\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIj8iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDYzLDYzKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"?\"),[\\char-class([range(63,63)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYnJhY2tldCIsc29ydCgiQ2xhc3MiKSksW2xpdCgiKCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY2hhckNsYXNzIixzb3J0KCJDbGFzcyIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHticmFja2V0KCl9KQ0000 = (IConstructor) _read("prod(label(\"bracket\",sort(\"Class\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"charClass\",sort(\"Class\")),layouts(\"LAYOUTLIST\"),lit(\")\")],{bracket()})", RascalValueFactory.Production);
@@ -4201,18 +4200,17 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJBc3NvYyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJBc3NvY1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiQXNzb2MiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Assoc\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Assoc\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Assoc\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxjb25kaXRpb25hbChsaXQoIi4iKSx7XG5vdC1mb2xsb3cobGl0KCIuIikpfSksXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pKV0se30p = (IConstructor) _read("prod(lex(\"RealLiteral\"),[iter(\\char-class([range(48,57)])),conditional(lit(\".\"),{\\not-follow(lit(\".\"))}),\\iter-star(\\char-class([range(48,57)])),opt(\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJCb3VuZFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2Niw2NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"Bound\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(66,66)]),\\char-class([range(111,111)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIk1pZFN0cmluZ0NoYXJzIiksW1xjaGFyLWNsYXNzKFtyYW5nZSg2Miw2MildKSxcaXRlci1zdGFyKGxleCgiU3RyaW5nQ2hhcmFjdGVyIikpLFxjaGFyLWNsYXNzKFtyYW5nZSg2MCw2MCldKV0se3RhZygiY2F0ZWdvcnkiKCJDb25zdGFudCIpKX0p = (IConstructor) _read("prod(lex(\"MidStringChars\"),[\\char-class([range(62,62)]),\\iter-star(lex(\"StringCharacter\")),\\char-class([range(60,60)])],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY2hhcmFjdGVyIixzb3J0KCJSYW5nZSIpKSxbbGFiZWwoImNoYXJhY3RlciIsbGV4KCJDaGFyIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"character\",sort(\"Range\")),[label(\"character\",lex(\"Char\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJEYXRhVHlwZVNlbGVjdG9yIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIkRhdGFUeXBlU2VsZWN0b3JcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIkRhdGFUeXBlU2VsZWN0b3IiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"DataTypeSelector\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"DataTypeSelector\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"DataTypeSelector\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJhc3NlcnQiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"assert\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJGdW5jdGlvbk1vZGlmaWVyXCIpKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzAsNzApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Nyw3NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAyLDEwMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"FunctionModifier\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIi89IiksW1xjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjEsNjEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"/=\"),[\\char-class([range(47,47)]),\\char-class([range(61,61)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJQcm9kTW9kaWZpZXIiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJcXGl0ZXItc3Rhcihzb3J0KFwiUHJvZE1vZGlmaWVyXCIpKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlByb2RNb2RpZmllciIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"ProdModifier\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-star(sort(\\\"ProdModifier\\\"))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-star-seps(sort(\"ProdModifier\"),[layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZnJvbVRvIixzb3J0KCJSYW5nZSIpKSxbbGFiZWwoInN0YXJ0IixsZXgoIkNoYXIiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiZW5kIixsZXgoIkNoYXIiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"fromTo\",sort(\"Range\")),[label(\"start\",lex(\"Char\")),layouts(\"LAYOUTLIST\"),lit(\"-\"),layouts(\"LAYOUTLIST\"),label(\"end\",lex(\"Char\"))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibm90UHJlY2VkZSIsc29ydCgiU3ltIikpLFtsYWJlbCgibWF0Y2giLHNvcnQoIlN5bSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIhXDxcPCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3ltYm9sIixzb3J0KCJTeW0iKSldLHthc3NvYyhyaWdodCgpKX0p = (IConstructor) _read("prod(label(\"notPrecede\",sort(\"Sym\")),[label(\"match\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),lit(\"!\\<\\<\"),layouts(\"LAYOUTLIST\"),label(\"symbol\",sort(\"Sym\"))],{assoc(right())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicmVzdWx0T3V0cHV0IixsZXgoIk91dHB1dCIpKSxbbGl0KCLih6giKSxcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSgxLDkpLHJhbmdlKDExLDEyKSxyYW5nZSgxNCwxMTE0MTExKV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAsMTApXSldLHt0YWcoImNhdGVnb3J5Iigic3RyaW5nIikpfSk00 = (IConstructor) _read("prod(label(\"resultOutput\",lex(\"Output\")),[lit(\"⇨\"),\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])),\\char-class([range(10,10)])],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiVHlwZUFyZyIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIsIiksbGF5b3V0cygiTEFZT1VUTElTVCIpXSkp = (IConstructor) _read("regular(\\iter-star-seps(sort(\"TypeArg\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")]))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiTW9kdWxlUGFyYW1ldGVycyIpKSxbbGl0KCJbIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJwYXJhbWV0ZXJzIixcaXRlci1zZXBzKHNvcnQoIlR5cGVWYXIiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiLCIpLGxheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJdIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"default\",sort(\"ModuleParameters\")),[lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"parameters\",\\iter-seps(sort(\"TypeVar\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJkYXRhIildLHt9KQ0000 = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"data\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibGVzc1RoYW5PckVxIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIlw8PSIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"lessThanOrEq\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"\\<=\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdHJpbmdMaXRlcmFsXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgzLDgzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Niw3NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"StringLiteral\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(76,76)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIk9jdGFsSW50ZWdlckxpdGVyYWwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLGNvbmRpdGlvbmFsKGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU1KV0pKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KV0se30p = (IConstructor) _read("prod(lex(\"OctalIntegerLiteral\"),[\\char-class([range(48,48)]),conditional(iter(\\char-class([range(48,55)])),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiaW50ZXJwb2xhdGVkIixzb3J0KCJTdHJpbmdNaWRkbGUiKSksW2xhYmVsKCJtaWQiLGxleCgiTWlkU3RyaW5nQ2hhcnMiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidGFpbCIsc29ydCgiU3RyaW5nTWlkZGxlIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"interpolated\",sort(\"StringMiddle\")),[label(\"mid\",lex(\"MidStringChars\")),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"StringMiddle\"))],{})", RascalValueFactory.Production);
@@ -4221,8 +4219,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInByaXZhdGUiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExOCwxMTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"private\"),[\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(118,118)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NykscmFuZ2UoNjUsOTApLHJhbmdlKDk1LDk1KSxyYW5nZSg5NywxMjIpXSkpKQ0000 = (IConstructor) _read("regular(\\iter-star(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])))", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg5LDkpLHJhbmdlKDMyLDMyKSxyYW5nZSgxNjAsMTYwKSxyYW5nZSg1NzYwLDU3NjApLHJhbmdlKDgxOTIsODIwMikscmFuZ2UoODIzOSw4MjM5KSxyYW5nZSg4Mjg3LDgyODcpLHJhbmdlKDEyMjg4LDEyMjg4KV0pKSk00 = (IConstructor) _read("regular(\\iter-star(\\char-class([range(9,9),range(32,32),range(160,160),range(5760,5760),range(8192,8202),range(8239,8239),range(8287,8287),range(12288,12288)])))", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNlcShbY29uZGl0aW9uYWwoXFxjaGFyLWNsYXNzKFtyYW5nZSg2NSw5MCldKSx7XFxub3QtcHJlY2VkZShcXGNoYXItY2xhc3MoW3JhbmdlKDY1LDkwKV0pKX0pLGNvbmRpdGlvbmFsKFxcaXRlci1zdGFyKFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKSx7XFxub3QtZm9sbG93KFxcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpLHJhbmdlKDY1LDkwKSxyYW5nZSg5NSw5NSkscmFuZ2UoOTcsMTIyKV0pKX0pXSkiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMywxMTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEyMywxMjMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTcsNTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDQ4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTI1LDEyNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIzLDEyMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDIsMTAyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTksMTE5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU0LDU0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw0OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Myw1MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDU3LDU3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ5LDQ5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1MCw1MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTAsNTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjUsMTI1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"seq([conditional(\\\\char-class([range(65,90)]),{\\\\not-precede(\\\\char-class([range(65,90)]))}),conditional(\\\\iter-star(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)])),{\\\\not-follow(\\\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(45,45)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(99,99)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(123,123)]),\\char-class([range(92,92)]),\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(45,45)]),\\char-class([range(102,102)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(108,108)]),\\char-class([range(111,111)]),\\char-class([range(119,119)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(54,54)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(48,48)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(44,44)]),\\char-class([range(57,57)]),\\char-class([range(53,53)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(57,57)]),\\char-class([range(55,55)]),\\char-class([range(44,44)]),\\char-class([range(49,49)]),\\char-class([range(50,50)]),\\char-class([range(50,50)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(125,125)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIlxcaXRlci1zdGFyKHNvcnQoXCJGdW5jdGlvbk1vZGlmaWVyXCIpKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzAsNzApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Nyw3NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAyLDEwMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"\\\\iter-star(sort(\\\"FunctionModifier\\\"))\"),[\\char-class([range(92,92)]),\\char-class([range(105,105)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(115,115)]),\\char-class([range(116,116)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(70,70)]),\\char-class([range(117,117)]),\\char-class([range(110,110)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(105,105)]),\\char-class([range(102,102)]),\\char-class([range(105,105)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk1pZFN0cmluZ0NoYXJzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIk1pZFN0cmluZ0NoYXJzXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIk1pZFN0cmluZ0NoYXJzIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"MidStringChars\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"MidStringChars\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"MidStringChars\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibm9uZSIsXHBhcmFtZXRlcml6ZWQtc29ydCgiS2V5d29yZEFyZ3VtZW50cyIsW3NvcnQoIlBhdHRlcm4iKV0pKSxbXSx7fSk00 = (IConstructor) _read("prod(label(\"none\",\\parameterized-sort(\"KeywordArguments\",[sort(\"Pattern\")])),[],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiYm91bmRlZCIsc29ydCgiVHlwZVZhciIpKSxbbGl0KCImIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXDw6IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJib3VuZCIsc29ydCgiVHlwZSIpKV0se30p = (IConstructor) _read("prod(label(\"bounded\",sort(\"TypeVar\")),[lit(\"&\"),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\"\\<:\"),layouts(\"LAYOUTLIST\"),label(\"bound\",sort(\"Type\"))],{})", RascalValueFactory.Production);
@@ -4233,16 +4229,15 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoImpvaW4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDEwNiwxMDYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"join\"),[\\char-class([range(106,106)]),\\char-class([range(111,111)]),\\char-class([range(105,105)]),\\char-class([range(110,110)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29tbWFuZGxpc3QiLHNvcnQoIkNvbW1hbmRzIikpLFtsYWJlbCgiY29tbWFuZHMiLFxpdGVyLXNlcHMoc29ydCgiRXZhbENvbW1hbmQiKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpXSx7fSk00 = (IConstructor) _read("prod(label(\"commandlist\",sort(\"Commands\")),[label(\"commands\",\\iter-seps(sort(\"EvalCommand\"),[layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2xpY2UiLHNvcnQoIkV4cHJlc3Npb24iKSksW2NvbmRpdGlvbmFsKGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpLHtleGNlcHQoImlzRGVmaW5lZCIpLGV4Y2VwdCgidHJhbnNpdGl2ZUNsb3N1cmUiKSxleGNlcHQoInRyYW5zaXRpdmVSZWZsZXhpdmVDbG9zdXJlIil9KSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCJbIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJvcHRGaXJzdCIsc29ydCgiT3B0aW9uYWxFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIi4uIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJvcHRMYXN0Iixzb3J0KCJPcHRpb25hbEV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiXSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"slice\",sort(\"Expression\")),[conditional(label(\"expression\",sort(\"Expression\")),{except(\"isDefined\"),except(\"transitiveClosure\"),except(\"transitiveReflexiveClosure\")}),layouts(\"LAYOUTLIST\"),lit(\"[\"),layouts(\"LAYOUTLIST\"),label(\"optFirst\",sort(\"OptionalExpression\")),layouts(\"LAYOUTLIST\"),lit(\"..\"),layouts(\"LAYOUTLIST\"),label(\"optLast\",sort(\"OptionalExpression\")),layouts(\"LAYOUTLIST\"),lit(\"]\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsZXgoIkNvbW1lbnQiKSxbbGl0KCIvKiIpLFxpdGVyLXN0YXIoYWx0KHtjb25kaXRpb25hbChcY2hhci1jbGFzcyhbcmFuZ2UoNDIsNDIpXSkse1xub3QtZm9sbG93KFxjaGFyLWNsYXNzKFtyYW5nZSg0Nyw0NyldKSl9KSxcY2hhci1jbGFzcyhbcmFuZ2UoMSw0MSkscmFuZ2UoNDMsMTExNDExMSldKX0pKSxsaXQoIiovIildLHt0YWcoImNhdGVnb3J5IigiY29tbWVudCIpKX0p = (IConstructor) _read("prod(lex(\"Comment\"),[lit(\"/*\"),\\iter-star(alt({conditional(\\char-class([range(42,42)]),{\\not-follow(\\char-class([range(47,47)]))}),\\char-class([range(1,41),range(43,1114111)])})),lit(\"*/\")],{tag(\"category\"(\"comment\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibW9kdWxvIixzb3J0KCJFeHByZXNzaW9uIikpLFtsYWJlbCgibGhzIixzb3J0KCJFeHByZXNzaW9uIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIm1vZCIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgicmhzIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MobGVmdCgpKX0p = (IConstructor) _read("prod(label(\"modulo\",sort(\"Expression\")),[label(\"lhs\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"mod\"),layouts(\"LAYOUTLIST\"),label(\"rhs\",sort(\"Expression\"))],{assoc(left())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJLZXl3b3JkRm9ybWFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiXFxpdGVyLXNlcHMoc29ydChcIktleXdvcmRGb3JtYWxcIiksW2xpdChcIixcIildKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoXGl0ZXItc2Vwcyhzb3J0KCJLZXl3b3JkRm9ybWFsIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"KeywordFormal\")),[\\char-class([range(0,0)]),lit(\"\\\\iter-seps(sort(\\\"KeywordFormal\\\"),[lit(\\\",\\\")])\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(\\iter-seps(sort(\"KeywordFormal\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmF0aW9uYWwiLHNvcnQoIkJhc2ljVHlwZSIpKSxbbGl0KCJyYXQiKV0se30p = (IConstructor) _read("prod(label(\"rational\",sort(\"BasicType\")),[lit(\"rat\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQcm90b2NvbFRhaWxcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODAsODApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4NCw4NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"ProtocolTail\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(114,114)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(99,99)]),\\char-class([range(111,111)]),\\char-class([range(108,108)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(105,105)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJudW0iKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"num\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIl4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk0LDk0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"^\"),[\\char-class([range(94,94)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJLZXl3b3JkRm9ybWFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIktleXdvcmRGb3JtYWxcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIktleXdvcmRGb3JtYWwiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"KeywordFormal\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"KeywordFormal\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"KeywordFormal\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidmlldyIsc29ydCgiS2luZCIpKSxbbGl0KCJ2aWV3IildLHt9KQ0000 = (IConstructor) _read("prod(label(\"view\",sort(\"Kind\")),[lit(\"view\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm9uZSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKV0se30p = (IConstructor) _read("prod(lit(\"one\"),[\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(101,101)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoIm51bSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKV0se30p = (IConstructor) _read("prod(lit(\"num\"),[\\char-class([range(110,110)]),\\char-class([range(117,117)]),\\char-class([range(109,109)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgidGVtcGxhdGUiLHNvcnQoIlN0cmluZ0xpdGVyYWwiKSksW2xhYmVsKCJwcmUiLGxleCgiUHJlU3RyaW5nQ2hhcnMiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0ZW1wbGF0ZSIsc29ydCgiU3RyaW5nVGVtcGxhdGUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJ0YWlsIixzb3J0KCJTdHJpbmdUYWlsIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"template\",sort(\"StringLiteral\")),[label(\"pre\",lex(\"PreStringChars\")),layouts(\"LAYOUTLIST\"),label(\"template\",sort(\"StringTemplate\")),layouts(\"LAYOUTLIST\"),label(\"tail\",sort(\"StringTail\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJPcHRpb25hbEV4cHJlc3Npb25cIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzksNzkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2OSw2OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTIwLDEyMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"OptionalExpression\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(79,79)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(108,108)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdHJpbmdNaWRkbGVcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODMsODMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc3LDc3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDAsMTAwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"StringMiddle\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(77,77)]),\\char-class([range(105,105)]),\\char-class([range(100,100)]),\\char-class([range(100,100)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
@@ -4254,8 +4249,12 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJQYXRoVGFpbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4MCw4MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA1LDEwNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"PathTail\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(104,104)]),\\char-class([range(84,84)]),\\char-class([range(97,97)]),\\char-class([range(105,105)]),\\char-class([range(108,108)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIiwiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\",\"),[\\char-class([range(44,44)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm5vbi1hc3NvYyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKV0se30p = (IConstructor) _read("prod(lit(\"non-assoc\"),[\\char-class([range(110,110)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(45,45)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(99,99)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgibm9NYXRjaCIsc29ydCgiRXhwcmVzc2lvbiIpKSxbbGFiZWwoInBhdHRlcm4iLHNvcnQoIlBhdHRlcm4iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiITo9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpXSx7fSk00 = (IConstructor) _read("prod(label(\"noMatch\",sort(\"Expression\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\"!:=\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIl4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk0LDk0KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"^\"),[\\char-class([range(94,94)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJFeHByZXNzaW9uXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMjAsMTIwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"Expression\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(69,69)]),\\char-class([range(120,120)]),\\char-class([range(112,112)]),\\char-class([range(114,114)]),\\char-class([range(101,101)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(105,105)]),\\char-class([range(111,111)]),\\char-class([range(110,110)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJ0YWciKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"tag\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoIm51bSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKV0se30p = (IConstructor) _read("prod(lit(\"num\"),[\\char-class([range(110,110)]),\\char-class([range(117,117)]),\\char-class([range(109,109)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgiaW50ZWdlciIsc29ydCgiTGl0ZXJhbCIpKSxbbGFiZWwoImludGVnZXJMaXRlcmFsIixzb3J0KCJJbnRlZ2VyTGl0ZXJhbCIpKV0se3RhZygiY2F0ZWdvcnkiKCJudW1iZXIiKSl9KQ0000 = (IConstructor) _read("prod(label(\"integer\",sort(\"Literal\")),[label(\"integerLiteral\",sort(\"IntegerLiteral\"))],{tag(\"category\"(\"number\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGlzdE1vZHVsZXMiLHNvcnQoIlNoZWxsQ29tbWFuZCIpKSxbbGl0KCJtb2R1bGVzIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"listModules\",sort(\"ShellCommand\")),[lit(\"modules\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImlzIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"is\"),[\\char-class([range(105,105)]),\\char-class([range(115,115)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgic2VxdWVuY2UiLHNvcnQoIlN5bSIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJmaXJzdCIsc29ydCgiU3ltIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic2VxdWVuY2UiLFxpdGVyLXNlcHMoc29ydCgiU3ltIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGl0KCIpIildLHt9KQ0000 = (IConstructor) _read("prod(label(\"sequence\",sort(\"Sym\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),label(\"first\",sort(\"Sym\")),layouts(\"LAYOUTLIST\"),label(\"sequence\",\\iter-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
@@ -4267,12 +4266,11 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInB1YmxpYyIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE3LDExNyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"public\"),[\\char-class([range(112,112)]),\\char-class([range(117,117)]),\\char-class([range(98,98)]),\\char-class([range(108,108)]),\\char-class([range(105,105)]),\\char-class([range(99,99)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgib3V0cHV0Iixzb3J0KCJFdmFsQ29tbWFuZCIpKSxbbGV4KCJPdXRwdXQiKV0se30p = (IConstructor) _read("prod(label(\"output\",sort(\"EvalCommand\")),[lex(\"Output\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxsaXQoIi4iKSxcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KSxyYW5nZSgxMDEsMTAxKV0pLG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNDMsNDMpLHJhbmdlKDQ1LDQ1KV0pKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg2OCw2OCkscmFuZ2UoNzAsNzApLHJhbmdlKDEwMCwxMDApLHJhbmdlKDEwMiwxMDIpXSkpXSx7fSk00 = (IConstructor) _read("prod(lex(\"RealLiteral\"),[iter(\\char-class([range(48,57)])),lit(\".\"),\\iter-star(\\char-class([range(48,57)])),\\char-class([range(69,69),range(101,101)]),opt(\\char-class([range(43,43),range(45,45)])),iter(\\char-class([range(48,57)])),opt(\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgic3VidHJhY3Rpb24iLHNvcnQoIkFzc2lnbm1lbnQiKSksW2xpdCgiLT0iKV0se30p = (IConstructor) _read("prod(label(\"subtraction\",sort(\"Assignment\")),[lit(\"-=\")],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgidGV4dCIsbGV4KCJDb25jcmV0ZVBhcnQiKSksW2NvbmRpdGlvbmFsKGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsNTkpLHJhbmdlKDYxLDYxKSxyYW5nZSg2Myw5MSkscmFuZ2UoOTMsOTUpLHJhbmdlKDk3LDExMTQxMTEpXSkpLHtcbm90LWZvbGxvdyhcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSw1OSkscmFuZ2UoNjEsNjEpLHJhbmdlKDYzLDkxKSxyYW5nZSg5Myw5NSkscmFuZ2UoOTcsMTExNDExMSldKSl9KV0se3RhZygiY2F0ZWdvcnkiKCJzdHJpbmciKSl9KQ0000 = (IConstructor) _read("prod(label(\"text\",lex(\"ConcretePart\")),[conditional(iter(\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)])),{\\not-follow(\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)]))})],{tag(\"category\"(\"string\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY29uZGl0aW9uYWwiLHNvcnQoIkZ1bmN0aW9uRGVjbGFyYXRpb24iKSksW2xhYmVsKCJ0YWdzIixzb3J0KCJUYWdzIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgidmlzaWJpbGl0eSIsc29ydCgiVmlzaWJpbGl0eSIpKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoInNpZ25hdHVyZSIsc29ydCgiU2lnbmF0dXJlIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIj0iKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksbGFiZWwoImV4cHJlc3Npb24iLHNvcnQoIkV4cHJlc3Npb24iKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgid2hlbiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgiY29uZGl0aW9ucyIsXGl0ZXItc2Vwcyhzb3J0KCJFeHByZXNzaW9uIiksW2xheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIiwiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOyIpXSx7dGFnKCJicmVha2FibGUiKCJ7ZXhwcmVzc2lvbixjb25kaXRpb25zfSIpKSx0YWcoIkZvbGRhYmxlIigpKX0p = (IConstructor) _read("prod(label(\"conditional\",sort(\"FunctionDeclaration\")),[label(\"tags\",sort(\"Tags\")),layouts(\"LAYOUTLIST\"),label(\"visibility\",sort(\"Visibility\")),layouts(\"LAYOUTLIST\"),label(\"signature\",sort(\"Signature\")),layouts(\"LAYOUTLIST\"),lit(\"=\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\")),layouts(\"LAYOUTLIST\"),lit(\"when\"),layouts(\"LAYOUTLIST\"),label(\"conditions\",\\iter-seps(sort(\"Expression\"),[layouts(\"LAYOUTLIST\"),lit(\",\"),layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),lit(\";\")],{tag(\"breakable\"(\"{expression,conditions}\")),tag(\"Foldable\"())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmVpZnlUeXBlIixzb3J0KCJFeHByZXNzaW9uIikpLFtsaXQoIiMiKSxsYXlvdXRzKCJMQVlPVVRMSVNUIiksY29uZGl0aW9uYWwobGFiZWwoInR5cGUiLHNvcnQoIlR5cGUiKSkse2V4Y2VwdCgic2VsZWN0b3IiKSxcbm90LWZvbGxvdyhsaXQoIlsiKSl9KV0se30p = (IConstructor) _read("prod(label(\"reifyType\",sort(\"Expression\")),[lit(\"#\"),layouts(\"LAYOUTLIST\"),conditional(label(\"type\",sort(\"Type\")),{except(\"selector\"),\\not-follow(lit(\"[\"))})],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgicmVuYW1pbmdzIixzb3J0KCJJbXBvcnRlZE1vZHVsZSIpKSxbbGFiZWwoIm5hbWUiLHNvcnQoIlF1YWxpZmllZE5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJyZW5hbWluZ3MiLHNvcnQoIlJlbmFtaW5ncyIpKV0se30p = (IConstructor) _read("prod(label(\"renamings\",sort(\"ImportedModule\")),[label(\"name\",sort(\"QualifiedName\")),layouts(\"LAYOUTLIST\"),label(\"renamings\",sort(\"Renamings\"))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIkRlY2ltYWxJbnRlZ2VyTGl0ZXJhbCIpLFtjb25kaXRpb25hbChsaXQoIjAiKSx7XG5vdC1mb2xsb3coXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KSxyYW5nZSg2NSw5MCkscmFuZ2UoOTUsOTUpLHJhbmdlKDk3LDEyMildKSl9KV0se30p = (IConstructor) _read("prod(lex(\"DecimalIntegerLiteral\"),[conditional(lit(\"0\"),{\\not-follow(\\char-class([range(48,57),range(65,90),range(95,95),range(97,122)]))})],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgiYnMiLGxleCgiQ29uY3JldGVQYXJ0IikpLFtsaXQoIlxcXFwiKV0se3RhZygiY2F0ZWdvcnkiKCJNZXRhU2tpcHBlZCIpKX0p = (IConstructor) _read("prod(label(\"bs\",lex(\"ConcretePart\")),[lit(\"\\\\\\\\\")],{tag(\"category\"(\"MetaSkipped\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIndoZW4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExOSwxMTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"when\"),[\\char-class([range(119,119)]),\\char-class([range(104,104)]),\\char-class([range(101,101)]),\\char-class([range(110,110)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiY2hhcmFjdGVyQ2xhc3MiLHNvcnQoIlN5bSIpKSxbbGFiZWwoImNoYXJDbGFzcyIsc29ydCgiQ2xhc3MiKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"characterClass\",sort(\"Sym\")),[label(\"charClass\",sort(\"Class\"))],{})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSgxLDgpLHJhbmdlKDExLDEyKSxyYW5nZSgxNCwzMSkscmFuZ2UoMzMsNTkpLHJhbmdlKDYxLDEyMykscmFuZ2UoMTI1LDExMTQxMTEpXSkpKQ0000 = (IConstructor) _read("regular(\\iter-star(\\char-class([range(1,8),range(11,12),range(14,31),range(33,59),range(61,123),range(125,1114111)])))", RascalValueFactory.Production);
@@ -4286,8 +4284,9 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNlcShbXFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCkscmFuZ2UoNDYsNDYpXSksXFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSxvcHQoc2VxKFtcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pLG9wdChcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKV0pKV0pIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTMsMTEzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkyLDkyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA0LDEwNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5OSw5OSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Miw1MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTQsNTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Myw5MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ0LDQ0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMywxMTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5MSw5MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTIsOTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDUsNDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDkxLDkxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDUyLDUyKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1Niw1NildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDUzLDUzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg1NSw1NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDkzLDkzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDQsNDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Miw5MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNCwxMDQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NSw0NSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTksOTkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTEsOTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk3LDk3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTAsMTEwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDMsMTAzKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTIsNTIpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU2LDU2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0NCw0NCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNTMsNTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDU1LDU1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTMsOTMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"seq([\\\\char-class([range(44,44),range(46,46)]),\\\\char-class([range(48,57)]),opt(seq([\\\\char-class([range(48,57)]),opt(\\\\char-class([range(48,57)]))]))])\"),[\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(52,52)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(52,52)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(54,54)]),\\char-class([range(44,44)]),\\char-class([range(52,52)]),\\char-class([range(54,54)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(115,115)]),\\char-class([range(101,101)]),\\char-class([range(113,113)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(44,44)]),\\char-class([range(111,111)]),\\char-class([range(112,112)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(92,92)]),\\char-class([range(99,99)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(45,45)]),\\char-class([range(99,99)]),\\char-class([range(108,108)]),\\char-class([range(97,97)]),\\char-class([range(115,115)]),\\char-class([range(115,115)]),\\char-class([range(40,40)]),\\char-class([range(91,91)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(101,101)]),\\char-class([range(40,40)]),\\char-class([range(52,52)]),\\char-class([range(56,56)]),\\char-class([range(44,44)]),\\char-class([range(53,53)]),\\char-class([range(55,55)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)]),\\char-class([range(41,41)]),\\char-class([range(93,93)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgibGFiZWxlZCIsc29ydCgiUHJvZCIpKSxbbGFiZWwoIm1vZGlmaWVycyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlByb2RNb2RpZmllciIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJuYW1lIixsZXgoIk5hbWUiKSksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiOiIpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsYWJlbCgic3ltcyIsXGl0ZXItc3Rhci1zZXBzKHNvcnQoIlN5bSIpLFtsYXlvdXRzKCJMQVlPVVRMSVNUIildKSldLHt9KQ0000 = (IConstructor) _read("prod(label(\"labeled\",sort(\"Prod\")),[label(\"modifiers\",\\iter-star-seps(sort(\"ProdModifier\"),[layouts(\"LAYOUTLIST\")])),layouts(\"LAYOUTLIST\"),label(\"name\",lex(\"Name\")),layouts(\"LAYOUTLIST\"),lit(\":\"),layouts(\"LAYOUTLIST\"),label(\"syms\",\\iter-star-seps(sort(\"Sym\"),[layouts(\"LAYOUTLIST\")]))],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJLZXl3b3JkRm9ybWFscyIpKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoInNvcnQoXCJLZXl3b3JkRm9ybWFsc1wiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoc29ydCgiS2V5d29yZEZvcm1hbHMiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"KeywordFormals\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"KeywordFormals\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"KeywordFormals\")))})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgicmV0dXJuIixzb3J0KCJTdGF0ZW1lbnQiKSksW2xpdCgicmV0dXJuIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJzdGF0ZW1lbnQiLGNvbmRpdGlvbmFsKHNvcnQoIlN0YXRlbWVudCIpLHtleGNlcHQoInZhcmlhYmxlRGVjbGFyYXRpb24iKSxleGNlcHQoImZ1bmN0aW9uRGVjbGFyYXRpb24iKX0pKV0se3RhZygiYnJlYWthYmxlIigpKX0p = (IConstructor) _read("prod(label(\"return\",sort(\"Statement\")),[lit(\"return\"),layouts(\"LAYOUTLIST\"),label(\"statement\",conditional(sort(\"Statement\"),{except(\"variableDeclaration\"),except(\"functionDeclaration\")}))],{tag(\"breakable\"())})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsYWJlbCgic3VidHJhY3Rpb24iLHNvcnQoIkFzc2lnbm1lbnQiKSksW2xpdCgiLT0iKV0se30p = (IConstructor) _read("prod(label(\"subtraction\",sort(\"Assignment\")),[lit(\"-=\")],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChrZXl3b3JkcygiUmFzY2FsS2V5d29yZHMiKSxbbGl0KCJpbnQiKV0se30p = (IConstructor) _read("prod(keywords(\"RascalKeywords\"),[lit(\"int\")],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsZXgoIkNoYXIiKSxbbGV4KCJVbmljb2RlRXNjYXBlIildLHt0YWcoImNhdGVnb3J5IigiQ29uc3RhbnQiKSl9KQ0000 = (IConstructor) _read("prod(lex(\"Char\"),[lex(\"UnicodeEscape\")],{tag(\"category\"(\"Constant\"))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUYWdzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlRhZ3NcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlRhZ3MiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Tags\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Tags\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Tags\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIk5hbWUiKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJzb3J0KFwiTmFtZVwiKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIobGV4KCJOYW1lIikpKX0p = (IConstructor) _read("prod(label(\"$MetaHole\",lex(\"Name\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Name\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(lex(\"Name\")))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJJbXBvcnRlZE1vZHVsZVwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg3Myw3MyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEyLDExMildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAwLDEwMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNzcsNzcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMCwxMDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNywxMTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"ImportedModule\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(73,73)]),\\char-class([range(109,109)]),\\char-class([range(112,112)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(100,100)]),\\char-class([range(77,77)]),\\char-class([range(111,111)]),\\char-class([range(100,100)]),\\char-class([range(117,117)]),\\char-class([range(108,108)]),\\char-class([range(101,101)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
@@ -4304,6 +4303,7 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJSZW5hbWluZ1wiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Miw4MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTEwLDExMCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MSw0MSldKV0se30p = (IConstructor) _read("prod(lit(\"sort(\\\"Renaming\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(82,82)]),\\char-class([range(101,101)]),\\char-class([range(110,110)]),\\char-class([range(97,97)]),\\char-class([range(109,109)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImJvdHRvbS11cCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoOTgsOTgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOSwxMDkpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQ1LDQ1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTcsMTE3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTIsMTEyKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"bottom-up\"),[\\char-class([range(98,98)]),\\char-class([range(111,111)]),\\char-class([range(116,116)]),\\char-class([range(116,116)]),\\char-class([range(111,111)]),\\char-class([range(109,109)]),\\char-class([range(45,45)]),\\char-class([range(117,117)]),\\char-class([range(112,112)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoInNvcnQoXCJEYXRlUGFydFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg2OCw2OCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMSwxMDEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDgwLDgwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"sort(\\\"DatePart\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(68,68)]),\\char-class([range(97,97)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(80,80)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
+ private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdHJpbmdDaGFyYWN0ZXJcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODMsODMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"StringCharacter\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pKSxbXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKSxsaXQoIm9wdChcXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)])),[\\char-class([range(0,0)]),lit(\"opt(\\\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(opt(\\char-class([range(68,68),range(70,70),range(100,100),range(102,102)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoIm1hcCIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTA5LDEwOSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMiwxMTIpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"map\"),[\\char-class([range(109,109)]),\\char-class([range(97,97)]),\\char-class([range(112,112)])],{})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsZXgoIk5hbWVkUmVnRXhwIiksW2xpdCgiXDwiKSxsZXgoIk5hbWUiKSxsaXQoIlw11IildLHt9KQ0000 = (IConstructor) _read("prod(lex(\"NamedRegExp\"),[lit(\"\\<\"),lex(\"Name\"),lit(\"\\>\")],{})", RascalValueFactory.Production);
@@ -4325,9 +4325,6 @@ protected IntegerList getFilteredParents(int childId) {
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTUpXSkpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgiaXRlcihcXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU1KV0pKSIpLGxpdCgiOiIpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pXSx7dGFnKCJob2xlVHlwZSIoaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTUpXSkpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(48,55)])),[\\char-class([range(0,0)]),lit(\"iter(\\\\char-class([range(48,55)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(iter(\\char-class([range(48,55)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSw1OSkscmFuZ2UoNjEsNjEpLHJhbmdlKDYzLDkxKSxyYW5nZSg5Myw5NSkscmFuZ2UoOTcsMTExNDExMSldKSksW1xjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSksbGl0KCJpdGVyKFxcY2hhci1jbGFzcyhbcmFuZ2UoMSw5KSxyYW5nZSgxMSw1OSkscmFuZ2UoNjEsNjEpLHJhbmdlKDYzLDkxKSxyYW5nZSg5Myw5NSkscmFuZ2UoOTcsMTExNDExMSldKSkiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsNTkpLHJhbmdlKDYxLDYxKSxyYW5nZSg2Myw5MSkscmFuZ2UoOTMsOTUpLHJhbmdlKDk3LDExMTQxMTEpXSkpKSl9KQ0000 = (IConstructor) _read("prod(label(\"$MetaHole\",\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)])),[\\char-class([range(0,0)]),lit(\"iter(\\\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)]))\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(iter(\\char-class([range(1,9),range(11,59),range(61,61),range(63,91),range(93,95),range(97,1114111)]))))})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsaXQoImJvb2wiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDk4LDk4KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDgsMTA4KV0pXSx7fSk00 = (IConstructor) _read("prod(lit(\"bool\"),[\\char-class([range(98,98)]),\\char-class([range(111,111)]),\\char-class([range(111,111)]),\\char-class([range(108,108)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgic3Rkb3V0T3V0cHV0IixsZXgoIk91dHB1dCIpKSxbY29uZGl0aW9uYWwobGl0KCLiiasiKSx7XGJlZ2luLW9mLWxpbmUoKX0pLFxpdGVyLXN0YXIoXGNoYXItY2xhc3MoW3JhbmdlKDEsOSkscmFuZ2UoMTEsMTIpLHJhbmdlKDE0LDExMTQxMTEpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgxMCwxMCldKV0se3RhZygiY2F0ZWdvcnkiKCJTdGRPdXQiKSl9KQ0000 = (IConstructor) _read("prod(label(\"stdoutOutput\",lex(\"Output\")),[conditional(lit(\"≫\"),{\\begin-of-line()}),\\iter-star(\\char-class([range(1,9),range(11,12),range(14,1114111)])),\\char-class([range(10,10)])],{tag(\"category\"(\"StdOut\"))})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsaXQoInNvcnQoXCJTdHJpbmdDaGFyYWN0ZXJcIikiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDExNSwxMTUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMSwxMTEpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQwLDQwKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoODMsODMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNiwxMTYpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExNCwxMTQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwNSwxMDUpXSksXGNoYXItY2xhc3MoW3JhbmdlKDExMCwxMTApXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwMywxMDMpXSksXGNoYXItY2xhc3MoW3JhbmdlKDY3LDY3KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDQsMTA0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDk5LDk5KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgzNCwzNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDEsNDEpXSldLHt9KQ0000 = (IConstructor) _read("prod(lit(\"sort(\\\"StringCharacter\\\")\"),[\\char-class([range(115,115)]),\\char-class([range(111,111)]),\\char-class([range(114,114)]),\\char-class([range(116,116)]),\\char-class([range(40,40)]),\\char-class([range(34,34)]),\\char-class([range(83,83)]),\\char-class([range(116,116)]),\\char-class([range(114,114)]),\\char-class([range(105,105)]),\\char-class([range(110,110)]),\\char-class([range(103,103)]),\\char-class([range(67,67)]),\\char-class([range(104,104)]),\\char-class([range(97,97)]),\\char-class([range(114,114)]),\\char-class([range(97,97)]),\\char-class([range(99,99)]),\\char-class([range(116,116)]),\\char-class([range(101,101)]),\\char-class([range(114,114)]),\\char-class([range(34,34)]),\\char-class([range(41,41)])],{})", RascalValueFactory.Production);
- private static final IConstructor cHJvZChsYWJlbCgibWF0Y2giLHNvcnQoIkV4cHJlc3Npb24iKSksW2xhYmVsKCJwYXR0ZXJuIixzb3J0KCJQYXR0ZXJuIikpLGxheW91dHMoIkxBWU9VVExJU1QiKSxsaXQoIjo9IiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxhYmVsKCJleHByZXNzaW9uIixzb3J0KCJFeHByZXNzaW9uIikpXSx7YXNzb2MoXG5vbi1hc3NvYygpKX0p = (IConstructor) _read("prod(label(\"match\",sort(\"Expression\")),[label(\"pattern\",sort(\"Pattern\")),layouts(\"LAYOUTLIST\"),lit(\":=\"),layouts(\"LAYOUTLIST\"),label(\"expression\",sort(\"Expression\"))],{assoc(\\non-assoc())})", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJWYXJpYW50IikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlZhcmlhbnRcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlZhcmlhbnQiKSkpfSk00 = (IConstructor) _read("prod(label(\"$MetaHole\",sort(\"Variant\")),[\\char-class([range(0,0)]),lit(\"sort(\\\"Variant\\\")\"),lit(\":\"),iter(\\char-class([range(48,57)])),\\char-class([range(0,0)])],{tag(\"holeType\"(sort(\"Variant\")))})", RascalValueFactory.Production);
private static final IConstructor cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSk00 = (IConstructor) _read("regular(opt(\\char-class([range(48,57)])))", RascalValueFactory.Production);
private static final IConstructor cHJvZChsYWJlbCgiZW1wdHkiLHNvcnQoIlN5bSIpKSxbbGl0KCIoIiksbGF5b3V0cygiTEFZT1VUTElTVCIpLGxpdCgiKSIpXSx7fSk00 = (IConstructor) _read("prod(label(\"empty\",sort(\"Sym\")),[lit(\"(\"),layouts(\"LAYOUTLIST\"),lit(\")\")],{})", RascalValueFactory.Production);
@@ -4351,68 +4348,68 @@ protected static class RealLiteral {
protected static final void _init_cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2NvbmRpdGlvbmFsKGxpdCgiLiIpLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pKX0pLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpLHJhbmdlKDEwMSwxMDEpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MykscmFuZ2UoNDUsNDUpXSkpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[6];
- tmp[0] = new LiteralStackNode(15, 0, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, new IEnterFilter[] {new CharPrecedeRestriction(new int[][]{{46,46}})}, null);
- tmp[1] = new ListStackNode(17, 1, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(16, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[5] = new OptionalStackNode(24, 5, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(23, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
- tmp[3] = new OptionalStackNode(20, 3, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQzLDQzKSxyYW5nZSg0NSw0NSldKSkp, new CharStackNode(19, 0, new int[][]{{43,43},{45,45}}, null, null), null, null);
- tmp[2] = new CharStackNode(18, 2, new int[][]{{69,69},{101,101}}, null, null);
- tmp[4] = new ListStackNode(22, 4, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(21, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[0] = new LiteralStackNode(6, 0, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, new IEnterFilter[] {new CharPrecedeRestriction(new int[][]{{46,46}})}, null);
+ tmp[1] = new ListStackNode(8, 1, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(7, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[5] = new OptionalStackNode(15, 5, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(14, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
+ tmp[3] = new OptionalStackNode(11, 3, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQzLDQzKSxyYW5nZSg0NSw0NSldKSkp, new CharStackNode(10, 0, new int[][]{{43,43},{45,45}}, null, null), null, null);
+ tmp[2] = new CharStackNode(9, 2, new int[][]{{69,69},{101,101}}, null, null);
+ tmp[4] = new ListStackNode(13, 4, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(12, 0, new int[][]{{48,57}}, null, null), true, null, null);
builder.addAlternative(RascalParser.cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2NvbmRpdGlvbmFsKGxpdCgiLiIpLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pKX0pLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpLHJhbmdlKDEwMSwxMDEpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MykscmFuZ2UoNDUsNDUpXSkpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000, tmp);
}
protected static final void _init_cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlJlYWxMaXRlcmFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlJlYWxMaXRlcmFsXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlJlYWxMaXRlcmFsIikpKX0p(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[5];
- tmp[3] = new ListStackNode(31, 3, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(30, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[1] = new LiteralStackNode(28, 1, cHJvZChsaXQoInNvcnQoXCJSZWFsTGl0ZXJhbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Miw4MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc2LDc2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00, new int[] {115,111,114,116,40,34,82,101,97,108,76,105,116,101,114,97,108,34,41}, null, null);
- tmp[0] = new CharStackNode(27, 0, new int[][]{{0,0}}, null, null);
- tmp[4] = new CharStackNode(32, 4, new int[][]{{0,0}}, null, null);
- tmp[2] = new LiteralStackNode(29, 2, cHJvZChsaXQoIjoiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDU4LDU4KV0pXSx7fSk00, new int[] {58}, null, null);
+ tmp[3] = new ListStackNode(22, 3, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(21, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[1] = new LiteralStackNode(19, 1, cHJvZChsaXQoInNvcnQoXCJSZWFsTGl0ZXJhbFwiKSIpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTExLDExMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE0LDExNCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE2LDExNildKSxcY2hhci1jbGFzcyhbcmFuZ2UoNDAsNDApXSksXGNoYXItY2xhc3MoW3JhbmdlKDM0LDM0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg4Miw4MildKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAxLDEwMSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoOTcsOTcpXSksXGNoYXItY2xhc3MoW3JhbmdlKDEwOCwxMDgpXSksXGNoYXItY2xhc3MoW3JhbmdlKDc2LDc2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDUsMTA1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMDEsMTAxKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTA4LDEwOCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00, new int[] {115,111,114,116,40,34,82,101,97,108,76,105,116,101,114,97,108,34,41}, null, null);
+ tmp[0] = new CharStackNode(18, 0, new int[][]{{0,0}}, null, null);
+ tmp[4] = new CharStackNode(23, 4, new int[][]{{0,0}}, null, null);
+ tmp[2] = new LiteralStackNode(20, 2, cHJvZChsaXQoIjoiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDU4LDU4KV0pXSx7fSk00, new int[] {58}, null, null);
builder.addAlternative(RascalParser.cHJvZChsYWJlbCgiJE1ldGFIb2xlIixsZXgoIlJlYWxMaXRlcmFsIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlJlYWxMaXRlcmFsXCIpIiksbGl0KCI6IiksaXRlcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLFxjaGFyLWNsYXNzKFtyYW5nZSgwLDApXSldLHt0YWcoImhvbGVUeXBlIihsZXgoIlJlYWxMaXRlcmFsIikpKX0p, tmp);
}
protected static final void _init_cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxjb25kaXRpb25hbChsaXQoIi4iKSx7XG5vdC1mb2xsb3cobGl0KCIuIikpfSksXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pKV0se30p(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[4];
- tmp[3] = new OptionalStackNode(43, 3, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(42, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
- tmp[0] = new ListStackNode(36, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(35, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[2] = new ListStackNode(41, 2, cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(40, 0, new int[][]{{48,57}}, null, null), false, null, null);
- tmp[1] = new LiteralStackNode(39, 1, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, null, new ICompletionFilter[] {new StringFollowRestriction(new int[] {46})});
+ tmp[3] = new OptionalStackNode(34, 3, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(33, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
+ tmp[0] = new ListStackNode(27, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(26, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[2] = new ListStackNode(32, 2, cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(31, 0, new int[][]{{48,57}}, null, null), false, null, null);
+ tmp[1] = new LiteralStackNode(30, 1, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, null, new ICompletionFilter[] {new StringFollowRestriction(new int[] {46})});
builder.addAlternative(RascalParser.cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxjb25kaXRpb25hbChsaXQoIi4iKSx7XG5vdC1mb2xsb3cobGl0KCIuIikpfSksXGl0ZXItc3RhcihcY2hhci1jbGFzcyhbcmFuZ2UoNDgsNTcpXSkpLG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pKV0se30p, tmp);
}
protected static final void _init_cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2NvbmRpdGlvbmFsKGxpdCgiLiIpLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pKX0pLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[3];
- tmp[2] = new OptionalStackNode(51, 2, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(50, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
- tmp[0] = new LiteralStackNode(47, 0, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, new IEnterFilter[] {new CharPrecedeRestriction(new int[][]{{46,46}})}, null);
- tmp[1] = new ListStackNode(49, 1, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(48, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[2] = new OptionalStackNode(42, 2, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(41, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
+ tmp[0] = new LiteralStackNode(38, 0, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, new IEnterFilter[] {new CharPrecedeRestriction(new int[][]{{46,46}})}, null);
+ tmp[1] = new ListStackNode(40, 1, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(39, 0, new int[][]{{48,57}}, null, null), true, null, null);
builder.addAlternative(RascalParser.cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2NvbmRpdGlvbmFsKGxpdCgiLiIpLHtcbm90LXByZWNlZGUoXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pKX0pLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000, tmp);
}
protected static final void _init_cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpLHJhbmdlKDEwMSwxMDEpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MykscmFuZ2UoNDUsNDUpXSkpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[5];
- tmp[3] = new ListStackNode(59, 3, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(58, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[2] = new OptionalStackNode(57, 2, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQzLDQzKSxyYW5nZSg0NSw0NSldKSkp, new CharStackNode(56, 0, new int[][]{{43,43},{45,45}}, null, null), null, null);
- tmp[4] = new OptionalStackNode(61, 4, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(60, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
- tmp[0] = new ListStackNode(54, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(53, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[1] = new CharStackNode(55, 1, new int[][]{{69,69},{101,101}}, null, null);
+ tmp[3] = new ListStackNode(50, 3, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(49, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[2] = new OptionalStackNode(48, 2, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQzLDQzKSxyYW5nZSg0NSw0NSldKSkp, new CharStackNode(47, 0, new int[][]{{43,43},{45,45}}, null, null), null, null);
+ tmp[4] = new OptionalStackNode(52, 4, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(51, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
+ tmp[0] = new ListStackNode(45, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(44, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[1] = new CharStackNode(46, 1, new int[][]{{69,69},{101,101}}, null, null);
builder.addAlternative(RascalParser.cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjksNjkpLHJhbmdlKDEwMSwxMDEpXSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg0Myw0MykscmFuZ2UoNDUsNDUpXSkpLGl0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSldLHt9KQ0000, tmp);
}
protected static final void _init_cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pXSx7fSk00(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[2];
- tmp[0] = new ListStackNode(64, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(63, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[1] = new CharStackNode(65, 1, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null);
+ tmp[0] = new ListStackNode(55, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(54, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[1] = new CharStackNode(56, 1, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null);
builder.addAlternative(RascalParser.cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxcY2hhci1jbGFzcyhbcmFuZ2UoNjgsNjgpLHJhbmdlKDcwLDcwKSxyYW5nZSgxMDAsMTAwKSxyYW5nZSgxMDIsMTAyKV0pXSx7fSk00, tmp);
}
protected static final void _init_cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxsaXQoIi4iKSxcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KSxyYW5nZSgxMDEsMTAxKV0pLG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNDMsNDMpLHJhbmdlKDQ1LDQ1KV0pKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg2OCw2OCkscmFuZ2UoNzAsNzApLHJhbmdlKDEwMCwxMDApLHJhbmdlKDEwMiwxMDIpXSkpXSx7fSk00(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[7];
- tmp[3] = new CharStackNode(72, 3, new int[][]{{69,69},{101,101}}, null, null);
- tmp[0] = new ListStackNode(68, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(67, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[4] = new OptionalStackNode(74, 4, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQzLDQzKSxyYW5nZSg0NSw0NSldKSkp, new CharStackNode(73, 0, new int[][]{{43,43},{45,45}}, null, null), null, null);
- tmp[2] = new ListStackNode(71, 2, cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(70, 0, new int[][]{{48,57}}, null, null), false, null, null);
- tmp[6] = new OptionalStackNode(78, 6, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(77, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
- tmp[5] = new ListStackNode(76, 5, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(75, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[1] = new LiteralStackNode(69, 1, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, null, null);
+ tmp[3] = new CharStackNode(63, 3, new int[][]{{69,69},{101,101}}, null, null);
+ tmp[0] = new ListStackNode(59, 0, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(58, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[4] = new OptionalStackNode(65, 4, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDQzLDQzKSxyYW5nZSg0NSw0NSldKSkp, new CharStackNode(64, 0, new int[][]{{43,43},{45,45}}, null, null), null, null);
+ tmp[2] = new ListStackNode(62, 2, cmVndWxhcihcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(61, 0, new int[][]{{48,57}}, null, null), false, null, null);
+ tmp[6] = new OptionalStackNode(69, 6, cmVndWxhcihvcHQoXGNoYXItY2xhc3MoW3JhbmdlKDY4LDY4KSxyYW5nZSg3MCw3MCkscmFuZ2UoMTAwLDEwMCkscmFuZ2UoMTAyLDEwMildKSkp, new CharStackNode(68, 0, new int[][]{{68,68},{70,70},{100,100},{102,102}}, null, null), null, null);
+ tmp[5] = new ListStackNode(67, 5, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(66, 0, new int[][]{{48,57}}, null, null), true, null, null);
+ tmp[1] = new LiteralStackNode(60, 1, cHJvZChsaXQoIi4iKSxbXGNoYXItY2xhc3MoW3JhbmdlKDQ2LDQ2KV0pXSx7fSk00, new int[] {46}, null, null);
builder.addAlternative(RascalParser.cHJvZChsZXgoIlJlYWxMaXRlcmFsIiksW2l0ZXIoXGNoYXItY2xhc3MoW3JhbmdlKDQ4LDU3KV0pKSxsaXQoIi4iKSxcaXRlci1zdGFyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDY5LDY5KSxyYW5nZSgxMDEsMTAxKV0pLG9wdChcY2hhci1jbGFzcyhbcmFuZ2UoNDMsNDMpLHJhbmdlKDQ1LDQ1KV0pKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksb3B0KFxjaGFyLWNsYXNzKFtyYW5nZSg2OCw2OCkscmFuZ2UoNzAsNzApLHJhbmdlKDEwMCwxMDApLHJhbmdlKDEwMiwxMDIpXSkpXSx7fSk00, tmp);
}
public static void init(ExpectBuilder builder){
@@ -4445,17 +4442,17 @@ protected static class Tags {
protected static final void _init_cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiVGFncyIpKSxbbGFiZWwoInRhZ3MiLFxpdGVyLXN0YXItc2Vwcyhzb3J0KCJUYWciKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpXSx7fSk00(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[1];
- tmp[0] = new SeparatedListStackNode(138, 0, cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiVGFnIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000, new NonTerminalStackNode(136, 0, "Tag", null, null), (AbstractStackNode[]) new AbstractStackNode[]{new NonTerminalStackNode(137, 1, "layouts_LAYOUTLIST", null, null)}, false, null, null);
+ tmp[0] = new SeparatedListStackNode(124, 0, cmVndWxhcihcaXRlci1zdGFyLXNlcHMoc29ydCgiVGFnIiksW2xheW91dHMoIkxBWU9VVExJU1QiKV0pKQ0000, new NonTerminalStackNode(122, 0, "Tag", null, null), (AbstractStackNode[]) new AbstractStackNode[]{new NonTerminalStackNode(123, 1, "layouts_LAYOUTLIST", null, null)}, false, null, null);
builder.addAlternative(RascalParser.cHJvZChsYWJlbCgiZGVmYXVsdCIsc29ydCgiVGFncyIpKSxbbGFiZWwoInRhZ3MiLFxpdGVyLXN0YXItc2Vwcyhzb3J0KCJUYWciKSxbbGF5b3V0cygiTEFZT1VUTElTVCIpXSkpXSx7fSk00, tmp);
}
protected static final void _init_cHJvZChsYWJlbCgiJE1ldGFIb2xlIixzb3J0KCJUYWdzIikpLFtcY2hhci1jbGFzcyhbcmFuZ2UoMCwwKV0pLGxpdCgic29ydChcIlRhZ3NcIikiKSxsaXQoIjoiKSxpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSksXGNoYXItY2xhc3MoW3JhbmdlKDAsMCldKV0se3RhZygiaG9sZVR5cGUiKHNvcnQoIlRhZ3MiKSkpfSk00(ExpectBuilder builder) {
AbstractStackNode[] tmp = (AbstractStackNode[]) new AbstractStackNode[5];
- tmp[0] = new CharStackNode(142, 0, new int[][]{{0,0}}, null, null);
- tmp[4] = new CharStackNode(147, 4, new int[][]{{0,0}}, null, null);
- tmp[2] = new LiteralStackNode(144, 2, cHJvZChsaXQoIjoiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDU4LDU4KV0pXSx7fSk00, new int[] {58}, null, null);
- tmp[3] = new ListStackNode(146, 3, cmVndWxhcihpdGVyKFxjaGFyLWNsYXNzKFtyYW5nZSg0OCw1NyldKSkp, new CharStackNode(145, 0, new int[][]{{48,57}}, null, null), true, null, null);
- tmp[1] = new LiteralStackNode(143, 1, cHJvZChsaXQoInNvcnQoXCJUYWdzXCIpIiksW1xjaGFyLWNsYXNzKFtyYW5nZSgxMTUsMTE1KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTEsMTExKV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTQsMTE0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSgxMTYsMTE2KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg0MCw0MCldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDg0LDg0KV0pLFxjaGFyLWNsYXNzKFtyYW5nZSg5Nyw5NyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTAzLDEwMyldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMTE1LDExNSldKSxcY2hhci1jbGFzcyhbcmFuZ2UoMzQsMzQpXSksXGNoYXItY2xhc3MoW3JhbmdlKDQxLDQxKV0pXSx7fSk00, new int[] {115,111,114,116,40,34,84,97,103,115,34,41}, null, null);
+ tmp[0] = new CharStackNode(128, 0, new int[][]{{0,0}}, null, null);
+ tmp[4] = new CharStackNode(133, 4, new int[][]{{0,0}}, null, null);
+ tmp[2] = new LiteralStackNode(130, 2, cHJvZChsaXQoIjoiKSxbXGNoYXItY2xhc3MoW3JhbmdlKDU4LDU4KV0pXSx7fSk00, new int[] {58}, null, null);
+ tmp[3] = new ListStackNode